【问题标题】:Keras model.predict for multinomial logistic regressionKeras model.predict 用于多项逻辑回归
【发布时间】:2017-01-10 13:21:07
【问题描述】:

我正在训练一个模型,其输出是大小为 19 的 softmax 层。当我尝试 model.predict(x) 时,对于每个输入,我得到的似乎是 19 个类的概率分布。我尝试了model.predict_classes,得到了一个大小为x 的numpy 数组,每个输出等于0。我怎样才能得到一个输出的热向量?

【问题讨论】:

    标签: python machine-learning neural-network keras data-science


    【解决方案1】:

    所以predcit_classes 的文档在某种程度上具有误导性,因为如果您仔细检查它的implementation,您会发现它仅适用于二进制分类。为了解决您的问题,您可以通过以下方式使用numpy 库(基本上是一个函数argmax):

    import numpy as np
    classes = np.argmax(model.predict(x), axis = 1)
    

    .. 为每个示例获取一个带有类号的数组。为了获得 one-hot 向量 - 您可以通过以下方式使用 keras 内置函数 to_categorical

    import numpy as np
    from keras.utils.np_utils import to_categorical
    classes_one_hot = to_categorical(np.argmax(model.predict(x), axis = 1))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-02
      • 1970-01-01
      • 1970-01-01
      • 2018-09-20
      • 1970-01-01
      • 2016-08-14
      • 2020-01-31
      • 2019-11-29
      相关资源
      最近更新 更多