【机器学习笔记】10 人工神经网络

人工神经网络发展史

1943年,心理学家McCulloch和逻辑学家Pitts建立神经网络的数学模型,MP模型

每个神经元都可以抽象为一个圆圈,每个圆圈都附带特定的函数称之为激活函数,每两个神经元之间的连接的大小的加权值即为权重。

1960年代,人工网络得到了进一步地发展感知机和自适应线性元件等被提出。M.Minsky仔细分析了以感知机为代表的神经网络的局限性,指出了感知机不能解决非线性问题,这极大影响了神经网络的研究。

1982年,加州理工学院J.J.Hopfield教授提出了Hopfield神经网络模型,引入了计算能量概念,给出了网络稳定性判断。

1986年,Rumelhart和McClelland为首的科学家提出了BP(Back Propagation)神经网络的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络,目前是应用最广泛的神经网络。

极限学习机(Extreme Learning Machine, ELM),是由黄广斌提出的用于处理单隐层神经网络的算法

随机初始化输入权重𝛼𝑖和偏置,只求解输出权重值𝛽𝑖。

优点:

1.学习精度有保证

2.学习速度快

感知机算法(Perceptron Algorithm)

  • 感知机算法流程 :
    随机选择模型参数的(𝑤0, 𝑏0)初始值。
    选择一个训练样本(𝑥𝑛, 𝑦𝑛)。
    若判别函数𝑤T𝑥𝑛 + 𝑏 > 0,且𝑦𝑛 = −1,则𝑤 = 𝑤 − 𝑥𝑛,𝑏 = 𝑏 − 1。
    若判别函数𝑤T𝑥𝑛 + 𝑏 < 0,且𝑦𝑛 = +1,则𝑤 = 𝑤+𝑥𝑛,𝑏 = 𝑏+1。
    再选取另一个训练样本(𝑥𝑚, 𝑦𝑚),回到2。
    终止条件:直到所有数据的输入输出对都不满足2中的(i)和(ii)中之一,则退出循环。

BP算法


  • 最常用Sigmoid函数的优缺点:
    优点:

    1.函数处处连续,便于求导

    2.可将函数值的范围压缩至[0,1],可用于压缩数据,且幅度不变

    3.便于前向传输
    缺点:

    1.在趋向无穷的地方,函数值变化很小,容易出现梯度消失,不利于深层神经

    的反馈传输

    2.幂函数的梯度计算复杂

    3.收敛速度比较慢

  • BP算法主要步骤

    第一步,对样本明确预测输出值与损失函数

    第二步,明确参数调整策略

    第三步,计算输出层阈值的梯度

    第四步,计算隐层到输出层连接权值的梯度

    第五步,计算隐层阈值的梯度

    第六步,计算输入层到隐层连接权值的梯度

    第七步,引出归纳结论






    只要知道上一层神经元的阈值梯度,即可计算当前层神经元阈值梯度和连接权值梯度。

    随后可以计算输出层神经元阈值梯度,从而计算出全网络的神经元阈值和连接权值梯度。

    最终达到训练网络的目的

  • BP算法的优缺点
    优点

    1.能够自适应、自主学习。BP可以根据预设参数更新规则,通过不断调整神经网络中的参数,已达到最符合期望的输出。

    2.拥有很强的非线性映射能力。

    3.误差的反向传播采用的是成熟的链式法则,推导过程严谨且科学。

    4.算法泛化能力很强。
    缺点

    1.BP神经网络参数众多,每次迭代需要更新较多数量的阈值和权值,故收敛速度比较慢。

    2.网络中隐层含有的节点数目没有明确的准则,需要不断设置节点数字试凑,根据网络误差结果最终确定隐层节点个数

    3.BP算法是一种速度较快的梯度下降算法,容易陷入局部极小值的问题。

相关推荐
m0_68961828几秒前
水凝胶发生器,不对称设计妙,医电应用前景广
笔记
Ace'1 分钟前
每日一题&&学习笔记
笔记·学习
鼠鼠龙年发大财2 分钟前
【鼠鼠学AI代码合集#7】概率
人工智能
龙的爹233310 分钟前
论文 | Model-tuning Via Prompts Makes NLP Models Adversarially Robust
人工智能·gpt·深度学习·语言模型·自然语言处理·prompt
挥剑决浮云 -16 分钟前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记
工业机器视觉设计和实现23 分钟前
cnn突破四(生成卷积核与固定核对比)
人工智能·深度学习·cnn
我算是程序猿1 小时前
用AI做电子萌宠,快速涨粉变现
人工智能·stable diffusion·aigc
萱仔学习自我记录1 小时前
微调大语言模型——超详细步骤
人工智能·深度学习·机器学习
新晓·故知1 小时前
<基于递归实现线索二叉树的构造及遍历算法探讨>
数据结构·经验分享·笔记·算法·链表