学习/训练算法分类

神经网络类型的不同,对应了不同类型的训练/学习算法。因而根据神经网络的分类,总结起来,传统神经网络的学习算法也可以主要分为以下三类:

1)前馈型神经网络学习算法-----(前馈型神经网络)

2)反馈型神经网络学习算法------(反馈型神经网络)

3)自组织神经网络学习算法------(自组织神经网络)

以下我们将通过三类典型的神经网络模型分别阐述这三类不同的学习算法其区别与相似点。

虽然针对不同的网络模型,这里产生了三类不同类型的训练算法,但是总结起来,这三类训练算法都可以归属到两种类型的机器训练方法中,即监督型学习算法和非监督型

学习算法。在20-30年的神经网络学习算法研究过程中,科学家往往都通过将监督型学习算法和非监督型学习算法进行单独或混合使用,提出并构建出了不同类型的训练算法及

其改进算法。因而总结起来现今的神经网络训练算法都可以归类到监督型学习算法和非监督型学习算法中,这在后续讲解的Deep Learning中的DBNs网络学习中也会体现出

来。当然目前也提出一种半监督学习方法,其定义为。

半监督学习(Semi-supervised Learning)是模式识别和机器学习领域研究的重点问题,是监督学习与无监督学习相结合的一种学习方法。它主要考虑如何利用少量的标注样本和大量的未标注样本进行训练和分类的问题。半监督学习对于减少标注代价,提高学习机器性能具有非常重大的实际意义。

半监督学习是监督学习算法和非监督学习算法的结合体,可以认为是两种方法的结合型算法,其根源也归属为两类本质的学习算法,因而也逃不脱监督学习和非监督学习领域圈,这里我们就不再进一步深入讨论半监督学习算法了。

在以下传统神经网络训练算法的总结中我们也将具体指明具体的训练算法和监督型学习算法和非监督型学习算法的关系。

BP神经网络训练算法

以下我们分析BP神经网络学习过程。其学习算法基本步骤可以归纳如下:

1、初始化网络权值和神经元的阈值(最简单的办法就是随机初始化)

2、前向传播:按照公式一层一层的计算隐层神经元和输出层神经元的输入和输出。

3、后向传播:根据公式修正权值和阈值

直到满足终止条件。

算法通过一定的判定函数,对前向传播结果进行判定,并通过后向传播过程对网络参数进行修正,起到监督学习的作用,因而传统的BP经网络训练过程可以归纳为一类典型的监督学习过程。

BP是后向传播的英文缩写,那么传播对象是什么?传播的目的是什么?传播的方式是后向,可这又是什么意思呢。

传播的对象是误差,传播的目的是得到所有层的估计误差,后向是说由后层误差推导前层误差:

即BP的思想可以总结为

    利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。 
  • “BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)”

我们来看一个最简单的三层BP:

  • “BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。”

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

激活函数必须满足处处可导的条件。那么比较常用的是一种称为S型函数的激活函数:

那么上面的函数为什么称为是S型函数呢:

我们来看它的形态和它导数的形态:

p.s. S型函数的导数:

神经网络的学习目的:

希望能够学习到一个模型,能够对输入输出一个我们期望的输出。
 
学习的方式:
在外界输入样本的刺激下不断改变网络的连接权值
 
学习的本质:
对各连接权值的动态调整

学习的核心:

权值调整规则,即在学习过程中网络中各神经元的连接权变化所依据的一定的调整规则。

二,有监督的BP模型训练过程

1. 思想

有监督的BP模型训练表示我们有一个训练集,它包括了: input X 和它被期望拥有的输出 output Y

所以对于当前的一个BP模型,我们能够获得它针对于训练集的误差

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

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

2.具体

这里解释下根据误差对权值的偏导数来修订权值:

References

http://www.360doc.com/content/13/1217/13/9282836_337854682.shtml

传统神经网络ANN训练算法总结相关推荐

  1. 人工神经网络ANN的算法总结

    用笔记,记录自己的点滴进步:用行动,驱赶心中的彷徨 --杰 人工神经网络ANN的算法总结 前言 卷积神经网络 相关名词解释 卷积层 激励层 池化层 全连接层 补充 参考资料与原文 前言 人工神经网络( ...

  2. 速神经网络的训练算法LARS/LAMB工作原理 --UC Berkeley在读博士生尤洋

    为什么深度学习很慢? 如果我们利用并行计算,怎样才能完美的利用大量的processor? 为什么large batch size会引起精度降低? 新优化器 参考: 快速神经网络的训练算法 --UC B ...

  3. 快速神经网络的训练算法LARS/LAMB工作原理 --UC Berkeley在读博士生尤洋

    快速神经网络的训练算法 --UC Berkeley博士尤洋 快速神经网络的训练算法 --UC Berkeley博士尤洋 为什么深度学习很慢? 如果我们利用并行计算,怎样才能完美的利用大量的proces ...

  4. 有关神经网络的训练算法,神经网络算法通俗解释

    第9章怎样研究算法遗传算法示例练习题答案解析 遗传算法在很多领域都得到应用:从神经网络研究的角度上考虑,最关心的是遗传算法在神经网络的应用.在遗传算法应用中,应先明确其特点和关键问题,才能对这种算法深 ...

  5. 有关神经网络的训练算法,深度神经网络训练方法

    深度神经网络是如何训练的? Coursera的Ng机器学习,UFLDL都看过.没记错的话Ng的机器学习里是直接给出公式了,虽然你可能知道如何求解,但是即使不知道完成作业也不是问题,只要照着公式写就行. ...

  6. 关于RBM神经网络及其训练算法

    之前接触过一些rbm的知识,网上也有很多写得很好的博客,但是也是一知半解,其实这里面包含的东西可以说非常广泛,也非常经典,rbm以及后面的dbn都是hinton老爷子的得意之作,在当时深度神经网络以及 ...

  7. 有关神经网络的训练算法,神经网络训练计算器app

    为什么要用GPU来训练神经网络而不是CPU? 许多现代神经网络的实现基于GPU,GPU最初是为图形应用而开发的专用硬件组件.所以神经网络收益于游戏产业的发展. 中央处理器(central proces ...

  8. 卷积神经网络的训练算法,卷积神经网络算法实现

    卷积神经网络算法是什么? 一维构筑.二维构筑.全卷积构筑. 卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feed ...

  9. 神经网络训练过程详解,神经网络的训练算法

    神经网络原理及应用 神经网络原理及应用1.什么是神经网络?神经网络是一种模拟动物神经网络行为特征,进行分布式并行信息处理的算法. 这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从 ...

最新文章

  1. 了解下WSDL 绑定
  2. Move or commit them before Pull git
  3. datagrid 重载本地数据_音视频系列3:使用ffmpeg + nginx搭建本地转发服务器
  4. .NET使用免费开源类库操作Excel
  5. LeetCode 554. 砖墙(map计数)
  6. 图数据库与关系数据库的实验对比——意大利商会 InfoCamere 案例
  7. python私人定制_手把手教你学python第十五讲(魔法方法续私人“定制”)
  8. 【英语学习】【WOTD】fantod 释义/词源/示例
  9. 台湾SDN/NFV联盟:集合产业内各部分力量,共同推进NFV技术发展
  10. redis的持久化(RDBAOF的区别)
  11. Atitit it与互联网 的技术体系 目录 1. 概念范围 硬件 软件 应用 1 1.1. 职业分类 2 1.1.1. 软件类 2 1.1.2. 硬件类 2 1.1.3. 网络类 2 1.1.4.
  12. 解决 前端Failed to decode downloaded font
  13. 计算机网络按网络覆盖范围大小排序 从小到大为,现代远程网络教育概论试题及答案分析.pdf...
  14. 为什么现在更多需要用的是 GPU 而不是 CPU,比如挖矿甚至破解密码?
  15. 如何关闭windows电脑里的休眠
  16. cad2016中选择全图字体怎么操作_CAD镜像怎么用,你会吗?
  17. 零知开发板和红外人体感应模块使用
  18. 使用Simu5G实现车联网V2X通信过程(两个简单的示例)
  19. Cesium 监听地图缩放
  20. 物联网安全威胁与解决方案调研

热门文章

  1. git 删除远程仓库本地分支和删除远程分支,保留本地分支或者删除本地
  2. 制作虚拟主机管理系统(二)
  3. 拼团倒计时效果 2021-01-13
  4. SQL联合查询--理论知识
  5. 推荐一款移动端调试神器(eruda)
  6. java(Scanner类.Random类.Array list类)
  7. 全面解析如何用 HAY 玩转 BNB Chain DeFi,释放 BNB 价值
  8. 继客户5亿欧元的SAP项目黄了之后,价值1亿欧元的项目SAP又实施失败了!
  9. Java开发工具包的组成
  10. 【翻译 Spring 5.0.4.RELEASE】1.The IoC container