6. ABテスト
モデルを入れ替えるかどうかの判断のために重要な部分
1. AB
テストプラットフォーム
a.
トラフィックの分流定義とパラメータの指定
2. API
サーバ
a.
リクエストごとに分流を行い、
AB
テストサービスから対象となる
AB
テスト変数を読み込み、機械学習
サーバの
API
をコールする
3.
機械学習サーバ
a. AB
テストのパラメータによってモデルを選択したり重みを調整したりする
4.
行動ログ
a.
行動ログに
AB
テストパラメータを含めてログに吐き出す
5.
集計
a. AB
テストの集計
Job
がログから集計して、試験グループとベースグループに対する指標計算を行う
Slide 14
Slide 14 text
6. ABテスト
クライアント APIサーバ
ABテストサービス
機械学習API
モデルA
モデルB
行動データ (ABパラメータを含
む)
ログ集計 ダッシュボード
ABテストプラットフォーム
(UI)
①
AB
テスト設定
②リクエストを送る
③分流と
AB
テストパラ
メータ取得
④
AB
テストパラメータ
を付加してリクエスト
⑤
AB
テストパラメータによって
モデルから結果を受け取る
⑥結果を返す
⑦結果を返す
⑧
AB
テストパラメータを含む行
動ログイベント
⑨
AB
テストグループ
ごとに集計 ⑨結果を可視化
Slide 15
Slide 15 text
アプリケーションに機械学習を入れる難しさ
1.
システムの複雑性が大幅に増す
a.
前処理、データセット作成、モデル学習
Job (
バッチ
/
ストリーム
)
、
AB
テストのシステム横断の対応
2.
機械学習の精度の高さだけではない
a.
ビジネス要件として、機械学習の最適解に人間が干渉する必要がある場合も
(
例 あるコンテンツは
常に
Top
に配置、
Ads
の頻度など
)
3.
機械学習の結果の偏り
a.
データの偏りが機械学習により助長される
(
例
.
ユーザに男性が多い →モデルが男性ウケするものを
いいものと学習→男性向けコンテンツばかりになる →女性が入ってきても離脱しやすくなる
)
Slide 16
Slide 16 text
次回以降
Open Source
や
ML
サービス
1. Kubeflow
2. Argo workflows
3. AI Platform
4. SageMaker
5. ...
どのようにこれらのツールを有効活用してアプリケーション開発やコアの機械学習部分に
注力しつつ、機械学習の価値を届けていけるか