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
2.8k
タクシーアプリ『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
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
230
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
230
GAEログのコスト削減
mot_techtalk
0
220
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
250
App Store Connect APIで 作業時間を増やそう
mot_techtalk
4
490
Streamlitで結合テスト工数の削減に成功した話
mot_techtalk
8
3k
Streamlit ホスティング基盤をどのように作ったか
mot_techtalk
4
1.5k
Streamlit ホスティング基盤をスケールさせる
mot_techtalk
4
950
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
4
710
Other Decks in Programming
See All in Programming
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
1
130
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
170
DRFを少しずつ オニオンアーキテクチャに寄せていく DjangoCongress JP 2025
nealle
2
300
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
850
Better Code Design in PHP
afilina
0
180
kintone開発を効率化するためにチームで試した施策とその結果を大放出!
oguemon
0
360
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
660
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
510
オレを救った Cline を紹介する
codehex
15
14k
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
430
はじめての Go * WASM * OCR
sgash708
1
120
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
270
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
A designer walks into a library…
pauljervisheath
205
24k
Facilitating Awesome Meetings
lara
53
6.3k
Producing Creativity
orderedlist
PRO
344
40k
Embracing the Ebb and Flow
colly
84
4.6k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
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で構築した • 直近のリアルタイムデータに基づいて、機械学習モデルの推論の精度向上を図っている まとめ