首页 > 解决方案 > Keras 指标的“名称”有什么作用?

问题描述

许多 Keras 度量标准tf.keras.metrics.Meantf.keras.metrics.Accuracy都有一个可选属性,称为name.

这个属性的用例是什么?

标签: pythontensorflowkeras

解决方案


正如指标部分所述:

与 compile() 和 fit() 一起使用

compile() 方法接受一个指标参数,它是一个指标列表:

model.compile(
    optimizer='adam',
    loss='mean_squared_error',
    metrics=[
        metrics.MeanSquaredError(),
        metrics.AUC(),
    ]
)

度量值在 fit() 期间显示并记录到 fit() 返回的 History 对象中。它们也由 model.evaluate() 返回。

请注意,在训练期间监控指标的最佳方法是通过 TensorBoard。

要跟踪特定名称下的指标,您可以将 name 参数传递给指标构造函数:

model.compile(
    optimizer='adam',
    loss='mean_squared_error',
    metrics=[
        metrics.MeanSquaredError(name='my_mse'),
        metrics.AUC(name='my_auc'),
    ]
)

所有内置指标也可以通过它们的字符串标识符传递(在这种情况下,使用默认构造函数参数值,包括默认指标名称):

model.compile(
    optimizer='adam',
    loss='mean_squared_error',
    metrics=[
        'MeanSquaredError',
        'AUC',
    ]
)

推荐阅读