pytorch使用

这里写自定义目录标题

pytorch使用

1.x=x.view(x.size(0),-1)
tensor变量函数view主要类似于resize,将矩阵重新排列,如view(3,2)表示将矩阵变为,3行2列
view(m,-1)中-1表示自适应,不知道有多少列,根据实际情况推断有多少列
x=x.view(x.size(0),-1)主要是为了将数据变为一维展开
2.img,label=data
data为tensorl类型的数据,这种写法表示的是提取tensor中的对应两部分的值
3.pytorch加载图片数据
(1)dataset:支持两种不同类型的数据集
map-style:这种数据集主要实现两个函数__getitem__()和__len__(),getitem()可以表示从索引/关键字到数据的映射
Iterable-style datasets:主要使用了__iter__()函数
(2)DataLoader作为一个迭代器来加载数据
结合数据集与样本,在给定的数据集上提供一个迭代
参数
dataset:数据来源
batch_size:每一次批处理加载的样本,代表的是每次所取的样本数量,内存中存储的数据量,每次forward,backword时的数据
shuffle:在每个时机随机打散数据
sampler:定义从数据集绘制样本的策略
collate_fn:将一个样本列表合并成一小批张量
drop_last:True,最后一个不满batch的数据集将被丢弃;False:最后一个不满batch的数据集将更小
timeout:从workers收集数据集的时间
dataset主要是定义数据集,数据集的位置,数据集返回的形式等,而dataloader主要定义的是数据集的读取形式,主要是为了实现batch,多线程获取数据,取得的一个batch的数据可以通过collate_fn函数来定义其返回的形式

具体说明:
collate_fn 的参数是从dataset中获得的batch大小的数据,batch中包含的是每一个元素是dataset中通过__getitem__获得的数据,collate_fn定义的是如何对这一批数据进行处理
(3)图片预处理
主要使用的包为torchvision.transforms,使用的函数为transforms.ToTensor()和transforms.Normalize()
transforms.ToTensor将图片转换为pytorch中的处理对象tensor,在处理过程中将图片自动标准化了,也就是说Tensor的范围是0-1
transforms.Normalize:标准化,将图片转化到相应的范围内,transforms.Normalize([0.5],[0.5]),第一个参数代表均值,第二个参数代表方差,所做的处理是先减去均值,再除以方差,将数据转换到-1–1之间
(4)len(dataloader)
(5)typeError错误,初始化函数为__init__ is not the int
(6)dataloader实际上是一个数据的容器,规定了每次读取数据的大小,如何读取数据,如何取样,work数等
dataset完成的实际上是数据的一个转换,对于读取到的数据如何进行转换得到符合一定格式要求的数据

4.os.path.dirname(file)返回脚本的路径,即文件路径中所在的目录(不包含文件名)
如:
import os
path=os.path.dirname(‘D:\test\t.py’)
print(path)

结果
D:\test
os.path.append(‘引用模块的地址’),将引用的模块添加进本路径

5.tensflow中的tf.nn.sparse_softmax_cross_entropy_with_logits()
是分类中经常用到的函数,实际代表的意义为将一个向量归一化
归一化的方式为:
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值