tensorflow - 如果我使用“categorical_crossentropy”作为损失函数来分类对象,性能会不会有问题?
问题描述
我正在训练一个 CNN 对狗和猫进行分类,我使用 'categorical_crossentropy' 作为损失函数,因为一开始我有三个类,但最后我决定只使用两个,我没有机会改变损失函数。我的问题是我没有正在使用“binary_crossentropy”证明的计算机,我需要解决这个问题。所以我不知道它是否会具有相同的性能。
这是我编译的部分
model.compile(optimizer = keras.optimizers.Adam(lr=lr),
loss='categorical_crossentropy',
metrics=['accuracy'])
解决方案
答案是否定的,这不是问题。
您可以使用binary_crossentropy + Dense(1,activation='sigmoid')
或categorical_crossentropy + Dense(2,activation='softmax')
。
您的模型的性能根本不应该受到影响。
推荐阅读
- javascript - javascript对象中共享变量的最佳实践
- vb.net - 遍历 Unicode 范围
- c - 用于在引导加载程序应用程序中计算 crc 的软件逻辑
- nsis - Windows 7 中的 NSIS 文件关联更改
- amazon-web-services - 将 csv 数据文件中的数组字段加载到 Athena 表中
- android - 片段保存视图状态
- javascript - IF 一个函数被赋值给一个使用 var 声明的变量和 let 有什么区别?
- javascript - JQuery Slider - 如何更改滑块输入值的变化
- javascript - 在android中将键盘输入类型更改为大写
- java - 在 vsts 托管的 Maven 构建中使用外部 .jar 文件