文章目录

  • 神经元模型
  • 感知机与多层网络
  • 误差逆传播算法
  • 全局最小和局部极小
  • 其他常见神经网络
    • RBF网络
    • ART网络
    • SOM网络
    • 级联相关网络
    • Elman网络
    • Boltzmann机
  • 深度学习

神经元模型

神经网络的定义:神经网络是具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。神经网络是一种难解释的“黑箱模型”。
神经元与M-P神经元模型:神经元是神经网络中最基本的成分。M-P神经元接收到来自多个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收到的总输入值将于神经元的阈值进行比较,然后通过激活函数处理以产生神经元的输出。
激活函数的概念:实际情况中常使用Sigmoid函数作为激活函数。激活函数的作用是把较大范围内变化的输入值挤压到(0,1)输出值范围内,由此控制神经元的激活或静止,因此也被称为挤压函数。
神经元和神经网络的关系:多个神经元按照一定的层次结构连接起来就构成了神经网络。

感知机与多层网络

感知机的定义:感知机由两层神经元组成,输入层接受外界输入信号后传递给输出层,输出层由M-P神经元构成。感知机能够处理与或非等线性可分问题。
感知机的简单原理:如果感知机对训练样例预测正确,则感知机不发生变化,否则将根据错误的程度进行权重调整。
感知机的结构特点:感知机只有输出层神经元进行激活函数处理,也就是只有一层功能神经元,因此其学习能力十分有限。如果两类模式是线性可分的,也就是存在一个线性超平面可以将两个类别进行划分,则感知机的学习过程一定收敛;否则学习过程会发生振荡,权重难以确定,不能得到合适解。
解决非线性可分问题的方法:使用多层功能神经元可以解决非线性可分问题。输入层和输出层之间的神经元层称为隐含层,隐含层和输出层都是拥有激活函数的功能神经元。
多层前馈神经网络的层级结构:常见的神经网络,每一层神经元与下一层神经元全互连,但是神经元之间不存在同层连接和跨层连接。这样的神经网络结构称为“多层前馈神经网络”(前馈意味着神经网络的拓扑结构上不存在回路)。其中输入层神经元接受外界输入,隐含层和输出层神经元对信号进行加工,最终结果由输出层神经元输出。
多层神经网络:任意包含了隐含层的神经网络都可以称为多层神经网络。
神经网络的学习过程:神经网络的学习就是根据训练数据来调整神经元之间的连接权重以及每个功能神经元的阈值;也就是说,神经网络学习到的东西蕴含在神经元连接的权重和神经元的阈值之中。

误差逆传播算法

多层神经网络的优点:多层神经网络的学习能力比单层的感知机强得多。但是也需要更加强大的学习算法。
BP算法的概念:BP算法就是误差逆传播算法,也被称为反向传播算法,是迄今为止最成功的神经网络学习算法。现实中使用神经网络时,大多数情况下都是BP算法进行训练。
BP算法的适用范围:BP算法不仅适用于多层前馈神经网络,同时叶可以用于其他类型的神经网络,如训练递归神经网络。
BP算法的参数调整策略:BP是一个迭代学习算法,,在迭代的每一轮中采用广义的感知机学习规则对参数进行更新估计。BP算法基于梯度下降原则,以目标的负梯度方向对参数进行调整。
学习率的作用:学习率控制着算法每一轮迭代中的更新步长。学习率如果太高容易导致振荡,学习率太低会使得模型收敛过慢。学习率一般设置为一个小正数,如0.1。
BP算法的基本流程:首先将输入示例提供给输入层神经元,然后逐层将信号前传直到产生输出层的结果;接着计算输出层的误差,再将误差逆向传播到隐藏层神经元,最后根据隐含层神经元的误差对连接权和阈值进行调整。迭代过程循环进行,直到达到某些停止条件为止(如训练误差小于一定值),停止条件与缓解BP过程过拟合的策略有关。
标准BP算法和累积BP算法:标准BP算法参数每次更新参数只针对单个样例,参数更新非常频繁,并且对不同样例的更新结果可能相互抵消,因此为了达到最小误差往往需要更多轮的迭代过程。累积BP算法直接针对累积误差最小化,更新参数的频率要慢得多,但是在很多情况下,累积误差下降到一定值后进一步下降将会非常缓慢,这时标准BP往往可以更快获得较好的解,尤其是在训练集很大时更加明显。读取训练集一遍称为进行了一轮学习(epoch)。
隐层神经元的个数设定:到目前为止,如何设置隐含层中神经元的个数仍然是一个没有解决的问题,实际情况中通常使用“试错法”对隐层神经元个数进行调整。
BP算法存在的问题:BP算法的表示能力太强,以至于经常产生过拟合现象,训练误差不断降低,但是测试误差却不断升高。
解决BP过拟合的方法
①早停法:将数据分为训练集和验证集,训练集用来计算相关参数,验证集用来估计误差,如果训练集误差降低但验证集误差升高,则停止训练并返回具有最小验证集误差的参数。
②正则化法:在误差目标函数中增加一个用于描述网络复杂性的部分,例如连接权重与阈值的平方和。

全局最小和局部极小

全局最小解和局部极小解的理解:全局最小解相当于函数的最值,而局部极小解相当于函数的极值。因此全局最小解一定是局部极小解,但是反过来不成立。
寻找最小解的方法:基于梯度的搜索时使用最广泛的参数寻优方法。在此类方法中,从某些初始解除法,通过迭代的方式寻找最优参数值。每一次迭代中,首先计算误差函数在当前点的梯度,然后根据梯度确定搜索方向。
跳出局部极小解的方法:(大多是启发式算法,暂时缺少理论依据)
①从多个不同的初始点开始搜索。这样就可能陷入不同的局部极小解,从中选择出最小的一个作为接近全局最小解的解。
②使用模拟退火技术或遗传算法。这些算法在迭代的每一步都有一定的概率接受比当前解更差的结果。
③使用随机梯度下降的方法。该方法使得即使陷入局部极小点,计算出的梯度仍有可能不为零,有机会跳出该极小点。

其他常见神经网络

RBF网络

RBF网络的概念:RBF网络的全称为径向基函数网络,是一种单隐层前馈神经网络,使用径向基函数作为隐含层神经元的激活函数,而输出层是对隐含层神经元输出的线性组合。具有足够多隐层神经元的RBF网络可以以任意精度逼近任意连续函数。

ART网络

竞争性学习的概念:竞争性学习是神经网络中一种常用的无监督学习策略。使用该策略时,网络的输出神经元相互竞争,每一时刻仅有一个竞争获胜的神经元被激活,其他神经元的状态被抑制。
ART网络的概念:ART神经网络全称为自适应谐振理论网络,是竞争式学习的重要代表。ART网络的一个重要优点是可以进行增量学习和在线学习。增量学习是指学习完模型后,接收到新的训练样例后仅需要根据新样例对模型进行更新,而不必重新训练整个模型;在线学习是指每获得一个新样本就进行一次模型更新。

SOM网络

SOM网络的概念:SOM网络的全称是自组织映射网络,是一种竞争学习型的无监督神经网络。它能将高维输入数据映射到低维空间中,同时保持输入数据在高维空间的拓扑结构,也就是将高维空间中相似的样本点映射到网络输出层中的邻近神经元。

级联相关网络

结构自适应网络定义:一般的神经网络模型都假设网络结构事先固定,训练的目的是利用训练样本来确定合适的连接权、阈值等参数,而结构自适应网络把网络结构本身也作为学习的目标之一,并希望能够在训练过程中找到最符合数据特点的网络结构。ART网络也是一种结构自适应网络。
级联相关网络概念:级联相关网络是结构自适应网络的重要代表,与一般的神经网络相比,级联相关网络不需要设置网络层数、隐含神经元个数,并且训练速度较快,但是在数据较少时容易出现过拟合现象。

Elman网络

递归神经网络简介:递归神经网络允许网络中出现环形结构,从而使得一些神经元的输出反馈回来作为输入信号。Elman网络是最常用的递归神经网络之一。

Boltzmann机

Boltzmann机简介:Boltzmann机是一种“基于能量的模型”,该模型的目标是使得网络的“能量”达到最小化。Boltzmann机中的神经元都是布尔型的。标准Boltzmann机训练网络的复杂度非常高,难以用于解决现实任务;现实中常使用受限Boltzmann机。

深度学习

深度学习的产生背景:理论上来说,越复杂的模型越能完成复杂的学习任务,但是一般情况下,复杂模型的训练效率低并且容易产生过拟合,因此传统机器学习中不太青睐复杂模型。但是如今计算能力的大幅度提高和训练数据的大幅增加,使得以“深度学习”为代表的复杂模型开始受到关注。深度学习模型中的参数个数非常多。
深度学习和神经网络的关系:典型的深度学习模型就是很深层的神经网络,也就是包含隐含层很多的神经网络。多隐含层相较于多隐层神经元方法,不仅增加了拥有激活函数的神经元的个数,同时增加了激活函数嵌套的层数。但是,多隐层神经网络难以直接使用经典的例如BP算法进行训练。
无监督逐层训练:无监督逐层训练是多隐层网络训练的有效手段,其基本思想是每次训练一层隐结点,训练时将上一层隐结点的输出作为输入,而本层隐结点的输出作为下一层的输入,这个过程称为“预训练”;在“预训练”全部完成后,再对整个网络进行“微调”训练。
对深度学习的理解:深度学习可以视为对输入信号进行逐层加工,从而把初始的与输出目标之间关联不太密切的输入表示转化为与输出目标联系更紧密的描述。

机器学习:西瓜书 神经网络 学习笔记相关推荐

  1. 《机器学习西瓜书》学习笔记——第七章_贝叶斯分类器_朴素贝叶斯分类器

    朴素:特征条件独立:贝叶斯:基于贝叶斯定理. 朴素贝叶斯是经典的机器学习算法之一,也基于概率论的分类算法,属于监督学习的生成模型.朴素贝叶斯原理简单,也很容易实现,多用于文本分类,比如垃圾邮件过滤. ...

  2. 周志华机器学习(西瓜书)学习笔记(持续更新)

    <周志华机器学习>笔记 第1章 绪论 1.1 引言 1.2 基本术语 1.3 假设空间 1.4 归纳偏好 1.5 发展历程 1.6 应用现状 第2章 模型评估与选择 2.1 经验误差与过拟 ...

  3. 学习之路 | 《机器学习》西瓜书白话学习笔记-第1~7章

    开源链接南瓜书PumpkinBook 第一章  .绪论 第二章  .模型评估 :个人觉得对需要写论文或实验报告,比较研究算法性能的同学帮助比较大,对注重做项目实践的同学只需了解即可. 1  误差与过拟 ...

  4. 机器学习_周志华_西瓜书_学习笔记_第二章--模型的评估与选择

    2 模型的评估与选择 2.1 误差与过拟合 我们将学习器对样本的实际预测结果与样本的真实值之间的差异成为:误差(error).定义: 在训练集上的误差称为训练误差(training error)或经验 ...

  5. 机器学习西瓜书南瓜书 神经网络

    机器学习西瓜书&南瓜书 神经网络 1. 神经元模型 神经网络:由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实事件物体所做出的交互反应. 神经网络最基本的成分 ...

  6. 机器学习西瓜书(周志华)第七章 贝叶斯分类器

    第七章 贝叶斯分类器 1. 贝叶斯决策论 1.1 先验分布 1.2 后验分布 1.3 似然估计 1.4 四大概率在贝叶斯分类中指代含义 1. 朴素贝叶斯 7. 课后练习参考答案 1. 贝叶斯决策论 贝 ...

  7. 机器学习西瓜书-1-2章

    学习目标: 概览机器学习西瓜书 1.2章 学习内容: 第一章 绪论 1.1 基本术语 1.2 假设空间 1.3 归纳偏好 1.4 发展历程 第二章 模型评估与选择 2.1 经验误差与过拟合 2.2 评 ...

  8. 神经网络学习笔记-02-循环神经网络

    神经网络学习笔记-02-循环神经网络 本文是根据WildML的Recurrent Neural Networks Tutorial写的学习笔记. 循环神经网络 循环神经网络适用于处理序列化信息,比如: ...

  9. 机器学习框架ML.NET学习笔记【1】基本概念与系列文章目录

    一.序言 微软的机器学习框架于2018年5月出了0.1版本,2019年5月发布1.0版本.期间各版本之间差异(包括命名空间.方法等)还是比较大的,随着1.0版发布,应该是趋于稳定了.之前在园子里也看到 ...

最新文章

  1. java数组去重_再谈JavaScript数组去重
  2. 线上Bug无法复现怎么办?老司机教你一招,SpringBoot远程调试不用愁!
  3. 【过程记录】springcloud配置使用Eureka作服务发现组件并进行微服务注册
  4. ubuntu常用的命令
  5. 关于当一个C#工程移植到另一台机子上(win7)上时,程序报错。dll没有被指定在Windows上运行,或者它包含错误。请尝试使用原始安装媒体重新安装程序。。。。。。...
  6. SSM中PageHelper的使用步骤与com.github.pagehelper.PageHelper3系列与5系列的区别
  7. ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST
  8. 7-7 印度大壶节 (25 分)
  9. java 展现层框架_spring快速入门例子教程:06展现层
  10. SoC嵌入式软件架构设计II:否MMU的CPU虚拟内存管理的设计与实现方法
  11. php中余数为0,PHP中余数、取余的妙用
  12. (Origin)如何复制文件到另一个项目
  13. gps信号用什么软件测试,gps信号检测软件
  14. 计算机二级英语简历里怎么写,简历计算机水平怎么写
  15. AxureShare太慢,自己搭建产品原型分享系统
  16. 截图智能识字demo
  17. rockchip rk3566 调试杂记
  18. 【软件通信协议】1. 详细解析TCP/IP通信协议
  19. java学习笔记 - 集合类综合案例 斗地主
  20. python取整数部分的几种方法

热门文章

  1. 企鹅号日收500总结出来的运营套路,你想知道怎么赚钱的吗?
  2. Chrome Performance常见名词解释(FP, FCP, LCP, DCL, FMP, TTI, TBT, FID, CLS)
  3. 力扣253会议室II
  4. [redis]Connection failure occurred. Restarting subscription task after 5000 ms
  5. 36.超市微信促销活动2
  6. iOS中的生成随机数方法
  7. 四、使用知识-让知识带来价值
  8. 有关于Boolean的使用
  9. CDMA手机鉴权的过程说明
  10. JAVA Bean 转换工具 BULL 使用简介