True ML Talks #9 - DoorDashにおける機械学習プラットフォーム

Built for Speed: ~10ms Latency, Even Under Load
Blazingly fast way to build, track and deploy your models!
- Handles 350+ RPS on just 1 vCPU — no tuning needed
- Production-ready with full enterprise support
True ML Talksの別のエピソードで戻ってきました。今回は、深く掘り下げます。 ドアダッシュ MLプラットフォーム、そして私たちが話しているのは ヒエンルー。
Hien LuuはDoorDashのシニアエンジニアリングマネージャーで、DoorDashのMLプラットフォームからビルドを構築しています。誰もが知っているように、DoorDash は米国最大のフードデリバリー企業の 1 つで、250 億ドルを超える企業です。
📌
Hien Luuとの会話では、以下の点について説明します。
-ドアダッシュの ML ユースケース
-スケーラブルなモデルサービングレイヤーの設計
-シャドーイングモデル:テストとデプロイメントの加速
-gRPC による標準化
-フィーチャーエンジニアリングとデータフォーマットの合理化
-モデル検証と自動再トレーニングの重要性
-ジェネレーティブAIとLLMのサポートにおける機械学習運用の課題と機会
以下の全エピソードをご覧ください。
ML @ドアダッシュのユースケース
- 効率的な注文割り当てと配送: ML アルゴリズムは、注文準備時間の予測、配達時間の推定、最適な効率化のためのダッシュのルーティングにおいて極めて重要な役割を果たします。DoorDash は、レストランの調理時間、交通パターン、気象条件などの履歴データを活用して、注文を Dashers に動的に割り当て、より迅速な配達とシームレスな顧客体験を実現します。
- パーソナライズされた検索の推奨事項: MLを利用した検索レコメンデーションは、DoorDashなどのオンラインプラットフォームの標準機能となっています。DoorDash は、顧客の好み、注文履歴、コンテキストデータを分析することで、ML アルゴリズムを採用して、関連するレストラン、料理、料理をユーザーに提案します。このパーソナライズされたアプローチは、ユーザーエクスペリエンスを向上させ、探索を促し、顧客満足度を高めます。
- ターゲットを絞った広告とプロモーション: DoorDashはMLを活用して、ユーザーの好みに合ったターゲットを絞った広告やプロモーションを提供します。DoorDash は、ユーザーの行動、取引履歴、人口統計データを分析することで、特定の顧客セグメントに合わせてマーケティングキャンペーンを調整しています。このターゲットを絞ったアプローチは、プロモーションの効果を高め、顧客ロイヤルティを高め、エンゲージメントを促進します。
- プロアクティブな不正検知: 詐欺対策として、DoorDashはMLアルゴリズムを利用して、偽の注文、アカウントのハイジャック、支払い詐欺などの不正行為を検出して軽減しています。DoorDash は、パターン、異常、履歴データを分析することで、不正行為を積極的に特定し、顧客を保護し、プラットフォームの完全性を維持します。
- メニュー項目の分類: 多種多様なメニューを提供する膨大な数のマーチャントをオンボーディングすることは、DoorDashにとってユニークな課題です。ML アルゴリズムは、メニュー項目を自動的に検出して正確に分類するために採用されています。DoorDash は、画像、テキストによる説明、顧客からのフィードバックを処理することで、マーチャントメニューをプラットフォームにシームレスに統合し、顧客に豊富で一貫性のあるブラウジング体験を提供します。
スケーラブルなモデルサービングレイヤーの設計
DoorDashのMLOpsチームはスケーラブルです モデルサービング layerは、毎日何十億もの予測をサポートする機械学習インフラストラクチャの重要なコンポーネントです。以下に、モデル・サービング・レイヤーの成長を可能にしたアーキテクチャと重要な決定事項に関する洞察をいくつか紹介します。
- 重点的なライブラリサポート: DoorDashのモデルサービングレイヤーは、GBMとPyTorchという2つの主要ライブラリをサポートするように設計されました。この決定により、MLOps チームはこれらのライブラリ用に最適化されたソリューションを構築し、効率的かつ効果的なモデル提供を実現することができました。
- バッチ予測サポート: ネットワークコールのオーバーヘッドを減らすために、モデルサービングレイヤーはバッチ予測をサポートするように設計されました。これは、1 人のユーザーに対して何千ものランキングを生成するレコメンデーションシステムのようなユースケースに特に役立ちます。予測をバッチ処理することで、システムのパフォーマンスとスケーラビリティが向上します。
- テスト用のモデルシャドウイング: モデル提供プラットフォームにはモデルシャドウと呼ばれる機能が組み込まれているため、データサイエンティストは実際のユーザートラフィックに影響を与えずに本番環境でモデルをテストできます。このシャドーモードでは、本番環境に移行する前にモデルのパフォーマンスと動作について確信を持てるようになり、スムーズでエラーのないデプロイプロセスが保証されます。
- マイクロサービスアーキテクチャ: DoorDashのモデル提供プラットフォームはマイクロサービスアーキテクチャを採用しています。このプラットフォームは Kubernetes を活用してモデルを独立したポッドに整理し、個々のニーズに基づいて独立してスケーリングできるようにします。このアーキテクチャアプローチは、マイクロサービスを構築するための業界のベストプラクティスと合致して、モジュール性、スケーラビリティ、効率的なリソース割り当てを促進します。
シャドーイングモデル:テストとデプロイメントの加速
DoorDashのモデルサービスインフラストラクチャ内にシャドウレイヤーを実装することで、モデルのテストと展開の速度が劇的に向上しました。このセクションでは、シャドウイングレイヤーのユニークな側面、Canary テストとの違い、データサイエンティストの効率的なモデルテストを促進するうえでの大きな影響について詳しく説明します。
効率化されたシャドウイングプロセス
DoorDashのシャドウレイヤーはプロセスを簡素化し、データサイエンティストがモデルテストを簡単に実施できるようにします。実装は単純でパワフルです。データサイエンティストは、設定と直感的なツールを利用してプライマリモデルとシャドーモデルを指定します。数回クリックするだけで、受信トラフィックの任意の割合 (1% や 2% など) をシャドウモデルにルーティングするように割り当てることができます。指定されたモデルを適切なポッドに読み込むこと、指定されたトラフィックをシームレスにルーティングすること、シャドウモデルの予測を記録することなど、残りの処理はプラットフォームが行います。
データサイエンティストの速度向上と能力強化
DoorDashのシャドウレイヤーのシンプルさと使いやすさは、データサイエンティストのテストと展開のペースを劇的に速めました。不必要な複雑さを排除し、エンジニアリングサポートへの依存を最小限に抑えることで、データサイエンティストはシャドウイングプロセスを完全に自主的に行えるようになりました。この新たな俊敏性により、モデルをより頻繁に反復できるようになり、その結果、開発サイクルが加速し、迅速なイノベーションが促進されます。
ただし、モデルの数やトラフィック量が増えるにつれて、ロギングシステムのスケーラビリティやコスト管理などの考慮事項に対処することが不可欠です。シャドウレイヤーのメリットを維持するためには、効率的な運用とモデルテストの範囲の拡大とのバランスを取ることが依然として重要です。
シャドーイングとカナリアテストの区別
- シャドウイング: ML Ops におけるモデルのシャドーイングとは、実際のユーザートラフィックに影響を与えずに、本番環境でモデルをテストおよび評価する方法を指します。これにより、データサイエンティストはモデルを完全に展開する前に、モデルのパフォーマンスと動作に自信を持つための安全な場となります。データサイエンティストは、受信したリクエストの一部をシャドーモデルに転送することで、その有効性を評価し、情報に基づいた意思決定を行うことができます。
- カナリア: 一方、カナリアテストでは、新しいモデルを一部のユーザーに徐々に展開して、既存のモデルと比較してパフォーマンスと安定性を評価します。新しいモデルをユーザーベース全体に展開する前に、問題や不一致を特定するのに役立ちます。Canary テストでは、新しいモデルがユーザーエクスペリエンスに与える影響を統制して評価できるため、採用に関するデータ主導の意思決定が可能になります。
📌
gRPC で標準化されています
DoorDashは企業全体の標準プロトコルとしてgRPCを採用しました。この選択は、大規模環境における安定性と効率性の必要性から決定されました。gRPC のバイナリプロトコルは、その実証済みの性質とともに、ML インフラストラクチャのあらゆる側面の最適化に注力しているDoorDashにとって魅力的でした。gRPC をサービス間通信に使用することを決定したことで、モデルサービス層のコンポーネント間の信頼性が高く効率的なやりとりが保証されました。
私たちは皆、大規模に物事を行う場合、あらゆることが重要だと信じています。バイナリプロトコルは、スケールを提供し始め、gRPCが多くの企業でバトルテストされているときに良いと思います。
フィーチャーエンジニアリングとデータフォーマットの効率化
機能エンジニアリングとモデルトレーニングを容易にするために、DoorDashはインフラストラクチャとデータ形式の最適化に重点を置きました。同社は当初、Snowflakeをデータウェアハウスとして活用し、効率的なデータストレージと管理を実現していました。しかし、モデルトレーニング業務を拡大するにつれ、Snowflakeからデータを取得することは非効率的であることが判明しました。データレイクの必要性を認識したヒエン・ルーは、データレイクが多くのユースケースにおいて貴重な資産であることが証明された LinkedIn での経験を活かして、データレイクの導入を提唱しました。データレイクの構築には時間と労力がかかりましたが、いったん導入されれば、DoorDash はそれを活用して機能エンジニアリングフレームワークを構築できるようになりました。
特徴エンジニアリングフレームワークは抽象化レイヤーとして機能し、データサイエンティストは特徴をどのように計算したいかを表現できるようになりました。その後、DoorDash のインフラストラクチャが、データサイエンティストに代わって計算、パイプラインのスケジューリング、リソース管理を処理しました。データレイクチームと協力して、計算された特徴を保存するための最適な形式が決定されました。
DoorDashは、オフライン機能ストアに加えて、オンライン機能ストアも採用しました。ユースケースの大半は、実稼働システムに統合されたオンライン予測に関するもので、オンラインフィーチャストアの存在が必要でした。オフラインとオンラインの両方のフィーチャストアが維持され、業界で一般的に見られるトレーニングとサービスの不一致が解消されました。2 つのストア間でフィーチャセットを同期するために、生成されたフィーチャはオフラインフィーチャストアに保存され、その後オンラインフィーチャストアにアップロードされました。フィーチャエンジニアリングフレームワークは、オフラインシナリオとオンラインシナリオの両方で同じロジックを使用することでプロセスを簡素化しました。データサイエンティストは、両方のストアに必要な機能を指定し、アップロードのスケジュール設定などの基盤となるメカニズムをインフラストラクチャに任せることができました。
MLOps におけるモデル検証と自動再トレーニングの重要性
モデルパフォーマンスの検証
機械学習モデルの正確性と信頼性を確保することは、MLOps プロセスの重要な側面です。モデル検証では、実際のデータを使用してモデルのパフォーマンスをテストし、その有効性を検証します。MLflow などのツールを使用してこの検証プロセスを自動化することで、データサイエンティストは実験を追跡し、結果を比較し、パフォーマンス指標に基づいてさまざまなモデルを評価できます。モデル検証により、モデルの正確な予測能力に確信が持てるようになり、導入プロセスにおける意思決定に役立つ情報が得られます。
最適なパフォーマンスを実現するための自動再トレーニング
自動再トレーニングは、事前定義された基準または閾値に基づいてモデルを自動的に再トレーニングできるようにすることで、モデルの検証をさらに一歩進めます。この先を見越したアプローチにより、モデルは最新の状態に保たれ、長期にわたって最適なパフォーマンスを維持し続けることができます。MLOps チームは手動による介入を最小限に抑えることで、人為的ミスのリスクを軽減し、再トレーニングプロセスを合理化できます。
自動再トレーニングを実装するには、各モデルの特定のニーズと潜在的な結果を慎重に検討する必要があります。MLOps チームは、モデルが適切に再トレーニングされるように、安全対策と柔軟なプロセスを設計して実装する必要があります。これには、最適な再トレーニングの頻度、再トレーニングの基準、再トレーニングしたモデルを本番環境に導入するための戦略を決定するための計画とテストが含まれます。
自動再トレーニングには大きなメリットがあります。モデルを継続的に更新することで、組織はモデルの正確性と信頼性を維持し、進化するデータパターンに適応し、潜在的なパフォーマンスの低下に対処できます。また、再トレーニングを自動化することで、モデルが積極的に改善および更新されるため、本番環境でのエラーやダウンタイムのリスクも軽減されます。
モデル検証と自動再トレーニングを MLOps インフラストラクチャに組み込むことは、堅牢で信頼性の高い機械学習システムを構築するために不可欠です。自動化ツールを活用し、適切に設計されたプロセスを導入することで、組織はモデルが一貫して正確な予測を行い、変化する状況に効果的に適応できるようになります。
ジェネレーティブAIとLLMのサポートにおける機械学習運用の課題と機会
ジェネレーティブAIと言語モデル(LM)は、フードデリバリーを含む多くの業界に革命をもたらす可能性を秘めています。ただし、これらのテクノロジーを効果的に活用するには、ML Ops チームがいくつかの課題と機会に取り組む必要があります。
- 急速に進化する空間: ジェネレーティブAIと言語モデル(LM)のペースの速い進歩に遅れずについていくことは、データサイエンティストや機械学習運用チームにとって課題です。
- データサイエンティストのサポートに焦点を当てる: データサイエンティストが特定のユースケースでLLMを効果的に活用できるようにするために必要なインフラストラクチャとツールを決定することに重点を置く必要があります。
- プロンプトエンジニアリング: インフラストラクチャー・チームは、データ・サイエンティストが求めるアウトプットが得られるようにプロンプトを最適化したり微調整したりするうえで、データ・サイエンティストにとって重要な役割を果たすことができます。
- プライバシーとレイテンシーのための内部ホスティング: ユースケースによっては、プライバシーの問題への対処、レイテンシの削減、またはコストの管理のために、LM を社内でホストする必要がある場合があります。内部ホスティングの設定方法と GPU 構成の操作方法を理解することが不可欠になります。
- インフラへの投資: DoorDashのような企業は、LLMとジェネレーティブAIの可能性を認識し、多様なユースケースをサポートし、データサイエンティストを支援するために必要なインフラストラクチャに投資しています。
- オープン AI と内部モデルの活用: ユースケースが異なれば、必要なホスティングアプローチも異なる場合があります。オープンな AI モデルを活用できるものもあれば、レイテンシー、データセット、規模、コストなどの要因に基づいて社内でホストされたモデルが必要なものもあります。
- リソース管理とスケーラビリティ: リソースを効果的に管理し、モデルの量子化の課題に対処することは、LLMをスケーラブルな方法でホスティングするための重要な考慮事項です。
DoorDashのチームがジェネレーティブAIについて書いた興味深いブログをもう1つ紹介します。
True ML Talks シリーズの以前のブログをお読みください。
TrueMLを見続けてください ユーチューブシリーズ そしてTrueMLを読んでください ブログシリーズ.
TrueFoundry は、Kubernetes上で動作するMLデプロイメントPaaSであり、開発者のワークフローを加速させるとともに、モデルのテストとデプロイにおいて完全な柔軟性を確保し、インフラチームには完全なセキュリティと制御を提供します。当社のプラットフォームを通じて、機械学習チームは デプロイおよび監視 モデルを15分で、100%の信頼性、スケーラビリティ、そして数秒でのロールバック機能を備えて行えるようにします。これにより、コストを削減し、モデルをより迅速に本番環境にリリースできるようになり、真のビジネス価値の実現を可能にします。
TrueFoundry AI Gateway delivers ~3–4 ms latency, handles 350+ RPS on 1 vCPU, scales horizontally with ease, and is production-ready, while LiteLLM suffers from high latency, struggles beyond moderate RPS, lacks built-in scaling, and is best for light or prototype workloads.
The fastest way to build, govern and scale your AI













.webp)




.png)








.webp)
.webp)








