Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
Search
GO Inc. dev
November 12, 2024
Programming
6
3.5k
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
2024年11月12日「トヨタ、GO、Luupに聞く大規模データの分析基盤と利活用」での発表資料です。
https://findy-tools.connpass.com/event/335605/
GO Inc. dev
November 12, 2024
Tweet
Share
More Decks by GO Inc. dev
See All by GO Inc. dev
GO Tech Talk #31 タクシーアプリ『GO』におけるNext.jsの活用
mot_techtalk
2
81
大規模基幹サーバーに gRPCを導入した過程での学び
mot_techtalk
2
22
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
1
480
GPT-5と寿司合戦を攻略する
mot_techtalk
1
77
Grafanaスタックをフル活用したオブザーバビリティ基盤の紹介
mot_techtalk
7
1.1k
オンデマンド交通のための車両ルーティング問題
mot_techtalk
0
130
Open-Vocabularyオブジェクト検出
mot_techtalk
0
84
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
920
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
860
Other Decks in Programming
See All in Programming
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
290
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
240
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
300
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
100
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
850
NIKKEI Tech Talk#38
cipepser
0
240
理論と実務のギャップを超える
eycjur
0
180
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
120
CSC305 Lecture 10
javiergs
PRO
0
260
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
810
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
550
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.7k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Unsuck your backbone
ammeep
671
58k
Producing Creativity
orderedlist
PRO
347
40k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Transcript
© GO Inc. タクシーアプリ『GO』の リアルタイムデータ分析基盤における 機械学習サービスの活用 1 2024.11.12 GO株式会社 鈴木
隆史
© GO Inc. 鈴木 隆史 | Takashi Suzuki 開発本部 AI技術開発部
データプラットフォームグループ • 前職ではデータ基盤、ML基盤の開発に従事 • 現在は複数の機械学習サービスのアプリケーションやパイプライ ンの設計開発を担当 2 自己紹介
© GO Inc. 3 タクシーアプリ 『GO』 乗る位置を指定 到着まで待つ 乗る! 支払いはキャッシュレスで
素早く降車 ※アプリ上での決済の他、 車内での現金決済にも対応
© GO Inc. 4 タクシーアプリ 『GO』におけるAIサービスの活用例 配車マッチング ETA(到着時間予測) マップマッチング 需給予測
経路最適化 強化学習、逆強化学習 隠れマルコフモデル カルマンフィルタ 時系列予測 統計モデリング 分位点回帰, 最短経路探索 最小重みマッチング
© GO Inc. 5 • タクシーアプリ『GO』は、時間帯や天候によって大きくトラフィックが変動する • そのため、タクシーアプリ『GO』の機械学習基盤では、タクシー供給量(どこに何台タクシーがいる のか)とユーザー需要量(どこに何人ユーザーが待っているのか)を リアルタイムに把握すること
で、適切なタクシー配置やAIサービスへの反映が可能になる ◦ 例えば、需要変動へ迅速に配置することによる混雑エリアへの供給担保や、需供変動を適切にタク シー待ち時間へ反映することによるユーザー満足度向上、などが挙げられる リアルタイムデータの重要性
© GO Inc. データパイプラインごとの役割の概要 6 データソース データパイプライン (データ鮮度) BigQuery データマート
データ活用 AIサービス1 バッチ処理 ストリーミング処 理 加工パイプライン 生データ ユーザーアプリログ タクシー動態ログ 地図 天気・電車遅延 (数時間〜数ヶ月おきの反映 ) (5分以内の反映 ) API処理 マイクロサービス (リアルタイム反映 ) Feature Store タクシー供給量 ユーザー需要量 AIサービス2 AIサービス3 サービスDB 一般的なBigQuery基盤の ストリーミング処理では、最 大5分程度の遅延が発生 するため、リアルタイムの データ処理は難しい課題 があった リアルタイムデータを扱う Feature Store基盤を構築 することで、AIサービスの 精度向上に寄与できる
© GO Inc. • リアルタイムデータの収集・管理 ◦ 他のマイクロサービスから、タクシーの供給量(どこに何台いるか)、ユーザーの需要量(どこに何人 待っているか)のリアルタイムデータを継続的に収集し、 Feature Storeに蓄積する
• 機械学習モデルへのリアルタイムなフィード ◦ 機械学習モデルが必要とする最新の特徴量として、リアルタイムな予測や意思決定をサポート ◦ 最新データを利用できることで、機械学習モデルの精度向上に寄与できる • 過去データとの連携 ◦ 最新データだけでなく、過去 N分間のデータを保持しているため、直近のトレンドや変化を踏まえた推論 が可能となる 7 リアルタイムデータを収集するFeature Store基盤の役割
© GO Inc. 8 Feature Store基盤のアーキテクチャー 参考:タクシーアプリ『GO』の機械学習基盤のアーキテクチャ
© GO Inc. アーキテクチャポイント • Feature Store基盤のDBにはRedis Clusterを採用 ◦ 大量のリアルタイムデータの読み書きを高速に行えるようにする
◦ データ増加やアクセス頻度の上昇に対してもスケーラブルに対応可能 • 全てのAIサービスからのアクセスを統一化 ◦ 各モデルから統一的な I/Fでデータを取得できる ◦ データの重複を防ぎ、効率的なデータ運用が可能となる 課題と今後の展望 • 複数のサービスが共通のRedisを参照しているため、単一障害点となっている ◦ この課題を解決するためにフォールバック処理を加えることで、他のサービスへの影響を最小限に抑え る予定 9 アーキテクチャ選定のポイントと今後の展望
© GO Inc. 10 リアルタイムデータの重要性 • タクシーアプリ『GO』では、時間帯や天候の変化によりタクシーの需要と供給が大きく変動するた め、リアルタイムにタクシー供給量とユーザー需要量を把握することが重要 リアルタイムデータを蓄積するための Feature
Store基盤 • 通常のBigQuery基盤によるストリーミング処理では 5分程度の遅延が発生するため、リアルタイム 処理には限界がある • マイクロサービスからリアルタイムデータを継続的に収集できるように、 Feature Store基盤を Redisで構築した • 直近のリアルタイムデータに基づいて、機械学習モデルの推論の精度向上を図っている まとめ