pytorch
文章平均质量分 93
Fang Suk
久居深巷、独忆易人
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
pytorh实现全局平均(最大)池化的两种方式
Pytorch没有对全局平均(最大)池化单独封装为一层。需要自己实现。下面有两种简单的实现方式。使用torch.max_pool1d()定义一个网络层。 使用nn.AdaptiveMaxPool1d(1)并设置输出维度是1import torch import torch.nn as nnimport numpy as np#第一种方式class GlobalMaxPool1d...原创 2020-04-22 15:49:49 · 13536 阅读 · 1 评论 -
一文搞懂pytorch中的乘法
一 numpy广播机制Broadcast原理:python在进行numpy算术运算采用的是element-wise方式(逐元素操作的方式),此时要求两个数据的维度必须相同。维度不同时,会触发广播操作使其维度相同。不满足广播操作的情况下会直接报错。broadcase原理数据的维度指两个方面,维度的个数和维度的大小。如:a = np.ones(4,3)维度个数是2,第一维大小是4,...原创 2020-04-21 16:36:55 · 4785 阅读 · 2 评论 -
TextRCNN论文阅读总结及pytorch实现
Recurrent Convolutional Nerual Networks for Text Classfication摘要:文本分类是NLP中的基础任务,传统的文本分类通常依赖于手工设计的特征,例如字典,先验知识,special tree kernels等。不同于传统方法,本文提出了一个无需手工设计特征的循环卷积神经网络用于文本分类。这个模型使用循环网络结构尽可能远的捕获语义信息,相...原创 2020-04-14 17:19:39 · 2530 阅读 · 1 评论 -
pytorch继承nn.Module类定义模型
在pytorch中,最常用于定义模型的方法是继承nn.Module类后重载__init__()和forward函数。部分疑问记录:1.为什么重载forward函数后可以直接使用net(x)调用?2.哪些网络模块要预先写在__init__中?3.如果一个网络模块有多个重复的网络层。哪些可以在__init__只定义一次。哪些要定义多次。一 forward函数1.python的__i...原创 2020-04-23 17:58:51 · 7178 阅读 · 3 评论 -
pytorch中loss总结
Pytorch中分类loss总结近期在学习pytorch时,发现分类算法在输出时不写激活层如softmax激活/sigmoid激活。并且pytorch文档中除了softmax激活/sigmoid激活外,还有logsoftmax/logsigmoid。以及torch的loss函数会把激活和损失计算都整合到一起计算,给的解释是为了获得更好的数值稳定性。为了弄清这一切,进行了以下探索。并将自己涉及的...原创 2020-04-02 23:00:26 · 4492 阅读 · 0 评论 -
pytorch中parameter和Module类总结
看了pytorch官网parameters和Module部分。做个部分测试并记录。详细建议去官网查询一、nn.Parameter类是Tensor的子类。唯一区别:在和Module一起使用时。当parameter赋值给module的属性时,会自动将parameter加入到模型的参数列表中。而tensor不会。二、nn.Module是一个python容器。是所有神经网络模块的基类。...原创 2020-04-01 15:06:02 · 4858 阅读 · 0 评论 -
Pytorch各种取样器sample
测试了pytorch的三种取样器用法。一:概念Sample:取样器是在某一个数据集合上,按照某种策略进行取样。常见的策略包括顺序取样,随机取样(个样本等概率),随机取样(赋予个样本不同的概率)。以上三个策略都有放回和不放回两种方式。TensorDataset:对多个数据列表进行简单包装。就是用一个更大的list将多个不同类型的list数据进行简单包装。代码如下:class...原创 2020-03-30 17:06:30 · 9036 阅读 · 0 评论 -
pytorch学习二:模型定义方法
模型构造继承nn.Module类来构造模型一、nn.Module的三个子类Torch封装了三个子类Sequential(),ModuleList(),ModuleDict()。可以更加方便的定义模型。1.Sequential()类似于keras的Sequential()。内部的模块要求按顺序排序,并且要求维度匹配。使用如下:#1 Sequential()net1 =...原创 2020-03-03 00:00:02 · 638 阅读 · 0 评论 -
pytorch学习一:优化步骤与GPU加速
20200302一 torch优化步骤1.前向传播y_hat = net(X,w,b)2.计算loss根据y_hat和y计算lossloss = squared_loss(y_hat,Y).sum()loss要是标量。避免向量对向量求导。3.误差反向传播loss.backward()根据forward过程,使用aoto_grad将误差反向传播。执行完l...原创 2020-03-02 18:00:40 · 3748 阅读 · 1 评论
分享