作业帮 > 生物 > 作业

SVM(支持向量机)在建模过程中,训练集,测试集的选择有什么规律和原则呢?

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:生物作业 时间:2024/07/09 17:37:47
SVM(支持向量机)在建模过程中,训练集,测试集的选择有什么规律和原则呢?
要是多次随机选取训练集、测试集,选取准确性最好的作为结果,这样建模有说服性么?
SVM(支持向量机)在建模过程中,训练集,测试集的选择有什么规律和原则呢?
说服性比较困难.在分类器联合算法(类似于boosting)中,做法与你的做法类似,特别是随机子空间法.但是联合算法只对弱分类器有效,甚至有人证明过对于强线性分类器必定过适应.
注意到相关文献描述说服力的时候,都会讲到联合算法对于弱分类器或许有用.而普通支持向量机本身无论是分类还是回归都是绝对稳定的,所以如果按照你所说的做法来做,几乎没有什么说服力,等价于你是在为算法找数据,而不是根据数据做算法.
再问: 您说的很有道理。但是我做的要是一个定性的研究。也就是说我要获得的结果是我的数据可以用SVM这种算法进行建模。因为目前我的实验数据不多,我想通过某些算法(比如遗传算法)来优选样本,从而来获得较高的相关系数,以此来证明该模型可以用来预测我所研究领域的数据。那么,一这样为目的,这么做可行么?谢谢咯
再答: 在训练集上选择样本是无可厚非的,无论您有没有理论依据,只要这样做效果更好就可以,但是在测试集上非常具有危险性. 危险性是指两方面:第一是您采集到的样本本身具有一定噪声,或者信息提取有误差,这时候做适当的预处理,比如滤波或者踢出部分离群点,自然是可以的,但是简单的删除不好的数据能否还可以反应出来系统本身特性,这需要考虑;第二是您选取的SVM类型(比如核函数,解对偶问题的算法,甚至是参数设置等)或者选取的特征不适用于您的课题.更直接点说这样做本身是错误的,那么人为的选取测试集是不正确的,因为这样一个模型做出来仅仅对于您选定的某些测试结果有效,对于实际的系统是没什么效果的,也就是说这是一种不具有可重复性的实验.
再问: 非常感谢您的解答。那么您认为如何评判一个模型可以应用在某个领域呢?应用LOO(留一交互验证)么?多次建模取相关系数和MSE么?期待您的解答。
再答: 工程有关的课题SVM本身没有什么固定的标准,主要看你的工程需求.r2和mse是比较常见的衡量标准,另外也可以使用课题老方法的一些指标.比如系统辨识的时候多大的信噪比有多少失真等.当然也有用CV误差的,比如有些关于SVM参数设定的研究喜欢用留一交叉验证. 建议看你的数据集和课题代表性文献,或者是老方法的文献,用他们的指标和他们的样本来证明自己的方法比他们好是最佳的选择.