tensorflow/model-analysis
Model analysis tools for TensorFlow
TensorFlow Model Analysis (TFMA)
何がそれか – TFMA は、大規模なデータセット上で TensorFlow モデルを評価できる Python ライブラリです。トレーニング時に記述したメトリクス定義を再利用し、Apache Beam を介して分散処理で評価を実行し、特徴値ごとのスライス(例:国別、年齢層別)で結果を計算・探索できるほか、Jupyter ノートブックで可視化も可能です。
主な機能
- スケーラブルな評価 – ローカルマシンまたは Google Cloud Dataflow などの分散ランナーで動作可能。
- スライスベースのメトリクス – 特定のデータスライス(例:国別、年齢層別)に対してメトリクスを計算するための追加コードなしで実行可能。
- 可視化 – 組み込みの Jupyter ウィジェットとスライスメトリクスブラウザで、インタラクティブに結果を確認可能。
- 統合ポイント – TFX パイプライン、Kubeflow Pipelines と連携可能。自己完結型の HTML レポートもエクスポート可能。
インストール
# PyPI からの標準インストール
pip install tensorflow-model-analysis
# ナイトリービルド(最新版が必要な場合)
pip install -i https://pypi-nightly.tensorflow.org/simple tensorflow-model-analysis
# リポジトリから直接インストール(例:特定のタグ)
pip install git+https://github.com/tensorflow/model-analysis.git@v0.21.3#egg=tensorflow_model_analysis
TFMA は TensorFlow を自動的にインストールしません。互換性のある TensorFlow バージョンを別途インストールする必要があります。
一般的なワークフロー
- トレーニングコードでメトリクスを定義(例:
tf.keras.metrics.AUC)。 EvalConfigを作成。これにより、定義したメトリクスを指し、オプションでスライシング仕様を設定可能。- TFMA を実行 – Python API(
tfma.run_model_analysis)または TFX コンポーネントとして実行。内部では Apache Beam パイプラインが構築され、例の読み込み、モデル適用、メトリクス集計が行われます。 - 結果を探索 – 生成された
tfmaノートブックを開くか、JupyterLab のtfmaウィジェットを使用してスライスごとのテーブルやチャートを閲覧可能。
Jupyter 統合
- 対応する JupyterLab 拡張機能をインストール(例:
jupyter labextension install tensorflow_model_analysis@0.32.0)。 - クラシック Jupyter 用のノートブック拡張機能を有効化(
jupyter nbextension enable --py tensorflow_model_analysis)。 - 提供された
tfmaウィジェットを使用して、ノートブック内にインタラクティブなテーブルを直接レンダリング可能。
依存関係
- TensorFlow – コアの機械学習フレームワーク。
- Apache Beam – 分散計算を実行(デフォルトではローカルで実行可能。Dataflow、Spark、Flink などにターゲット可能)。
- Apache Arrow – 高効率なメモリ内カラム形式データ処理に使用。
スタートガイド – リポジトリの get-started ガイドを参照: https://github.com/tensorflow/model-analysis/blob/master/g3doc/get_started.md。
バージョン互換性 – README には、TFMA リリースと TensorFlow、Apache Beam、PyArrow、および他の TFX コンポーネントの特定バージョンとの対応マトリクスが詳細に記載されています。スタック全体と整合性のある TFMA バージョンを選択してください。
サポート – 質問は Stack Overflow の tensorflow-model-analysis タグで回答されます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト