

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

# 获取验证结果


验证结果包含[终止性清单内容错误列表](tm-debugging.md#tm-error-category-combined-terminal)和[非终止性 JSON 行验证错误列表](tm-debugging.md#tm-error-category-non-terminal-errors)的错误信息。有三个验证结果文件。
+ *training\$1manifest\$1with\$1validation.json*：添加了 JSON 行错误信息的训练数据集清单文件的副本。
+ *testing\$1manifest\$1with\$1validation.json*：添加了 JSON 行错误信息的测试数据集清单文件的副本。
+ *manifest\$1summary.json*：训练和测试数据集中发现的清单内容错误和 JSON 行错误的摘要。有关更多信息，请参阅 [了解清单摘要](tm-debugging-summary.md)。

有关训练和测试验证清单内容的信息，请参阅[调试失败的模型训练](tm-debugging.md)。

**注意**  
只有在训练期间未发生[终止性清单文件错误列表](tm-debugging.md#tm-error-category-terminal)时，才会创建验证结果。
如果在验证训练和测试清单后出现[服务错误](tm-debugging.md#tm-error-category-service)，则会创建验证结果，但来自的响应[DescribeProjectVersions](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeProjectVersions)不包括验证结果文件的位置。

训练完成或失败后，您可以使用 Amazon Rekognition 自定义标签控制台下载验证结果，也可以通过调用 API 获取 Amazon S3 存储桶的位置。[DescribeProjectVersions](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeProjectVersions)

## 获取验证结果（控制台）


如果使用控制台训练模型，则可以从项目的模型列表下载验证结果，如下图所示。“模型”面板显示模型训练和验证结果，并提供用于下载验证结果的选项。

![\[界面显示模型训练和验证结果，并提供用于下载验证结果的选项。\]](http://docs.aws.amazon.com/zh_cn/rekognition/latest/customlabels-dg/images/models-validation-results.jpg)


您也可以从模型的详细信息页面下载验证结果。详细信息页面显示数据集的详细信息，包括状态、训练和测试数据集，并提供关于清单摘要、训练验证清单和测试验证清单的下载链接。

![\[数据集详细信息面板的屏幕截图，面板包含状态、训练和测试数据集的链接以及清单项目的下载链接。\]](http://docs.aws.amazon.com/zh_cn/rekognition/latest/customlabels-dg/images/model-validation-results.jpg)


有关更多信息，请参阅 [训练模型（控制台）](training-model.md#tm-console)。

## 获取验证结果 (SDK)


模型训练完成后，Amazon Rekognition Custom Labels 会将验证结果存储在训练期间指定的 Amazon S3 存储桶中。训练完成后，您可以通过调用 [DescribeProjectVersions](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeProjectVersions)API 获取 S3 存储桶的位置。要训练模型，请参阅[训练模型（SDK）](training-model.md#tm-sdk)。

返回训练数据集 ([TrainingDataResult](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_TrainingDataResult)) 和测试数据集 ([TestingDataResult](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_TestingDataResult)) 的[ValidationData](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ValidationData)对象。清单摘要将在 `ManifestSummary` 中返回。

获取 Amazon S3 存储桶位置后，即可下载验证结果。有关更多信息，请参阅[如何从 S3 存储桶下载对象？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/download-objects.html)。您还可以使用 [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/dev/GettingObjectsUsingAPIs.html) 操作。

**获取验证数据 (SDK)**

1. 如果您尚未这样做，请安装并配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [步骤 4：设置 AWS CLI 和 AWS SDKs](su-awscli-sdk.md)。

1. 使用以下示例获取验证结果的位置。

------
#### [ Python ]

   将 `project_arn` 替换为模型所属项目的 Amazon 资源名称 (ARN)。有关更多信息，请参阅 [管理 Amazon Rekognition Custom Labels 项目](managing-project.md)。将 `version_name` 替换为模型版本的名称。有关更多信息，请参阅 [训练模型（SDK）](training-model.md#tm-sdk)。

   ```
   import boto3
   import io
   from io import BytesIO
   import sys
   import json
   
   
   def describe_model(project_arn, version_name):
   
       client=boto3.client('rekognition')
       
       response=client.describe_project_versions(ProjectArn=project_arn,
           VersionNames=[version_name])
   
       for model in response['ProjectVersionDescriptions']:
           print(json.dumps(model,indent=4,default=str))
          
   def main():
   
       project_arn='project_arn'
       version_name='version_name'
   
       describe_model(project_arn, version_name)
   
   if __name__ == "__main__":
       main()
   ```

------

1. 在程序输出中，注意 `TestingDataResult` 和 `TrainingDataResult` 对象中的 `Validation` 字段。清单摘要在 `ManifestSummary` 中。