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

SageMakerとAirflowによる機械学習モデルの運用自動化について

 SageMakerとAirflowによる機械学習モデルの運用自動化について

Dentsu Digital Tech Blog

July 09, 2020
Tweet

Transcript

  1. Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 2 ⾃⼰紹介 今井

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

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

    が主流だったが、 OMO(Online Merges with Offline)の普及に伴い が求められている! Web上の行動に基づく高精度なユーザーターゲティング 企業が保有している顧客ごとのCRMデータまで加味したターゲティング
  4. Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL デジタル広告媒体ではさまざまな用途で機械学習モデルが使われている - 広告クリック予測,

    コンバージョン予測 - 予算配分最適化 - etc. 機械学習モデルの精度向上には学習データの量と質が重要であるが、 ビジネス成果指標が深くなるほどデータの母数が小さくなる 6 顧客データ起点のデュアルファネル®広告運⽤「x-stack」 データ量 ビジネス成果指標 オンライン行動 オフライン行動
  5. 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 予測課金額
  6. Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 9 Amazon SageMaker導⼊に⾄る経緯

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

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

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

    - タスクの実行順序を管理し、スケジュール実行や並列実行が可能 - AWSやGCPの各サービスがOperatorとして提供されている - Githubリポジトリのスター数も非常に多く、人気が高いOSS - APIを提供しているサービス・ツールは基本的にAirflowで使える - (SageMakerと同様に)Pythonで記述するため、開発の敷居が低い
  12. 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で独自アルゴリズムを使う
  13. 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 } }
  14. Copyright(C)2018 DENTSU DIGITAL. All Rights Reserved CONFIDENTIAL 24 おわりに •

    DevOpsに詳しくないけど、機械学習モデルの学習/推論の基盤開発もやる必 要があるという方にはSageMakerはオススメ • SageMaker Autopilot(機械学習モデルを自動で作成する)など魅力的な新機 能が定期的にリリースされるのも好印象 • 一方でリファレンス(特に日本語)は不足している印象なので、新規ユー ザーには少しハードルが高いかもしれない • 本発表や弊社TechBlogが新規ユーザーの助けになれば幸いです
  15. Performance Innovation 25 ご清聴ありがとうございました • データサイエンティスト • アナリスト • ソフトウェアエンジニア(サーバーサイド)

    • ソフトウェアエンジニア(フロントエンド) • ソフトウェアエンジニア(SRE、サイトリライアビリティエンジニア) 技術職 積極採用中!