清单文件格式 - Amazon Rekognition

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

清单文件格式

以下各节显示了输入、输出和评估文件的清单文件格式示例。

输入清单

清单文件是一个以 json-line 分隔的文件,每行都包含一个 JSON,其中包含有关单个图像的相关信息。

输入清单中的每个条目都必须包含指向 Amazon S3 存储桶中图像路径的source-ref字段,对于自定义审核,还必须包含带有基本注释的content-moderation-groundtruth字段。一个数据集中的所有图像应位于同一存储桶中。该结构在训练和测试清单文件中都很常见。

针对自定义审核的 CreateProjectVersion 操作使用输入清单中提供的信息来训练适配器。

以下示例是包含单个不安全类的单个图像的清单文件中的一行:

{ "source-ref": "s3://foo/bar/1.jpg", "content-moderation-groundtruth": { "ModerationLabels": [ { "Name": "Rude Gesture" } ] } }

以下示例是包含多个不安全类别(特别是裸露和粗鲁的手势)的单个不安全图像的清单文件中的一行。

{ "source-ref": "s3://foo/bar/1.jpg", "content-moderation-groundtruth": { "ModerationLabels": [ { "Name": "Rude Gesture" }, { "Name": "Nudity" } ] } }

以下示例是针对不包含任何不安全类的单个图像的清单文件中的一行:

{ "source-ref": "s3://foo/bar/1.jpg", "content-moderation-groundtruth": { "ModerationLabels": [] } }

有关受支持标签的完整列表,请参阅审核内容

输出清单

训练任务完成后,将返回输出清单文件。输出清单文件是一个以 JSOnLine 分隔的文件,每行都包含一个 JSON,用于保存单个图像的信息。Amazon S3 的路径 OutputManifest 可以从DescribeProjectVersion响应中获得:

  • TrainingDataResult.Output.Assets[0].GroundTruthManifest.S3Object,用于训练数据集

  • TestingDataResult.Output.Assets[0].GroundTruthManifest.S3Object,用于测试数据集

输出清单中的每个条目都会返回以下信息:

密钥名称 描述
source-ref 引用 s3 中输入清单中提供的图像
content-moderation-groundtruth 输入清单中提供的基本事实注释
detect-moderation-labels 适配器预测,仅作为测试数据集的一部分
detect-moderation-labels-base-model 基础模型预测,仅作为测试数据集的一部分

适配器和基础模型预测以 ConfidenceTrehsold 5.0 的格式返回,其格式类似于 L DetectModerationabel s 响应。

以下示例显示了适配器和基础模型预测的结构:

{ "ModerationLabels": [ { "Confidence": number, "Name": "string", "ParentName": "string" } ], "ModerationModelVersion": "string", "ProjectVersion": "string" }

有关返回的标签的完整列表,请参阅审核内容

评估结果清单

训练任务完成后,将返回评估结果清单文件。评估结果清单是训练任务输出的 JSON 文件,其中包含有关适配器在测试数据上的表现的信息。

Amazon S3 评估结果清单的路径可以从 DescribeProejctVersion 响应中的EvaluationResult.Summary.S3Object字段获取。

以下示例显示评估结果清单的结构:

{ "AggregatedEvaluationResults": { "F1Score": number }, "EvaluationDetails": { "EvaluationEndTimestamp": "datetime", "Labels": [ "string" ], "NumberOfTestingImages": number, "NumberOfTrainingImages": number, "ProjectVersionArn": "string" }, "ContentModeration": { "InputConfidenceThresholdEvalResults": { "ConfidenceThreshold": float, "AggregatedEvaluationResults": { "BaseModel": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int }, "Adapter": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int } }, "LabelEvaluationResults": [ { "Label": "string", "BaseModel": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int }, "Adapter": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int } } ] } "AllConfidenceThresholdsEvalResults": [ { "ConfidenceThreshold": float, "AggregatedEvaluationResults": { "BaseModel": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int }, "Adapter": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int } }, "LabelEvaluationResults": [ { "Label": "string", "BaseModel": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int }, "Adapter": { "TruePositive": int, "TrueNegative": int, "FalsePositive": int, "FalseNegative": int } } ] } ] } }

评估清单文件包含:

  • 汇总结果由 F1Score 定义

  • 评估任务的详细信息包括训练图像的数量 ProjectVersionArn、测试图像的数量以及适配器接受过训练的标签。

  • 基础模型和适配器性能的汇总 TruePositive TrueNegative FalsePositive、、和 FalseNegative 结果。

  • 每个标签 TruePositive、 TrueNegative FalsePositive、以及基本模型和适配器性能的 FalseNegative结果,在输入置信度阈值下计算。

  • 在不同的置信度阈值 TrueNegative下 TruePositive FalsePositive,基础模型和适配器性能的汇总 FalseNegative 结果和每个标签、、以及结果。置信度阈值从 5 到 100 不等,以 5 为单位。