Slide 1

Slide 1 text

新卒AI研修 03 Deployment


Slide 2

Slide 2 text

機械学習はトレーニングだけではない 精度指標を高めることだけを考えていてはダメ 実際にサービスに機械学習を導入するには ● 要件定義 ➢ サービス導入のための精度/レイテンシの設定 ● システムワークフローの構築(MLOps) 2 データ収集 前処理 学習 推論 デプロイ ビルド 評価 利用 フィードバック

Slide 3

Slide 3 text

要件定義 ● 機械学習で解決すべき問題なのか? ➢ 効果とコストのバランス その他の単純な手法で実現できないか ● どの程度の精度が必要か? 担当者がいい感じだねっていったらサービス導入は地獄 既存のシステムとの何かしらの数値的評価基準は必要 3

Slide 4

Slide 4 text

要件定義 ● ビジネス的な指標の設定 ユースケースによって、機械学習に求められる指標が異なる 例) 不良品検知の場合 ○ recall(再現率): TP / (TP + FN) ➢ 正常品の巻き込みリスク ○ precision(適合率): TP / (TP + FP) ➢ 不良品の見逃しリスク この2つは基本的にトレードオフ どちらを優先するか検討する必要がある 4 TP FP FN TN 正解 正例 負例 正例 負例 予測

Slide 5

Slide 5 text

要件定義 ● どこで使うのか? ○ 前もって予測をしておけるか? ○ オンラインで返す場合は結果はキャッシュ可能か? ○ リアルタイムで毎回処理する場合に許容されるレイテンシは? 速度優先?精度優先?程度はケース次第だが、 5

Slide 6

Slide 6 text

ケース: ねこ画像の投稿サービスでの投稿禁止コンテンツの検出 ケースを考える 投稿する 投稿画面 閲覧画面 これは猫? 6

Slide 7

Slide 7 text

ケース: ねこ画像の投稿サービスでの投稿禁止コンテンツの検出 考えるべきこと1: 実行タイミング ● 画像を選択したとき ➢ 誤選択時も推論時間分待たせることになる ● 投稿ボタンを押した後 ➢ 推論した結果投稿可の場合終了する ● 投稿後に非同期で推論する ➢ 投稿後`掲載まで今しばらくお待ちください`と表示し終了する 掲載の可否はメール等で通知する ケースを考える 7

Slide 8

Slide 8 text

ケース: ねこ画像の投稿サービスでの投稿禁止コンテンツの検出 考えるべきこと2: 指標 ● 掲載したコンテンツのうち禁止コンテンツの割合 ● 禁止コンテンツのうち、掲載可のコンテンツの割合 ➢ これらを集計するには人手による正解データが必要 現実的には、 禁止コンテンツのうち本当に禁止コンテンツであった割合 としたほうが良いかもしれません ケースを考える TP FP FN TN 正解 正例 負例 正例 負例 予測 8

Slide 9

Slide 9 text

ケース: ねこ画像の投稿サービスでの投稿禁止コンテンツの検出 考えるべきこと3: モデル ● 画像分類 ➢ 物体検知よりも学習が早く、データ作成も容易 ● 物体検知 ➢ 物体の位置まで推論可能 ケースを考える この画像は画像検知だと、`人`と判定されそう 9

Slide 10

Slide 10 text

データはどこにあるのか 10 Gcloud Storage AWS S3 Storage Data DWH Bigquery redshift

Slide 11

Slide 11 text

データはどこにあるのか 11 Pub/Sub Stream Data Kinesis Database spanner Aurora

Slide 12

Slide 12 text

データの前処理はどこで行うか Apache Beam DWH Bigquery redshift 12

Slide 13

Slide 13 text

だれがどうやって作ったかわからない 再学習が必要になった時は、作成者に依頼? ログは作成者しか見れない。再現性も不明 学習はどこで行うか VertexAI Amazon SageMaker Cloud サービス Jupyter notebookで 学習したモデルはサービスには入れ られない 13

Slide 14

Slide 14 text

● モデルをデプロイして終了ではない ○ モデルの管理 ➢ バージョニングによって切り替え可能な状態にしておく ○ モデルの挙動/パフォーマンス検証 ➢ テスト通りの性能を継続して発揮できているか ○ 再学習 ➢ 定期的?精度低下を検知? ➢ 再学習したモデルは自動でデプロイ?精度を判断してから? これらを継続的に行えるシステム(MLOps)の構築が重要 価値を安定的にユーザーに届ける 14 データ収集 前処理 学習 推論 デプロイ ビルド 評価 利用 フィードバック

Slide 15

Slide 15 text

ハンズオン2 15 https://github.com/nami73b/machine-learning-notebooks ● 02_deploy_and_serving ● 03_parameter_tuning ● 04_transfer_learning ● 05_predict_structured_data ● ハンズオン1と同じ環境で下記のハンズオンにトライしてみてください

Slide 16

Slide 16 text

16