Slide 1

Slide 1 text

1 機械学習研修Day3 (ハンズオン・事例紹介) 酒井 敏彦, 渡辺 龍二 / ペパボ研究所 2022.08.04 機械学習研修

Slide 2

Slide 2 text

2 1. 研修のおさらい(数分) 2. ハンズオン(105 min) 3. ペパボでのサービス連携事例紹介(50 min) 4. 学んだことを各自まとめる(15 min) Day3の流れ

Slide 3

Slide 3 text

3 ガイダンス|研修の目的 機械学習研修の目的はこれだ! サービス価値の向上のために「再帰化」を実現する上で、 実装手段として機械学習を検討できるようになる。 • 目的の背景:ペパボのエンジニアとして機械学習を学ぶ動機は、          機械学習を「再帰化」の実現アプローチとして利用することにある • サービス価値の向上において「再帰化」は重要な考え方[栗林2022] • 「再帰化 ≠ 機械学習の利用」であることを理解して 再帰化を実現するために機械学習の利用するか否かを判断できることを目指す [栗林2022] GMOペパボが考えるこれからのサービス開発(p.10より引用) https://speakerdeck.com/kentaro/toward-the-next-service-development-era?slide=10

Slide 4

Slide 4 text

4 研修についてのおさらい|カリキュラム 研修目的を達成するために以下のカリキュラムを設定しています! サービス価値の向上のために「再帰化」を実現する上で、 実装手段として機械学習を検討できるようになる。 研修の目的 ゴール 実施内容 Day1 機械学習とは何か、 自分の言葉で説明できる - 機械学習イントロダクション(座学) - Machine Learning Crash Course (ハンズオン) Day2 再帰化を実現するために、 機械学習をどう活用できるか イメージできる - Machine Learning Crash Course (ハンズオン) - 再帰化と機械学習(座学) Day3 サービスの実課題を 機械学習で解決する 一連の流れの例を挙げられる - Machine Learning Crash Course (ハンズオン) - 機械学習のサービス連携事例紹介(座学)

Slide 5

Slide 5 text

5 1. 研修のおさらい(数分) 2. ハンズオン(105 min) 3. 機械学習とサービスの連携事例紹介(50 min) 4. 学んだことを各自まとめる(15 min) Day3の流れ

Slide 6

Slide 6 text

6 • Machine Learning Crash Course • 今日進めて欲しい単元 • Classification (75min) • Video Lectureと ROC Curve and AUCは 飛ばして大丈夫です • 時間が余ったときに進めて欲しい単元 • Representation • Feature Crosses • Regularization: Simplicity ハンズオンを引き続きやっていきましょう! ハンズオン

Slide 7

Slide 7 text

7 • ハンズオン資料は英語です • はぁ?どゆこと?となったらすぐに聞いてください! • 動画は飛ばしてください! • 休憩を適宜取ってください • 早く終わった場合はどんどん先に進んで大丈夫です! 進める上での注意点 Let’s ハンズオン

Slide 8

Slide 8 text

8 1. 研修のおさらい(数分) 2. ハンズオン(105 min) 3. 機械学習とサービスの連携事例紹介(50 min) 4. 学んだことを各自まとめる(15 min) Day3の流れ

Slide 9

Slide 9 text

9 機械学習とサービスの連携事例紹介 渡辺 龍二, 財津 大夏, 酒井 敏彦 2022.08.04 機械学習研修 Day3

Slide 10

Slide 10 text

10 A. イントロダクション B. 機械学習のサービスへの導入 C. サービスにとって有用な「関数」についての検討 アジェンダ

Slide 11

Slide 11 text

11 サービスと機械学習を連携するために、次のステップを踏む必要がある(※超大雑把) イントロダクション 1) サービスのビジネス的な背景から サービスにとって有益な「関数」を定める 2) 関数をデータから実際に獲得する 3) 関数をサービスに導入する

Slide 12

Slide 12 text

12 ここまでCrash courseでやってきたのは 2)の部分 イントロダクション 1) サービスのビジネス的な背景から サービスにとって有益な「関数」を定める 2) 関数をデータから実際に獲得する 3) 関数をサービスに導入する この理論的背景を しっかり学んできたのが ここまでの本研修!

Slide 13

Slide 13 text

13 Day3ではこの全体を知るために… イントロダクション 1) サービスのビジネス的な背景から サービスにとって有益な「関数」を定める 2) 関数をデータから実際に獲得する 3) 関数をサービスに導入する

Slide 14

Slide 14 text

14 今から以下の2つについて一緒に考えていく! イントロダクション 1) サービスのビジネス的な背景から サービスにとって有益な「関数」を定める 2) 関数をデータから実際に獲得する 3) 関数をサービスに導入する

Slide 15

Slide 15 text

15 A. イントロダクション(by 渡辺) B. 機械学習のサービスへの導入 a. イントロダクション(by 渡辺) b. 実際の導入事例(by 財津) C. サービスにとって有用な「関数」についての検討 a. イントロダクション(by 渡辺) b. ビジネス課題から考える機械学習の適用(by 酒井) Day3座学のアジェンダ

Slide 16

Slide 16 text

16 関数f(学習済みの機械学習のモデル)が既にあるとする B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 関数f 学習済みの 機械学習モデル

Slide 17

Slide 17 text

17 この関数fを「サービスと連携する」とは、どういうことかを考えていく B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 関数f 学習済みの 機械学習モデル サービス ?

Slide 18

Slide 18 text

18 連携の例:予測APIを立て、必要な予測結果を逐次的に得るために通信する B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 予測結果を返す (レスポンス) 関数f 学習済みの 機械学習モデル 予測API サービス デプロイ する 予測結果が欲しい 入力を提示する (リクエスト) :オブジェクト :一度しか実施しない処理 :繰り返し行われる処理

Slide 19

Slide 19 text

19 モデルが学習される過程まで含めると以下のようになる(再帰化…!) B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 ② 特徴量と ラベルを 抽出する 関数f 機械学習モデル 予測API サービス ⑤ デプロイ する ③ 送る ログ 学習データ 予測結果を返す (レスポンス) ① ログを送る 予測結果が欲しい 入力を提示する (リクエスト) ④ 学習する :オブジェクト :一度しか実施しない処理 :繰り返し行われる処理

Slide 20

Slide 20 text

② 特徴量と ラベルを 抽出する AutoML 20 ペパボで利用している技術スタックによる1つの構築例は以下のようになる B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 関数f 機械学習モデル 予測API サービス ⑥ デプロイ する ④ 送る ① ログを送る ログ BigQuery 学習データ Cloud Storage ③ 要求する 予測結果が欲しい 入力を提示する (リクエスト) 予測結果を返す (レスポンス) ⑤ 学習する :利用するサービス :オブジェクト :一度しか実施しない処理 :繰り返し行われる処理

Slide 21

Slide 21 text

デプロイ する 21 さらに、このループを繰り返し関数fを定期的に更新できるとより良さそう (もっと再帰化…!) B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 追加ログの 特徴量と ラベルを 抽出する 関数f 機械学習モデル 予測API サービス 送る ログを追加する ログ 予測結果が欲しい 入力を提示する (リクエスト) 予測結果を返す (レスポンス) 学習データ 学習する :オブジェクト :繰り返し行われる処理

Slide 22

Slide 22 text

22 ※その都度、入力を1つ受け取り予測結果を返すものはオンライン予測と呼ばれる 高速化のために、予測結果をバッファしておくようなことも考えられる(バッチ予測) B. 機械学習のサービスへの導入|イントロ「何を考える必要がある?」 関数f 学習済みの 機械学習モデル バッチ予測 API サービス デプロイ する 予測結果が欲しい 単一の入力を提示する (リクエスト) 単一予測結果を返す (レスポンス) 予測結果 DB 複数の入力を提示 (リクエスト) 複数の予測結果を返す (レスポンス) 以下のような場合の対応として、バッチ予測が考えられる • 予測の対象や結果が一定期間変わらないと見なせ、都度予測するとコスパが悪い • 予測に計算コストがかかり、レスポンスが低速 定期的に実行する

Slide 23

Slide 23 text

23 • 発表タイトル:BigQuery の日本語データを Dataflow と Vertex AI でトピックモデリング • ペパボとZOZOの勉強会で発表された内容です より詳しい機械学習のサービス導入事例を見ていきましょう! B. 機械学習のサービスへの導入|具体的な導入事例 BigQuery の日本語データを Dataflow と Vertex AI でトピックモデリング https://speakerdeck.com/zaimy/topic-modeling-of-japanese-data-in-bigquery-with-dataflow-and-vertex-ai

Slide 24

Slide 24 text

24 A. イントロダクション(by 渡辺) B. 機械学習のサービスへの導入 a. イントロダクション(by 渡辺) b. 実際の導入事例(by 財津) C. サービスにとって有用な「関数」についての検討 a. イントロダクション(by 渡辺) b. ビジネス課題から考える機械学習の適用(by 酒井) Day3座学のアジェンダ

Slide 25

Slide 25 text

25 ● そもそも、サービス価値向上のために「機械学習」を適用し再帰化したい ● そのために考えなければいけないことは何か? ○ サービスの課題を解決することに寄与する関数とはどういうものか? ■ 機械学習のターゲットとなる「関数」がサービスにとって無価値ならやる意味がない そもそも、機械学習で得る「関数」ってどんなものが良いんだろう…? C. サービスにとって有用な関数についての検討|イントロ

Slide 26

Slide 26 text

26 • 発表トピック:minneの作品における「特徴ラベル」の自動付与の試み • 2022年度 情報処理学会関西支部 支部大会(9月に開催予定)にて発表予定の内容です ※資料のオンライン公開は後日になります 実際の事例として酒井さんの取り組みを見ていきましょう! C. サービスにとって有用な関数についての検討|イントロ

Slide 27

Slide 27 text

27 1. 研修のおさらい(数分) 2. ハンズオン(105 min) 3. 機械学習とサービスの連携事例紹介(50 min) 4. 学んだことを各自まとめる(15 min) Day3の流れ

Slide 28

Slide 28 text

• Day3のゴール「サービスの実課題を機械学習で解決する一連の流れの例を挙げられる」を 達成できそうでしょうか…? • ぜひ以下のことをまとめてみてください〜! • 学んだこと、難しかったこと、考えたこと、思ったことなど 28 Day3 クロージング 今日学んだことのまとめ・アウトプットの時間にします〜