非线性分类器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.问题表述
第一次作业中已经阐述了线性分类器的设计问题,但是在大多数时候分类样本都是非线
性了,如何设计非线性分类器成为一个问题。
人工神经网络既可用于线性分类又可用于非线性分类,既可用于两类分类又可用于多类分类,既可用于正态分类也可用于非正态的分类,是一个万用分类器。
具体问题可以描述为:
设有 N个训练样本(特征向量 z维),,N,分别属于k 类,可以用个理想向量表达如,1 类可以表示为,该向量为k 维向量,2 类可以表示为,,以此类推,目标是希望最终ANN-BP 能正确分类上述样本,即对于1 类,该网络输出的向量。
2.方法叙述
人工神经网络没有具体的数学模型,可以描述为下面的步骤:
1)构造感知机映射,将原样本映射到新的特征空间,保证在新的空间待分类样本是线
性可分的;
2)对映射到新特征空间的样本采用感知机线性分类器进行分类。
将原特征空间定义为输入层,过渡空间定义为隐层,隐层的数目是不一定的,最终通过
的感知机线性分类器定义为输出层。
总的来说,人工神经网络就是多个感知机的组合,数学原理是将原始特征空间映射到过渡空间,在过渡空间里非线性问题变成了线性问题,根据最终输出层的感知机个数还可以实现多类分类。
上述过程虽然简单,但是如何寻找符合条件的映射成为一个难题,这里就要使用到BP 算法,即反向传播算法。
针对上面的具体问题,定义:
为输入层特征向量
为过渡向量其中
为输出向量,其中
其中f 是满足上下有界连续一阶可导的中心及对称的积和函数,具体的形式有很多种。
算法步骤如下:
1)定义目标误差函数,设置;
2)正向计算第τ步的值得到和的值;
3)反向传播修正:
3.算法实现
算法实现及备注见程序。
4.结果分析比较
双隐层,第一隐层4个神经元,第二隐层2个神经元,输出层一个神经元,学习速率即步长0.01,误差5*e-3.
双隐层,第一隐层15个神经元,第二隐层10个神经元,输出层一个神经元,学习速率即步长0.01,误差5*e-3.
双隐层,第一隐层7个神经元,第二隐层3个神经元,输出层一个神经元,学习速率即步长
0.0001,误差5*e-3.
从以上可以看出,当第一隐层神经元是第二隐层神经元德二倍时,且都不大于十个德时候,效果最好。
并且学习时间随步长的减小而增加。