[神经网络]从反向传播(BP)到去噪自动编码器(DAE)

[文献阅读] Reducing the Dimensionality of Data with Neural Networks 使用神经网络降低数据的维度由Hinton在2006年于Science上发表。当时的深度学习由于BP算法被指出存在梯度消失问题(当时还没有优化器的情况下),同时这也导致网络的初始化值对网络的训练结果影响很大。为了解决这两个问题,本文提出一个新的降维算法:由一个非线性的、自适应的多层的编码器(encoder)来将高维的数据转化为低维的编码,和一个相似的解码器(decoder)来将低维编码恢复成原始高维数据,整个系统构成一个自编码器。一开始自编码器基于RBM的预训练。 阅读详情

本文主要总结一下神经网络几种训练机制,不仅简单介绍这几种训练机制的步骤和优缺点,而且从发展,进化的角度理清训练机制不断改进的思路和解决方案,以加深对这几种网络的理解,文中没有公式,适合DL入门者。

BP

BP(back propagation ),也叫误差反传播,是传统神经网络(相对于深度神经网络)中采用的训练机制。改方法通过随机设定网络参数的初值,计算输入在当前网络下的输出结果,然后根据输出与label(真值)之间的差值,采用迭代算法对整个网络的参数整体调整,直到收敛。 
特点: 
(1):采用梯度下降法,迭代地整体调整网络参数 
(2):随机初始化网络参数 
(3):采用有标签数据训练 
缺点: 
(1):整体调整过程中,误差(校正)信号会越来越小,梯度会越来越稀疏 
(2):随机初始化可能导致局部最优 
(3):无法从无标签数据训练网络

AutoEncoder

既然BP算法无法应用于DL网络的训练,那DL中采用什么方法来训练网络呢,自动编码器(AE)就是最简单的一种训练方法。自动编码器的输入输出相同,通过复现输入信号来逐层调整整个网络。

(1)无监督学习

如上图,我们将input输入一个encoder编码器,就会得到一个code,这个code也就是输入的一个表示,也就是特征。decoder通过对code的重建会输出一个与input很像的信号,而重构后的信号与input的误差就是调整网络参数(也就是Encoder,Decoder)的校正信号。由于这里不需要input带label,所以是无监督的学习过程,学习的是无监督特征。

(2)逐层训练

第一层的输出code当做第二层的输入信号,就能得到第二层的code,同样最小化重建误差,就能得到调节好的第二层参数(第一层的decoder已经没用了),如下图:


(3)有监督微调

到这里,这个AutoEncoder还不能用来分类数据,因为它还没有学习如何去连结一个输入和一个类。它只是学会了如何去重构或者复现它的输入而已。或者说,它只是学习获得了一个可以良好代表输入的特征,这个特征可以最大程度上代表原输入信号。那么,为了实现分类,我们就可以在AutoEncoder的最顶的编码层添加一个分类器(例如逻辑回归、SVM等),然后通过标准的多层神经网络的监督训练方法(梯度下降法)去训练。

        也就是说,这时候,我们需要将最后层的特征code输入到最后的分类器,通过有标签样本,通过监督学习进行微调,这也分两种,一个是只调整分类器(黑色部分),另一种是微调整个网络。下图表示前一种微调方法,通过分类层的预测结果和标签的差值,微调分类器。而灰色部分代表已经训练好的三层自动编码器,此时不再微调。

    一旦监督训练完成,这个网络就可以用来分类了


Denoised AutoEncoder (DAE)

   降噪自动编码器DAE是在自动编码器的基础上,训练数据加入噪声,来训练整个网络,因为在实际的测试数据中,噪声是不可避免的,采用有噪声的训练数据训练网络,神经网络就能够学习到不加噪声的输入特征和噪声的主要特征。能够使网络在测试数据中有更强的泛化能力,当然,也可以理解为:自动编码器要学习获得去除噪声,获得无噪声图像的能力,因此,这就迫使编码器去学习输入信号的更加鲁棒的表达,它的泛化能力也就比一般编码器更强。深度神经网络大牛Bengio对DAE的直观解释为:1.DAE有点类似人体的感官系统,比如人眼看物体时,如果物体某一小部分被遮住了,人依然能够将其识别出来,2.多模态信息输入人体时(比如声音,图像等),少了其中某些模态的信息有时影响也不大。3.普通的AE的本质是学习一个相等函数,即输入和重构后的输出相等,这种相等函数的表示有个缺点就是当测试样本和训练样本不符合同一分布,即相差较大时,效果不好,明显,DAE在这方面的处理有所进步。


当然,DAE在训练过程中也是逐层训练,来调节网络参数。为了实现分类目的,通常还需要在最后一层加一个分类层,通过带标签的输入训练分类层或整个网络。就能实现分类的目的,这点与AE是相通的。


19、探索先进规划算法:DAE与TSP求解新突破 本文探讨了Divide-and-Evolve(DAE)算法在国际规划竞赛(IPC)中的表现及其对复杂规划问题的求解能力,分析了其在不同领域中的优势与挑战,并介绍了基于种群的(μ + 1)-EA算法在旅行商问题(TSP)上的精确求解突破。文章总结了两种算法的关键技术改进、理论意义与实际应用潜力,并提出了未来研究方向,包括参数自适应、算法融合与变异策略优化等,旨在推动先进规划与组合优化算法的发展。 阅读详情

相关推荐

BP神经网络实现语音去噪

基于matlab实现的BP神经网络去除语音噪声的程序代码

DAE(去噪自动编码器)

原文链接

雨化于画 4106

基于BP神经网络的去噪算法,基于BP神经网络的调制信号去噪(代码完整,数据齐全)

基于MATLAB编程,用BP神经网络的去噪算法,基于BP神经网络的调制信号去噪,代码完整,包含数据,有注释,方便扩展应用 1,如有疑问,不会运行,可以私信, 2,需要创新,或者修改可以扫描二维码联系博主, 3,本科及本科以上可以下载应用或者扩展, 4,内容不完全匹配要求或需求,可以联系博主扩展。

去噪自动编码器(DAE)

去噪自动编码器(DAE)在传统自动编码器的基础上引入噪声注入策略,通过向输入中注入噪声,将“腐坏”的样本用于重构不含噪声的“干净”输入,从而更有效地学习数据的本质特征。为避免此问题,DAE通过随机置零原始输入元素的方式引入“腐坏”版本,减少输入信息,然后学习通过对“腐坏”版本进行重构,以更好地捕捉原始输入的特征。通过在输入图像中引入噪声,DAE可以学习到对噪声具有鲁棒性的图像表示,从而实现对图像的去噪。DAE可以作为半监督学习的一部分,通过无监督学习方式提取数据的特征,然后在有标签数据上进行监督学习任务。

weixin_45501482的博客 3105

深入理解命名实体识别(NER)

命名实体识别(NER,Named Entity Recognition)是自然语言处理(NLP)中的一项重要技术,用于从文本中识别出特定类型的实体,并将这些实体分类到预定义的类别中。实体通常包括人名、地名、组织名、日期、时间、数量、货币等。例如,在句子“Barack Obama was born in Hawaii in 1961”中,NER任务的目标是识别“Barack Obama”作为人名,“Hawaii”作为地名,以及“1961”作为日期。

AngelCryToo的专栏 4638

PSI5协议技术文档与驱动开发指南

• 供电与数据复用:ECU通过双绞线为传感器提供稳压(典型值5V-11V),同时检测线路电流变化实现数据传输。• 同步信号:ECU发送3.5V电压脉冲(上升沿触发传感器响应),用于时序同步。• 安全气囊:PSI5-P模式实现多碰撞传感器同步采样(响应时间<10ms)• CRC-3(3位):ASIL-B以上功能安全要求(如动力总成传感器)• 奇偶校验(1位):适用于低安全等级场景(如PSI5-P10P模式)• 典型应用:PSI5-P(并行总线)、PSI5-U(通用总线)

u012733413的博客 2867

DAE模型(NILM的应用)

噪声去除任务在NILM中的应用

phoenixlxl的博客 3105

OpenBullet2 学习研究2-Conditions条件之KeyCheck的使用

上一节我们学习了如何安装Openbullet2以及如何新建一个配置,最后我们再配置里面新建一个Http的请求块,帮助我们发送了第一个请请求。这一节我们来学习check块。当我们发送请求以后,请求返回的内容是否是我们想要的,或者请求发送正确没有,这个我们怎么判断呢?这个时候就要用到check块了。

958

自动编码器(Auto Encoder)

1.初识Auto Encoder1986 年Rumelhart 提出自动编码器的概念,并将其用于高维复杂数据处理,促进了神经网络的发展。自编码神经网络是一种无监督学习算法,它使用了反向传播算法,并让目标值等于输入值,比如 。图1是一个自编码神经网络的示例。 图1自动编码器(autoencoder) 是神经网络的一种,该网络可以看作由两部分组成:一个编码器函数h = f(x) 和一个生成重构的解码

雪伦的专栏 3万+

Reactor 响应式编程(第一篇:Reactor核心)

响应式:响应式编程: 全异步、消息、事件回调默认还是用当前线程,生成整个流、发布流、流操作.log();//只要不指定线程池,默认发布者用的线程就是订阅者的线程;

moments的博客 1572

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

机器学习深度学习业余选手 1498

【转载】自动编码器

自动编码器(Auto Encode)什么是自动编码器1.1 Auto Encoder1.2 Deep Auto Encoder(DAE)1.3 利用keras实现DAE[^1]1.4 取DAE隐层向量[^1]1.5 参考文献其他类型的AE2.1 去噪自动编码器(denoising auto encode)2.2 堆叠去噪自动编码器(Stacked Denoising Auto Encoder,SDAE) 什么是自动编码器 1.1 Auto Encoder 自编码神经网络是一种无监督学习算法,它使用了反向传播

kanghuilun的博客 428

北斗导航 | 卡尔曼滤波与因子图优化对比(附图优化matlab代码)

- 历史数据利用:因子图通过滑动窗口保留历史状态,优化时联合多帧数据;卡尔曼滤波仅依赖当前和上一帧状态 。 - 迭代优化:因子图通过多次迭代逼近最优解,卡尔曼滤波仅单次更新 。 - 误差抑制:因子图的多次线性化可有效抑制非线性误差(如GNSS伪距观测的非线性) 。

尘世冰封的专栏 1300

深度学习算法实践13---去噪自动编码机(Denosing Autoencoder)

截至目前为止,我们所讨论的神经网络技术,感知器模型、BP网络、多层卷积神经网络(CNN),都可以视为前馈神经网络的变形,都会采用信号前向传播,误差反向传播修正连接权值,采用有监督学习方式,解决样本分类问题。 在这一篇博文,我们将介绍稍微不同的神经网络架构,即被称为自动编码机(Autoencoder)。与前述我们所讨论的神经网络不同,自动编码器(Autoencoder)属于非监督学习,不需要对

dukai392的博客 2114

详解AUTOSAR:DaVinci Configurator导入ARXML配置(拓展篇—2)

DaVinci Configurator导入ARXML配置。

不脱发的程序猿 3328

发那科 Fanuc PLC 报文通讯,报文解析。附源程序

发那科 Fanuc PLC 报文通讯,最详细的发那科 PLC报文解析,不再局限在官方提供的库,也不用再局限在windows平台。

ITOfDragon的博客 1747

深度学习——自动编码器,对称网络结构

from:http://blog.youkuaiyun.com/a819825294/article/details/53516980 1.初识Auto Encoder1986 年Rumelhart 提出自动编码器的概念,并将其用于高维复杂数据处理,促进了神经网络的发展。自编码神经网络是一种无监督学习算法,它使用了反向传播算法,并让目标值等于输入值,比如。图1是一个自编码神经网络的示例。 ...

djph26741的博客 1203

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

主流的25个深度学习模型

深度学习发展很快,新的模型层出不穷,所以要想全部列举是不可能的。另外,很多模型都是这里提出很长很长时间了,所以也不是说“老”模型就没用,大家学习的话,还是要全面而深入的学习。 1、 Feed forward neural networks (FF or FFNN) and perceptrons (P) 前馈神经网络和感知机,信息从前(输入)往后(输出)流动,一般用反向传播(BP)来训练...

angciyu的博客 3万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

常见25种深度学习模型的github代码

1 Feed forward neural networks (FF or FFNN) and perceptrons (P) 前馈神经网络和感知机,信息从前(输入)往后(输出)流动,一般用反向传播(BP)来训练。算是一种监督学习。 对应的代码https://github.com/danijar/layered https://github.com/civisanalytics/muffnn...

Mr.horse的博客 1万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

自编码器

转载自:https://blog.youkuaiyun.com/qq_26591517/article/details/80038823 1.初识...

baidu_38634017的博客 192

深度学习概述

文章目录Part 1 摘要Part 2 引言Part 3 深度学习发展历程Part 4 深度学习的模型与训练方法主流深度学习模型大规模训练方法Part 5 深度学习的应用计算机视觉语音识别Part 6 总结与展望 文章:常虹,山世光. 深度学习概述[J].信息技术快报. Part 1 摘要 深度学习是机器学习的一个新的研究方向,其核心思想在语言模拟人脑的层级抽象结构,通过无监督的方式从大规模数据(...

喵喵喵 4459

PyTorch 深度学习实践-04-[Back Propagation]

Date: 2021-12-20 Repositity: Gitee 0. 前言 Reference: WIKI 反向传播(英语:Back Propagation,缩写为BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会回馈给最佳化方法,用来更新权值以最小化损失函数。 反向传播要求对每个输入值得到已知输出,来计算损失函数梯度。因此,它通常被认为是一种监督式学习方法,虽然它也用在一些无监督.

Coder 961

深度学习总结 - 副本

文章目录A.词语定义B.神经网络超参数C.过拟合原因以及解决方法原因:解决方案:D.梯度爆炸和梯度消失产生原因:解决方案常用激活函数饱和分类:类别与功能:sigmoid函数tanh函数ReLU函数:E其他 马上要找工作了,学习了差不多两年的深度学习,但是现在我对于深度学习还是有一点迷茫,一直在调参当中渡过,即将找工作之际一点信心都没有。因此,撰写这篇文章,测试自己的知识有哪些掌握了,哪一些没有掌握。 A.词语定义 什么叫深度学习,神经网络,机器学习? 由于以前没有聚焦于这个问题,我到现在都对深度学习与神经网

蜕变之路的博客 621

深度学习(综述笔记)

深度学习 机器学习的分支,使用多个层次的非线性信息处理和抽象,用于有监督或者无监督的特征学习、表示、分类和模式识别。 § 第一代人工神经网络:简单的感知神经层组成(只能进行简单而有限的计算 § 第二代:反向传播(BP),根据错误率更新神经元的权重,利用支持向量(SVM浮出水面,一时间段超过ANN。 § 同时,为了克服反向传播的局限,人们提出了受限的玻尔兹曼机(RBM),学习更加...

qq_45041702的博客 893
上一篇: Deep Learning(深度学习)资料汇总
下一篇: Ubuntu系统必须软件安装备忘
cuclxt
博客等级 码龄14年 59粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值