kua*_*oka 6 probability prediction deep-learning keras tensorflow
在我的keras模型的预测阶段,当我打印出预测值和类时,我在predict_proba()和predict()中给出了不同的概率.此外,predict_classes()的输出与概率不对应.以下代码示例和打印输出示例:
码:
p = pd.read_csv("test.csv", header=None)
p = np.reshape(p.values, (50, seq_length))
for i in range(len(p)):
p[i] = scaler.fit_transform(p[i])
p = np.reshape(p, (50, seq_length, 1))
model.predict(p, batch_size=50)
model.predict_classes(p, batch_size=50)
model.predict_on_batch(p)
model.predict_proba(p, batch_size=50)
for i in zip(model.predict_proba(p, batch_size=50), model.predict_classes(p, batch_size=50), model.predict(p, batch_size=50)):
print("model.predict_proba", "--", i[0], "model.predict","--", i[2], "predict_clases", "--", i[1])
Run Code Online (Sandbox Code Playgroud)
输出样本与不同predict_proba()和predict()
model.predict_proba -- [ 0.18768159 0.81231844] model.predict -- [ 0.18982948 0.81017047] predict_classes -- 1
model.predict_proba -- [ 0.55918539 0.4408147 ] model.predict -- [ 0.78916383 0.2108362 ] predict_classes -- 1
Run Code Online (Sandbox Code Playgroud)
最后一个也是最高概率对应于index = 0但预测类为1的情况
另一个例子.索引= 0的概率最高,但预测类为1
model.predict_proba -- [ 0.55918539 0.4408147 ] model.predict -- [ 0.78916383 0.2108362 ] predict_classes -- 1
Run Code Online (Sandbox Code Playgroud)
但大多数情况如下所示,其中predict_proba()和predict()显示相同的值,预测类正确对应于概率最高的索引
model.predict_proba -- [ 0.39802018 0.60197979] model.predict -- [ 0.39802018 0.60197979] predict_classes -- 1
Run Code Online (Sandbox Code Playgroud)
也许我不明白怎么读它?谢谢
| 归档时间: |
|
| 查看次数: |
2944 次 |
| 最近记录: |