1、简介
神经网络学习方法对于逼近实数值、离散值或向量值的目标函数提供了一种健壮性很强的方法。在现实中,学习解释复杂的现实世界中的传感器数据,人工神经网络(Artificial Neural Networks,ANN )是最有效的方法。反向学习传播算法已经在很多领域中取得了成功,比如学习识别手写字符、学习识别口语和学习识别人脸。
人工神经网络的研究在一定程度上受到生物学的启发,因为生物学的学习系统是由相互连接的神经元组成的异常复杂的网络,人工神经网络大体相似,也是由一系列简单的单元相互密集连接构成的,其中每一个单元有一定数量的实值输入,并产生单一的实数输出,而输入可能来自其他单元的输出,输出也可能称为其他单元的输入。
一般来说,ANN研究领域有两个目标:
1、使用ANN研究和模拟生物学习过程;
2、获得高效的机器学习算法,而不管这种算法是否反映了生物过程。
机器学习中一般是研究第二个目标。
2、神经网络表示

如上图,中间的隐藏节点(Hidden)接收每个Inpu节点t的输入,产生的输出称为Output节点的输入,最后通过Output节点对应产生相应的输出值,最后根据这些输出来得到最后的结果。当然,这只是ANN的一种常用表示模型,即2层模型,还有1层、3层等模型,更多层的模型不常见,每一层的节点数目也不是固定的。有些模型还具备有环的特征。
3、神经网络的适用问题
ANN学习适用于这些问题:训练集合为含有噪声的复杂传感器数据,例如来自摄像机和麦克风的数据。也适用于需要较多符号表示的问题,如
前一篇文章提到的决策树学习任务。在这种情况下ANN和决策树学习经常产生精度大体相当的结果。
反向传播算法是最常用的ANN学习技术,它适合具有以下特征的问题:
- 实例是很多“属性--值”对表示的;
- 目标函数的输出可能是离散值、实数值或者由若干实数属性或离散属性组成的向量;
- 训练数据可能包含错误;
- 可容忍长时间的训练;
- 可能需要快速求出目标函数值;(这一点和前面一点要注意一下,尽管ANN的学习时间相对较长,但是学习好构成网络后,来求后续的实例是非常快速的)
- 人类能否理解学到的目标函数是不重要的。(这一点我认为可能是人类还不知道目标函数大概是什么,或许目标函数)
4、感知器
一种类型的ANN系统是以被称为感知器的单元为基础的,如果感知器以一个实数值向量作为输入,然后计算这些输入的线性组合,然后当结果大于某个阈值的时候,就输出1,否则输出-1,结构如下图所示:

其中:
表示对于实数向量的线性组合,X_T代表实数向量,W代表权值,即每个输入x_i对于输出的贡献率。sgn(·)是一个符号函数。

现在已经很清楚了,感知器的作用相当于一个布尔函数,将各个输入的值加权组合输出-1或1。
学习一个感知器意味着选择权值w_0,w_1ÿ