Keras软最大概率

Keras软最大概率,keras,softmax,Keras,Softmax,我试图从最后一层是softmax层的网络中获取softmax概率,当我使用model.predict()时,我得到的是类,而不是概率。谁能告诉我如何得到概率 model = Sequential() model.add(Convolution2D(32, 3, 3,input_shape=(32, 32, 3))) model.add(MaxPooling2D((2, 2))) model.add(Dropout(0.5)) model.add(Activation('relu'

我试图从最后一层是softmax层的网络中获取softmax概率,当我使用model.predict()时,我得到的是类,而不是概率。谁能告诉我如何得到概率

 model = Sequential() 
 model.add(Convolution2D(32, 3, 3,input_shape=(32, 32, 3))) 
 model.add(MaxPooling2D((2, 2))) 
 model.add(Dropout(0.5))
 model.add(Activation('relu'))
 model.add(Convolution2D(32, 3, 3))
 model.add(MaxPooling2D((2, 2))) 
 model.add(Dropout(0.5))
 model.add(Activation('relu'))
 model.add(Flatten())      
 model.add(Dense(128))
 model.add(Activation('relu')) 
 model.add(Dense(43)) 
 model.add(Activation('softmax'))

模型的输出值将介于0和1之间。 您的模型应该给出大小为43的向量,所有输出的总和将相加为一


根据您的培训情况,如果与培训示例类似,则所选课程的这些“概率”通常几乎为一,表明模型经过良好培训

请提供更多信息,如果网络具有softmax输出,则model.predict将返回这些概率。如果你没有看到概率,那么代码中就有错误。你对“类”和“概率”的理解是什么?Softmax将始终返回所有类的“机会”,求和1。请显示您的模型构建代码。我的网络是:。我的网络是:model=Sequential()model.add(卷积2D(32,3,3,input_shape=(32,32,3)))model.add(maxpoolig2D((2,2)))model.add(Dropout(0.5))model.add(Activation('relu'))model.add(卷积2D(32,3,3))model.add(maxpoolig2D((2,2)))模型。添加(辍学(0.5))模型。添加(激活('relu'))模型。添加(展平())模型。添加(密集(128))模型。添加(激活('relu'))模型。添加(密集(43))模型。添加(激活('softmax'))当我使用模型。预测(pics_数据[0:6],批量大小=32,冗余=1)我得到零和一,而不是概率(我认为是直接预测的类)