Simple Classifer

December 16, 2006 · One minute read

这两天在修改论文,导师说要多加一些深度和创新点,可以补充一些模糊推理、神经网络之类的东东。虽然本科学习过一些数据挖掘的算法,而且数据挖掘也是一种机器学习,但绝不是AI之类的范畴,因此说起模糊推理和神经网络,也会比较感冒。曾经想要好好学习一个Java下的分类器,但是工作和论文让BC无法分心,而且目前又在开发一个帮助Support更快上手的基于Excel的报表生成器。在经过来回踱步四五次后,想到一个最简单的基于01神经网络的分类器改进,丰满论文之余贡献与此。

前提:一个基于模型的分类器,输出为M(p),p为离散参数。如果可以确定M(p)能够起到分类作用,但无法确定参数p,可以使用01神经网络进行二次分类学习。以下全部变量均属于[0,1]。

设新的分类器C输出[0,1],结构如下: 0——->J0—
M(P1)—>J1—-
M(P2)—>J2—–
. .——-X–>C . .——/ M(Pn-1)->Jn-1–/ 1——->Jn—/ 其中Pi为p的可选参数,Ji为权值,且Sigma(Ji)=1.0,输出为C=Sigma(M(Pi)Ji)+J0+Jn。反馈方法为: {Ji=Ji(1+S), if M(Pi){Ji=Ji*(1-S), if M(Pi)>C* {Keep(Sigma(Ji)=1.0) 其中C*为训练结果输入,S为学习速度。

将01分类器C接到模型分类器M后,就能够确定M分类器的参数p了。虽然p参数可以通过改进模型获得,但是这样能够增加模型M的复杂度,同时给论文增加篇幅,呵呵^_^,不好意思咯。