このページでは、projects.locations.datasets.annotationStores.evaluate
メソッドを使用して、機械学習アルゴリズムで生成されたアノテーション レコードの品質を評価する方法について説明します。
概要
evaluate
メソッドは、1 つのアノテーション ストア(eval_store
)内のアノテーション レコードを、同じリソースを記述する手動アノテーションが付いた正解(グラウンド トゥルース)のアノテーション ストア(golden_store
)と比較します。アノテーション リソースは、各ストアの AnnotationSource
で定義されます。
eval_store
または golden_store
のアノテーション レコードは、projects.locations.datasets.annotationStores.annotations.create
または次の方法によって個別に生成できます。
AnnotationConfig
オブジェクトを使用してdatasets.deidentify
を呼び出すprojects.locations.datasets.annotationStores.import
を呼び出す
評価の要件
評価を行うには、次の条件を満たす必要があります。
eval_store
では、AnnotationSource
で定義された各アノテーション リソースには、アノテーションのタイプごとに 1 つのアノテーション レコードのみを含めることができます。SensitiveTextAnnotation
はアノテーション付きリソースから取得したquote
を保存する必要があります。datasets.deidentify
を使用してアノテーション レコードを生成した場合は、AnnotationConfig
のstore_quote
をtrue
に設定します。
評価の出力
evaluate
メソッドは、評価指標を BigQuery にレポートします。このメソッドは、指定された BigQuery テーブル内に、次のスキーマと一緒に行を出力します。
フィールド名 | 型 | モード | 説明 |
---|---|---|---|
opTimestamp |
TIMESTAMP |
NULLABLE |
メソッドが呼び出されたときのタイムスタンプ |
opName |
STRING |
NULLABLE |
長時間実行オペレーション(LRO)の評価の名前 |
evalStore |
STRING |
NULLABLE |
eval_store の名前 |
goldenStore |
STRING |
NULLABLE |
golden_store の名前 |
goldenCount |
INTEGER |
NULLABLE |
golden_store 内のアノテーション レコードの数 |
matchedCount
|
INTEGER
|
NULLABLE
|
golden_store のアノテーション レコードと一致する eval_store のアノテーション レコードの数 |
averageResults |
RECORD |
NULLABLE |
すべての infoType の平均結果 |
averageResults. sensitiveTextMetrics |
RECORD
|
NULLABLE
|
SensitiveTextAnnotation の平均結果 |
averageResults. sensitiveTextMetrics. truePositives |
INTEGER
|
NULLABLE
|
正しい予測数 |
averageResults. sensitiveTextMetrics. falsePositives |
INTEGER
|
NULLABLE
|
正しくない予測の数 |
averageResults. sensitiveTextMetrics. falseNegatives |
INTEGER
|
NULLABLE
|
欠落した予測の数 |
averageResults. sensitiveTextMetrics. precision |
FLOAT
|
NULLABLE
|
truePositives / (truePositives + falsePositives) [0..1] の範囲の値(1.0 はすべて予測が正しいことを示す) |
averageResults. sensitiveTextMetrics. recall |
FLOAT
|
NULLABLE
|
truePositives / (truePositives + falseNegatives) [0..1] の範囲の値(1.0 は予測の欠落がないことを示す) |
averageResults. sensitiveTextMetrics. fScore |
FLOAT
|
NULLABLE
|
2 * precision * recall / (precision + recall) 精度と再現度の調和平均で [0..1] の範囲の値(1.0 は完全な予測を示す) |
infoResults |
RECORD |
REPEATED |
averageResults と似ていますが、infoType ごとに分類されます |
infoResults. sensitiveTextMetrics |
RECORD
|
NULLABLE
|
SensitiveTextAnnotation の infoType 結果 |
infoResults. sensitiveTextMetrics. infoType |
STRING
|
NULLABLE
|
infoType カテゴリ |
infoResults. sensitiveTextMetrics. truePositives |
INTEGER
|
NULLABLE
|
正しい予測数 |
infoResults. sensitiveTextMetrics. falsePositives |
INTEGER
|
NULLABLE
|
正しくない予測の数 |
infoResults. sensitiveTextMetrics. falseNegatives |
INTEGER
|
NULLABLE
|
欠落した予測の数 |
infoResults. sensitiveTextMetrics. precision |
FLOAT
|
NULLABLE
|
truePositives / (truePositives + falsePositives) [0..1] の範囲の値(1.0 はすべて予測が正しいことを示す) |
infoResults. sensitiveTextMetrics. recall |
FLOAT
|
NULLABLE
|
truePositives / (truePositives + falseNegatives) [0..1] の範囲の値(1.0 は予測の欠落がないことを示す) |
infoResults. sensitiveTextMetrics. fScore |
FLOAT
|
NULLABLE
|
2 * precision * recall / (precision + recall) 精度と再現度の調和平均で [0..1] の範囲の値(1.0 は完全な予測を示す) |
メソッドの詳細な定義については、EvaluateAnnotationStore
をご覧ください。