检查精度是否达到预期则是对整体精度调优过程重新审视,并考虑调整超参、解释模型、优化算法等调优手段。
-
MindInsight可以为用户记录每次训练的精度结果。在model.train和model.eval中使用同一个SummaryCollector实例时,会自动记录模型评估(metrics)信息。训练结束后,可以通过MindInsight的模型溯源模块检查训练结果精度是否达标。
-
通过MindInsight溯源分析功能查看模型评估信息
若模型的loss值、metric值未达到预期,可以参考以下思路进行定位和优化:
回顾代码、模型结构、输入数据和loss曲线,
·检查超参是否有不合理的值
·检查模型结构是否实现正确
·检查输入数据是否正确
·检查loss曲线的收敛结果和收敛趋势是否存在异常
尝试使用MindInsight溯源分析功能优化超参。溯源分析页面会对超参的重要性进行分析,用户应优先考虑调整重要性高的超参,从散点图中可以观察出超参和优化目标的关系,从而针对性地调整超参取值。
-
通过MindInsight溯源分析查看参数重要性
-
通过MindInsight溯源分析以散点图形式查看参数和优化目标的关系
·尝试使用MindInsight调参器优化超参。请注意,调参器通过执行多次完整训练的方式进行超参搜索,消耗的时间为网络一次训练用时的若干倍,如果网络一次训练耗时较长,则超参搜索将需要很长的时间。
·尝试使用MindInsight模型解释功能优化模型数据集。模型解释功能可以通过显著图可视化展示对分类结果最重要的区域,还可以通过评分体系提示应该对哪类标签进行优化。
·尝试优化模型结构/算法。
-
由于相同的现象存在多个可能原因,精度问题的定位非常依赖专家经验。希望上述定位方法和功能能够起到良好的引导的作用,帮助你不断积累成功经验,成为精度调优大师。