深度学习学习笔记——(1)神经网络

来源:互联网 发布:北京网络策划公司 编辑:程序博客网 时间:2024/05/22 12:39

神经网络,就是根据人的神经元结构设计的一种学习网络,从信息处理角度对人脑神经元网络进行抽象, 建立某种简单模型,按不同的连接方式组成不同的网络。

神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。

BP神经网络:是一种按误差逆传播算法训练的多层前馈网络。

BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer),如下图所示:


特点:

1.    全连接

2.   利用一种称为激活函数来描述层与层输出之间的关系,从而模拟各层神经元之间的交互反应。

3.   激活函数必须满足处处可导的条件

 

BP的核心思想就是:将输出误差以某种形式通过隐层向输入层逐层反传,这里的某种形式其实就是:


也就是一种 "信号的正向传播 ----> 误差的反向传播"的过程:


神经网络的缺点:

(1)   全连接,参数个数多,模型复杂

(2)   对初始权重非常敏感,极易收敛于局部极小

(3)   算法的收敛速度慢

(4)   易出现过拟合/过训练情况

神经网络的训练模型,在反向计算误差时因为误差要对各层的单元进行平摊,进而修正参数,因此当网络层数比较多的时候,不能正确的修正前面各层的参数,从而影响整个网络的性能,因此深度学习得到进一步研究,深度学习就是堆叠多个层,实现对输入信息进行分级表达。

深度学习的提出原因:(1)多隐层的神经网络,具有优异的特征学习能力;(2)深度神经网络由于本身模型的原因在训练的时候难度较大,因此深度学习渐渐取代神经网络


0 0