![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习专栏
文章平均质量分 70
自己所学习的深度学习内容的总结与记录
圆圆栗子君
这个作者很懒,什么都没留下…
展开
-
激活函数理解
激活函数的主要作用是提供网络的非线性建模能力。如果没有激活函数,那么该网络仅能够表达线性映射,此时即便有再多的隐藏层,其整个网络跟单层神经网络也是等价的。因此也可以认为,只有加入了激活函数之后,深度神经网络才具备了分层的非线性映射学习能力。激活函数的主要特性是:可微性(可导)、单调性(参考)、输出值的范围可控(参考); 常见的激活函数:Sign函数、Sigmoid函数、Tanh函数、ReLU函数、P-ReLU函数、Leaky-ReLU函数、ELU函数、Maxout函数等原创 2024-01-23 13:03:01 · 395 阅读 · 1 评论 -
BP神经网络
1 例子神经网络的一种求解W的算法,分为信号“正向传播(FP)”求损失,“反向传播(BP)”回传误差;根据误差值修改每层的权重,继续迭代1 例子具体原理就不多赘述,直接上例子好理解一些1.1 给定具体网络和参数下面给定了一个简单的全连接神经网络及其参数w和b。原创 2024-01-23 13:41:30 · 338 阅读 · 1 评论 -
pytorch安装(CPU和GPU),以及简单的API
1 END-TO-END MACHINE LEARNING FRAMEWORK(端到端的机器学习框架)上述这样命名就是因为深度学习只是机器学习的一个分支2 pytorch的优点:简单易用、分布式训练、服务器部署方便、移动端部署方便;3 PyTorch 是基于以下两个目的而打造的python科学计算框架:无缝替换NumPy,并且通过利用GPU的算力来实现神经网络的加速。通过自动微分机制,来让神经网络的实现变得更加容易。4 参考网站:5深度学习案例直观理解。原创 2024-01-23 15:13:51 · 2154 阅读 · 1 评论 -
输入数据预处理(去均值,标准化,归一化)
1 去均值1 输入数据单位不一样, 可能会导致神经网络收敛速度慢, 训练时间长2 数据范围大的输入在模式分类中的作用可能偏大, 而数据范围小的作用就有可能偏小3 由于神经网络中存在的激活函数是有值域限制的, 因此需要将网络训练的目标数据映射到激活函数的值域4 S形激活函数在(-4,4)区间以外区域很平缓, 区分度太小。例如S形函数f(X), f(100) 与f(5)只相差0.00671 去均值。原创 2024-01-24 13:32:49 · 600 阅读 · 1 评论 -
CNN卷积理解
卷积层使用一组可学习的过滤器来扫描输入数据(通常是图像)。每个过滤器都是一个小的窗口,包含一些权重,这些权重通过训练数据进行学习。过滤器的大小(例如3x3或5x5)决定了它观察输入数据的范围大小。较小的过滤器可以捕捉到细粒度的特征,而较大的过滤器可以捕捉到更大范围的特征。当过滤器在输入数据上滑动(或卷积)时,它会计算过滤器与输入数据的局部区域之间的点乘积,生成特征图。每个特征图代表了过滤器检测到的特定类型的特征在输入数据中的位置。原创 2024-01-24 13:52:35 · 643 阅读 · 2 评论 -
几种激活函数详解
缺点类似于sigmoid函数。原创 2024-01-24 14:03:17 · 482 阅读 · 1 评论 -
池化理解,还有卷积神经网络中最后一层为全连接层的原因
下述只是个人笔记,仅供参考。原创 2024-01-24 14:16:47 · 818 阅读 · 1 评论 -
BN(Batch Normalization)
在神经网络的训练过程中, 我们一般会将输入样本的特征进行标准化处理,使数据变成均值为0, 标准差为1的高斯分布, 或者范围在0附近的分布。因为如果数据没有进行该处理的话, 由于样本特征分布比较散, 可能会导致学习速度慢甚至难以学习。因此一个较好的数据分布可以使神经网络的训练速度加快, 甚至效果更好。在模型训练的时候, 由于模型参数在发生更新, 那么除了输入层的数据之外, 后面网络的每一层的输入数据分布都是一直在发生变化的。原创 2024-01-25 13:15:25 · 869 阅读 · 0 评论 -
LN,IN,GN,SN归一化原理详解
在Layer Normalization中, 是针对不同样本计算当前样本的所有神经元的均值和方差, 也就是说在LN中, 同层神经元输入拥有相同的均值和方差, 不同的输入样本具有不同的均值和方差;而在BN中, 同层的不同神经元输入的是不同的均值和方差, 而同一个batch中的所有样本拥有相同的方差和均值上述是类似全连接的时候,下面是有通道的时候BN的是对不同样本的同一个通道的每个位置分别计算均值和方差,并用这些统计量对该位置上的值进行归一化而LN具体的计算方式是。原创 2024-01-27 18:55:24 · 936 阅读 · 0 评论 -
LeNet跟LeNet5详解
主要是为了手写数字识别具体结构讲解:从图中例子可得1 先传入一个灰度图像尺寸为1x28x28,通道数为1,尺寸为28x28的灰度图像2 第一层5x5卷积,经过公式 输入图像尺寸-卷积核尺寸+2padding/步长+1,(其中,因为是正方形,所以长宽都一样,直接一个式子得出)因为没有padding,输出特征图20个通道,24x24的尺寸。3 经过第二层Pooling层,计算方式同上,得到20x12x124 在经过第三层5x5卷积,输出50x8x8,5 第四层Polling,得到50x4x4。原创 2024-01-27 20:35:13 · 825 阅读 · 0 评论 -
AlexNet,ZFNet详解
网络结构对于AlexNet网络来说,因为当时资源环境受限,他从第一步卷积开始就把一个图像分到两个GPU上训练,然后中间进行组合最后进行融合成全连接成1000个置信度1 得到一张3x224x224的图像,然后进行11x11的卷积,卷积两次,分别分配到不同的GPU上分别得到,两个48x55x55的feature map,然后进行最大池化操作从48x55x55变成48x27x27。原创 2024-01-27 21:56:08 · 490 阅读 · 0 评论 -
VGGNet的结构和复现
上述为VGGNet的结构图,左边是VGG16D的步骤 16代表16层,有参数的层,其他结构也是如此对于这6个机构来说,D中的VGG16是最优的,而VGG19相比较而言,没有VGG16优,VGG16有16层(包括13个卷积层和3个全连接层),而VGG19有19层(包括16个卷积层和3个全连接层),对于出现了的模型退化问题,有几个原因:1 网络层次越深,提取的特征越是高度抽象,这可以帮助模型理解复杂的、高级的模式。原创 2024-01-28 15:13:20 · 212 阅读 · 0 评论 -
GoogleNet v1结构和代码复现
Top5错误率6.7%;使用9个inception模块, 改变CNN原串行结构, 并行, 共22层;使用平均池化替代FC层;参数量仅为AlexNet的1/12;使用softmax获取平均结果;网络结构的更新, 性能比AlexNet要好;2014年ILSVRC冠军。下面是他的具体参数其实感觉对于GoogleNet结构除了inception结构和多出来的两个输出结构并没有什么好介绍的,具体介绍下inception结构,和那两个输出结构2 inception结构。原创 2024-01-29 16:30:14 · 327 阅读 · 0 评论 -
GoogleNet Inception v2 和 Inception v3详解
v1具体结构:v2具体结构:Inception v2在每个卷积层之后引入了BN。这有助于解决深层网络中的梯度消失问题,同时加快训练过程并提高模型的收敛速度。BN通过减少内部协变量偏移,使每一层的输入更加稳定。Inception v2采用了更多的3x3卷积核代替大尺寸卷积核。这种设计可以减少参数数量,从而减少过拟合的风险,并降低计算复杂度。Inception v2将大尺寸的卷积核(如5x5)分解成两个较小的卷积核(如3x3)。这不仅减少了参数的数量和计算量,还保持了网络的表达能力。如下图在v1中,只改变了,第原创 2024-01-29 18:50:10 · 1118 阅读 · 0 评论