首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法预测[MNIST]

无法预测[MNIST]
EN

Stack Overflow用户
提问于 2019-03-21 14:03:27
回答 1查看 115关注 0票数 1

在这里努力学习。

链接到我的笔记本:https://gist.github.com/jagadeesh-kotra/412f371632278a4d9f6cb31a33dfcfeb

验证准确率为95%。

我用以下方法来预测:

代码语言:javascript
复制
m.eval()

testset_predictions = []
for batch_id,image in enumerate(test_dataloader):
    image = torch.autograd.Variable(image[0])
    output = m(image)
    _, predictated = torch.max(output.data,1)
    for prediction in predicted:
        testset_predictions.append(prediction.item())

len(testset_predictions)

问题是当我把结果提交给kaggle竞赛时,我的准确率只有10%,这和随机预测一样好,我不知道我做错了什么。

(请帮助:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-21 14:09:08

很可能是由于错误;当您想要使用新创建的predictated结果时,实际上使用的是predicted

代码语言:javascript
复制
_, predictated = torch.max(output.data,1)
    for prediction in predicted:

哪个predicted来自前面链接的代码,它包含来自验证集的预测,而不是您的测试集:

代码语言:javascript
复制
#validation

# ...

for batch_idx, (data, target) in enumerate(val_dataloader):

    data, target = Variable(data), Variable(target)

    output = m.forward(data)

    _, predicted = torch.max(output.data,1)

所以,您甚至没有收到错误消息,因为predicted确实存在--这并不是您真正想要使用的.您最终会提交验证集的结果,而不是测试集(这两者都包含10 000个样本当然没有帮助),因此您可以期望得到一个大约10%的随机猜测精度。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55282224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档