Watch

Q&A: Uberの機械学習責任者は、パターン発見コンピューティングが配車大手の原動力だと語る

Q&A: Uberの機械学習責任者は、パターン発見コンピューティングが配車大手の原動力だと語る

ダン・リッチマン

Uberの機械学習責任者、ダニー・ランゲ氏
Uber の機械学習責任者、ダニー・ランゲ氏。(Uber の写真)

Uber のシンプルな外観の下には、あなたが考えもしなかった複雑さが隠れています。乗車 (または食事) が到着するまでにどのくらい時間がかかるかを予測するロジスティックス、料金設定、さらにはドライバーがあなたを迎えに来られる可能性を最大化するためにどこで待機するかなどです。

こうした決定の根底にあるのは機械学習であり、コンピューターを使用してパターンを見つけ、明示的にプログラミングすることなく予測を行います。

そして、この非常に重要な役割を担うのは、デンマーク生まれの研究者、ダニー・ランゲ氏です。彼はAmazon Web Servicesで約2年間機械学習の取り組みを率いた後、11ヶ月前に配車大手のAmazonに入社しました。それ以前は、マイクロソフトでビッグデータに携わり、シリコンバレーのスタートアップ企業も立ち上げました。

彼はサンフランシスコとシアトルに拠点を置く、成長を続ける研究者チームを率いています。Uberは昨年シアトルにエンジニアリングオフィスを開設し、現在では約150名のスタッフが機械学習、製品エンジニアリング、運用に携わっています。

GeekWireは最近、ランゲ氏にインタビューを行い、Uberにおける機械学習の活用方法について話を聞きました。以下は会話の抜粋です。

Q: お話いただきありがとうございます。まずはUberが機械学習をどのように活用しているかについて少しお話しいただけますか?

ランゲ:私のチームと私は、機械学習を社内の全員が利用できるサービスとして提供しています。従来、企業は博士号取得者やデータサイエンティストを雇用し、各チームが独自のアルゴリズムを考案する必要がありました。私たちは、Webインターフェース、API、SDK(ソフトウェア開発キット)だけで機械学習にアクセスできる方法を開発しています。社内のお客様は、このサービスを24時間365日ご利用いただけます。機械学習の専門家になる必要はありません。

Q: Uber では機械学習がどの程度広く利用されていますか?

ランゲ:Uber Eats(フードデリバリーサービス)、UberX(ベーシックな配車サービス)、UberPOOL(UberXのライドシェア版)、Uber Maps(未リリースのサービス)など、多くのプログラムチームがこれを使用しています。例えば、Uber Eatsは機械学習を用いて食事の配達時間を予測します。私たちは、レストランまでの距離、平均速度、調理時間などから時間を計算するという有限なアプローチから、何千もの食事の配達時間を取得し、それに基づいて予測を行う方法へと移行しました。その結果、一夜にして推定値が26%も向上しました。

Uber のシアトルオフィス。(GeekWire ファイル写真)
Uber のシアトルオフィス。(GeekWire ファイル写真)

Q: Uber のサービスの基盤となっている機械学習の他の例にはどのようなものがありますか? 

ランゲ:Uber Xの乗車到着予定時刻です。「あなたと車の間には7マイル(約11キロメートル)あり、到着まで14分かかります」と誰かが言うことはありません。これは何百万もの乗車データに基づいており、日々発生する通常のパターンを考慮に入れています。また、Uberアプリは、お客様に数ヤード角を曲がって乗車するようアドバイスする場合があります。これは、乗車が成功したパターンと、乗車が困難だったパターンを判別するアルゴリズムによって行われます。私たちは何百万もの乗車経験を活用しています。これはシステムが学習するものです。さらに、アカウント乗っ取りやクレジットカードの盗難といった不正行為の検出にも機械学習を活用しています。

Q: Uber の機械学習の基盤となっている技術は何ですか? 

ランゲ:ブーステッドツリー、線形学習、ニューラルネットワークなど、約10種類のアルゴリズムを提供しています。社内のお客様には、それぞれの問題に最適なアルゴリズムをお選びいただけるメリットを提供しています。

Q. もし機械学習がなかったら、Uberはどのように変わっていたでしょうか?企業として機能できたでしょうか?

ランゲ:実はそうは思いません。機械学習のコンセプトは、継続的なフィードバックループがあり、そこから毎日学習するというものです。

Q: Amazon Web Services 用に構築した機械学習サービスをそのまま使用しないのはなぜですか?

ランゲ:私たちには多くの特別なニーズがあります。グローバルサービスであることに伴うスケールの問題や課題を抱えています。独自のデータセンターを運営し、多くのアプリを自社で開発しています。

Q: 機械学習は非常に多くの計算量とデータを必要とします。Uber はパブリッククラウドサービスや外部データを使用していますか?

ランゲ:ある程度は(クラウドコンピューティングを活用していますが)行っていますが、ほとんどの作業は社内で行っています。使用するデータはすべて社内データです。

Q: AWS で作成したものを基に構築していますか、それとも別の方向に進んでいますか?

ランゲ:私たちはオープンソースの道を追求しています。Hadoop(大規模分散コンピューティング技術)、Spark(Apacheの大規模データ処理エンジン)、MLLib(スケーラブルな機械学習ライブラリ)を活用しています。データの集中リポジトリを構築しているので、Uber内で新しいサービスを立ち上げる際に、他のサービスから収集したデータを活用して、独自のサービスを構築できます。