深度学习
guanguanboy
这个作者很懒,什么都没留下…
展开
-
Anaconda cuda cdnn Pytorch Pycharm安装
anaconda 的安装:https://blog.csdn.net/u012318074/article/details/77075209注意最好在安装的时候选择Add Anaconda to my PATH environment variable.否则执行python的时候找不到anaconda中自带的python等问题。关于cuda的安装:https://blog.csdn.net/u010618587/article/details/82940528直接安装对应的cu.原创 2020-09-08 10:22:47 · 643 阅读 · 0 评论 -
锚框(Anchor box)
在之前,每个网格单元可以检测一个物体,如果一个网格单元想检测多个目标该怎么办呢?这时就可以使用锚框的思想。不使用锚框的情况:Each object in training image is assigned to grid cell that contains that object's midpoint.使用两个锚框的情况:Each object in training im...原创 2020-02-04 10:47:33 · 5437 阅读 · 0 评论 -
微调技术--沐神的版本
另外⼀种解决办法是应⽤迁移学习(transfer learning),将从源数据集学到的知识迁移到⽬标数据集上。例如,虽然ImageNet 的图像⼤多跟椅⼦⽆关,但在该数据集上训练的模型可以抽取较通⽤图像特征,从而能够帮助识别边缘、纹理、形状和物体组成等。这些类似的特征对于识别椅⼦也可能同样有效。迁移学习中的⼀个常⽤技术:微调,微调由以下四步构成:1,在源数据集(例如ImageNet...原创 2020-01-21 14:12:13 · 251 阅读 · 0 评论 -
图像增广及其作用
在AlexNet一节里我们提到过,大规模数据集是成功应用深度神经网络的前提。图像增广(image augmentation)技术通过对训练图像做一系列随机改变,来产生相似但又不同的训练样本,从而扩大训练数据集的规模。图像增广的另一种解释是,随机改变训练样本可以降低模型对某些属性的依赖,从而提高模型的泛化能力。例如,我们可以对图像进行不同方式的裁剪,使得感兴趣的物体出现在不同位置,从而让模型...原创 2020-01-19 09:28:56 · 3216 阅读 · 1 评论 -
模型选择与K折交叉验证
在机器学习中,我们通常需要评估若⼲候选模型的表现并从中选择模型。这⼀过程称为模型选择(model selection)。可供选择的候选模型可以是有着不同超参数的同类模型。以多层感知机为例,我们可以选择隐藏层的个数,以及每个隐藏层中隐藏单元个数和激活函数。为了得到有效的模型,我们通常要在模型选择上花费⼀番功夫。下⾯,我们来描述模型选择中经常使⽤的验证数据集(validation data s...原创 2020-01-18 11:40:18 · 1415 阅读 · 1 评论 -
神经网络训练时为什么有时会出现内存不够用的情况
首先,在网络更深或者训练时批量更大时,更容易出现out of memory的情况。因此,在模型参数初始化完成后,我们交替地进⾏正向传播和反向传播,并根据反向传播计算的梯度迭代模型参数。既然我们在反向传播中使⽤了正向传播中计算得到的中间变量来避免重复计算,那么这个重⽤也导致正向传播结束后不能⽴即释放中间变量内存。这也是训练要⽐预测占⽤更多内存的⼀个重要原因。另外需要指出的是,这些中间变量的...原创 2020-01-16 10:07:30 · 5776 阅读 · 0 评论 -
丢弃法为什么可以防止过拟合
丢弃法为什么和weight decay(L2 norm)一样也能达到防止过拟合的效果。什么是丢弃法:当我们对该隐藏层使⽤丢弃法时,该层的隐藏单元将有⼀定概率被丢弃掉。设丢弃概率为p,那么有p 的概率hi 会被清零,有1 ???? p 的概率hi 会除以1 ???? p 做拉伸。丢弃概率是丢弃法的超参数。h1,h2,h3,h4, h5是五个隐藏层的神经元。在反向传播时,与这两个隐藏单元相关的权...原创 2020-01-14 17:07:09 · 488 阅读 · 0 评论 -
权重衰减与L2正则化
上⼀节中我们观察了过拟合现象,即模型的训练误差远小于它在测试集上的误差。虽然增⼤训练数据集可能会减轻过拟合,但是获取额外的训练数据往往代价⾼昂。本节介绍应对过拟合问题的常⽤⽅法:权重衰减(weight decay)。权重衰减等价于L2 范数正则化(regularization)。正则化通过为模型损失函数添加惩罚项使得学出的模型参数值较小,是应对过拟合的常⽤⼿段。我们先描述L2 范数正则化...原创 2020-01-12 23:19:08 · 1946 阅读 · 0 评论 -
pytorch中tensor求导--y.sum().backward()为什么求导的时候要进行这个sum操作
x = torch.arange(-8.0, 8.0, 0.1, requires_grad=True)y = x.tanh()#xyplot(x, y, 'tanh')#绘制tanh的导数x.grad.zero_()y.sum().backward() #为什么求导的时候要进行这个sum操作。xyplot(x, x.grad, 'grad of tanh')原因是:...原创 2020-01-10 16:12:02 · 8262 阅读 · 1 评论 -
线性回归与softmax回归的区别
线性回归是一种回归算法,根据当前数据去学习直线的两个参数。可以用输入特征维度为2输出为1的单层神经网络来实现。线性回归模型适⽤于输出为连续值的情景softmax回归,是一种分类方法,模型输出可以是⼀个像图像类别这样的离散值。对于这样的离散值预测问题,我们可以使⽤诸如softmax 回归在内的分类模型。和线性回归不同,softmax 回归的输出单元从⼀个变成了多个,且引⼊了softma...原创 2020-01-09 15:36:27 · 3167 阅读 · 0 评论 -
关于softmax中的交叉熵损失函数
3.4.5 交叉熵损失函数前⾯提到,使⽤softmax 运算后可以更⽅便地与离散标签计算误差。我们已经知道,softmax 运算将输出变换成⼀个合法的类别预测分布。实际上,真实标签也可以⽤类别分布表达:对于样本i,我们构造向量y(i) 2 Rq ,使得其第y(i)(样本i 类别的离散数值)个元素为1,其余为0。这样我们的训练⽬标可以设为使预测概率分布^y(i) 尽可能接近真实的标签概率分布...原创 2020-01-09 11:25:24 · 467 阅读 · 0 评论 -
anaconda安装pytorch出现http 0000 connection failed for url https://conda.anaconda.org/pytorch
第一步,翻墙。第二步,在anaconda prompt下执行安装命令安装完成之后,需要安装torchtext,使用conda install -c derickl torchtext找不到命令,听说torchtext 对pip支持比较好,执行如下命令pip install torchtext安装成功。...原创 2020-01-07 21:12:51 · 1402 阅读 · 0 评论 -
Longer-term advice on navigating a career in machine learning
Gaol:1, Job (big company or startup)2, PhDDo important work.(这是最终的目的)1,how do you get that job offer or how do you get that offer of admission to the Ph.D program or admission.2,selecting...原创 2020-01-04 14:52:07 · 190 阅读 · 0 评论 -
About reading research papers吴恩达
how to read one papers?一种阅读论文不好的方法是从从论文的第一个字开始读,一直读到论文的最后一个字。吴恩达的真实生活,走到任何地方,都在双肩包里放着一些要阅读的论文。他领导着一个阅读团队,每周主持两篇论文的讨论。为了选择出这两篇论文,可能要阅读6-7篇论文才能选择出其中两篇。阅读方法:take multiple passes through the pa...原创 2020-01-04 12:05:14 · 165 阅读 · 0 评论 -
最大池化层的作用
李沐的《动手学深度学习》中有这样的一句话:最⼤池化层则⽤来降低卷积层对位置的敏感性。这句话该如何理解?原创 2019-12-18 15:24:45 · 2156 阅读 · 1 评论 -
将Batch Norm应用到神经网络中(吴恩达深度学习第三课)
1,Adding Batch Norm to a network每一层除了W,b,多了两个参数beta 和 gamma。beta和gamma也需要计算梯度,并在反向传播时使用优化算法进行更新。2,Working with mini-batch对于每一个mini-batch来说,每一层按道理应该有w,b,beta,gamma四组参数,但是由于做归一化,加上b之后,也会由于归一化会减...原创 2019-12-14 22:05:16 · 207 阅读 · 0 评论 -
吴恩达深度学习关于使用源码的建议
use open source code1,use architectures of networks published in the literature。使用文献中的网络的结构一个网络结构在一个计算机视觉问题上有效,那么令人惊讶的是它通常也会解决其它视觉问题。所以要想建立一个使用的计算机视觉的系统,你最好先从其他人的神经网络架构入手。2,use open source imple...原创 2019-12-13 22:21:56 · 178 阅读 · 0 评论 -
Tensorflow 关于.pb 模型保存的方法和相关调试问题
模型保存介绍 在老版本的TensorFlow中,对训练后的模型框架和参数分别保存在后缀为.ckpt和.meta的文件中。然而在新版本的TensorFlow中,模型的保存为三个文件:.ckpt-data、.ckpt-meta、.ckpt-index,以及一个名为checkpoint的文件.其中,checkpoint文件的意义在于只是告知TF function哪一个文件是最后更新的ch...原创 2019-12-10 10:43:45 · 530 阅读 · 0 评论 -
模型转换及在Android端部署
tf模型的,在android端使用tflite进行部署,不需要引入第三方库进行模型的转换。pytorch模型,可以先将模型转换为ONNX,然后使用ncnn将模型转换为ncnn的格式,再进行部署。mxnet,caffe模型,直接使用ncnn进行转换,然后不是ncnn格式的模型即可。关于模型的可视化有一个非常好用的工具netron,下载地址为:https://github.com/l...原创 2019-12-09 16:02:18 · 580 阅读 · 0 评论 -
神经网络搭建的方法论
Reminder: The general methodology to build a Neural Network is to:1. Define the neural network structure ( # of input units, # of hidden units, etc). 2. Initialize the model's parameters3. Loop:...原创 2019-12-06 11:13:56 · 177 阅读 · 0 评论 -
吴恩达machine learning yearning笔记二-关于度量
1,选择一个单一度量。原创 2019-12-04 09:31:38 · 134 阅读 · 0 评论 -
pytorch中model.eval的作用
在测试集上验证时经常会有这么一句话:model.eval()这句话的作用是使得model 处于评价模式。Sets the module in evaluation mode.This has any effect only on certain modules. See documentations of particular modules for details of thei...原创 2019-12-02 16:26:47 · 574 阅读 · 0 评论 -
pytorch 模型的保存与加载
将pytorch模型保存为c++程序可直接访问的模型:https://pytorch.org/tutorials/advanced/cpp_export.htmlpytorch模型的序列化:官方指南:https://pytorch.org/docs/stable/notes/serialization.html#best-practices...原创 2019-11-29 22:43:18 · 137 阅读 · 0 评论 -
如何在conda中强制安装某个包
有的时候安装某个包时,需要更新其依赖的某些包,如下:PS C:\Users\liguanlin\Desktop> conda install torchtextFetching package metadata .................Solving package specifications: .Package plan for installation in en...原创 2019-11-25 00:06:20 · 7359 阅读 · 0 评论 -
PyTorch:nn模块
计算图和autograd是定义复杂运算符并自动采用导数的非常强大的范例。但是对于大型神经网络,原始的autograd可能会有点太低了。在构建神经网络时,我们经常考虑将计算分为几层,其中一些层具有可学习的参数 ,这些参数将在学习过程中进行优化。在TensorFlow中,诸如Keras,TensorFlow-Slim和TFLearn之类的软件包在原始计算图上提供了更高级别的抽象接口,这些封装...原创 2019-10-22 17:59:06 · 232 阅读 · 0 评论 -
什么是torchvision
该torchvision软件包包括流行的数据集,模型体系结构和用于计算机视觉的常见图像转换。https://pytorch.apachecn.org/docs/1.2/torchvision/https://pytorch.org/docs/stable/torchvision/index.htmlPackage Referencetorchvision.datasets...原创 2019-10-22 17:35:46 · 1464 阅读 · 0 评论 -
迁移学习
Transfer LearningIn practice, very few people train an entire Convolutional Network from scratch (with random initialization), because it is relatively rare to have a dataset of sufficient size. Ins...原创 2019-10-22 14:30:08 · 156 阅读 · 0 评论 -
神经网络中的BN(batch-normalization)
在逻辑回归的训练中,我们对样本的特征进行归一化处理,每个样本特征减去均值,然后除以方差,使得最后使用的数据均值为0,方差为1。这样处理后可以加快训练速度。其可以加快训练速度的原因是:消除了特征取值范围不统一的问题,比如有个特征的取值是1-10,但是另一个取值是-1000到1000,如果不进行处理,训练会非常缓慢,归一化后将取值范围都归一化到了0到1之间,从而加速训练过程。有一个问题,在深层神经...原创 2019-10-14 09:49:24 · 3590 阅读 · 0 评论 -
卷积神经网络基础概念
1,垂直边缘检测过滤器1 0 -11 0 -11 0 -1 2,水平边缘检测过滤器1 1 10 0 0-1 -1 -1 过滤器一般是奇数的,保证有一个中心点在卷积神经网络中,把这些过滤器中的参数看成是未知的,通过反向传播,学习出过滤器中的参数。 3,padding,可以保...原创 2018-09-22 11:09:16 · 257 阅读 · 0 评论 -
什么是anaconda
https://www.jianshu.com/p/eaee1fadc1e9转载 2018-09-11 11:09:45 · 1296 阅读 · 0 评论 -
ubuntu下 Anaconda3 + Tensorflow + jupyter notebook 环境搭建
1,Anaconda3 + Tensorflow环境搭建参考如下两篇博客:https://blog.csdn.net/cs_hnu_scw/article/details/79695347https://blog.csdn.net/guanguanboy/article/details/82559984 如果安装过程中下载软件包很慢的话,可以配置从指定的镜像下载,指定从清华镜像下载...原创 2018-09-11 10:29:31 · 721 阅读 · 0 评论 -
Anaconda3 + Tensorflow + pycharm 开发环境Windows下搭建指南
第一步,下载Anaconda,Anaconda有500+M,在官网下载比较慢,可以在清华镜像下载,地址如下:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Tensorflow 不需要下载,在线安装即可Pycharm直接在官网下载即可 第二步,安装https://blog.csdn.net/cs_hnu_scw...原创 2018-09-09 17:09:12 · 1226 阅读 · 1 评论 -
安装Anaconda时,如果选择了Add Anaconda to system PATH environment variable
会添加如下路径到Path中:原创 2018-09-11 11:19:57 · 29870 阅读 · 5 评论