【问题标题】:keras predict_proba return values higher than 1 [closed]keras predict_proba 返回值大于 1 [关闭]
【发布时间】:2021-04-06 23:26:37
【问题描述】:

我使用 LSTM 进行二元分类,因此我的最后一个密集层如下所示:

model.add(Dense(1,activation='sigmoid'))

我想得到每个输入的概率,但是

model.predict_proba(X_test)  

返回大于 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,在每个值的末尾可以看到e-07,表示它是10^-7,也就是0.0000001

标签: keras deep-learning lstm


【解决方案1】:

这些值不大于 1。这是科学计数法。
1.1198873e-07 = 1.1198873/10,000,000 = 0.00000011198873
所以这些实际上远低于 1。

【讨论】:

    猜你喜欢
    • 2023-03-03
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-28
    • 1970-01-01
    • 2019-08-22
    相关资源
    最近更新 更多