【问题标题】:LibSVM model interpretationLibSVM 模型解释
【发布时间】:2011-12-12 05:37:32
【问题描述】:

我需要对两个类之间的一些值进行分类。 我有大约 30 个值可以用作训练集,每个值都有 10 个不同的维度。 我正在使用 libSVM(在 Python 中),它似乎运行良好。

我也在尝试对 libSVM 计算的模型进行解释,因为我认为在分类过程中某些维度比其他维度更“重要”。

例如,考虑以下示例:

y, x = [1,1,1,-1,-1,-1],[[1,-1],[1,0],[1,1],[-1,-1],[-1,0],[-1,1]]
prob  = svm_problem(y, x)
param = svm_parameter()
param.kernel_type = LINEAR
param.C = 10
m = svm_train(prob, param)
svm_save_model('model_file', m)

很明显,x list的元素的第二维对这个数据集的分类是没有用的。

我的问题是:

有没有什么系统的方法可以通过分析 libSVM 生成的模型来检测这种情况?

【问题讨论】:

    标签: python svm libsvm


    【解决方案1】:

    有点晚了,但是:

    检查某项功能是否重要是您的责任 - 因此您必须手动选择您的功能以满足您的应用程序的要求。 SVM 尝试使用您输入的功能获得最佳结果 - 仅仅因为选择会变得更清晰(但可能更错误)而忽略给定数据没有多大意义。

    只有你才能知道哪些功能好,哪些不好。你必须用手/大脑找到它们。

    【讨论】:

      猜你喜欢
      • 2013-02-11
      • 2013-09-03
      • 1970-01-01
      • 2012-05-28
      • 2010-12-17
      • 2017-04-13
      • 2014-12-11
      • 2021-10-19
      • 2013-09-26
      相关资源
      最近更新 更多