那些年,Pytorh的坑(持续更新)

20 篇文章 0 订阅
13 篇文章 163 订阅

        本博客和大家分享一些本人在使用pytorch时候经历过的一些坑,将持续更新。


1. 报错:

RuntimeError: Expected object of type torch.FloatTensor but found type torch.cuda.FloatTensor for argument #2 'weight'

任务:需要实现从test_loader中随机获取一张图片,传入已经训练好的model中,运行以下代码报上述错误。

    dataiter = iter(test_loader)
    images, labels = dataiter.next()
    images = Variable(images)
    print model(images)
  • 解决办法:加入这句话images = images.type(torch.cuda.FloatTensor)
    dataiter = iter(test_loader)
    images, labels = dataiter.next()
    images = Variable(images)
    
    images = images.type(torch.cuda.FloatTensor)
    
    print model(images)

2.报错

urllib2.URLError: <urlopen error [Errno 1] _ssl.c:510: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure>

任务:从torchvision.models中下载已训练好的模型,会报如上错误,相关代码如下:

net = models.vgg16(pretrained=True)

本人在网上查了很久,有人说时python版本的原因,本人python版本为2.7.6,version需要大于2.7.9.但是重装更新python太麻烦了。于是采用以下方法进行解决:replace('https://', 'http://')

from torchvision.models.vgg import model_urls
import torchvision

model_urls['vgg16'] = model_urls['vgg16'].replace('https://', 'http://')
vgg16 = torchvision.models.vgg16(pretrained=True)

3. 心得

使用pytorch加载CIFAR10数据集的详情

train_dataset = torchvision.datasets.CIFAR10(
        root=DATA_PATH, train=True, transform=transform_train, download=True
    )
test_dataset = torchvision.datasets.CIFAR10(root='../../data/', train=False, transform=transform)
classes = ('plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck')

cifar10数据集经常做10分类,训练集有50000张图片,测试集有10000张。整个数据集有60000张图片。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值