pytorch
基于pytorch框架的深度学习
风雪云侠
这个作者很懒,什么都没留下…
展开
-
Pytorch数据加载
一、Dataset和DataLoaderPytorch通常使用Dataset和DataLoader这两个工具类来构建数据管道。Dataset定义了数据集的内容,它相当于一个类似列表的数据结构,具有确定的长度,能够用索引获取数据集中的元素。而DataLoader定义了按batch加载数据集的方法,它是一个实现了__iter__方法的可迭代对象,每次迭代输出一个batch的数据。DataLoader能够控制batch的大小,batch中元素的采样方法,以及将batch结果整理成模型所需输入形式的方法,并原创 2020-11-14 21:39:55 · 170 阅读 · 0 评论 -
维度变换
维度变换维度变换相关函数主要有 torch.reshape(或者调用张量的view方法), torch.squeeze, torch.unsqueeze, torch.transposetorch.reshape 可以改变张量的形状。torch.squeeze 可以减少维度。torch.unsqueeze 可以增加维度。torch.transpose 可以交换维度。# 张量的view方法有时候会调用失败,可以使用reshape方法。torch.manual_seed(0)minval,ma原创 2020-11-14 17:12:38 · 287 阅读 · 0 评论 -
torch.index_select()的用法
torch.index_select()的用法a = torch.linspace(1, 12, steps=12).view(3, 4)print(a)b = torch.index_select(a, 0, torch.tensor([0, 2]))print(b)print(a.index_select(0, torch.tensor([0, 2])))c = torch.index_select(a, 1, torch.tensor([1, 3]))print(c)torch.in原创 2020-11-13 21:46:47 · 635 阅读 · 1 评论 -
pytorch不同类型进行转换
不同类型进行转换1.1 张量的数据类型i = torch.tensor(1); print(i,i.dtype)x = i.float(); print(x,x.dtype) #调用 float方法转换成浮点类型y = i.type(torch.float);print(y,y.dtype) #使用type函数转换成浮点类型z = i.type_as(x);print(z,z.dtype) #使用type_as方法转换成某个Tensor相同类型tensor(1) torch.int64原创 2020-10-04 15:25:19 · 1695 阅读 · 0 评论 -
torch.nn.Embedding()中的padding_idx参数解读
torch.nn.Embedding()Word Embedding词嵌入,就是把一个词典,随机初始化映射为一个向量矩阵。列如:有一组词典,有两个词“hello”和“world”,对应的值为0和1.通过pytorch中的torch.nn.Embedding()建立一个2x10的向量矩阵,其中2表示词典中词的数量,10表示每个词对应的向量大小。word_to_id = {'hello':0, 'world':1}embeds = nn.Embedding(2, 10)hello_idx = tor原创 2020-09-29 17:20:54 · 8390 阅读 · 3 评论 -
Torchtext
pytorch学习笔记-Torchtext总述Torchtext是pytorch处理文本的一个工具包。做过NLP的项目,预处理过程是一个相当繁琐的过程。一般在训练模型之前,需要对处理的文本文件做一些处理:从磁盘中将数据读入内存;切分词;将每一个词映射到一个对应的整数上;将文本转化为一个整数的序列;转化数据格式满足模型的要求;将文本处理成等长的;Torchtext将不同类型的文件转化为Datasets。Torchtext之后将Dataset传向了Iterator,Iterators可以处理数值化、bat原创 2020-09-22 22:21:55 · 2348 阅读 · 0 评论 -
自然语言处理之Word Embedding
Word Embedding在自然语言处理中词向量是很重要的,那什么是词向量呢?通常我们在做分类问题的时候大家应该都还记得我们会使用one-hot编码,比如一共有5类,那么属于第二类的话,它的编码就是(0, 1, 0, 0, 0),对于分类问题,这样当然特别简明,但是对于单词,这样做就不行了,比如有1000个不同的词,那么使用one-hot这样的方法效率就很低了,所以我们必须要使用另外一种方式...原创 2019-12-02 22:39:20 · 792 阅读 · 0 评论 -
长短期记忆(LSTM)
长短期记忆(LSTM)本节将介绍另一种常用的门控循环神经网络:长短期记忆(long short-term memory,LSTM)[1]。它比门控循环单元的结构稍微复杂一点。长短期记忆LSTM 中引入了3个门,即输入门(input gate)、遗忘门(forget gate)和输出门(output gate),以及与隐藏状态形状相同的记忆细胞(某些文献把记忆细胞当成一种特殊的隐藏状态),从而...原创 2019-11-29 19:47:40 · 1402 阅读 · 0 评论