keras predict_proba return 值大于 1
keras predict_proba return values higher than 1
我正在使用 LSTM 进行二进制分类,因此我的最后一个密集层看起来像这样:
model.add(Dense(1,activation='sigmoid'))
我想获得每个输入的概率,但是
model.predict_proba(X_test)
return 值大于 1。我理解这是因为我在最后一层没有使用 'softmax' 但在二进制分类中我必须使用 sigmoid 但我怎样才能获得概率范围 [ 0,1]?
我现在得到的值是:
array([[1.1198873e-07],
[1.1001220e-07],
[7.2163729e-08],
...,
[1.1758399e-09],
[1.6062747e-10],
[1.5407189e-11]], dtype=float32)
这些值不大于一。这是科学记数法。
1.1198873e-07 = 1.1198873/10,000,000 = 0.00000011198873
所以这些实际上远低于 1。
我正在使用 LSTM 进行二进制分类,因此我的最后一个密集层看起来像这样:
model.add(Dense(1,activation='sigmoid'))
我想获得每个输入的概率,但是
model.predict_proba(X_test)
return 值大于 1。我理解这是因为我在最后一层没有使用 'softmax' 但在二进制分类中我必须使用 sigmoid 但我怎样才能获得概率范围 [ 0,1]?
我现在得到的值是:
array([[1.1198873e-07],
[1.1001220e-07],
[7.2163729e-08],
...,
[1.1758399e-09],
[1.6062747e-10],
[1.5407189e-11]], dtype=float32)
这些值不大于一。这是科学记数法。
1.1198873e-07 = 1.1198873/10,000,000 = 0.00000011198873
所以这些实际上远低于 1。