Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
Search
GO Inc. dev
November 12, 2024
Programming
6
2.3k
タクシーアプリ『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
App Store Connect APIで 作業時間を増やそう
mot_techtalk
4
310
Streamlitで結合テスト工数の削減に成功した話
mot_techtalk
8
2.7k
Streamlit ホスティング基盤をどのように作ったか
mot_techtalk
4
1k
Streamlit ホスティング基盤をスケールさせる
mot_techtalk
4
670
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
4
490
将来の機能拡張を見据えたMetricKitの実装
mot_techtalk
0
420
タクシーアプリ『GO』でのApple Pay導入
mot_techtalk
0
500
Remote notification tricks with Notification Service Extension
mot_techtalk
0
440
タクシーアプリ『GO』におけるプラットフォームエンジニアリングの実践
mot_techtalk
15
12k
Other Decks in Programming
See All in Programming
チームにとって最適なスキルアップ施策とは何か/what-is-the-best-skill-up-approach-for-team
nobuoooo
0
170
Figma Dev Modeで変わる!Flutterの開発体験
watanave
0
3.7k
Java 23の概要とJava Web Frameworkの現状 / Java 23 and Java web framework
kishida
2
370
最新TCAキャッチアップ
0si43
0
250
競技プログラミングで 基礎体力を身につけよう / You can get basic skills through competitive programming
mdstoy
0
140
watsonx.ai Dojo #4 生成AIを使ったアプリ開発、応用編
oniak3ibm
PRO
2
270
Full stack testing :: basic to basic
up1
1
860
CSC509 Lecture 13
javiergs
PRO
0
150
デザインパターンで理解するLLMエージェントの作り方 / How to develop an LLM agent using agentic design patterns
rkaga
11
2.8k
Discord Bot with AI -for English learners-
xin9le
1
110
5分ぐらいで分かる、トリミング機能の作り方
tsutsuitakumi
0
180
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
3
1.5k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Making the Leap to Tech Lead
cromwellryan
133
9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
We Have a Design System, Now What?
morganepeng
51
7.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
8
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.2k
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で構築した • 直近のリアルタイムデータに基づいて、機械学習モデルの推論の精度向上を図っている まとめ