Tensorflowモデル分析のセットアップ

構成

TFMAはでその設定を保存するプロトJSONにシリアライズされます。このプロトは、入力データ、出力データ、モデル仕様、メトリック仕様、およびスライス仕様に必要な構成を統合します。

すべてのTFMAパイプラインは、ベースライン(プライマリ)モデルと0個以上の候補(セカンダリ)モデルに関連付けられています。ベースラインモデルと候補モデルは、パイプラインの開始時にユーザーによって定義され、それぞれに一意の名前が必要です。以下は、ユーザーが使用できる一般的な構成設定の例です。

  • 単一モデルの評価:
    • 該当なし(つまり名前なし)
  • 検証ベースの評価:
    • baseline
    • candidate
  • モデル比較評価:
    • my_model_a
    • my_model_b

モデル仕様

モデル仕様はタイプでありtfma.ModelSpecモデルの位置だけでなく、他のモデルの特定のパラメータを定義するために使用されます。たとえば、評価を実行する前に構成する必要がある一般的な設定は次のとおりです。

  • name -モデルの名前(複数のモデルが使用されている場合)
  • signature_name -予測のために使用される署名の名前(デフォルトはserving_default )。使用eval EvalSavedModelを使用している場合。
  • label_key -ラベルに関連付けられた機能の名前。
  • example_weight_key -例えば、重量でassocated機能の名前。

メトリック仕様

メトリック仕様はタイプでありtfma.MetricsSpecおよび評価の一部として計算されるメトリックを設定するために使用されます。さまざまな機械学習の問題でさまざまな種類の指標が使用され、TFMAには、計算される指標を構成およびカスタマイズするための多くのオプションが用意されています。メトリックがTFMAの非常に大きな部分であるので、それらは別々に詳細に説明されているメトリクス

スライス仕様

スライスの仕様はタイプであるtfma.SlicingSpec 、評価の際に使用されるスライス基準を設定するために使用されています。スライスは、のいずれかによって行うことができますfeature_keysfeature_values 、またはその両方。スライス仕様の例は次のとおりです。

  • {}
    • 全体的なデータで構成されるスライス。
  • { feature_keys: ["country"] }
    • 機能「国」のすべての値のスライス。たとえば、「country:us」、「country:jp」などのスライスを取得できます。
  • { feature_values: [{key: "country", value: "us"}] }
    • 「country:us」で構成されるスライス。
  • { feature_keys: ["country", "city"] }
    • 機能「country」のすべての値のスライスが、機能「city」のすべての値と交差しています(これは高額になる可能性があることに注意してください)。
  • { feature_keys: ["country"] feature_values: [{key: "age", value: "20"}] }
    • 値「age:20」と交差するフィーチャ「country」のすべての値のスライス

特徴キーは、変換された特徴または生の入力特徴のいずれかである可能性があることに注意してください。参照tfma.SlicingSpec詳細については。

EvalSharedModel

構成設定に加えて、TFMAものインスタンスことが必要tfma.EvalSharedModel同じプロセスで複数のスレッド間でモデルを共有するために作成されます。共有モデルインスタンスには、モデルのタイプ(kerasなど)と、ディスク上の保存された場所(タグなど)からモデルをロードおよび構成する方法に関する情報が含まれています。 tfma.default_eval_shared_model APIは、タグのパスとセット与えられた既定のインスタンスを作成するために使用することができます。