Keras 为什么Sequence.predit_proba()不';t打印分类概率

Keras 为什么Sequence.predit_proba()不';t打印分类概率,keras,deep-learning,Keras,Deep Learning,我有一个34维的x_系列,是一些股票技术指标数据。y_序列是一个标签,它是二进制的(1,0),表示股票是上升趋势还是下降趋势。x_检验是我想用来预测趋势的股票技术指标数据。这是我的密码 model = Sequential() model.add(Dense(512, activation='relu', input_dim=34)) model.add(Dense(200, activation='relu')) model.add(Dense(200, activation='relu'))

我有一个34维的x_系列,是一些股票技术指标数据。y_序列是一个标签,它是二进制的(1,0),表示股票是上升趋势还是下降趋势。x_检验是我想用来预测趋势的股票技术指标数据。这是我的密码

model = Sequential()
model.add(Dense(512, activation='relu', input_dim=34))
model.add(Dense(200, activation='relu'))
model.add(Dense(200, activation='relu'))
model.add(Dense(128, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(optimizer='rmsprop',
              loss='binary_crossentropy',
              metrics=['binary_accuracy'])

model.fit(x_train, y_train, epochs=2, batch_size=50, verbose=0)
print(model.predict_proba(x_test, batch_size=50))
但是我得到了这个:

[[0.]
 [0.]
 [0.]
 ...
 [0.]
 [0.]
 [0.]]

如何获得一对关于类“1”和类“0”的概率?

这些不是编程问题,我认为您只是没有正确地训练模型,并且您没有意识到0.0也是一种概率。然而,它应该是二维的,但这是一维的形状(示例,1),它是2D。我认为它的概率应该是'1'类和'2'类。不,也就是说,对于softmax,一个S形激活会给你一个单一的标量,接近零意味着1类,接近1意味着2类。