我精心收集了我正在进行的概念验证研究的数据。数据由40个不同的主题组成,每个主题有60个参数,每隔60个时间间隔测量,1个输出参数为0或1.所以我正在建立一个二元分类器。
我事先知道输入参数和输出之间存在非线性关系,因此贝叶斯分类器的简单感知器无法对样本进行分类。初步测试后证明这个假设是正确的。
因此我去了神经网络,因为我希望结果非常好。通常导致约1-5%的误差。培训使用70%作为培训,30%作为评估。通过模型再次运行完整数据集(100%)我对结果非常满意。以下是典型的混淆矩阵(P =正,N =负):
P N
P 13 2
N 3 42
所以我很高兴,并且我认为我使用了30%的评价,我相信我不适应噪音。
因此我决定使用SVM进行双重检查,SVM无法收敛到一个好的解决方案。大多数情况下解决方案很糟糕(比如90%的错误......)。也许我并不完全了解SVM或者实现不正确,但它让我感到困扰,因为我认为当NN提供一个很好的解决方案时,由于它们的最大边缘超平面,SVM在大多数情况下更好地分离数据。 / p>
这对我的结果有什么看法?我适合噪音吗?我怎么知道这是否是正确的结果?
我正在使用Encog进行计算,但NN结果与我制作的本土NN模型相当。
答案 0 :(得分:1)
如果您是第一次使用SVM,我强烈建议您查看着名SVM软件包A Practical Guide to Support Vector Classication的作者libsvm。它提供了一系列培训SVM分类器的建议。
简而言之,请尝试缩放数据并仔细选择内核和参数。