参考:

  1. Stanford前向传播神经网络Wiki

  2. Stanford后向传播Wiki

  3. 神经网络CSDN blog

  4. 感知器

  5. 线性规划

  6. Logistic回归模型

内容:

  1. ANNs又称连接模型(connection model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的数学模型。它是由一系列简单的单元相互密集连接构成的,其中每一个单元有一定数量的实值输入,并产生单一的实数值输出。

  2. m-of-n函数:要使函数输出为真,那么感知器的n个输入中至少有m个必须为真。OR函数相当于m=1,AND函数相当于m=n。

  3. 某种类型的ANN系统是以被称为感知器(perception)的单元为基础的。感知器是以一个实数值向量作为输入,计算这些输入的线性组合,然后如果结果大于某个阈值,就输出1,否则输出-1。

  

  这里-w0就是阈值。这里的学习任务就是权向量的值。

  

          图1 单输出神经网络

  

  

  

              图2 多输出神经网络

  4. 学习任务算法:感知器法则与delta法则。

  感知器法则(前提是训练样例线性可分):为得到可接受的权向量,从随机的权值开始,然后反复地应用这个感知器到每个训练样例,只要它误分类样例就修改感知器的权值。重复这个过程,直到感知器正确分类所有的训练样例。

  

  其中,t是当前训练样例的目标输出,o是感知器的输出,η是一个正的常数称为学习速率(learning rate)。

  delta法则(线性不可分也可以):使用梯度下降(gradient descent)来搜索可能的权向量的假设空间,以找到最佳拟合训练样例的权向量。

  把delta训练法则理解为训练一个无阈值的感知器,也就是一个线性单元,它的输出如下:

  

  假设(权向量)相对于训练样例的训练误差如下:

  

  其中,D是训练样例集合,td是训练样例d的目标输出,od是线性单元对训练样例d的输出。这里的1/2是为了抵消求导后的2。其梯度如下:

  

  当梯度被解释为权空间的一个向量时,它确定了是E最陡峭上升的方向。

  

  5. 单个感知器只能表示线性决策面,而反向传播算法所学习的多层网络能表示非线性曲面。多层网络需要这样一种单元,它的输出是输入的非线性函数,并且输出是输入的可微函数。比如sigmoid单元,它的输出如下:

  

  误差E如下:

  

  其中,outputs是网络输出单元的集合,tkdokd是与训练样例d和第k个输出单元相关的输出值。

  ➊ 网络中每个结点被赋予一个序号,这里的“结点”要么是网络的输入,要么是网络中某个单元的输出。

  ➋ xji表示结点i到单元j的输入,wji表示对应的权值。

  ➌ δn表示与单元n相关联的误差项。

  对于网路的每个输出单元k,它的误差项为:

  

  对于网络的每个隐藏单元h,它的误差项为:

  

  权值更新:

  

人工神经网络ANNs的更多相关文章

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

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

  2. [DL学习笔记]从人工神经网络到卷积神经网络_2_卷积神经网络

    先一层一层的说卷积神经网络是啥: 1:卷积层,特征提取 我们输入这样一幅图片(28*28): 如果用传统神经网络,下一层的每个神经元将连接到输入图片的每一个像素上去,但是在卷积神经网络中,我们只把输入 ...

  3. [DL学习笔记]从人工神经网络到卷积神经网络_1_神经网络和BP算法

    前言:这只是我的一个学习笔记,里边肯定有不少错误,还希望有大神能帮帮找找,由于是从小白的视角来看问题的,所以对于初学者或多或少会有点帮助吧. 1:人工全连接神经网络和BP算法 <1>:人工 ...

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

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

  5. 开源的c语言人工神经网络计算库 FANN

    这年头机器学习非常的火,神经网络算是机器学习算法中的比较重要的一种.这段时间我也花了些功夫,学了点皮毛,顺便做点学习笔记. 介绍人工神经网络的基本理论的教科书很多.我正在看的是蒋宗礼教授写的<人 ...

  6. 机器学习笔记之人工神经网络(ANN)

    人工神经网络(ANN)提供了一种普遍而且实际的方法从样例中学习值为实数.离散值或向量函数.人工神经网络由一系列简单的单元相互连接构成,其中每个单元有一定数量的实值输入,并产生单一的实值输出. 上面是一 ...

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

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

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

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

  9. [DL学习笔记]从人工神经网络到卷积神经网络_3_使用tensorflow搭建CNN来分类not_MNIST数据(有一些问题)

    3:用tensorflow搭个神经网络出来 为什么用tensorflow呢,应为谷歌是亲爹啊,虽然有些人说caffe更适合图像啊mxnet效率更高等等,但爸爸就是爸爸,Android都能那么火,一个道 ...

随机推荐

  1. (转)nodejs中npm常用命令

    npm install <name>安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本, ...

  2. webapi post 请求多个参数

    Some programmers are tring to get or post multiple parameters on a WebApi controller, then they will ...

  3. post- build event

    Ref:http://blog.csdn.net/teng_ontheway/article/details/8307410 Ref: http://blog.csdn.net/sodickbird/ ...

  4. [pyqt4]mark

    sip SIP must be installed before building and using PyQt4 必须安装sip首先 https://riverbankcomputing.com/s ...

  5. linux更改 DNS 的一般方式

    一.第一种方法(常规方法) 在 Linux (笔者用fedora) 下当使用 NetworkManager时,更改 DNS 的一般方式: 修改 /etc/resolv.conf 文件, 添加 &quo ...

  6. sqlserver日志管理(转载)

    sql 在使用中每次查询都会生成日志,但是如果你长久不去清理,可能整个硬都堆满哦,笔者就遇到这样的情况,直接网站后台都进不去了.下面我们一起来学习一下如何清理这个日志吧     SQL2005清空删除 ...

  7. 将webservice封装成dll

    生成dll文件的步骤如下:1.发布完成后,在浏览器中打开WebService文件,如:http://localhost/WebSer/WebService1.asmx,可以看到WebService1. ...

  8. 突袭HTML5之WebGL 3D概述

    WebGL开启了网页3D渲染的新时代,它允许在canvas中直接渲染3D的内容,而不借助任何插件.WebGL同canvas 2D的API一样,都是通过脚本操纵对象,所以步骤也是基本相似:准备工作上下文 ...

  9. gerrit session expired 怎么解决,搜索未果

    gerrit session expired,怎么解决,搜索未果

  10. Linux中profile文件详解(转)

    1.Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义.用户可以对自己的运行环境进行定制,其方法 ...