我目前正在进行多类分类的研究.我使用了分类交叉熵,并且我使用准确度作为实验的指标得到了非常好的结果.当我尝试使用categorical_accuracy时,它会给出稍差的准确度(低于1%).我的问题是,是否可以使用准确度指标来进行分类的交叉熵损失,而不是使用categorical_accuracy?
dhi*_*ley 14
Keras检测output_shape并自动确定accuracy指定时使用的精度.对于多类分类,categorical_accuracy将在内部使用.从来源:
if metric == 'accuracy' or metric == 'acc':
# custom handling of accuracy
# (because of class mode duality)
output_shape = self.internal_output_shapes[i]
acc_fn = None
if output_shape[-1] == 1 or self.loss_functions[i] == losses.binary_crossentropy:
# case: binary accuracy
acc_fn = metrics_module.binary_accuracy
elif self.loss_functions[i] == losses.sparse_categorical_crossentropy:
# case: categorical accuracy with sparse targets
acc_fn = metrics_module.sparse_categorical_accuracy
else:
acc_fn = metrics_module.categorical_accuracy
Run Code Online (Sandbox Code Playgroud)
您看到的1%差异可能归因于逐次运行变化,因为随机梯度下降将遇到不同的最小值,除非使用相同的随机种子.
| 归档时间: |
|
| 查看次数: |
5897 次 |
| 最近记录: |