11章監視とモデルの更新

他のソフトウェアシステムと同様に、モデルがデプロイされたら、そのパフォーマンスを監視する必要があります。「6.2.2 MLコードのテスト」で行ったように、通常のソフトウェアのベストプラクティスを適用可能です。また、「6.2.2 MLコードのテスト」の場合と同じように、MLモデルを扱う際に考慮すべきことが追加されます。

この章では、MLモデルを監視する際に注意すべき点について説明します。具体的には、次の3つの疑問に答えます。

  1. なぜモデルを監視する必要があるのか?
  2. どのようにモデルを監視するのか?
  3. 監視の結果、どのような行動を取るべきか?

まず、新しいバージョンの導入タイミング決定や、本番環境で問題を表面化させるのに、監視モデルがどのように役立つのかを説明します。

11.1 監視による改善

監視の目的は、システムの健全性を追跡することです。モデルの場合、これはパフォーマンスと予測品質の監視を意味します。

ユーザの振る舞いが変化したことで、突然モデルの生成する結果が劣化した場合でも、優れた監視システムを使用しているなら、できるだけ早く気付き対応できます。監視で捉えることのできる有用で重要な問題をいくつか取り上げます。

11.1.1 更新頻度を知らせる監視

たいていのモデルは、与えられたレベルのパフォーマンスを維持するために定期的に更新する必要があることを「2.1.3 データの鮮度と分布の変化」で取り上げました。モデルがもう最新ではなく、再学習が必要な場合を監視で検出できます。

例えば、ユーザから得られる暗黙のフィードバック(例えば、ユーザが推奨事項をクリックしたかどうか)をモデルの正解率を推定するために利用しているとします。モデルの正解率を継続的に監視していれば、定義された正解率のしきい値を下回ると、すぐに新しいモデルの学習に入れます。 ...

Get 機械学習による実用アプリケーション構築 ―事例を通じて学ぶ、設計から本番稼働までのプロセス now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.