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

ビジネス現場における機械学習モデルの品質評価

marisakamozz
September 27, 2023

 ビジネス現場における機械学習モデルの品質評価

私が日頃機械学習モデルを利用したサービスを開発している中で感じた、一般的なソフトウェアエンジニアリングと機械学習モデル開発の品質評価に関する考え方の違いについて、2023/9/27 Kyoto Tech Talk #2にて発表したものです。

marisakamozz

September 27, 2023
Tweet

More Decks by marisakamozz

Other Decks in Technology

Transcript

  1. 森 正和 CTO室 AI推進部 機械学習エンジニア
 X (旧Twitter): @marisakamozz
 Nike Run

    Club 黒帯 (累計ラン5,000km)
 Kaggle Competitions Master (金1, 銀2)
 https://kaggle.com/marisakamozz
 

  2. 一般的なソフトウェアエンジニアリングにおける品質評価 ソフトウェア 入力 出力 あらかじめ 定義された入力 あらかじめ 定義された出力 が得られるか? 請求金額を

    入力したら… 総勘定元帳に 正しく登録されるか? 異常な金額を 入力したら… 正しくエラーメッ セージを 表示するか?
  3. • 未知のデータで評価する
 ◦ あらかじめ定義された請求書からあらかじめ定義された請求金額が取れても嬉しくない 
 ◦ 機械学習モデルが一度も見たことがない請求書で請求金額が取れて初めて意味がある 
 ◦ モデルによっては毎回挙動が異なるものもある(推論時データ拡張など)

    
 機械学習モデルの品質評価の鉄則 • 実運用時と同じ、もしくは、同じようなデータで評価する
 ◦ 実運用時にはあり得ないような入力データ(一般的なソフトウェアエンジニアリングにおいてはありが ち)を用いても、機械学習モデルは期待した結果を出力できない 
 ▪ 例えば、システムに登録できる最大の請求金額が 1兆円だったとしたら、一般的なソフトウェアエ ンジニアリングで1兆円のテストを行うのは当たり前 
 ▪ しかし、機械学習モデルは 1兆円の請求書を見たことがないので正しく出力できない 
 ◦ しかし、それを元に「機械学習モデルの品質が悪い」と判断して良いのか? 
 ◦ 正しく評価するには実運用時と同等のデータが必要 

  4. • 本番稼働前
 ◦ 既存システムで運用中に収集した本番データを用いて評価を行う 
 ◦ (本日はここの話だけをします) 
 • 並行本番


    ◦ A/Bテスト
 • 運用後
 ◦ モニタリング
 
 しかし、現実はそんなに甘くない。
 機械学習モデルの品質評価手法
  5. • そもそもデータが取れないケース
 ◦ 既存システムがない完全に新規のシステム 
 ◦ 例えば、広告配信システムであれば、あるユーザーに Aという広告を表示したのであれば、 Bという広 告を表示したデータは得られない

    
 • データは取れるが、正解ラベルにコストや時間がかかるケース
 ◦ 既存システムに請求書は保存されているが、何が記載されていかは保存されていないケース 
 ◦ 融資先の貸し倒れ予測モデルであれば、融資先が貸し倒れするまでその結果は得られない 
 機械学習モデルの品質評価における困難
  6. • コストと品質評価のトレードオフ
 ◦ 正解ラベルは機械学習モデルの学習時に必要 
 ◦ そのため、ある程度をコストをかけてでも正解ラベルを付与する作業を行う(「アノテーション」という) 
 ◦ しかし、闇雲にすべてのデータにアノテーションするのは無駄が多い

    
 ▪ クラス分類であれば学習時にダウンサンプリングしてクラス間のバランスを調整 
 ◦ そのため、学習時になるべく幅広いデータ、既存のデータにあまり似ていないデータに対してアノテー ションすることが多い 
 ◦ 結果的に、学習時のデータセットは恣意的に選別されがち 
 ◦ 本番稼働後の精度の見積もりを困難にする 
 機械学習モデルの品質評価における困難
  7. • 目標が不明確
 ◦ 要件:「いい感じで請求書から請求金額を読み取って欲しい」 
 ◦ 機械学習モデルを使用するシーンは定義が曖昧なことが多い 
 ▪ というか、定義があいまいだからこそ機械学習モデルを使う

    
 ◦ そのため、人間のフィーリングに依存していて数値化することが困難 
 ◦ 結果、既存モデルとの相対評価になりがち(それは「いい感じ」なのか?) 
 • 特殊な要件
 ◦ 機械学習モデルが予測の理由を説明することは可能 
 ◦ しかし、その解釈性や納得感をどう評価する? 
 機械学習モデルの品質評価における困難