---
title: 检查项汇总
description: "精度调试前，请按照如下表格的要求进行检查，并记录相关检查结果，排除参考基准和模型迁移过程中可能存在的问题。"
url: https://www.hiascend.com/document/detail/zh/TensorFlowCommercial/latest/migration/tfmigr1/tfmigr1_tfprecision_0004.html
sourcePath: /source/zh/TensorFlowCommercial/900/migration/tfmigr1/tfmigr1_tfprecision_0004.html
indexId: d878e67b4b2d5dcd3f9ea6d39d6fb1860e3192c0e0a5f312f68a78736ac11edc83
---
# 检查项汇总

精度调试前，请按照如下表格的要求进行检查，并记录相关检查结果，排除参考基准和模型迁移过程中可能存在的问题。

- 检查参考基准脚本| 检查项 | 简介 | 检查结果 |
| --- | --- | --- |
| 参考基准：多次训练验证精度一致 | 基准模型多次训练需要得到相同的结果预期，如果基准模型的多次训练相互对比不满足精度比对要求，那么该参考基准不适合用于精度对比。 | 通过/不通过/未进行 |
| 参考基准：正确使能混合精度训练 | 由于NPU硬件架构仅支持用户模型执行在混合精度训练模式下，故用户模型也需要以混合精度训练。如果用户模型未使能混合精度训练模式、或使能不当，会有可能导致NPU无法训练或训练精度不符合预期的结果。 | 通过/不通过/未进行 |


- 检查迁移后脚本| 检查项 | 简介 | 检查结果 |
| --- | --- | --- |
| 模型迁移：在NPU上正确使能混合精度 | 在精度调试前，首先需要确保模型迁移成功且在NPU上功能正常。如果涉及分布式训练，确保正确使能。需要注意的是，在迁移过程中，需要确保正确使能混合精度训练。 | 通过/不通过/未进行 |
| 模型迁移：在NPU上正确使能Loss Scale | 迁移后的脚本需在NPU上正确使能Loss Scale。且由于NPU计算特性与GPU/CPU混合精度计算特性存在差异，LossScaleManager参数也通常需要进行适当的调整以保证精度。 | 通过/不通过/未进行 |
| 数据处理：数据集与基准一致 | 训练数据集往往较大，且可能出现不完整情况，需要确保数据集完整性。 | 通过/不通过/未进行 |
| 数据处理：预处理流程与基准一致 | 用户模型代码的数据预处理流程可能存在基于资源自动设定的变量，该变量会导致对数据集打乱的随机性不一致。需要从代码级别确认数据预处理的接口调用，尽可能减小该差异。 | 通过/不通过/未进行 |
| 数据处理：多节点分片方式与基准一致 | 用户模型代码的多节点数据预处理流程可能存在基于文件名、文件个数等进行分片的模式。该模式下由于文件读取接口在不同节点上对文件名排序的不同，会导致分片差异较大甚至文件重复分片到不同节点等非预期结果。需要增加调试代码排除类似问题，确认分片规则与基准一致。 | 通过/不通过/未进行 |
| 训练流程：与基准一致 | 用户训练过程中，经常会出现类似未清空中间数据的流程错误，从而导致精度不一致的问题。用户需要对训练流程有基本的了解，并自行检查整个训练、验证过程的正确性。 | 通过/不通过/未进行 |
| 模型超参：与基准一致 | 进行脚本迁移的用户可能对超参的一致性不熟悉，导致迁移完成后，一些超参的计算事实上与参考基准不一致。此时需要检查实际执行超参与参考基准的一致性。 | 通过/不通过/未进行 |
