04 2019 档案
摘要:参考:https://www.jianshu.com/p/aee6a3d72014 再加载预训练模型时,最好指定map_location。因为如果程序之前在GPU上运行,那么模型就会被存为torch.cuda.Tensor,这样加载时会默认将数据加载至显存。如果运行该程序的计算机中没有GPU,加载就
阅读全文
摘要:参考:https://blog.csdn.net/qq_41368247/article/details/86626446 使用前提:stride > 1 补充:same卷积操作 是通过padding使得卷积之后输出的特征图大小保持不变(相对于输入特征图),不代表得到的输出特征图的大小与输入特征图的
阅读全文
摘要:1.首先先定义进行卷积的参数: 输入特征图为高宽一样的Hin*Hin大小的x 卷积核大小kernel_size 步长stride padding填充数(填充0) 输出特征图为Hout*Hout大小的y 计算式子为: Hout = floor( Hin + 2*padding - kernel_siz
阅读全文
摘要:https://pytorch.org/docs/stable/nn.html 1)卷积层 class torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1,
阅读全文
摘要:1. 先导入使用的包,并声明可用的网络和预训练好的模型 2. 定义要使用到的1*1和3*3的卷积层 注意:这里bias设置为False,原因是: 下面使用了Batch Normalization,而其对隐藏层 有去均值的操作,所以这里的常数项 可以消去 因为Batch Normalization有一
阅读全文
摘要:输入的标准化处理是对图片等输入信息进行标准化处理,使得所有输入的均值为0,方差为1 而Batch Normalization的目的是使各隐藏层输入的均值和方差为任意值 Batch Norm经常使用在mini-batch上,这也是其名称的由来 Batch Normalization是对下面隐藏层进行激
阅读全文
摘要:1.当设置group=1时: conv = nn.Conv2d(in_channels=6, out_channels=6, kernel_size=1, groups=1) conv.weight.data.size() 返回: torch.Size([6, 6, 1, 1]) 另一个例子: co
阅读全文
摘要:如果我们设置的dilation=0的话,效果如图: 蓝色为输入,绿色为输出,可见卷积核为3*3的卷积核 如果我们设置的是dilation=1,那么效果如图: 蓝色为输入,绿色为输出,卷积核仍为3*3,但是这里卷积核点与输入之间距离为1的值相乘来得到输出 好处: 这样单次计算时覆盖的面积(即感受域)由
阅读全文
摘要:想要尝试一下将resnet18最后一层的全连接层改成卷积层看会不会对网络效果和网络大小有什么影响 1.首先先对train.py中的更改是: train.py代码可见:pytorch实现性别检测 但是运行的时候出错: 1) [2, 512, 1, 1]为[batch_size, channels, h
阅读全文
摘要:参考:https://github.com/milesial/Pytorch-UNet 实现的是二值汽车图像语义分割,包括 dense CRF 后处理. 使用python3,我的环境是python3.6 1.使用 1> 预测 1)查看所有的可用选项: 返回: 2)预测单一图片image.jpg并存储
阅读全文
摘要:https://github.com/lucasb-eyer/pydensecrf/blob/master/examples/inference.py 1.运行 先运行看看实现的结果: im1.png和anno1.png是输入图片,out1.png为进行crf处理后的输出图片 im1.png和ann
阅读全文
摘要:参考:https://github.com/lucasb-eyer/pydensecrf 1.使用 对于图像来说,最简单的使用该库的方法是使用DenseCRF2D类: 2.一元势 Unary potential 你可以使用下面的方法设置固定的一元势 一元势即网络预测得到的结果,进行-np.log(p
阅读全文
摘要:本笔记本通过一个示例说明如何在非rgb数据上使用DenseCRFs。同时,它将解释基本概念并通过一个示例进行演示,因此即使您正在处理RGB数据,它也可能是有用的,不过也请查看PyDenseCRF's README ! 在jupyter notebook上运行https://github.com/lu
阅读全文
摘要:参考:https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.multivariate_normal.html 一个多元正态随机变量。mean关键字指定平均值,cov关键字指定协方差矩阵。新版本0.14.0。 补
阅读全文
摘要:功能:返回多维结构,常见的如2D图形,3D图形 第n维的书写形式为: c表示步长,为实数表示间隔;该为长度为[a,b),左开右闭 或: cj表示步长,为复数表示点数;该长度为[a,b],左闭右闭 举例说明: 1)生成1D数组: 在[-4,4]区间内取3个值 返回: 2)生成个2D矩阵: 生成的是3*
阅读全文
摘要:1)ctrl+Z:停止当前进程 首先先将一个程序运行起来,这个时候如果你需要去干别的事情,需要暂停运行,可以使用ctrl+Z: 从上面可以看见,这个程序已经已经停止了,状态为Stopped 2)jobs:用于查看正在运行的命令 前面的编号[1]是命令编号 3)bg 命令编号:把程序调度到后台执行:
阅读全文
摘要:在深度学习框架PyTorch一书的学习-第六章-实战指南和pytorch Debug —交互式调试工具Pdb (ipdb是增强版的pdb)-1-在pytorch中使用 和 pytorch实现性别检测三篇文章的基础上写的这篇文章 之前我们使用的是: 去自动递减学习率,但是这种方法还是十分死板的,希望实
阅读全文
摘要:参考深度学习框架pytorch:入门和实践一书第六章 以深度学习框架PyTorch一书的学习-第六章-实战指南为前提 在pytorch中Debug pytorch作为一个动态图框架,与ipdb结合能为调试过程带来便捷 对tensorflow等静态图来说,使用python接口定义计算图,然后使用c++
阅读全文
摘要:卷积神经网络的训练是耗时的,很多场合不可能每次都从随机初始化参数开始训练网络。 1.训练 pytorch中自带几种常用的深度学习网络预训练模型,如VGG、ResNet等。往往为了加快学习的进度,在训练的初期我们直接加载pre-train模型中预先训练好的参数,所以这里使用的网络是: torchvis
阅读全文
摘要:运行svn update更新本地内容是,发生冲突: 因为这里我要更新到别人上传的版本,所以选择的是tc使用别人的修改
阅读全文
摘要:参考:https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch-autograd/#detachsource 当我们再训练网络的时候可能希望保持一部分的网络参数不变,只对其中一部分的参数进行调整;或者值训练部分分支网络,
阅读全文
摘要:参考:https://github.com/chenyuntc/pytorch-book/tree/v1.0/chapter6-实战指南 希望大家直接到上面的网址去查看代码,下面是本人的笔记 将上面地址的代码下载到本地后进行操作 1.安装依赖 在https://github.com/chenyunt
阅读全文
摘要:参考:https://pytorch-cn.readthedocs.io/zh/latest/package_references/functional/#_1 或: 对n维输入张量运用Softmax函数,将张量的每个元素缩放到(0,1)区间且和为1。Softmax函数定义如下: 参数: dim:指
阅读全文
摘要:__future__是python2的概念,其实是为了使用python2时能够去调用一些在python3中实现的特性 1.absolute_import 这是一个在py2.x中导入3.x的导入特性的语句, 是为了区分出绝对导入和相对导入 声明为绝对引用。因为在Python 2.4或之前默认是相对引用
阅读全文
摘要:参考:https://docs.python.org/3.6/library/textwrap.html textwrap模块提供了一些方便的函数,以及TextWrapper类,它执行所有的工作。如果您只是包装或填充一个或两个文本字符串,方便的函数应该足够好;否则,为了提高效率,应该使用TextWr
阅读全文
摘要:https://github.com/chenyuntc/pytorch-book/blob/v1.0/chapter5-常用工具/chapter5.ipynb 希望大家直接到上面的网址去查看代码,下面是本人的笔记 在训练神经网络过程中,需要用到很多工具,其中最重要的三部分是:数据、可视化和GPU加
阅读全文
摘要:参考https://docs.python.org/3.6/library/argparse.html argparse模块使编写用户友好的命令行界面变得很容易。程序定义了它需要什么参数,argparse将找出如何从sys.argv中解析这些参数。argparse模块还自动生成帮助和使用消息,并在用
阅读全文
摘要:使用教程,参考: https://github.com/facebookresearch/visdom https://www.pytorchtutorial.com/using-visdom-for-visualization-in-pytorch/ https://www.pytorchtuto
阅读全文
摘要:4)Generic Plots 注意,服务器API遵循数据和布局对象的规则,这样您就可以生成自己的任意Plotly可视化: 图示: 5)Others vis.close : 通过id关闭窗口 vis.delete_env : 通过env_id删除环境 vis.win_exists : 通过id检查窗
阅读全文
摘要:3)plotting绘图 我们已经包装了几种常见的plot类型,以便轻松创建基本的可视化。这些可视化是由Plotly驱动的。 Visdom支持下列API。由 Plotly 提供可视化支持。 vis.scatter : 2D 或 3D 散点图 vis.line : 线图 vis.stem : 茎叶图
阅读全文
摘要:初学时大多使用print或log调试程序,这在小规模的程序下很方便 但是更好的方法是一边运行一边检查里面的变量和方法 1.Pdb Pdb是一个交互式的调试工具,集成于Python标准库中 Pdb能让你根据需求跳转到任意的Python代码断点、查看任意变量、单步执行代码,甚至还能修改变量的值,而不必重
阅读全文
摘要:参考:https://pytorch-cn.readthedocs.io/zh/latest/torchvision/torchvision-datasets/ torchvision.datasets Datasets 拥有以下API: __getitem__ __len__ Datasets都是
阅读全文
摘要:在文档中解释是: 意思是是否将得到的值计算得到的值覆盖之前的值,比如: 即对原值进行操作,然后将得到的值又直接复制到该值中 而不是覆盖运算的例子如: 这样就需要花费内存去多存储一个变量y 所以 的意思就是对从上层网络Conv2d中传递下来的tensor直接进行修改,这样能够节省运算内存,不用多存储其
阅读全文
摘要:1.安装 安装命令: 2.启动 1) 启动命令: 如果想将其启动在后台: 后面发现下面的错误可能是安装的版本过低导致的,后面改成了0.1.8.8版本的就没有出现问题了 使用浏览器调用http://localhost:8097连接时页面为蓝色空白页,错误为: 可见是缺少了两个文件: plotly.mi
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79639509 希望大家直接到上面的网址去查看代码,下面是本人的笔记 搭建一个能够 “识别猫”的简单神经网络——实现logistic回归,即单层神经网络 1.首先下载数据 总代码lr_utils
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79702148 希望大家直接到上面的网址去查看代码,下面是本人的笔记 建立一个带有隐藏层的神经网络 导入一些软件包numpy:是用Python进行科学计算的基本软件包。sklearn:为数据挖掘
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79767169 希望大家直接到上面的网址去查看代码,下面是本人的笔记 实现多层神经网络 1.准备软件包 为了和作者的数据匹配,需要指定随机种子 2.初始化参数 测试两层时: 返回: 测试三层时:
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79767169 希望大家直接到上面的网址去查看代码,下面是本人的笔记 两层神经网络,和吴恩达课后作业学习1-week3-homework-one-hidden-layer——不发布不同之处在于使
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 5.梯度校验 在我们执行反向传播的计算过程中,反向传播函数的计算过程是比较复杂的。为了验证我们得到的反向传播函数是否正确,现
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 初始化、正则化、梯度校验 1. 初始化参数: 1.1:使用0来初始化参数。 1.2:使用随机数来初始化参数。 1.3:使用抑
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 4.正则化 1)加载数据 仍是问题: 解决——直接导入函数: 加载数据: 图示: 每一个点代表球落下的可能的位置,蓝色代表我
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79971488 希望大家直接到上面的网址去查看代码,下面是本人的笔记 到目前为止,我们一直在使用numpy来自己编写神经网络。现在我们将一步步的使用深度学习的框架来很容易的构建属于自己的神经网络
阅读全文
摘要:参考:https://blog.csdn.net/u013733326/article/details/79907419 希望大家直接到上面的网址去查看代码,下面是本人的笔记 我们需要做以下几件事: 1. 分割数据集 2. 优化梯度下降算法: 2.1 不使用任何优化算法 2.2 mini-batch
阅读全文
摘要:参考https://github.com/chenyuntc/pytorch-book/tree/v1.0 希望大家直接到上面的网址去查看代码,下面是本人的笔记 本章介绍的nn模块是构建与autograd之上的神经网络模块 除了nn外还会介绍神经网络中常用的工具,比如优化器optim、初始化init
阅读全文