【问题标题】:Can SVC give different results? [scikit-learn v0.14]SVC 可以给出不同的结果吗? [scikit-learn v0.14]
【发布时间】:2013-10-30 06:06:39
【问题描述】:

我注意到,给定 SVC 的相同特征表(训练数据)和特征向量,我得到的 predict_proba 输出结果不同。

这是 SVC 的预期行为还是我应该得到一致的结果?

感谢您的帮助!

【问题讨论】:

    标签: svm scikit-learn


    【解决方案1】:

    我认为这是由于 libsvm 正在使用数据集的随机折叠的交叉验证来校准概率。在最新版本的 sklearn (0.14.1+) 中,将 random_state=0 作为构造函数参数传递应该修复 libsvm 内部使用的 PRNG 种子。如果它不能修复结果,请随时使用简约的复制脚本打开 github issue。

    【讨论】:

    • 非常感谢您的解释。当我检查我的 sci-kit 学习版本时,>>> 导入 sklearn,>>> sklearn.__version__,'0.13-git'。这个版本对于 random_state=0 是否足够新?您是否知道升级到最新版本的方法?
    • 我用 random_state=0 对其进行了测试,它给出了一致的结果。感谢您快速正确的回答!
    • 0.13-git 表示介于 0.12 版本和 0.13 版本之间的某些时间。您绝对应该定期拉取最新的 master 或使用稳定版本。
    猜你喜欢
    • 1970-01-01
    • 2016-07-30
    • 2017-06-16
    • 2021-12-20
    • 1970-01-01
    • 2019-12-09
    • 2017-12-22
    • 2021-02-15
    • 2017-04-26
    相关资源
    最近更新 更多