Slide 1

Slide 1 text

GKE Autopilot で Ops レスな リアルタイム ML を実現 西村 優汰 株式会社 プレイド エンジニア

Slide 2

Slide 2 text

1. KARTE とは 2. リアルタイム推論基盤上の GKE Autopilot 3. Google Cloud の PSO を活用した ML プロジェクト 4. まとめ アジェンダ

Slide 3

Slide 3 text

KARTE とは 01

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

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 蓄積データ量

Slide 6

Slide 6 text

KARTE 導入企業様(一部抜粋) 出所:株式会社プレイド「成長可能性に関する説明資料」2020 年 12 月

Slide 7

Slide 7 text

リアルタイム推論基盤上の GKE Autopilot 02

Slide 8

Slide 8 text

Batch 予測と Realtime 予測 Batch 予測 - 使用するデータが数日、数週間で 変化する場合 Realtime 予測 - 使用するデータが数秒で 変化する場合 1 週間後 ロイヤル カスタマーになるか 20 秒後 問い合わせをするか

Slide 9

Slide 9 text

Realtime 予測の例 会員登録でわからない点が あり、離脱してしまう 離脱しそうな エンドユーザーに対 して、ヘルプページな どを提案 離脱予測 課題 クーポンがなくても購買するユー ザーにもクーポンを配布 しており、コストが増加して いる 購入を迷っている エンドユーザーに だけ、クーポンを配布す ることで ROI を 最大化 購買予測 課題 電話とチャットの窓口を用意してい るが、電話お問い合わせのオペ レーション コストが高い お問い合わせ しそうなエンド ユーザーに対して、 チャットへの お問い合わせを 促し、コスト削減 問い合わせ予測 課題 解決策 解決策 解決策

Slide 10

Slide 10 text

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 以内 ① ② ③ ④ ⑤

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

Cloud Run vs GKE standard Cloud Run GKE Standard Docker イメージでデプロイ可 インフラ管理コストがかからない マシンリソースを手軽に選択可 VPC 内にデプロイ可 コンピュータ リソースの永続性 運用の手軽さを最重要視して、Cloud Run を選択 (GKE Autopilot ローンチ前)

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

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

Slide 16

Slide 16 text

Cloud Run から GKE Autopilot にしてみて ● Pros ○ manifest に resources の limits と requests を記述するだけで、 ML エンジニアが欲しいマシンリソースが簡単に用意でき、運用まで期待できる ○ コンピュータ リソースの永続性 ○ インフラの柔軟性を担保しつつ、運用を考えなくてよい ○ Cloud Run と比較して latency も大きくは変化しなかった ● Cons ○ ML リアルタイム推論基盤で今後利用したい、 GPU がまだサポートされていない

Slide 17

Slide 17 text

Proprietary + Confidential Google Cloud の PSO を 活用した ML プロジェクト 03

Slide 18

Slide 18 text

ML プロジェクト特有の課題と弊社の課題 ● プロジェクト チームの ML 理解 ● ML が活用できる課題探索 ● 課題解決に必要なデータの有無 ● ML モデルの実用性の検証 ● プロダクトへの組み込み ● プロダクトでの実運用 ● 弊社で行っている既存の ML プロジェクトが少ない ● ML エンジニアが少数 ML プロジェクト特有の課題 弊社の課題

Slide 19

Slide 19 text

Google Cloud のプロフェッショナル サービス(PSO)の活用 ● プロジェクト チームの ML 理解 ● ML が活用できる課題探索 ● 課題解決に必要なデータの有無 ● ML モデルの実用性の検証 ● プロダクトへの組み込み ● プロダクトでの実運用 ML プロジェクト特有の課題 PSO サービスを活用

Slide 20

Slide 20 text

ビジネス担当者も含めた課題探索 グループ A グループ B グループ C ビジネス上インパクトの大きい課題の探索を行うため、ビジネス担当者や技術 /開発担当者を含めたワークショップを実施

Slide 21

Slide 21 text

妥当性検証を通して見えてきた課題と方針 考慮観点 ● 業界によってユーザーの行動特性が異なる ● 業態の差を吸収可能な一般的なモデル化 ● 横断で活用可能な共通行動データは典型的 なもの(訪問、購買など) ● エンドユーザー特性を直感的に理解できる出 力が必要 ● エンドユーザー行動(訪問 /購買など)に応じ た推論値の随時更新 モデル化の方針 RFM を基礎にしたユーザー行動モデルを 適用/発展 ● 既存の RFM よりも詳細な視点で 重要なエンドユーザーの発見を促す ことが可能 ● RFM を基礎にしているので、 直感的な理解が可能 ● RFM だけなので、典型的なデータの みで構築可能

Slide 22

Slide 22 text

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 基盤を開発

Slide 23

Slide 23 text

モデル開発と実地検証を遂行中 クライアント担 当者様 ML 基盤を活用しながら、モデルの継続開発、実地検証の試行錯誤を効率的に遂行中 実地検証 モデル開発 PLAID ビジネス担当 / エンジニア PLAID エンジニア PSO 支援 ML 基盤

Slide 24

Slide 24 text

PSO を活用するメリット ● Google Cloud が世界中で培ってきた ML プロジェクトの進め方を学べる ○ 他の案件でも遂行方法を活用可能 ● 以下を担当していただく事により、 ML エンジニアがより開発に集中可能 ○ ビジネス担当も巻き込んだ ML で解決可能なビジネス課題整理 ○ ビジネス課題、データなどを総合的に考慮した適切な ML モデルの提案 ○ 弊社のお客様を巻き込んだ ML モデルの価値検証

Slide 25

Slide 25 text

Proprietary + Confidential まとめ 04

Slide 26

Slide 26 text

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