栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

sklearn.svm.svc的函数predict_proba()在内部如何工作?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

sklearn.svm.svc的函数predict_proba()在内部如何工作?

Scikit-
learn在内部使用LibSVM,而这又使用了Platt缩放(如LibSVM作者在本说明中所述)来校准SVM以产生除类预测之外的概率。

普拉特缩放需要首先像往常一样训练SVM,然后优化参数向量 AB ,使得

P(y|X) = 1 / (1 + exp(A * f(X) + B))

f(X)
样品到超平面的有符号距离在哪里(scikit-
learn
decision_function
方法)。您可能会在此定义中认识到逻辑乙状结肠,这与逻辑回归和神经网络用于将决策函数转换为概率估计的功能相同。

请注意:

B
参数“截距”或“偏差”或您喜欢调用的任何参数,都可能导致基于该模型的概率估计进行的预测与您从SVM决策函数获得的预测不一致
f
。例如,假设
f(X)= 10
,则对的预测为
X
正;但是如果
B = -9.9
A = 1
,那么
P(y|X) =.475
。我凭空想出这些数字,但是您已经注意到,这实际上可能会发生。

实际上,Platt缩放可在交叉熵损失函数下,在SVM输出的顶部训练概率模型。为了防止此模型过度拟合,它使用内部五重交叉验证,这意味着使用SVM训练SVM

probability=True
可能比原始的非概率SVM昂贵得多。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/610367.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号