pytorch使用相同数据进行网络测试时候输出不同

我在用户相同的数据进行网络测试的时候,发现每次结果都不一样,开始不解,后来懂了,是因为在下面的这段是程序中对原始数据进行随机了裁剪,才使得每次都不一样。

transform_train_list = transforms.Compose([
    transforms.Resize( (256,128),interpolation=3 ),
    transforms.RandomCrop((128,64)),
    transforms.ToTensor(),
    transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
])
for i in range(2):
    for data in dataloaders:
        inputs,labels = data
        o = model1(inputs)
        print(model1_dict['bn1.running_mean'])

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
对于手写数字识别任务,可以使用卷积神经网络(Convolutional Neural Network, CNN)进行训练和测试。下面介绍两种不同的CNN网络结构来完成手写数字识别任务。 ## LeNet-5 LeNet-5是一个经典的CNN网络,是Yann LeCun等人在1998年提出的。它的网络结构如下: ![LeNet-5](https://img-blog.csdn.net/2018051510011070?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N1cHBvcnRfYmxvZy9mbGFzaF9pbWFnZS5wbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80) 输入层接收28x28的手写数字图像,经过卷积、池化、卷积、池化、全连接等多个层次的计算,最终输出10个数字的概率。在训练时,使用交叉熵损失函数和随机梯度下降法进行优化。 ## AlexNet AlexNet是2012年ImageNet大规模视觉识别挑战赛的冠军网络,是一个非常深的CNN网络。它的网络结构如下: ![AlexNet](https://img-blog.csdn.net/20180515100058889?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N1cHBvcnRfYmxvZy9mbGFzaF9pbWFnZS5wbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80) 与LeNet-5相比,AlexNet网络更深、更宽,且使用了Dropout和ReLU等技术来防止过拟合。在训练时,同样使用交叉熵损失函数和随机梯度下降法进行优化。 ## 比较测试结果 使用MNIST数据集对LeNet-5和AlexNet进行训练和测试,比较它们的准确率。MNIST数据集包含60,000个训练样本和10,000个测试样本,每个样本都是28x28的手写数字图像。 在实验中,我们可以使用TensorFlow或PyTorch等框架来实现这两个CNN网络,并使用相同数据进行训练和测试。比较它们的准确率和训练时间等指标,可以得到它们的优缺点和适用场景。 总的来说,LeNet-5适用于较简单的手写数字识别任务,而AlexNet适用于更复杂的图像识别任务,如ImageNet数据集。但是,在实际应用中,我们也需要考虑网络的速度、大小和可扩展性等因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值