Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GKE Autopilot で Ops レスなリアルタイム ML を実現

GKE Autopilot で Ops レスなリアルタイム ML を実現

Presentation on Google Cloud Day Digital 2021
「GKE Autopilot で Ops レスなリアルタイム ML を実現」

Movie: https://cloudonair.withgoogle.com/events/google-cloud-day-digital-21/watch?talk=d3-ml-05

nichimu

May 31, 2021
Tweet

More Decks by nichimu

Other Decks in Programming

Transcript

  1. 1. KARTE とは 2. リアルタイム推論基盤上の GKE Autopilot 3. Google Cloud

    の PSO を活用した ML プロジェクト 4. まとめ アジェンダ
  2. 68. 3 億 UU 累計ユーザー数 ※1 105,000 over 秒間トラッキング数 ※3

    0.x 秒/解析 解析速度 1.55 兆円 年間解析流通金額 ※2 ※1 ローンチ〜2020 年 2 月までの解析ユニーク ユーザー数の実績 ※2 EC 領域における解析流通金額。 2019 年 3 月〜2020 年 2 月までの単年の実績 ※3 秒間解析イベント数(閲覧、購入、クリックなど全計測イベントが対象。  2020 年 3 月の最大値) 180+ PB 月間解析データ量 8+ PB 蓄積データ量
  3. Batch 予測と Realtime 予測 Batch 予測 - 使用するデータが数日、数週間で 変化する場合 Realtime

    予測 - 使用するデータが数秒で 変化する場合 1 週間後 ロイヤル カスタマーになるか 20 秒後 問い合わせをするか
  4. Realtime 予測の例 会員登録でわからない点が あり、離脱してしまう 離脱しそうな エンドユーザーに対 して、ヘルプページな どを提案 離脱予測 課題

    クーポンがなくても購買するユー ザーにもクーポンを配布 しており、コストが増加して いる 購入を迷っている エンドユーザーに だけ、クーポンを配布す ることで ROI を 最大化 購買予測 課題 電話とチャットの窓口を用意してい るが、電話お問い合わせのオペ レーション コストが高い お問い合わせ しそうなエンド ユーザーに対して、 チャットへの お問い合わせを 促し、コスト削減 問い合わせ予測 課題 解決策 解決策 解決策
  5. GKE Autopilot 使用前の全体構成 リアルタイム推論基盤( ML) Prediction API Cloud Run Event

    Data Cloud Spanner API trigger Cloud Pub/Sub Data Process Cloud Data ow Prediction Result Cloud Bigtable Event Data Cloud Pub/Sub Core Server Compute Engine リアルタイム解析 / アクション基盤(Not ML) エンドユーザー Web App { "event_name": "view", "keys": { "api_key": "xxxxxx", "user_id": "user_B", }, "page": "https://plaid.co.jp/", ... } Event Data Action 1 sec 以内 ① ② ③ ④ ⑤
  6. Prediction API GKE Autopilot Cloud Run から GKE Autopilot への置き換え

    リアルタイム推論基盤( ML) Prediction API Cloud Run Event Data Cloud Spanner API trigger Cloud Pub/Sub Data Process Cloud Data ow Prediction Result Cloud Bigtable Event Data Cloud Pub/Sub Core Server Compute Engine リアルタイム解析 / アクション基盤(Not ML) エンドユーザー Web App { "event_name": "view", "keys": { "api_key": "xxxxxx", "user_id": "user_B", }, "page": "https://plaid.co.jp/", ... } Event Data Action 1 sec 以内 ① ② ③ ④ ⑤ 内部用推論 API
  7. 内部用推論 API の要件 Docker Image でデプロイ可 • Cloud Pub/Sub から

    推論トリガーの受取 • Cloud Spanner から 生ログデータを取得 • 様々な機械学習ライブラリを 使用 • Cloud Bigtable への予測結果の 書込 インフラ管理を少なく • ML エンジニアが少数 • ML ソリューションを プロダクトに素早く落とす ことが重要 マシンリソースを手軽に選択 • ML モデルによる必要な マシンリソースの違い • 様々なモデルが多く開発される
  8. Cloud Run vs GKE standard Cloud Run GKE Standard Docker

    イメージでデプロイ可 インフラ管理コストがかからない マシンリソースを手軽に選択可 VPC 内にデプロイ可 コンピュータ リソースの永続性 運用の手軽さを最重要視して、Cloud Run を選択 (GKE Autopilot ローンチ前)
  9. Cloud Run を内部用推論 API として扱う課題 • Cloud Run の仕様で Cloud

    Run 自体に外部 IP を持たせないといけない ◦ 外部 IP をもたせる必要がないのでセキリュティ的に綺麗な設計ではない • Cloud Pub/Sub からの推論トリガーを pull 型で受け取りたい ◦ KARTE で扱う message 数が多いため これらの課題は GKE Standard を使用することで解決するが 運用コスト、マシンリソースの手軽な選択が不可
  10. Cloud Run vs GKE standard vs GKE Autopilot Cloud Run

    GKE Standard GKE Autopilot Docker イメージでデプロイ可 インフラ管理コストがかからない マシン リソースを手軽に選択可 VPC 内にデプロイ可 コンピュータ リソースの永続性 Cloud Run から GKE Autopilot へ置換
  11. Cloud Run から GKE Autopilot にしてみて • Pros ◦ manifest

    に resources の limits と requests を記述するだけで、 ML エンジニアが欲しいマシンリソースが簡単に用意でき、運用まで期待できる ◦ コンピュータ リソースの永続性 ◦ インフラの柔軟性を担保しつつ、運用を考えなくてよい ◦ Cloud Run と比較して latency も大きくは変化しなかった • Cons ◦ ML リアルタイム推論基盤で今後利用したい、 GPU がまだサポートされていない
  12. ML プロジェクト特有の課題と弊社の課題 • プロジェクト チームの ML 理解 • ML が活用できる課題探索

    • 課題解決に必要なデータの有無 • ML モデルの実用性の検証 • プロダクトへの組み込み • プロダクトでの実運用 • 弊社で行っている既存の ML プロジェクトが少ない • ML エンジニアが少数 ML プロジェクト特有の課題 弊社の課題
  13. Google Cloud のプロフェッショナル サービス(PSO)の活用 • プロジェクト チームの ML 理解 •

    ML が活用できる課題探索 • 課題解決に必要なデータの有無 • ML モデルの実用性の検証 • プロダクトへの組み込み • プロダクトでの実運用 ML プロジェクト特有の課題 PSO サービスを活用
  14. 妥当性検証を通して見えてきた課題と方針 考慮観点 • 業界によってユーザーの行動特性が異なる • 業態の差を吸収可能な一般的なモデル化 • 横断で活用可能な共通行動データは典型的 なもの(訪問、購買など) •

    エンドユーザー特性を直感的に理解できる出 力が必要 • エンドユーザー行動(訪問 /購買など)に応じ た推論値の随時更新 モデル化の方針 RFM を基礎にしたユーザー行動モデルを 適用/発展 • 既存の RFM よりも詳細な視点で 重要なエンドユーザーの発見を促す ことが可能 • RFM を基礎にしているので、 直感的な理解が可能 • RFM だけなので、典型的なデータの みで構築可能
  15. PLAID ML チームによる ML 基盤開発 User Data Inference Data BigQuery

    Experiment AI Pla orm Notebook ML Pipeline AI Pla orm Pipelines Inference GKE GKE Autopilot 実験 本番用モデル訓練 推論 Batch Train AI Pla orm Training ML Pipeline AI Pla orm Pipelines Model Data Cloud Storage User Data 取得 User Data 取得 Model 保存 User Data 取得 Inference Data 保存 Model 取得 Inference Data 使用 User Data 保存 機械学習技術のビジネス適用効率化 /高速化のため、 PLAID エンジニアで ML 基盤を開発
  16. PSO を活用するメリット • Google Cloud が世界中で培ってきた ML プロジェクトの進め方を学べる ◦ 他の案件でも遂行方法を活用可能

    • 以下を担当していただく事により、 ML エンジニアがより開発に集中可能 ◦ ビジネス担当も巻き込んだ ML で解決可能なビジネス課題整理 ◦ ビジネス課題、データなどを総合的に考慮した適切な ML モデルの提案 ◦ 弊社のお客様を巻き込んだ ML モデルの価値検証
  17. まとめ • ML プロジェクトには ML 特有の課題がある ◦ ML で実現可能なことの認識のすり合わせ ◦

    課題を解くのに必要なデータ特性の把握 ◦ ML モデルの妥当性検証 など • Google Cloud の プロフェッショナル サービスを 活用し、効率的にプロジェクトを推進できた • ML 基盤を開発したことで、よりスムーズにモデルの価 値検証が可能に • リアルタイム推論基盤上の Cloud Run を GKE Autopilot に置換 • インフラ管理をほぼしないリアルタイム推論基盤を実現 • Cloud Run と比較しても特に問題なく使用でき、 さらに以下のメリットを享受 ◦ コンピュータ リソースの永続性 ◦ 外部 IP を持たせなくて良い Google Cloud の PSO を活用した ML プロジェクト リアルタイム推論基盤上の GKE Autopilot