[論文レビュー] Walle: An End-to-End, General-Purpose, and Large-Scale Production System for Device-Cloud Collaborative Machine Learning
Walle は、エッジデバイスとクラウドの協調学習を実現するエンドツーエンドで汎用的かつ大規模なプロダクションシステムであり、数百億台のデバイスにわたり、多様な機械学習タスクを効率的で安全かつ低遅延に実行することを可能にする。MNN をベースにしたクロスプラットフォームコンピューティングコンテナ(オペレータ分解と準自動探索を備える)、ストリーム処理型データパイプライン、スケーラブルなデプロイメントプラットフォームを統合し、実世界の e コマースワークロードにおいて高いパフォーマンスと低いオーバーヘッドを達成している。
To break the bottlenecks of mainstream cloud-based machine learning (ML) paradigm, we adopt device-cloud collaborative ML and build the first end-to-end and general-purpose system, called Walle, as the foundation. Walle consists of a deployment platform, distributing ML tasks to billion-scale devices in time; a data pipeline, efficiently preparing task input; and a compute container, providing a cross-platform and high-performance execution environment, while facilitating daily task iteration. Specifically, the compute container is based on Mobile Neural Network (MNN), a tensor compute engine along with the data processing and model execution libraries, which are exposed through a refined Python thread-level virtual machine (VM) to support diverse ML tasks and concurrent task execution. The core of MNN is the novel mechanisms of operator decomposition and semi-auto search, sharply reducing the workload in manually optimizing hundreds of operators for tens of hardware backends and further quickly identifying the best backend with runtime optimization for a computation graph. The data pipeline introduces an on-device stream processing framework to enable processing user behavior data at source. The deployment platform releases ML tasks with an efficient push-then-pull method and supports multi-granularity deployment policies. We evaluate Walle in practical e-commerce application scenarios to demonstrate its effectiveness, efficiency, and scalability. Extensive micro-benchmarks also highlight the superior performance of MNN and the Python thread-level VM. Walle has been in large-scale production use in Alibaba, while MNN has been open source with a broad impact in the community.
研究の動機と目的
- クラウド中心の機械学習におけるボトル neck を解消するため、高遅延、通信コスト、プライバシーリスクを低減する大規模なデバイス-クラウド協調学習を実現すること。
- モバイルおよびクラウドプラットフォームで、コンピュータビジョン、自然言語処理、レコメンデーションを含む多様な機械学習ワークロードをサポートする汎用的でエンドツーエンドのシステムを設計すること。
- 機械学習タスクの反復開発をモバイルアプリのリリースサイクルから分離し、アプリ更新なしで迅速な実験とデプロイメントを可能にすること。
- 非一様なデバイス環境でも同時に実行可能で、効率的なモデル推論を実現する高パフォーマンスなクロスプラットフォーム実行環境を提供すること。
- 数百のハードウェアバックエンドにわたり、機械学習オペレータの最適化にかかる人的作業を自動化メカニズムによって削減すること。
提案手法
- コンピューティングコンテナは MNN に基づいて構築されており、洗練された Python スレッドレベルの仮想マシンを備えたテンソルコンピューティングエンジンであるため、クロスプラットフォーム実行と同時タスク処理が可能である。
- 異なるハードウェアバックエンドにわたるオペレータの自動最適化を実現するために、オペレータ分解と準自動探索が用いられ、人的なチューニングを最小限に抑える。
- データパイプラインは、デバイス上で動作するストリーム処理フレームワークを採用し、ユーザー行動データを元データの発生源で処理することで、データ転送と遅延を削減する。
- デプロイメントプラットフォームは、マルチグレインのポリシーを備えたプッシュ・スケジューリング方式を採用し、リアルタイムで数百億台のデバイスに機械学習タスクを効率的に配信する。
- システムは、デバイスおよびクラウド環境の両方で、前処理、学習、推論、後処理を含む機械学習ライフサイクル全体を管理可能にしている。
- MNN のランタイム最適化により、計算グラフに応じて最適なバックエンドを動的に選択し、パフォーマンスと適応性を向上させる。
実験結果
リサーチクエスチョン
- RQ1多様な応用分野にわたり、エンドツーエンドのデバイス-クラウド協調学習をサポートする汎用的で大規模なシステムをどのように設計できるか?
- RQ2通信コストと計算オーバーヘッドを最小限に抑えながら、数百億台のモバイルデバイスで効率的で低遅延かつ安全な機械学習タスク実行を実現するメカニズムは何か?
- RQ3機械学習タスクの反復開発をモバイルアプリのリリースサイクルから分離し、迅速な実験と本番環境での反復を可能にするにはどうすればよいか?
- RQ4人的チューニングなしで、数百のハードウェアバックエンドにわたる機械学習オペレータの最適化を自動化する技術は何か?
- RQ5実世界のプロダクション品質の e コマースワークロードにおいて、システムがどのように高いパフォーマンスとスケーラビリティを維持できるか?
主な発見
- Walle はアリババで大規模に導入されており、多様な e コマースアプリケーションで毎日数百億人のユーザーにサービスを提供しており、実世界でのプロダクション実現可能性を実証している。
- MNN を基盤とするコンピューティングコンテナはマイクロベンチマークにおいて優れたパフォーマンスを発揮し、自動オペレータ最適化とバックエンド選択のおかげで顕著な高速化を達成している。
- デバイス上でのストリーム処理パイプラインにより、ユーザー行動データを元データ発生源で処理することで、データ転送と遅延が削減され、処理効率が向上している。
- プッシュ・スケジューリング方式により、マルチグレインの制御を備えた大規模なデバイスファームへのタスク配信がタイムリーかつスケーラブルに実現されている。
- 準自動探索とオペレータ分解のメカニズムにより、非一様なハードウェア環境にわたる機械学習オペレータの最適化にかかる人的作業が著しく削減された。
- Walle は、機密データをデバイス上に保持しつつ計算をモバイルデバイスにオフロードすることで、低遅延かつプライバシーを守った推論を実現している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。