top of page
ベルテクス AI/INNOVATION SOLUTION チーム

Uberの機械学習プラットフォーム「Michelangelo(ミケランジェロ)」


Uberの機械学習プラットフォーム「Michelangelo(ミケランジェロ)」

 海外でUberのライドシェアを体験し、その便利さに感激する人が増えている。一方日本では、やっと淡路島でのタクシー配車の実験がスタートするといったレベルで、ライドシェア展開はなかなか見通せない状況にある。

 そんな中、レストラン料理を配達するUberEATSは、首都圏を中心に対象エリアを拡大中だ。したたかにビジネスを展開するUberが、世界中で獲得してきたナレッジのコアは「所用時間をいかに正確に予測するか」にある。この予測にはAI/機械学習が活用されている。

 ここでは、Uberの世界戦略を支える機械学習プラットフォーム「Michelangelo(ミケランジェロ)」に着目してみたい。AIで何ができるかを理解する事例であるだけでなく、AIを着実にビジネスに活用するためのアプローチ例としても参考になるだろう。

1.Uberの「Michelangelo(ミケランジェロ)」とは何か

 ルネサンスの巨匠の名が与えられた、Uber の機械学習プラットフォーム「Michelangelo」。

ML-as-a-Service (ML: Machine Learning) として、Uber社内で利用されている機械学習サービスである。

 Uberのどのチームも「Michelangelo」を使って、機械学習の機能や成果をUberのビジネスに組み込むことができる。 「Michelangelo」によって、機械学習機能の開発から実用化までのステップは、シームレスなワークフローとして進められるようになった。

 ここでは、従来からの機械学習モデルや時系列解析、ディープラーニングも使うことができる。 「Michelangelo」の実体は、さまざまな機械学習機能を開発、実装するためのソフトウェア群である。HDFS, Spark, Samza, Cassandra, MLLib, XGBoost, TensorFlowなどのオープンソースと、Uberが自社で内製したシステムで構築されている。

 Uber社内の多くのエンジニアチームが、約1年間実際に社内開発で「Michelangelo」を活用し、Uberにおける機械学習の社内プラットフォームと言えるようになった2017年9月、社外に向けて発表され、その存在が知られることとなった。

2.「Michelangelo」以前の機械学習への取り組み

 Uberは「Michelangelo」以前から、機械学習/AIの活用には積極的に取り組んでいた。 Uberのデータサイエンティストたちは、実にさまざまなツールを使って予測モデルを作成し、エンジニアのチームも、こうしたモデルを必要に応じて個別に開発していた。

 様々な予測モデルの開発には、データサイエンティストや機械学習エンジニアの特別なスキルやリソースが必要とされ、手間も時間もかかる。 しかし、オープンソースのツールの進化スピードが速まるのに伴い、手間をかけて構築したモデルが陳腐化するスピードも加速し、成果も芳しいものではなくなっていった。

 また、同時並行で様々な機械学習モデルが構築され、成果の共通化も十分に行われていなかったため、機械学習の取り組みはサイロ化していった。

 こうした状況の中、Uberのエンジニアたちは、自ら機械学習の開発効率を高めるべく、その変革に乗り出していった。

3.「Michelangelo」の開発とUberEatsへの適用

 「Michelangelo」は、社内の誰もが簡単に、機械学習システムを開発したり、利用したりすることができるように、機械学習のためのワークフローを標準化し、複数のチームでツールや情報を共有できるように設計されている。

 さらに利用者が操作しやすいGUI(グラフィックインターフェース)を提供し、機械学習の成果をグラフ表示でわかりやすくした。 目指すゴールは、各エンジニア個々が独自の取り組みで目前の問題解決につながる開発を行うだけではなく、ビジネスの拡大とともに成長するスケーラブルな機械学習システムを作ることにあった。

 「Michelangelo」は、開発者の生産性の向上させることによって、アイデアをビジネスにすぐに反映できるよう、今も継続的に改良されている。 こうして開発された「Michelangelo」によって、機械学習を活用している事例のひとつが、UberEATS だ。

 UberEATSには、料理の配達時間の予測やレストランのランキングのために、「Michelangelo」のモデルが複数活用されている。

 例えば、料理を調理してから配達するまでにかかる時間を予測し、注文前でも利用者に配達時間を知らせることができる。 利用者に料理を届けるまでの時間を正確に予測するのは簡単ではない。

 まず調理時間は、注文の複雑さやレストランの忙しさによって変わってくる。配達する人が選ばれて、その後も駐車場を探し、車から降りてレストランから料理を受け取る時間も考慮しなければならない。車での配達時間は、配達先の場所や経路、渋滞状況など、多くの要因から影響を受ける。

 私たちが、UberEATSアプリを使って、配達してもらいたい料理を選んでいる間に、「Michelangelo」ではどのようなことが起きているのだろうか。

 レストランを検索している時点で、「Michelangelo」はユーザーの現在地とレストランの住所や、検索時点での曜日、時間の情報を得ている。このようなデータに加えて、「Michelangelo」には、過去蓄積してきたデータと、検索時点でリアルタイムに収集されるデータの両方を活用し、瞬時に配達までの所要時間を予測する。

 「Michelangelo」で扱うデータは、膨大に蓄積されたビッグデータのため、検索時点で、配達までのすべてのステップの所要時間を計算していては、即時に利用者に予測結果を提示することができない。そこで、「Michelangelo」では、過去に蓄積してきたデータの鮮度(新しさ)に応じて、データの格納場所を変えたり、事前処理を施している。

 例えば、過去7日間のレストランの平均調理時間などは事前に計算をしておく。一方、レストランの直近1時間の平均調理時間などは、ほぼリアルタイムで計算する。こうした計算を組み合わせることで、配達までの所要時間を高速で予測し、利用者のスマートフォンやPCにリアルタイムに表示する。

 また、利用者に提示した予測データは、「Michelangelo」において学習、評価にも使われ、将来のさらに精度の高い予測のために利用される。サービス提供と学習が、一つのワークフローの中で行われつつも、サービス提供を遅延させない工夫によって、私たちはUberEATSで注文する前に、料理の配達時間を知ることができるのだ。

4.機械学習プラットフォーム化でUberが目指すもの

 「Michelangelo」によって、機械学習を社内共通プラットフォームとすることに成功したUber。AI/機械学習を社内の誰もが容易に効率的に利用できるようになり、機械学習の活用範囲が拡がることで、学習データをビジネスに適用するスピードが加速されている。

 また学習データを共有して他の取り組みで活用することで効率的な機械学習モデルの開発サイクルが実現できるようになった。 UberEATSの事例からもわかるように、Uberでは機械学習プラットフォームを自ら整備し、自社のコアビジネスに活かし、外部のAIエンジンを取り入れて進めるようなケースとは一線を画している。

 機械学習モデルの構築、共有、再利用を促進させる自社プラットフォームとして「Michelangelo」がすでに動き始めていることが、Uberのシステム面での競争優位を生み出す重要な要素となっているのだ。

5. AI/機械学習を自社の競争力向上に活用するためには

 Uberの「Michelangelo」を海外の進んだAI事例として眺めるだけではなく、AI/機械学習の活用により競争力の強化を図るためには、何から手がけるのがよいだろうか。

 Uberの事例からもわかるように、機械学習モデルは一つ作れば終わりというものではなく、複数のモデルを選択し組み合わせて、自社にあったサービスを作り上げていくものである。

 Uberのように本格的に自社のコアビジネスにAI/機械学習を取り込むべく、自社プラットフォーム化まで進めていくことは多くの企業にとっては難しいことだろう。

 AI/機械学習開発のスキル習得や理解のための試行錯誤を短縮するには、実績のある機械学習スキルを人やチーム、企業をパートナーとして取り込む検討も必要だろう。

 UberがUber AI Labsを開設する際にも、自社で研究していた自動運転以外の領域、のちの「Michelangelo」に繋がる経路探索などに関わるスキルは、AIスタートアップGeometric Intelligenceの2016年買収によって得ているのだ。

 AI/機械学習を競争力の源泉として取り込んでいくために、サービス企画/設計、開発、運用のそれぞれの領域で、明確なパートナーが決まっていない企業の担当者の方は、まずは最初のサービスを共創できるパートナーの探索に取り組んでみてはどうだろうか?

 

執筆者

株式会社ベルテクス・パートナーズ

AI/INNOVATION SOLUTIONチーム

大手通信会社、総合商社、大手メディア企業、クラウドベンダーなど多様な業種でのAIプロジェクトの推進支援や新規事業創出推進支援を実施。各メンバーの支援実績や知見の活用と外部パートナーとも連携しながら業種を問わず大手企業におけるAIプロジェクトを推進や、新規事業/イノベーション創出に関連するソリューションを提供。

 

監修者

株式会社ベルテクス・パートナーズ

執行役員パートナー 東條 貴志

スタートアップでの新規事業立ち上げや事業責任者などの経験と、アーサーアンダーセン、ローランド・ベルガーなど複数ファームでの10数年のキャリアに基づく先端領域における大手企業の新規事業・イノベーション創出支援やAI/機械学習を活用した事業創出/業務改革に多数の経験を有す。

 

Comments


特集記事
最新記事
AI/機械学習活用や
イノベーション/新規事業創出/業務改革のご支援についての
サービス詳細やご相談は
下記よりお気軽にお問い合わせください
メールでのお問い合わせはこちらから
info@vertex-p.com
bottom of page