【近期福利】:公众号[机器学习炼丹术]与阿里云官方合作,抽奖送五本阿里云官方出版的原价160元的《阿里云天池大赛赛题解析》。目前参加抽奖的人数为26人,中奖概率5/26,参与抽奖方式:
抽奖赠书 | 清华大学戴琼海院士推荐,国内第一本数据竞赛相关图书,今天正式预售啦
- BEGIN -
<>
小白学PyTorch | 2 浅谈训练集验证集和测试集
小白学PyTorch | 1 搭建一个超简单的网络
小白学PyTorch | 动态图与静态图的浅显理解
文章目录:
1 Dataset基类
2 构建Dataset子类
2.1 __Init__
2.2 __getitem__
3 dataloader
1 Dataset基类
PyTorch 读取其他的数据,主要是通过 Dataset 类,所以先简单了解一下 Dataset 类。在看很多PyTorch的代码的时候,也会经常看到dataset这个东西的存在。Dataset类作为所有的 datasets 的基类存在,所有的 datasets 都需要继承它。
先看一下源码:
这里有一个__getitem__
函数,__getitem__
函数接收一个index,然后返回图片数据和标签,这个index通常是指一个list的index,这个list的每个元素就包含了图片数据的路径和标签信息。之后会举例子来讲解这个逻辑。
其实说着了些都没用,因为在训练代码里是感觉不到这些操作的,只会看到通过DataLoader就可以获取一个batch的数据,这是触发去读取图片这些操作的是DataLoader里的__iter__(self)
(后面再讲)。