グーグルマップの城壁—データからデータを作り出すAI戦略

Posted on 2019-03-22(金) in Machine Learning

グーグルマップが、ゼンリンから自社独自のデータに切り替えたことによるクオリティの低下が話題になっていますが、グーグルマップが何年も前から、衛星写真やストリートビューなどのデータから、機械学習の手法を駆使して地図データをすごい勢いで充実させていることはあまり知られていません。

Google や Apple の地図サービスなどの事情に詳しい Justin O'Beirne 氏による「グーグルマップの城壁」と題されたこの記事では、Google がいかに画像認識と機械学習の技術を駆使し、「データからデータを作り出す」ことに成功し、自社サービスに他社が追いつけないような「城壁」を築くのに成功したか、ということが書かれています。

個人的な話ですが、最近、機械学習エンジニアとして独立してから、主にスタートアップ等を対象に、人工知能・機械学習系のプロジェクト戦略についてコンサルティングをしています。特に、機械学習やデータが鍵となるサービスでは、いかにデータを収集し、機械学習の技術を活用しながら新たなデータを生み出したり、競合が追いつけない勢いでプロダクトを改善するか、ということが非常に大切になってきます。その戦略を考える上でも、非常に示唆に富む記事になっています。

本記事の内容については、オリジナルの記事をご参照ください。(2019/3/24追記:本記事に含まれていたまとめは、著作権上の問題から削除しました。)

なお、グーグルマップに関する他の記事を見ていると、例えば Android …


Continue reading

人工知能の第一人者 Andrew Ng 氏がアドバイスする機械学習キャリアの築き方

Posted on 2018-12-18(火) in Machine Learning

現在は、AI Fund の立ち上げ、Landing.ai の CEO 、そして Stanford の教授として活躍する人工知能の第一人者 Andrew Ng 氏。ACM (国際計算機学会) の生涯学習のウェビナーにて「機械学習キャリアの築き方」という内容で話をした動画が、とても良いアドバイスが満載でしたので、ここでまとめと共に紹介します。

Andrew Ng 氏

Andrew Ng on Building a Career in Machine Learning

  • AI は技術的ブレイクスルー
    • 多くの機会
    • 多くのキャリア機会
  • 素晴らしいキャリアを築いている人は何が違うのか
  • どうやってインパクトのある、人の役に立つ仕事ができるか
  • 技術ポートフォリオ
    • 分野 x 知識の深さ
    • 広さと深さ、両方を持つ
  • 広さ
    • 広さを身につけるには、コースを取る (大学、MOOC)+論文を読む
    • コースとして整備されていない知識 …

Continue reading

機械学習:技術的負債の高金利クレジットカード

Posted on 2018-05-04(金) in Machine Learning

Google で機械学習システムの開発に携わる D. Scully 氏らによる

Machine Learning: The High-Interest Credit Card of Technical Debt (機械学習:技術的負債の高金利クレジットカード)

という論文。機械学習は、複雑なシステムを素早く開発するにあたって非常に強力なツールとなるが、それと同時に、 大きな技術的負債(メンテナンスコスト)を抱えるリスクがある。そのリスク要因と対処法についてまとめたのが本論文。

発表当時、日本でも少し話題になったので、日本語で検索するといくつか翻訳を目にすることができますが、 ここでは、あらためて抄訳を試みるとともに、読む上で重要となる単語・表現を最後に紹介したいと思います。

概要

機械学習は、複雑なシステムを素早く開発するにあたって非常に強力なツールとなるが、これらのメリットがタダで 享受できると考えるのは危ない。機械学習を使う場合、システムのレベルで非常に大きな技術的負債(メンテナンスコスト) を抱えるリスクがある。

  1. 機械学習と複雑なシステム

    • 機械学習パッケージは、通常のコードとして複雑さの問題をはらんでいるのと同時に、 システムレベルで「隠れた」技術的負債を抱える恐れがある。

    • 本論文では、機械学習のコードと、大きなシステムレベルとの間の相互作用に焦点を当てる。 ここに隠れた技術的負債が溜まりやすい …


Continue reading

Googleの研究者が教える、良い機械学習プロダクトを実装するための43のルール

Posted on 2018-03-25(日) in Machine Learning

Google のリサーチ・サイエンティストである Martin Zinkevich 氏によって書かれた、機械学習を使った良いプロダクトを開発するためのコツを集めた記事。エンジニアが良い機械学習プロダクトを作るには、機械学習の専門知識が無いことに苦心するのではなく、得意なエンジニアリングの技術を活かすことが重要、というのが主な趣旨です。

紹介記事:Rules of Machine Learning: Best Practices for ML Engineering

  • はじめに

    • ほとんどの問題はエンジニアリングに関する問題である
    • 性能向上は、良い機械学習のアルゴリズムではなく、良い素性によってもたらされる
  • 機械学習の前に

    • ルール1. 本当に必要になるまで機械学習を使わない
    • ルール2. まず指標を設計、実装する
    • ルール3. ヒューリスティックが複雑になりすぎる前に、機械学習に移行する
  • フェーズI: 最初のパイプライン

    • ルール4. 最初のモデルはシンプルに。インフラをまず整える
    • ルール5. インフラを機械学習とは独立にテストする
      • 素性は正しく計算できているか。モデルは訓練環境とテスト環境で同じ値を返すか。
    • ルール6. パイプラインをコピーする場合は、欠損データに気をつける
    • ルール7. ヒューリスティックを素性に変換するか、外部的に扱う …

Continue reading