![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pytorch
文章平均质量分 68
geter_CS
你要把时间用在美好的事情上,不要总是在不值得的事情上浪费。停止自我否定,多去肯定自己;停止反复懊悔,学会坦然放下;停止急于求成,耐心等待自律带来的变化......
展开
-
pytorch中tensor和Variable转换为numpy
关于pytorch中tensor,Variable和numpy之间的相互转化问题原创 2018-04-08 19:02:27 · 1248 阅读 · 0 评论 -
pytorch 中pad函数toch.nn.functional.pad()的使用
padding操作是给图像外围加像素点。为了实际说明操作过程,这里我们使用一张实际的图片来做一下处理。这张图片是大小是(256,256),使用pad来给它加上一个黑色的边框。具体代码如下:import torch.nn,functional as Fimport torchfrom PIL import Imageim=Image.open("heibai.jpg",'r')X=...原创 2019-03-01 11:21:42 · 18433 阅读 · 1 评论 -
pytorch中学习率的改变
如下我们定义一个简单的网络:import torchimport torch.nn as nnfrom torch.autograd import Variableclass net(nn.Module): def __init__(self): super(net, self).__init__() self.input=2 sel...原创 2019-01-05 16:10:30 · 1990 阅读 · 0 评论 -
pytorch损失函数之nn.CrossEntropyLoss()、nn.NLLLoss()
这个损失函数用于多分类问题虽然说的交叉熵,但是和我们理解的交叉熵不一样原创 2018-12-06 15:43:21 · 152260 阅读 · 19 评论 -
pytorch损失函数之nn.BCELoss()(为什么用交叉熵作为损失函数)
交叉熵原创 2018-12-03 17:10:16 · 67244 阅读 · 11 评论 -
卷积(Convolution)与转置卷积(Convolution Transposed)
要注意转置卷积有点类似卷积的反向传播,并不是等价于反向传播。因为转置卷积只是恢复了原图的size而没有恢复其值。卷积如下上图所示输入是5∗55*55∗5的,卷积核是3∗33*33∗3,然后pading是0,stride是1。卷积过程如第二幅图所示。根据计算公式(W−F+2P)/S+1(W-F+2P)/S+1(W−F+2P)/S+1,有(5−3+2∗0)/1+1(5-3+2*0)/1+1(5−...原创 2018-11-30 21:05:42 · 773 阅读 · 0 评论 -
pytorch的 torchvision transforms
torchvision是pytorch的数据集,也包含常用数据处理工具,包含几个模块:datasets(包含常用的数据集:minist,COCO等)models(包含常用的著名网络结构:AlexNet,VGG,ResNet等等,你可以使用随机初始化的网络结构,也可以使用已经训练好的网络)transforms(对PIL.Image进行变换处理:Scale(缩放)、CenterCrop(中心切...原创 2018-11-29 15:18:15 · 2644 阅读 · 0 评论 -
pytorch 的embeding
pytorch提供word embeding的功能来构建词向量,非稀疏向量。我们来看看他的定义方式:import torch.nn as NNimport torchfrom torch.autograd import Variableembeding=NN.Embedding(6,5)print(embeding.weight)输出:Parameter containing...原创 2018-10-25 21:47:08 · 851 阅读 · 0 评论 -
pytorch中的torch.utils.data.Dataset和torch.utils.data.DataLoader
首先看torch.utils.data.Dataset这个抽象类。可以使用这个抽象类来构造pytorch数据集。要注意的是以这个类构造的子类,一定要定义两个函数一个是__len__,另一个是__getitem__,前者提供数据集size,而后者通过给定索引获取数据和标签。__getitem__一次只能获取一个数据(不知道是不是强制性的),所以通过torch.utils.data.DataLoade...原创 2018-10-25 20:17:55 · 14067 阅读 · 3 评论 -
nn.Softmax()与nn.LogSoftmax()
nn.Softmax()计算出来的值,其和为1,也就是输出的是概率分布,具体公式如下:这保证输出值都大于0,在0,1范围内。而nn.LogSoftmax()公式如下:由于softmax输出都是0-1之间的,因此logsofmax输出的是小于0的数, softmax求导:logsofmax求导:例子:import torch.nn as nnimp...原创 2018-09-28 11:24:37 · 32607 阅读 · 3 评论 -
pytorch AvgPool2d函数
import torchimport torch.nn as nnimport torch.nn.functional as Ffrom torch.autograd import Variableimport numpy as npinput = Variable(torch.Tensor([[[1, 3, 3, 4, 5, 6, 7], [1, 2, 3, 4, 5...原创 2018-05-22 17:43:39 · 45158 阅读 · 2 评论 -
pytorch中全连接神经网络搭建两种模式
pytorch搭建神经网络是很简单明了的,这里介绍两种自己常用的搭建模式:import torchimport torch.nn as nnfirst:class NN(nn.Module): def __init__(self): super(NN,self).__init__() self.model=nn.Sequential( ...原创 2018-04-20 11:33:12 · 6265 阅读 · 0 评论 -
pytorch中交叉熵
关于pytorch中交叉熵的使用,pytorch的交叉熵是其loss function的一种且包含了softmax的过程。pytorch中交叉熵函数是nn.CrossEntropyLoss()。其参数包括:weight,size_averaged,reduceweight参数通常默认值是0,如果你的训练样本很不均衡的话,可以设置其值。size_averaged参数是设置是否取均值,默认...原创 2018-04-08 20:23:05 · 15380 阅读 · 2 评论 -
torch.distributions.normal,torch.distributions.normal.log_prob,torch.distributions.normal.rsample
pytorch的torch.distributions中可以定义正态分布如下:import torchfrom torch.distributions import Normalmean=torch.Tensor([0,2])normal=Normal(mean,1)sample()sample()就是直接在定义的正太分布(均值为mean,标准差std是1)上采样:c=norm...原创 2019-06-03 15:14:57 · 17558 阅读 · 3 评论