之前测试多分类用softmax做最后的激活函数,它的predict值是1D数组,值在0~1且全加起来为1,此时我使用的metrics=[ tf.keras.metrics.SparseCategoricalAccuracy ]多分类正确值,没有问题。
这次是二分类,我觉得就没必要用softmax了,使用了sigmoid,metrics用了tf.keras.metrics.Accuracy()。官网说的比较模糊,结果出现如下:
之后看到这里https://blog.csdn.net/bcfdeCSDN/article/details/107975554说Accuracy()是比较两数真值,而sigmoid只输出0~1之间的小数,需要判断它和0.5的大小关系决定它归为哪一类。
解决方法也简单,改metrics=[“acc”],他有给小数自动归类的功能。更多判断方法去tensorflow里看这里贴不了链接,反正我太长不看。
tensorflow训练数据 loss一直在变,但accuracy: 0.0000e+00
最新推荐文章于 2024-06-21 18:22:17 发布