Pytorch 定义MyDatasets实现多通道分别输入不同数据方式

yipeiwu_com6年前Python基础

最近在做一个项目,用双通道神经网络,每个通道输入不同数据训练,具有相同label。开始没想到如何实现,网上很多例子都是单通道,即便找到双通道的例子,两个通道的输入也相同。

最后,终于想到了一个办法。多输入和单输入其实是一样的,只需要重新改写torch.utils.data.Datasets. 需要改写class Dataset里面的init、len和getitem

一个例子:

 class MyDataset(data.Dataset):
  def __init__(self, data1,data2, labels):
    self.data1= data1
    self.data2= data2
    self.labels = labels # 我的例子中label是一样的,如果你的不同,再增加一个即可

  def __getitem__(self, index):  
    img1,img2, target = self.data1[index], self.data2[index], self.labels[index]
    return img1,img2, target

  def __len__(self):
    return len(self.data1) # 我的例子中len(self.data1) = len(self.data2)

以上这篇Pytorch 定义MyDatasets实现多通道分别输入不同数据方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python直接获取API传递回来的参数方法

之前用python调用API存JSON的时候试用了很多方法,现在调用API直接获取参数的时候也是查了好多例子(毕竟我是一个初学者)。 结果让我发现了,原来只用把之前写的方法中去掉传参即可...

python3实现随机数

python3实现随机数

Python3实现随机数,供大家参考,具体内容如下 random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。 random.seed(x)改变随机数生成器的种子seed...

Python自定义函数定义,参数,调用代码解析

函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()等。也可以创建用户自定义函数。 函数定义 函数定义的简单规则: 函数代码块以def关键词开头...

Python实现的批量下载RFC文档

RFC文档有很多,有时候在没有联网的情况下也想翻阅,只能下载一份留存本地了。 看了看地址列表,大概是这个范围: http://www.networksorcery.com/enp/rfc...

python 统计数组中元素出现次数并进行排序的实例

如下所示: lis = [12,34,456,12,34,66,223,12,5,66,12,23,66,12,66,5,456,12,66,34,5,34] def test1(...