ML三(人工神经网络)
人工神经网络
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三(人工神经网络)的更多相关文章
- SIGAI深度学习第三集 人工神经网络2
讲授神经网络的理论解释.实现细节包括输入与输出值的设定.网络规模.激活函数.损失函数.初始化.正则化.学习率的设定.实际应用等 大纲: 实验环节: 理论层面的解释:两个方面,1.数学角度,映射函数h( ...
- C#中调用Matlab人工神经网络算法实现手写数字识别
手写数字识别实现 设计技术参数:通过由数字构成的图像,自动实现几个不同数字的识别,设计识别方法,有较高的识别率 关键字:二值化 投影 矩阵 目标定位 Matlab 手写数字图像识别简介: 手写 ...
- 人工神经网络(Artificial Neural Networks)
人工神经网络的产生一定程度上受生物学的启发,因为生物的学习系统是由相互连接的神经元相互连接的神经元组成的复杂网络.而人工神经网络跟这个差不多,它是一系列简单的单元相互密集连接而成的.其中每个单元有一定 ...
- 人工神经网络简介和单层网络实现AND运算--AForge.NET框架的使用(五)
原文:人工神经网络简介和单层网络实现AND运算--AForge.NET框架的使用(五) 前面4篇文章说的是模糊系统,它不同于传统的值逻辑,理论基础是模糊数学,所以有些朋友看着有点迷糊,如果有兴趣建议参 ...
- 人工神经网络 Artificial Neural Network
2017-12-18 23:42:33 一.什么是深度学习 深度学习(deep neural network)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高 ...
- 微软“小冰”识狗与人工神经网络(I)
2014年8月21日,微软"小冰"网络机器人推出了一项图像识别技能:"小冰识狗". "小冰"怎么会"识狗"呢? 依据微软 ...
- 人工神经网络--ANN
神经网络是一门重要的机器学习技术.它是目前最为火热的研究方向--深度学习的基础.学习神经网络不仅可以让你掌握一门强大的机器学习方法,同时也可以更好地帮助你理解深度学习技术. 本文以一种简单的,循序的方 ...
- 人工神经网络反向传播算法(BP算法)证明推导
为了搞明白这个没少在网上搜,但是结果不尽人意,最后找到了一篇很好很详细的证明过程,摘抄整理为 latex 如下. (原文:https://blog.csdn.net/weixin_41718085/a ...
- neurosolutions 人工神经网络集成开发环境 keras
人工神经网络集成开发环境 : http://www.neurosolutions.com/ keras: https://github.com/fchollet/keras 文档 http ...
随机推荐
- 编程算法 - 求1+2+...+n(构造函数) 代码(C++)
求1+2+...+n(构造函数) 代码(C++) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 求1+2+...+n, 要求不能使用乘除法\for\whi ...
- 在jfinal的Controller中接受json数据
JFinal中接收URL中的参数或者model中的参数是很方便的,但是对于web2.0的网站来说,经常会以json方式提交比较复杂的数据,比如一个查询,包含了各种过滤条件和排序分页,前端脚本可能提交的 ...
- oracle中的minus数据比对
1.要有唯一索引或者主键作为前提,减少数据冲突的数量,如示例标红的地方: 2.当有in查询的时候,尽量用exists,这样能提高查询效率: create table TF_F_USER_DIFF1 ...
- iOS CAGradientLayer白色渐变至上向下
项目需求当显示富文本内容高度太高的的时候不全部显示出来,而是显示查看更多按钮,当点击查看更多时把全部内容展开.同时未展开部分要加一个渐变模糊的效果. 上效果图: 这里要用到CAGradientLaye ...
- Linux3_文件系统
1.Linux发行版本之间的差别很少,差别主要表现在系统管理的特色工具以及软件包管理方式的不同.目录结构基本上都是一样的. Windows的文件结构是多个并列的树状结构,最顶部的是不同的磁盘(分区), ...
- CentOS Linux解决网卡报错Bringing up interface eth0.....
问题描述:在VMware里克隆出来的CentOS Linux,开机执行命令:ifconfig...没有看到eth0网卡.然后重启网卡又报以下错误:Bringing up interface eth0: ...
- Python中使用__new__实现单例模式并解析
阅读文章前请先阅读 Python中类方法.__new__方法和__init__方法解析 单例模式是一个经典设计模式,简要的说,一个类的单例模式就是它只能被实例化一次,实例变量在第一次实例化时就已经固定 ...
- centos7.0 crontab 的yii计划任务没有执行
*/1 * * * * /www/yii solr/update-article 创建了每分钟执行一次的计划而计划任务没有执行 原因是自己少加了执行用户 */1 * * * * php /www/yi ...
- TRansportation ANalysis and SIMulation System
https://www.fhwa.dot.gov/planning/tmip/transims/background.cfm?from=groupmessage
- android中handler和bundle有什么区别和联系 都是用来传递消息吗都是信息的载体吗
1.handler是消息处理者,通常重写Handler的handleMessage()方法,在方法中处理接收到的不同消息,例如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Ha ...