libsvm怎么处理“数据集不平衡”的问题

libsvm怎么处理“数据集不平衡”的问题,第1张

首先,数据不平衡会造成怎样的问题呢。一般的学习器都有下面的两个假设:一个是使得学习器的准确率最高,另外一个是学习器应该用在与训练集有相同分布的测试集上。如果数据不平衡,那么学习器使得它的准确率最高肯定是更偏向于预测结果为比例更大的类别。比如说阳性的比例为1%,阴性的比例为99%,很明显的是即使不学习,直接预测所有结果为阴性,这样做的准确率也能够达到99%,而如果建立学习器也很有可能没有办法达到99%。这就是数据比例不平衡所造成的问题。这样建立的模型即使准确率再高,在实际应用的时候效果肯定不好,而且也不是我们想要的模型。

比如UCI数据集中的yeast数据,它有14个类别,每个样本都包含多于一个的label,请教大家。 到MATLAB技术论坛网站查看回答详情>>如何用libsvm进行多标签分类

一。下载libsvm
>你好,LIBSVM简介 [v5o#Vd
sH:Luo+]
支持向量机所涉及到的数学知识对一般的化学研究者来说是比较难的,自己编程实现该算法难度就更大了。但是现在的网络资源非常发达,而且国际上的科学研究者把他们的研究成果已经放在网络上,免费提供给用于研究目的,这样方便大多数的研究者,不必要花费大量的时间理解SVM算法的深奥数学原理和计算机程序设计。目前有关SVM计算的相关软件有很多,如LIBSVM、mySVM、SVMLight等,这些软件大部分的免费下载地址和简单介绍都可以在[url]
>load fisheriris
xdata = meas(51:end,3:4);
group = species(51:end);
svmStruct = svmtrain(xdata,group,'showplot',true);
自带的例子,把fisheriris换成你自己的数据即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13361875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-21
下一篇 2023-07-21

发表评论

登录后才能评论

评论列表(0条)

保存