人工神经网络

Artificial Neural Nerworks

基本术语概念:

人工神经网络(Artificial Neural Networks,ANN)

感知器(Perceptron:以一个实数值向量作为输入,计算输入的线性组合,如果结果大于某个阈值输出1,否则输出-1。

权值(weight:贡献率。

线性可分(linearly separable)

Delta法则(delta rule:LMS的一个变态,采用梯度下降。

感知器训练法则(perceptron training rule)

梯度下降(gradient descent)

反向传播算法(The Backpropagation Algorithm)

1 适合神经网络学习的问题

  • 实例使用很多"属性-值"对表示的。
  • 目标函数的输出可能是离散值。
  • 训练数据可能包含错误。
  • 可容忍长时间的训练。
  • 可能需要快速求出目标函数值。
  • 人类能否理解学到的目标函数是不重要的。

2 感知器(perceptron)

感知器:ANN系统的基础单元

其中,w是一个实数常量,叫做权值(weight)。

学习一个感知器意味着选择权w的值。

2.1 感知器的表征能力

单独的感知器可以解决线性可分(linearly separable)样例集合,例如很多布尔函数,AND,OR,但不能解决线性不可分的函数,例如异或函数XOR。

2.2 感知器训练法则

  • 感知器法则(perceptron training rule):

该法则收敛的前提是训练样例线性可分。

  • Delta法则:

    如果训练样本不是线性可分的,那么delta法则会收敛到目标概念的最佳近似。它的关键思想是使用梯度下降(gradient descent)来进行搜索。

先制定一个度量标准来衡量假设相对于训练样本的训练误差(training error)。

其中,D是训练样例集合,t是训练样例d的目标输出,o是线性单元对训练样例d的输出。

接下来要是误差最小,计算E相对w每个分量的导数。

这个向量导数被称为E对于w的梯度(gradient)。

通过求导得:

3 多层网络和反向传播算法(The Backpropagation Algorithm)

3.1 可微阈值单元(A Differentiable Threshold Unit)

这里需要的单元应该是,它的输出是输入的非线性函数,并且输出是输入的可微函数,这样我们就能表征非线性函数的网络。Sigmoid单元满足。

Sigmoid单元:

3.2 反向传播算法(The Backpropagation Algorithm)

这里描述的算法适用于包含两层sigmoid单元的分层前馈网络,它采用梯度下降方法试图最小化网络输出值和目标值之间的误差平方,来学习这个网络的权值。一些符号意义:

3.3 反向传播法则的推导

符号表示:

ML三(人工神经网络)的更多相关文章

  1. SIGAI深度学习第三集 人工神经网络2

    讲授神经网络的理论解释.实现细节包括输入与输出值的设定.网络规模.激活函数.损失函数.初始化.正则化.学习率的设定.实际应用等 大纲: 实验环节: 理论层面的解释:两个方面,1.数学角度,映射函数h( ...

  2. C#中调用Matlab人工神经网络算法实现手写数字识别

    手写数字识别实现 设计技术参数:通过由数字构成的图像,自动实现几个不同数字的识别,设计识别方法,有较高的识别率 关键字:二值化  投影  矩阵  目标定位  Matlab 手写数字图像识别简介: 手写 ...

  3. 人工神经网络(Artificial Neural Networks)

    人工神经网络的产生一定程度上受生物学的启发,因为生物的学习系统是由相互连接的神经元相互连接的神经元组成的复杂网络.而人工神经网络跟这个差不多,它是一系列简单的单元相互密集连接而成的.其中每个单元有一定 ...

  4. 人工神经网络简介和单层网络实现AND运算--AForge.NET框架的使用(五)

    原文:人工神经网络简介和单层网络实现AND运算--AForge.NET框架的使用(五) 前面4篇文章说的是模糊系统,它不同于传统的值逻辑,理论基础是模糊数学,所以有些朋友看着有点迷糊,如果有兴趣建议参 ...

  5. 人工神经网络 Artificial Neural Network

    2017-12-18 23:42:33 一.什么是深度学习 深度学习(deep neural network)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高 ...

  6. 微软“小冰”识狗与人工神经网络(I)

    2014年8月21日,微软"小冰"网络机器人推出了一项图像识别技能:"小冰识狗". "小冰"怎么会"识狗"呢? 依据微软 ...

  7. 人工神经网络--ANN

    神经网络是一门重要的机器学习技术.它是目前最为火热的研究方向--深度学习的基础.学习神经网络不仅可以让你掌握一门强大的机器学习方法,同时也可以更好地帮助你理解深度学习技术. 本文以一种简单的,循序的方 ...

  8. 人工神经网络反向传播算法(BP算法)证明推导

    为了搞明白这个没少在网上搜,但是结果不尽人意,最后找到了一篇很好很详细的证明过程,摘抄整理为 latex 如下. (原文:https://blog.csdn.net/weixin_41718085/a ...

  9. neurosolutions 人工神经网络集成开发环境 keras

    人工神经网络集成开发环境 :  http://www.neurosolutions.com/ keras:   https://github.com/fchollet/keras 文档    http ...

随机推荐

  1. 写sql语句统计各个学生各科成绩(case when用法)

    尊重原创:http://blog.csdn.net/love_java_cc/article/details/78268326 有如下一张表score: 建表语句: CREATE TABLE `sco ...

  2. Python之内置类型

    python有6大内置类型 数字.序列.映射.类.实例.异常. 下面就慢慢来说明: 1.数字 有3个明确的数字类型,整型,浮点型及复数.另外,布尔是整型的一个子类型. (另外标准库还包含额外的数字类型 ...

  3. 在Vue中使用layer.js弹出层插件

    layer.js(mobile)是一个小巧方便的弹出层插件,在之前的apicloud项目中被大量使用,但最近对apicloud的IDE.非常不友好的文档和极低的开发效率深感厌烦,决定弃用然后转向Vue ...

  4. ntp服务及其配置

    集群中使用NTP服务 简介 之前搭建zookeeper时报了一个错,我以为是ntp的问题,结果不是.这里详细学习一下如何在集群中使用ntp服务. 什么是ntp服务 来自ntp的百度百科: NTP服务器 ...

  5. JavaScript跨浏览器事件处理

    var EventUtil = { getEvent: function(event){ return event ? event : window.event; }, getTarget: func ...

  6. centos7防火墙--firewall

    centos7的防火墙变成firewall了 systemctl start firewalld.service#启动firewallsystemctl stop firewalld.service# ...

  7. PowerBuilder--Aes128加解密

    通过C#开发Com控件,注册到系统,然后由pb通过OLEObject进行调用 原文:https://www.cnblogs.com/eric_ibm/archive/2012/07/06/dll.ht ...

  8. Collecting Bugs (概率dp)

    Ivan is fond of collecting. Unlike other people who collect post stamps, coins or other material stu ...

  9. spring mvc注解和spring boot注解

    1 spring mvc和spring boot之间的关系 spring boot包含spring mvc.所以,spring mvc的注解在spring boot总都是可以用的吗? spring b ...

  10. Apache转发规则的一点注意

    RewriteRule ^studio/$ book.php?mod=studio 这种目录转发, 正常情况下是没问题的. 但是当根目录下存在一个 studio 目录时, apache就不会转发URL ...