7. eAIプロセスパターンチームで整理したパターンの一覧
7
番号 パターン名
01 a04 Separation of Concerns and Modularization of ML Components
02 g02a Data Flows up, Model Flow down (Federated Learning)
03 g02b Secure Aggregation
04 g10 Deployable Canary Model
05 g15b Microservice Architecture
06 g16 Data Lake
07 g17 Kappa Architecture
08 g18 Lambda Architecture
09 s02f Discard PoC code
10 s02h Parameter-Server Abstraction
11 s03a Isolate Data Workload and Training Workload to Different Machines
12 s03b ML Versioning
13 s05 Encapsulate ML models within rule-base safeguards
14 s10a Distinguish Business Logic from ML Models
15 s10b ML Gateway Routing Architecture
9. パターンの全体像
9
Separation of Concerns and
Modularization of ML Components
Data Flows up, Model
Flow down (Federated
Learning)
Secure Aggregation
Deployable
Canary
Model
Microservice Architecture
Data Lake
Kappa Architecture
Discard PoC code
Parameter-Server
Abstraction
Isolate Data Workload and Training
Workload to Different Machines
ML Versioning Encapsulate ML models
within rule-base
safeguards
Distinguish Business
Logic from ML Models
ML Gateway Routing
Architecture
ビジネスロジックとの分離関係 Web・マイクロサービス関係
分散・エッジ関係
Lambda Architecture
保守性関係
ビッグデータ・ストリーム基盤関係
説明性・安全性関係
概要説明の中で紹介
パターンの構造化の中で紹介
10. Microservice Architecture
複雑なアプリケーション間でのやり取りを無くして、標準的なインターフェースで通信を行う
10
DANIEL SMITH, Exploring Development Patterns in Data Science. https://www.theorylane.com/2017/10/20/some-development-patterns-in-data-science/
Azure Machine Learning とは. https://docs.microsoft.com/ja-jp/azure/machine-learning/overview-what-is-azure-ml
12. Isolate Data Workload and Training Workload to
Different Machines
異なるワークロードを異なるマシンに物理的に分離し柔軟性とスケーラビリティを実現
ストレージからデータを読み取り凝縮するデータワークロード
迅速かつ効率的に訓練する訓練ワークロード
ワークロードの内容や規模、ネットワーク使用量に合わせ圧縮、スケジューリング、データ/計算機配置・構成最適化
12 Kim M. Hazelwood, et al. : Applied Machine Learning at Facebook: A Datacenter Infrastructure Perspective. HPCA 2018: 620-629
16. Data Flows up, Model Flow down (Federated Learning)
概要
① 共有モデル(訓練済みモデル)をローカルデバイスに配置
② ローカルデバイスで収集された利用データを元に共有モデルを再訓練
③ 各ローカルデバイスから提供された共有モデルからの差分を用いて、共有モデルを改良
16
①
①
②
②
③
再訓練に用いる
利用データ
17. Data Flows up, Model Flow down (Federated Learning)
17
Intent 入力に対して予測を行う応答速度を上げると同時に、個別 の利用結果を
用いて予測の精度を改善する。一方、利用者のプライバシーデータを保護する。
Problem 機械学習システムではモデルがサーバーにあると、予測に時間がかかるという課
題がある。また、利用者の入力に独自の傾向がある場合には、予測精度が下
がるという課題がある。さらに、予測精度向上のために利用者の入力ログを収
集する場合には、データのプライバシーを考慮する必要がある。
Solution ① ローカルデバイスで予測モデルを動かす
② ローカルデバイスで個別に予測モデルを訓練する
③ ローカルデバイス内のデータを他と共有せずに、予測モデルを再訓練する
Context 個人利用のデバイス(スマートフォン)で動くアプリケーションの全体設計や予測
モデルの運用の際に適用する
Discussion • ローカルデバイスに十分な計算資源があること
• 個別の利用状況に応じた再訓練により悪影響がでないこと
• 予測モデル同士の統合ができること
①
①
②
②
③
再訓練に⽤いる
利⽤データ
パターンの記述内容
操作性の向上
セキュリティ・プライ
バシーの向上
応答速度をあげる
利用者データの保護