New Relicは、 MLOps observabilityの分野に参入し、データサイエンティストや機械学習エンジニアが本番環境で機械学習モデルのパフォーマンスや効果を監視・観察できるようにしています。
運用中のデータやモデルを簡単に追跡
監視しなければならないモデルの数が一定に達すると、データやモデルのKPIを把握することが難しくなり、結果としてシステムがさらに複雑になってしまいます。 Bring Your Own Data (BYO) を使えば、わずか数分後には、モデルの推論やメトリックデータを、ノートブックやその他の環境から直接、New Relicプラットフォームに素早く送信することができます。
newrelic-telemetry-sdk-python
に基づくml-performance-monitoring
pythonパッケージを使用すると、コードに数行追加するだけで、モデルの機能と予測値、およびカスタムメトリックを送信できます。
python パッケージを使用して、以下の種類のデータを New Relic に送信します。
推論データ: あなたのモデルの特徴と予測値をストリームします。選ぶことができます。
- 「オンライン」インストルメンテーション:モデルを
wrap_model
関数で簡単にラップすることにより、モデルが本番環境で呼び出されている間に値をストリーミングします。データは、呼び出しごとに自動的にストリーミングされます。 - 「オフライン」インストルメンテーション:データ(機能と予測)をデータセットとして(
np.array
、またはpandasデータフレームとして)送信します。
推論データは、
InferenceData
という名前のカスタムイベントとしてストリーミングされます。- 「オンライン」インストルメンテーション:モデルを
データメトリック:すべての生の推論データを送信する代わりに、機能と予測(たとえば、
min
、max
、average
、またはpercentile
)に対して集約された統計オプションを選択します。それらはメトリックとして自動的に送信されます。カスタムメトリクス:独自のメトリクスを計算し、モデルのパフォーマンスまたはモデルデータを監視し、
record_metrics
関数を使用してそれらをNewRelicにストリーミングします。それらはメトリックとして送信されます。
推論データやメトリクスをNew Relicにストリームするにはどうすればいいですか?
以下の手順で、データをストリーミングし、New Relicプラットフォームで表示します。
Get your license key: Use the license key for the New Relic account you want to be associated with your data.
new-relic-ml-performance-monitoring パッケージを使用して、データを New Relic にストリーミングします。以下の例に従って、あなたのコードからデータを送信する方法を確認してください。
データをNew Relic Platformで見ることができます。
データの問い合わせ: データエクスプローラー を使用して、送信したメトリクスおよびイベントデータを表示するか、 クエリビルダ で以下のクエリを使用します。
SELECT * FROM InferenceData WHERE model_name=[model_name] SINCE 1 day agoSELECT * FROM Metric WHERE model_name=[model_name] SINCE 1 day agoCreate your own dashboard: Build your own dashboard 送信したメトリクスを可視化したり、特徴量や予測値の分布を表示したりします。以下にダッシュボードの例を示します。
エンティティの探索:データをNew Relicにストリーミングすると、モデル名ごとに1つずつ、タイプ
machine learning model
のエンティティが自動的に作成されます。 New Relic UIでExplorerを選択し、左側のナビゲーションメニューのMachine Learningセクションに移動すると、モデルエンティティを探索できます。
参考になる例が必要ですか?次のユースケースをご覧ください。
以下の例を実行すると、データがストリーミングされ、New Relic アカウントのダッシュボード例が表示されます。
- サンプルノートブックの実行: インジェストキー を環境変数として定義するか、パラメータとして送信する必要があります。(ここでは、 例のノートブック 。)
- サンプルダッシュボードのデータを表示します。サンプルダッシュボードテンプレートJSONをインポートし、アカウントIDで
YOUR_ACCOUNT_ID
を更新します。