我正在用Keras进行二进制分类
loss='binary_crossentropy',optimizer=tf.keras.optimizers.Adam最后一层是keras.layers.Dense(1, activation=tf.nn.sigmoid)。
据我所知,loss价值是在训练阶段用来评估模型的。但是,当我Keras对测试数据集使用模型评估时(例如m_recall.evaluate(testData,testLabel),也有一些loss值,并附带accuracy以下输出所示的值)
test size: (1889, 18525)
1889/1889 [==============================] - 1s 345us/step
m_acc: [0.5690245978371045, 0.9523557437797776]
1889/1889 [==============================] - 1s 352us/step
m_recall: [0.24519687695911097, 0.9359449444150344]
1889/1889 [==============================] - 1s 350us/step
m_f1: [0.502442331737344, 0.9216516675489677]
1889/1889 [==============================] - 1s 360us/step
metric name: ['loss', 'acc']
Run Code Online (Sandbox Code Playgroud)
loss测试期间的意义/用途是什么?为什么它是如此之高(如0.5690在m_acc)?准确度评估对我来说似乎不错(例如,0.9523在中m_acc),但我也很担心loss,这是否会使我的模型表现不佳?
PS
m_acc,m_recall等等都只是我的名字我的模型的方法(它们是由不同的指标受训GridSearchCV)
更新:
我只是意识到loss …