【机器学习9】前馈神经网络

深度前馈网络是一类网络模型的统称,主要包括多层感知机、 自编码器、限制玻尔兹曼机, 以及卷积神经网络等。

1 激活函数

激活函数及对应导函数其它
Sigmoid在这里插入图片描述 在这里插入图片描述在这里插入图片描述导数 在z很大或很小时都会趋近于0, 造成梯度消失的现象
Tanh在这里插入图片描述 在这里插入图片描述在这里插入图片描述其导数在z很大或很小时都会趋近于0, 同样会出现“梯度消失
ReLU在这里插入图片描述 在这里插入图片描述在这里插入图片描述ReLU只需要一个阈值即可得到激活值,有效地解决梯度消失的问题,单侧抑制提供了网络的稀疏表达能力。局限性在于其训练过程中会导致神经元死亡的问题 :负梯度在经过该ReLU单元时被置为0, 且在之后也不被任何数据激活, 即流经该神经元的梯度永远为0, 不对任何数据产生响应。
LReLU在这里插入图片描述在这里插入图片描述既实现了单侧抑制, 又保留了部分负梯度信息以致不完全丢失。但a值的选择增加了问题难度, 需要较强的人工先验或多次重复训练以确定合适的参数值
PReLU与LReLU的主要区别是将负轴部分斜率a作为网络中一个可学习的参数, 进行反向传播训练, 与其他含参数网络层联合优化。

2 多层感知机

2.1 网络结构

定义第(l)层的输入为x(l), 输出为a(l); 在每一层中, 首先利用输入x(l)和偏置b(l)计算仿射变换z(l)=W(l)x(l)+b(l); 然后激活函数f作用于z(l), a(l)直接作为下一层的输入, 即x(l+1)。
在这里插入图片描述
在网络训练中, 前向传播最终产生一个标量损失函数, 反向传播算法(BackPropagation) 则将损失函数的信息沿网络层向后传播用以计算梯度, 达到优化网络参数的目的。

2.2 平方误差和交叉熵损失函数

给定包含m样本的集合 , 其整体代价函数为:

在这里插入图片描述

其中第一项为平方误差项, 第二项为L2正则化项。
梯度下降法中每次迭代对参数W(网络连接权重) 和b(偏置) 进行更新:
在这里插入图片描述
在这里插入图片描述下面针对两种不同的损失函数计算最后一层的残差δ(L); 得到δ(L)之后, 其他层的残差δ(L−1),…, δ(1)可以根据上面得到的递推公式计算。 进行简化计算,重点关注梯度产生的损失:

在这里插入图片描述

平方损失函数更适合输出为连续, 并且最后一层不含Sigmoid或Softmax激活函数的神经网络; 交叉熵损失则更适合二分类或多分类的场景。

3 Dropout和批量归一化

3.1Dropout

要求某个神经元节点激活值以一定的概率p被“丢弃”,即该神经元暂时停止工作。对于任意神经元, 每次训练中都与一组随机挑选的不同的神经元集合共同进行优化, 这个过程会减弱全体神经元之间的联合适应性, 减少过拟合的风险, 增强泛化能力。
在这里插入图片描述

3.2批量归一化

神经网络训练过程的本质是学习数据分布, 如果训练数据与测试数据的分布不同将大大降低网络的泛化能力, 因此我们需要在训练开始前对所有输入数据进行归一化处理。批量归一化方法是针对每一批数据, 在网络的每一层输入之前增加归一化处理(均值为0, 标准差为1)
在这里插入图片描述
其中x(k)为该层第k个神经元的原始输入数据, E[x(k)]为这一批输入数据在第k个神经元的均值, 在这里插入图片描述为这一批数据在第k个神经元的标准差。
批量归一化可以看作在每一层输入和上一层输出之间加入了一个新的计算层, 对数据的分布进行额外的约束, 从而增强模型的泛化能力。 但是批量归一化同时也降低了模型的拟合能力, 归一化之后的输入分布被强制为0均值和1标准差。 为了恢复原始数据分布, 具体实现中引入了变换重构以及可学习参数γ和β:
在这里插入图片描述
其中γ(k)和β(k)分别为输入数据分布的方差和偏差。在批量归一化操作中, γ和β变成了该层的学习参数, 仅用两个参数就可以恢复最优的输入数据分布, 与之前网络层的参数解耦, 从而更加有利于优化的过程, 提高模型的泛化能力。

4深度卷积神经网络

卷积神经网络特点是每层的神经元节点只响应前一层局部区域范围内的神经元。
深度卷积神经网络模型通常由若干卷积层叠加若干全连接层组成, 中间也包含各种非线性操作以及池化操作。
由于卷积运算主要用于处理类网格结构的数据, 因此对于时间序列以及图像数据的分析与识别具有显著优势。
卷积操作的本质特性包括稀疏交互和参数共享。

4.1 稀疏交互

卷积核尺度远小于输入的维度, 这样每个输出神经元仅与前一层特定局部区域内的神经元存在连接权重(即产生交互) , 我们称这种特性为稀疏交互, 假设网络中相邻两层分别具有m个输入和n个输出, 全连接网络中的权值参数矩阵将包含m×n个参数。 对于稀疏交互的卷积网络, 如果限定每个输出与前一层神经元的连接数为k, 那么该层的参数总量为k×n。
全连接层

卷积层

稀疏交互的物理意义是, 通常图像、 文本、 语音等现实世界中的数据都具有局部的特征结构, 我们可以先学习局部的特征, 再将局部的特征组合起来形成更复杂和抽象的特征。 以人脸识别为例, 最底层的神经元可以检测出各个角度的边缘特征 ; 位于中间层的神经元可以将边缘组合起来得到眼睛、鼻子、 嘴巴等复杂特征 ; 最后, 位于上层的神经元可以根据各个器官的组合检测出人脸的特征 。

4.2 参数共享

参数共享是指在同一个模型的不同模块中使用相同的参数, 它是卷积运算的固有属性。
全连接网络中, 计算每层的输出时, 权值参数矩阵中的每个元素只作用于某个输入元素一次; 而在卷积神经网络中, 卷积核中的每一个元素将作用于每一次局部输入的特定位置上。 根据参数共享的思想, 我们只需要学习一组参数集合, 而不需要针对每个位置的每个参数都进行优化。

4.3 池化

池化操作的本质是降采样。 池化操作除了能显著降低参数量外, 还能够保持对平移、 伸缩、 旋转操作的不变性。

原理特点
均值池化通过对邻域内特征数值求平均来实现, 能够抑制由于邻域大小受限造成估计值方差增大的现象对背景的保留效果更好
最大池化通过取邻域内特征的最大值来实现, 能够抑制网络参数误差造成估计均值偏移的现象更好地提取纹理信息
相邻重叠区域的池化采用比窗口宽度更小的步长, 使得窗口在每次滑动时存在重叠的区域
空间金字塔池化主要考虑了多尺度信息的描述, 例如同时计算1×1、 2×2、 4×4的矩阵的池化并将结果拼接在一起作为下一网络层的输入

5深度残差网络

5.1 梯度消失

在2.2中推导的误差传播公式为:
在这里插入图片描述

如果再展开所有层的话,就涉及很多参数以及导数的连乘,这时误差很容易产生消失或者膨胀, 影响对该层参数的正确学习。 因此深度神经网络的拟合和泛化能力较差, 有时甚至不如浅层的神经网络模型精度更高。
在这里插入图片描述

ResNet把网络结构调整为, 既然离输入近的神经网络层较难训练, 那么我们可以将它短接到更靠近输出的层,输入x经过两个神经网络的变换得到F(x), 同时也短接到两层之后, 最后这个包含两层的神经网络模块输出H(x)=F(x)+x。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/153234.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

德迅云安全和您聊聊关于DDOS高防ip的一些方面

德迅DDoS防护服务是以省骨干网的DDoS防护网络为基础,结合德迅自研的DDoS攻击检测和智能防护体系,向您提供可管理的DDoS防护服务,自动快速的缓解网络攻击对业务造成的延迟增加,访问受限,业务中断等影响,从而…

智能运维监控告警6大优势

随着云计算和互联网的高速发展,大量应用需要横跨不同网络终端,并广泛接入第三方服务(如支付、登录、导航等),IT系统架构越来越复杂。 快速迭代的产品需求和良好的用户体验,需要IT运维管理者时刻保障核心业务稳定可用,…

.NET开源全面方便的第三方登录组件集合 - MrHuo.OAuth

前言 我相信做开发的同学应该都对接过各种各样的第三方平台的登录授权,来获取用户信息(如:微信登录、支付宝登录、QQ登录、GitHub登录等等)。今天给大家推荐一个.NET开源好用的、全面的、方便第三方登录组件集合框架:M…

新版软考高项试题分析精选(四)

请点击↑关注、收藏,本博客免费为你获取精彩知识分享!有惊喜哟!! 1、一般而言,大型软件系统中实现数据压缩功能,工作在OSI参考模型的( )。 A.应用层 B.表示层 C.会话层 D.网络层…

Java 集合框架,泛型,包装类

文章目录 集合框架泛型Java 中的泛型裸类型&#xff08;了解&#xff09;原理泛型的上界泛型方法通配符 包装类ArrayList构造常见操作 LinkedListStackQueuePriorityQueueMapMap.Entry<K, V>Map 常用方法 Set常用方法 集合框架 Vector 一个古老的集合类&#xff0c;实现了…

±15kV ESD 保护、3V-5.5V 供电、真 RS-232 收发器MS2232/MS2232T

产品简述 MS2232/MS2232T 芯片是集成电荷泵&#xff0c;具有 15kV ESD 保护的 RS-232 收发器&#xff0c;包括两路接收器、两路发送器。 芯片满足 TIA/EIA-232 标准&#xff0c;为异步通信控制器和串口连 接器提供通信接口。 芯片采用 3V-5.5V 供电&#xff0c;电荷泵仅用…

快速生成力扣链表题的链表,实现快速调试

关于力扣链表题需要本地调试创建链表的情况 我们在练习链表题&#xff0c;力扣官方需要会员&#xff0c;我们又不想开会员&#xff0c;想在本地调试给你们提供的代码 声明&#xff1a;本人也是参考的别人的代码&#xff0c;给你们提供不同语言生成链表 参考链接&#xff1a; 参…

最终方案(乱)

为什么要在mos管上并一个快恢复二极管 因为电机成感性&#xff0c;为了在关断期间给它提供一个续流回路

Linux 爱好者线下沙龙:成都场圆满结束 下一场西子湖畔相见 | LLUG·第五站

导读&#xff1a;第四站 LLUG成都场已于10 月 29 日在武侯区菁蓉汇成功举办。LLUG 第五站将于11 月 25 日走进美丽的西子湖畔&#xff0c;在这个冬日&#xff0c;LLUG 与你在杭州线下相见。 10 月 29 日&#xff0c;LLUG 成都场成功在武侯区菁蓉汇举办。 LLUG成都站由 Linux 中…

Redhat8.3上部署Lustre文件系统

Lustre文件系统 Lustre架构是用于集群的存储架构。Lustre架构的核心组件是Lustre文件系统&#xff0c;它在Linux操作系统上得到支持&#xff0c;并提供了一个符合POSIX *标准的UNIX文件系统接口。 Lustre存储架构用于许多不同类型的集群。它以支持世界上许多最大的拥有数万个…

2023数维杯国际赛数学建模竞赛选题建议及D题思路讲解

大家好呀&#xff0c;2023年第九届数维杯国际大学生数学建模挑战赛今天早上开赛啦&#xff0c;在这里先带来初步的选题建议及思路。 目前团队正在写B题和D题完整论文&#xff0c;后续还会持续更新哈&#xff0c;大家三连关注一下防止迷路。 注意&#xff0c;本文只是比较简略…

clip4clip:an empirical study of clip for end to end video clip retrieval

广告深度学习计算&#xff1a;阿里妈妈智能创意服务优化使用CPU/GPU分离的多进程架构&#xff0c;加速阿里妈妈智能创意服务。https://mp.weixin.qq.com/s/_pjhXrUZVzFRtiwG2LhnkwCLIP4Clip: CLIP 再下一城&#xff0c;利用CLIP实现视频检索 - 知乎前言&#xff1a; OpenAI 的论…

ubuntu 20.04安装 Anaconda教程

在安装Anaconda之前需要先安装ros(防止跟conda冲突&#xff0c;先装ros)。提前安装好cuda 和cudnn。 本博客参考&#xff1a;ubuntu20.04配置ros noetic和cuda&#xff0c;cudnn&#xff0c;anaconda&#xff0c;pytorch深度学习的环境 安装完conda后&#xff0c;输入: pyth…

CCRC认证是什么?

什么是CCRC认证&#xff1f; 信息安全服务资质&#xff0c;是信息安全服务机构提供安全服务的一种资格&#xff0c;包括法律地位、资源状况、管理水平、技术能力等方面的要求。 信息安全服务资质&#xff08;CCRC&#xff09;是依据国家法律法规、国家标准、行业标准和技术规范…

快手怎么涨粉最快?10个实用方法让你迅速积累粉丝

先来看实操成果&#xff0c;↑↑需要的同学可看我名字↖↖↖↖↖&#xff0c;或评论888无偿分享 各位知友们&#xff0c;大家好&#xff01;今天我来分享一些在快手涨粉的实用方法&#xff0c;让你迅速积累粉丝。如果你还没有注册快手账号&#xff0c;那么现在就赶紧去下载注册…

基于51单片机步进电机加减速正反转数码管显示( proteus仿真+程序+原理图+设计报告+讲解视频)

基于51单片机步进电机加减速正反转数码管显示( proteus仿真程序原理图设计报告讲解视频&#xff09; &#x1f4d1;1.主要功能&#xff1a;&#x1f4d1;讲解视频&#xff1a;&#x1f4d1;2.仿真&#x1f4d1;3. 程序代码&#x1f4d1;4. 设计报告&#x1f4d1;5. 设计资料内容…

电脑提示d3dcompiler43.dll缺失怎么解决?四种方法帮你轻松搞定!

d3dcompiler_43.dll是一个与DirectX相关的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;它主要用于Windows操作系统上的图形和游戏应用程序。这个文件的主要作用是编译和解析DirectX应用程序中的图形代码。 DirectX是一个强大的图形API&#xff08;应用程序编程接口&…

图像生成colab集合

不过colab会做检测&#xff0c;一般文生图算法是基本很难跑起来的。 https://github.com/camenduruhttps://github.com/camenduru这哥们有很多colab。 1.stable-diffusion-webui https://colab.research.google.com/drive/1Iy-xW9t1-OQWhb0hNxueGij8phCyluOh#scrollTow3KNZ-…

一个反向代理神器 ——Nginx Proxy Manager

前言 上一期留了一个问题&#xff0c;我们怎么样才能把 IP 端口变成域名来访问&#xff1f; 答案是用反向代理。 看过之前几期视频的小伙伴应该知道&#xff0c;之前有宝塔的时候&#xff0c;碰到这个情况&#xff0c;我们会先新建一个站点&#xff0c;然后修改 Nginx 配置…

MyBatis关联映射深度解析

文章目录 关联映射基础一对一关联映射一对多关联映射多对多关联映射 延迟加载如何配置延迟加载 结语 &#x1f388;个人主页&#xff1a;程序员 小侯 &#x1f390;CSDN新晋作者 &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 ✨收录专栏&#xff1a;MyBatis ✨文章内容&am…