在使用keras内置数据路透社新闻分类的时候,使用训练的模型预测测试数据。然后发现对预测数据分类的概率总和不是1.
pridiction = model.predict(x_test)
for i in range(0,46):print(np.sum(pridiction[i]))
然而python深度学习这本书里面的是1.0
问题目前没有解决。
我看到了其他纪录的博客里面也有这个问题,例如:
keras_新闻多分类问题
我的模型构建如下:
#构建模型
from keras import models
from keras import layers
model= models.Sequential()
model.add(layers.Dense(64,activation='relu',input_shape=(10000,)))
model.add(layers.Dense(64,activation='relu'))
model.add(layers.Dense(46,activation='softmax'))#编译模型
model.compile(optimizer='rmsprop',loss='categorical_crossentropy',metrics=['accuracy'])#划分数据
x_val =x_train[:1000]
pratical_x_val = x_train[1000:]
y_val = one_hot_train_labels[:1000]
pratical_y_val = one_hot_train_labels[1000:]#训练数据
history = model.fit(pratical_x_val,pratical_y_val,epochs=20,batch_size=512,validation_data=(x_val,y_val))
如有明白原因的请告诉我,感激不尽