Libsvm / Liblinear 中的实例称重

Posted

技术标签:

【中文标题】Libsvm / Liblinear 中的实例称重【英文标题】:Instance weighing in Libsvm / Liblinear 【发布时间】:2014-10-21 14:37:26 【问题描述】:

我经常将实例权重与 Libsvm 一起用于分类问题。 http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/#weights_for_data_instances

有人知道在 libsvm 中使用实例称重时实现的算法的详细信息吗?标准的 SVM 模型学习算法为所有训练实例分配相等的权重,从而为训练实例上的误差分配相同的权重。我相信 Libsvm 使用的算法会有所不同。在网上搜索后,我确实找到了一些类似的论文。例如[1],但我需要与可能确定这一点的人确认。

谢谢!

[1] 杨雪蕾,宋庆,王悦。 “用于数据分类的加权支持向量机。”国际模式识别和人工智能杂志 21.05 (2007): 961-976。

【问题讨论】:

【参考方案1】:

没有“特殊算法”,简单地说,在“等权”SVM 中,您有一个“C”权重

1/2 ||w||^2 + C SUM_i xi_i

如果样本权重 s_i 简单地变成

1/2 ||w||^2 + C SUM_i s_i xi_i

就是这样,这与为每个样本设置不同的成本系数C 完全相同

【讨论】:

以上是关于Libsvm / Liblinear 中的实例称重的主要内容,如果未能解决你的问题,请参考以下文章

LibSVM 和 LibLinear 有啥区别

liblinear和libsvm区别

用于 HOG 训练的 LibLinear + grid.py (LibSVM)

LIBLINEAR/LIBSVM“第 1 行输入格式错误”

libsvm liblinear 如何使用直方图交集/卡方内核

liblinear 的 50% 准确率问题