Slide 1

Slide 1 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved SageMakerとAirflowによる 機械学習モデルの運⽤⾃動化について 2020年7月9日 AWS AI/ML@Tokyo 株式会社電通デジタル 今井優作 [email protected]

Slide 2

Slide 2 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 2 ⾃⼰紹介 今井 優作(Yusaku Imai) 2018年 電通デジタル中途入社 データサイエンティスト/機械学習エンジニア コンサル寄りの組織において 機械学習基盤をはじめとする開発業務全般を推進 最近は因果推論にも興味あり BigQueryで傾向スコア分析 BigQueryでUplift Modeling分析 趣味はサッカー観戦(熱烈なバルサファン)

Slide 3

Slide 3 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 3 アジェンダ • 顧客データ起点のデュアルファネル®広告運用「x-stack」について • Amazon SageMaker導入に至る経緯 • SageMakerとAirflowによる機械学習基盤の構築 • XGBoostでの構築事例 • おわりに

Slide 4

Slide 4 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved 4 顧客データ起点のデュアルファネル®広告運⽤ 「x-stack」 0

Slide 5

Slide 5 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 5 顧客データ起点のデュアルファネル®広告運⽤「x-stack」 これまでは、媒体の自動入札機能による が主流だったが、 OMO(Online Merges with Offline)の普及に伴い が求められている! Web上の行動に基づく高精度なユーザーターゲティング 企業が保有している顧客ごとのCRMデータまで加味したターゲティング

Slide 6

Slide 6 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL デジタル広告媒体ではさまざまな用途で機械学習モデルが使われている - 広告クリック予測, コンバージョン予測 - 予算配分最適化 - etc. 機械学習モデルの精度向上には学習データの量と質が重要であるが、 ビジネス成果指標が深くなるほどデータの母数が小さくなる 6 顧客データ起点のデュアルファネル®広告運⽤「x-stack」 データ量 ビジネス成果指標 オンライン行動 オフライン行動

Slide 7

Slide 7 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL “x-stack(クロス-スタック)”はWeb回遊行動と企業保有の顧客データを融合・分析し、 Lifetime Valueのようなより深いビジネス指標を改善するための広告運用ソリューション 7 顧客データ起点のデュアルファネル®広告運⽤「x-stack」 データ量 ビジネス成果指標 一般的なデジタル広告指標 事業成果 業種 x-stackにおける指標 初回購入 LTV e-commerce 予測LTV 会員登録 有料継続 subscription 予測継続期間 来店予約 店舗成約 physical shop 予測成約率 アプリ登録 課金利用 mobile app 予測課金額

Slide 8

Slide 8 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved 8 Amazon SageMaker導⼊に⾄る経緯 1

Slide 9

Slide 9 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 9 Amazon SageMaker導⼊に⾄る経緯 プロジェクトにデータサイエンティストとしてアサインされると 1.(R&D濃いめの)予測モデル開発 2.予測モデル学習/推論基盤の構築 3.予測スコアを媒体連携するための機能開発 えらいひと じぶん 1.経験あるから大丈夫かな 2.DevOpsについての知識ないなぁ。。 3.APIの仕様書があるから大丈夫かな ※ 3.については社外秘のため発表省略

Slide 10

Slide 10 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 10 Amazon SageMaker導⼊に⾄る経緯 1.(R&D濃いめの)予測モデル開発 RFM指標を使ったLTV予測モデル(BTYDモデル)を改修し、 顧客情報も使って予測精度を上げたい 開発できました、提案手法で論文も書きます RFM指標と顧客特性に基づくLTV予測モデル, JSAI2019 開発言語には Julia を使用 詳しくは pLTV: 顧客生涯価値を予測する

Slide 11

Slide 11 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 11 Amazon SageMaker導⼊に⾄る経緯 2. 予測モデル学習/推論基盤の構築 クライアント別にLTV予測モデルを学習/推論したい エンドユーザーは非エンジニア(コンサル職)を想定 次の条件を満たすMLサービスはどれだろう - DevOpsに詳しくなくても大丈夫 - 独自モデルを運用できる - クラウド分析環境を提供している ➯ Amazon SageMaker / Google AutoML / DataRobot を検討し、 独自モデルを運用できるSageMakerを採用

Slide 12

Slide 12 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 12 Amazon SageMaker導⼊に⾄る経緯 SageMakerで独自モデルを使用するには 既定のファイル構成で入出力データ/実行用ファイルを扱うDockerイメージ をAmazon ECRに登録すればよい ➯ SageMakerの実行はPythonしか対応していないが、モデル開発環境は言語依存しない 詳しくは SageMakerで独自アルゴリズムを使う トレーニングジョブの実行 sagemaker.estimator.Estimator.fit : opt/program/train バッチ変換ジョブの実行 sagemaker.transformer.Transformer.transform : opt/program/serve

Slide 13

Slide 13 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved 13 SageMakerとAirflowによる機械学習基盤の構築 2

Slide 14

Slide 14 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 14 SageMakerとAirflowによる機械学習基盤の構築 1.(R&D濃いめの)予測モデル開発 2.予測モデル学習/推論基盤の構築 3.予測スコアを媒体連携するための機能開発 Amazon SageMakerを使って開発できました じゃあ日次で自動運用したい ➯ DWHとしてGoogle BigQueryを使っているなどの理由から (Step Functionsでなく)機械学習パイプラインとしてApache Airflowを採用

Slide 15

Slide 15 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 15 SageMakerとAirflowによる機械学習基盤の構築 はワークフローエンジンの一種 - タスクの実行順序を管理し、スケジュール実行や並列実行が可能 - AWSやGCPの各サービスがOperatorとして提供されている - Githubリポジトリのスター数も非常に多く、人気が高いOSS - APIを提供しているサービス・ツールは基本的にAirflowで使える - (SageMakerと同様に)Pythonで記述するため、開発の敷居が低い

Slide 16

Slide 16 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 16 SageMakerとAirflowによる機械学習基盤の構築

Slide 17

Slide 17 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 17 SageMakerとAirflowによる機械学習基盤の構築 詳しくは AirflowのDAGの実行状況をSlackに通知して監視する

Slide 18

Slide 18 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved 18 XGBoostでの構築事例 3

Slide 19

Slide 19 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 19 XGBoostでの構築事例 現在はLTV予測モデルとXGBoostをAirflowで運用している - XGBoostはSageMakerの組み込みアルゴリズムのためDockerイメージが必要ない - パラメータチューニング(HyperparameterTuner)が適用できる - 学習/推論に使用するデータは事前にLibSVM形式に変換しておく必要がある ➯ 独自アルゴリズム LibSVM-Converter を開発 ラベル,性別,地域,年齢 0,男性,東京都,30 1,女性,神奈川県,25 0,女性,埼玉県,35 … 0 0:1 1:1 2:30 1 0:2 1:2 2:25 0 0:2 1:3 2:35 … 詳しくは SageMakerで独自アルゴリズムを使う

Slide 20

Slide 20 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 20 XGBoostでの構築事例

Slide 21

Slide 21 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 21 XGBoostでの構築事例 { "Target": "ラベル", "Numeric": ["年齢"], "Categorical": ["性別", "地域"] } { "Target" : "ラベル", "Index": { "性別": { "男性": "0:0", "女性": "0:1", ... }, "地域": { "東京都": "1:0", "神奈川県": "1:1", "埼玉県": "1:2", ... }, "年齢": 2 } }

Slide 22

Slide 22 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 22 XGBoostでの構築事例 推論DAGの本番運用

Slide 23

Slide 23 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved 23 おわりに 4

Slide 24

Slide 24 text

Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 24 おわりに • DevOpsに詳しくないけど、機械学習モデルの学習/推論の基盤開発もやる必 要があるという方にはSageMakerはオススメ • SageMaker Autopilot(機械学習モデルを自動で作成する)など魅力的な新機 能が定期的にリリースされるのも好印象 • 一方でリファレンス(特に日本語)は不足している印象なので、新規ユー ザーには少しハードルが高いかもしれない • 本発表や弊社TechBlogが新規ユーザーの助けになれば幸いです

Slide 25

Slide 25 text

Performance Innovation 25 ご清聴ありがとうございました • データサイエンティスト • アナリスト • ソフトウェアエンジニア(サーバーサイド) • ソフトウェアエンジニア(フロントエンド) • ソフトウェアエンジニア(SRE、サイトリライアビリティエンジニア) 技術職 積極採用中!