Upgrade to Pro — share decks privately, control downloads, hide ads and more …

タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用

GO Inc. dev
November 12, 2024

 タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用

2024年11月12日「トヨタ、GO、Luupに聞く大規模データの分析基盤と利活用」での発表資料です。
https://findy-tools.connpass.com/event/335605/

GO Inc. dev

November 12, 2024
Tweet

More Decks by GO Inc. dev

Other Decks in Programming

Transcript

  1. © GO Inc. 鈴木 隆史 | Takashi Suzuki 開発本部 AI技術開発部

    データプラットフォームグループ • 前職ではデータ基盤、ML基盤の開発に従事 • 現在は複数の機械学習サービスのアプリケーションやパイプライ ンの設計開発を担当 2 自己紹介
  2. © GO Inc. 3 タクシーアプリ 『GO』 乗る位置を指定 到着まで待つ 乗る! 支払いはキャッシュレスで

    素早く降車 ※アプリ上での決済の他、  車内での現金決済にも対応
  3. © GO Inc. 4 タクシーアプリ 『GO』におけるAIサービスの活用例 配車マッチング ETA(到着時間予測) マップマッチング 需給予測

    経路最適化 強化学習、逆強化学習 隠れマルコフモデル カルマンフィルタ 時系列予測 統計モデリング 分位点回帰, 最短経路探索 最小重みマッチング
  4. © GO Inc. 5 • タクシーアプリ『GO』は、時間帯や天候によって大きくトラフィックが変動する • そのため、タクシーアプリ『GO』の機械学習基盤では、タクシー供給量(どこに何台タクシーがいる のか)とユーザー需要量(どこに何人ユーザーが待っているのか)を リアルタイムに把握すること

    で、適切なタクシー配置やAIサービスへの反映が可能になる ◦ 例えば、需要変動へ迅速に配置することによる混雑エリアへの供給担保や、需供変動を適切にタク シー待ち時間へ反映することによるユーザー満足度向上、などが挙げられる リアルタイムデータの重要性
  5. © GO Inc. データパイプラインごとの役割の概要 6 データソース データパイプライン (データ鮮度) BigQuery データマート

    データ活用 AIサービス1 バッチ処理 ストリーミング処 理 加工パイプライン 生データ ユーザーアプリログ タクシー動態ログ 地図 天気・電車遅延 (数時間〜数ヶ月おきの反映 ) (5分以内の反映 ) API処理 マイクロサービス (リアルタイム反映 ) Feature Store タクシー供給量 ユーザー需要量 AIサービス2 AIサービス3 サービスDB 一般的なBigQuery基盤の ストリーミング処理では、最 大5分程度の遅延が発生 するため、リアルタイムの データ処理は難しい課題 があった リアルタイムデータを扱う Feature Store基盤を構築 することで、AIサービスの 精度向上に寄与できる
  6. © GO Inc. • リアルタイムデータの収集・管理 ◦ 他のマイクロサービスから、タクシーの供給量(どこに何台いるか)、ユーザーの需要量(どこに何人 待っているか)のリアルタイムデータを継続的に収集し、 Feature Storeに蓄積する

    • 機械学習モデルへのリアルタイムなフィード ◦ 機械学習モデルが必要とする最新の特徴量として、リアルタイムな予測や意思決定をサポート ◦ 最新データを利用できることで、機械学習モデルの精度向上に寄与できる • 過去データとの連携 ◦ 最新データだけでなく、過去 N分間のデータを保持しているため、直近のトレンドや変化を踏まえた推論 が可能となる 7 リアルタイムデータを収集するFeature Store基盤の役割
  7. © GO Inc. アーキテクチャポイント • Feature Store基盤のDBにはRedis Clusterを採用 ◦ 大量のリアルタイムデータの読み書きを高速に行えるようにする

    ◦ データ増加やアクセス頻度の上昇に対してもスケーラブルに対応可能 • 全てのAIサービスからのアクセスを統一化 ◦ 各モデルから統一的な I/Fでデータを取得できる ◦ データの重複を防ぎ、効率的なデータ運用が可能となる 課題と今後の展望 • 複数のサービスが共通のRedisを参照しているため、単一障害点となっている ◦ この課題を解決するためにフォールバック処理を加えることで、他のサービスへの影響を最小限に抑え る予定 9 アーキテクチャ選定のポイントと今後の展望
  8. © GO Inc. 10 リアルタイムデータの重要性 • タクシーアプリ『GO』では、時間帯や天候の変化によりタクシーの需要と供給が大きく変動するた め、リアルタイムにタクシー供給量とユーザー需要量を把握することが重要 リアルタイムデータを蓄積するための Feature

    Store基盤 • 通常のBigQuery基盤によるストリーミング処理では 5分程度の遅延が発生するため、リアルタイム 処理には限界がある • マイクロサービスからリアルタイムデータを継続的に収集できるように、 Feature Store基盤を Redisで構築した • 直近のリアルタイムデータに基づいて、機械学習モデルの推論の精度向上を図っている まとめ