主要内容

recordMetrics

将测量值记录在实验结果表和训练图中

    描述

    recordMetrics (监控一步metricNamemetricValue对象中记录试验的指定度量值实验管理器结果表和训练图。

    例子

    recordMetrics (监控一步metricName1 = metricValue1…,metricNameN = metricValueN)记录一次试验的多个度量值。

    例子

    recordMetrics (监控一步metricStructure记录结构指定的度量值metricStructure

    例子

    全部折叠

    使用一个实验。监控对象用于跟踪训练进度,在实验结果表中显示信息和度量值,并为自定义训练实验生成训练图。

    在开始训练之前,指定experimental Manager结果表的信息和度量列的名称。

    班长。信息= [“GradientDecayFactor”“SquaredGradientDecayFactor”];班长。指标=[“TrainingLoss”“ValidationLoss”];

    指定训练图的水平轴标签。将训练损失和验证损失分组在同一子图中。

    班长。包含=“迭代”;groupSubPlot(监控,“损失”, (“TrainingLoss”“ValidationLoss”]);

    更新结果表中试验的梯度衰减因子和平方梯度衰减因子的值。

    updateInfo(监控,...GradientDecayFactor = GradientDecayFactor,...SquaredGradientDecayFactor = SquaredGradientDecayFactor);

    在每次自定义训练循环迭代后,在结果表和训练图中记录试验的训练和验证损失值。

    recordMetrics(监控、迭代...TrainingLoss = TrainingLoss,...ValidationLoss = ValidationLoss);

    根据完成迭代的百分比更新试验的训练进度。

    班长。进度= 100 *(迭代/numIterations);

    使用一个结构在结果表和训练图中记录度量值。

    结构。培训Loss = trainingLoss; structure.ValidationLoss = validationLoss; recordMetrics(monitor,iteration,structure);

    输入参数

    全部折叠

    试验的实验监视器,指定为实验。监控对象。运行自定义训练实验时,实验管理器将此对象作为训练函数的第二个输入参数传递。

    自定义训练循环步骤,例如迭代或纪元数,指定为数值标量或dlarray对象。实验管理器使用此值作为x-坐标在训练图。

    指标名称,指定为字符串或字符向量。属性的元素指标的属性实验。监控对象监控

    数据类型:字符|字符串

    度量值,指定为数值标量或dlarray对象。实验管理器使用此值作为y-坐标在训练图。

    指标名称和值,指定为结构.的元素指标的属性实验。监控对象监控并且可以在结构中以任意顺序出现。

    例子:结构(TrainingLoss = TrainingLoss ValidationLoss = ValidationLoss)

    数据类型:结构体

    提示

    • 信息列和度量列都显示实验结果表中的值。此外,训练图显示了度量值的记录。对于希望在结果表中显示但不在训练图中显示的文本和数值,请使用信息列。

    • 使用groupSubPlot函数在调用函数之前定义训练子图recordMetrics

    版本历史

    R2021a中引入