为什么使用 libsvm 的多类分类在预测的类别中显示出线性趋势?

问题描述

我正在改编同事的 SVM 管道中的 MATLAB 代码,以对 EEG 数据集进行八向分类,即在数据的每个时间点进行一次预测,每个通道的电压作为 SVM 的输入特征。运行代码(目前包含 200 个数据排列)并结合所有实验参与者的结果后,我绘制了所有预测的直方图。任意命名类别 1-8 后,猜测值呈负线性趋势,类别 1 的预测最多,类别 8 的预测最少。当在为其创建的数据(即 16 路分类器)上运行原始代码时,出现了相同的趋势。我已经进行了测试,以确保这些类的真实分布不会显着不均匀。

我了解 libsvm 的多类分类方法涉及创建 k(k-1)/2 个二元分类器,其中 k = 类数,然后“计算”这些分类器的结果以获得其最终预测。我不认为这会导致对某些类别的偏见,尤其是前几个类别。由于这些数据确实具有时间方面,因此我还检查了较低数量的类别是否可能具有某些强特征,导致在脑电图数据收集过程中,当大脑的反应没有显着差异时,有时会更多地(错误地)猜测它们到不同的班级。我发现这些对较低数字类别的猜测在解码的时间范围内是一致的,因此我认为这不是趋势的原因。

如果有人对可能导致这种趋势的原因有任何直觉,我很想更好地理解,因为这种趋势可能会导致我们对某些类的准确性略有提高。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...