【机器学习】——神经网络与深度学习

本文介绍了神经网络的基础,包括前馈神经网络、感知器、三层前馈网络(多层感知器MLP)和反向传播算法。接着,探讨了深度学习的自编码算法和自组织编码深度网络,如栈式自动编码器和稀疏编码,以及深度学习的优势和解决的挑战。文章未涵盖卷积神经网络模型,将在下次继续讨论。
摘要由CSDN通过智能技术生成

目录

引入

一、神经网络及其主要算法

1、前馈神经网络

2、感知器

3、三层前馈网络(多层感知器MLP)

4、反向传播算法

二、深度学习

1、自编码算法AutorEncoder

2、自组织编码深度网络

①栈式AutorEncoder自动编码器

②Sparse Coding稀疏编码

3、卷积神经网络模型(续下次)

拓展:


引入

人工神经网络ANN是由大量处理单位(人工神经元)经广泛互连而组成的人工网络,以模拟脑神经系统的结构与功能。ANN可看作以人工神经元为节点,用有向加权弧连接起来的有向图,有向弧的权重表示相互连接的两个神经元间相互作用的强弱深度学习算法是人工神经网络算法的改进,提高了神经网络算法的性能和应用。


一、神经网络及其主要算法

1、前馈神经网络

构成前馈神经网络的各神经元接收前一级输入,并输入到下一级,无反馈,可用一有向无环图表示。图的节点分为两类——输入节点和计算单元。每个计算单元可有任意个输入但只有一个输出,而输出可耦合到任意多个其他节点输入(输出的是同一个值给很多人)。前馈网络通常分为不同层,通常认为输入为第一层,所以单层计算单元的网络实际上是一个两层网络,输入和输出节点可与外界相连,直接受环境影响,称为可见层,其他中间层称为隐层。

2、感知器

感知器模型是为研究大脑的存储、学习和认知过程而提出的一类具有自学习能力的神经网络模型,把神经网络的研究从纯理论探讨引向了工程实现。它是一种双层神经网络模型一层为输入层,另一层具有计算单元,可以通过监督学习建立模式判别的能力。

学习的目标是通过改变权值使神经网络由给定的输入得到给定的输出。作为分类器,可以用已知类别的模式向量特征向量作为训练集,当输入为属于第j类的特征向量X时,应使对应于该类输出y1=1,而其他神经元的输出则为0(或-1)。

设理想的输出为:$\boldsymbol{Y}=\left(y_1, y_2, \cdots, y_m\right)^{\mathrm{T}}$

实际输出为:$\hat{\boldsymbol{Y}}=\left(\hat{y}_1, \hat{y}_2, \cdots, \hat{y}_m\right)^{\mathrm{T}}$

为了使输出逼近理想输出,可以反复依次输入训练集中的向量X,并计算出实际的输出Y^,对权值w做出如下修改:

$\omega_{i j}(t+1)=\omega_{i j}(t)+\Delta \omega_{i j}(t)$

 其中:

$\Delta \omega_{i j}=\eta\left(y_i-\hat{y}_j\right) x_i$

感知器的学习过程求取线性判别函数的过程是等价的,此处只指出感知器的一些特性:①两层感知器只能用于解决线性可分问题;②学习过程收敛很快,且与初始值无关。

单层感知器不能表达的问题称为线性不可分问题,如“异或”问题(XOR)。线性不可分函数的数量随着输入变量个数的增加而快速增加,甚至远远超过线性可分函数得个数。

3、三层前馈网络(多层感知器MLP)

神经元的非线性特性可实现各种逻辑门,如NAND(与非门)可用如下的阈值神经元实现:

任何逻辑函数都可以由与非门组成,所以:①任何逻辑函数都可以用前馈网络实现;②单个阈值神经元可以实现任意多输入的与门、或门、与非门、或非门;由于任何逻辑函数都可以化为析取(或合取)形式,所以任何逻辑函数都可用一个三层(只用两层计算单元)的前馈网路实现

当神经元的输出函数为Sigmoid函数时,上述结论可推广到连续的非线性函数,在很宽松的条件下,三层前馈网络可以逼近任意的多元非线性函数,突破了两层前馈网络线性可分的限制。这种三层或三层以上的前馈网络叫作多层感知器

4、反向传播算法

三层前馈网络的适用范围大大超过二层前馈网络,但学习算法较为复杂——主要困难是中间隐层不直接与外界连接,无法直接计算其误差。为此提出了反向传播算法(BP)——主要思想从后向前(反向)逐层传播输出层的误差,以间接算出隐层的误差。

深度学习算法是一类基于神经网络机器学习算法,其主要特点是具有多层的隐藏层。深度学习算法通过多层神经网络的组合和训练,可以自动地从大量的数据中学习到复杂的特征表示,并用于解决各种机器学习问题。 深度学习算法的分析原理可以从以下几个方面进行介绍: 1. 神经网络结构:深度学习算法通常采用多层的神经网络结构,包括输入层、隐藏层和输出层。每一层都由多个神经元组成,神经元之间通过权重进行连接。隐藏层的数量和神经元的数量可以根据具体问题进行调整。 2. 前向传播:深度学习算法通过前向传播来计算神经网络的输出。输入数据经过输入层传递到隐藏层,然后通过激活函数进行非线性变换,最后传递到输出层。前向传播的过程可以看作是特征提取的过程,每一层都可以学习到不同层次的特征表示。 3. 反向传播:深度学习算法通过反向传播来更新神经网络的权重,以使得网络的输出与真实值之间的误差最小化。反向传播的过程可以看作是参数优化的过程,通过计算梯度来更新权重,使得网络的预测结果更加准确。 4. 损失函数:深度学习算法通常使用损失函数来衡量网络输出与真实值之间的差异。常见的损失函数包括均方误差(MSE)、交叉熵等。通过最小化损失函数,可以使得网络的预测结果更加接近真实值。 深度学习算法的分析原理可以帮助我们理解深度学习算法的工作原理和优势。通过多层神经网络的组合和训练,深度学习算法可以学习到更加复杂的特征表示,从而在各种机器学习问题中取得更好的性能。
评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯宝最帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值