大家好,我对platt scaling不是很理解,大概知道是SVM里用得到概率输出的方法。
具体应该怎么理解platt scaling?
2个回答
platt's scaling本质上就是利用一个逻辑回归将SVM的输出值映射为概率。
因为SVM的输出值是样本和决策边界的距离而非概率,输出值大于0是正样本,输出值小于0是负样本。
platt's scaling就利用这个输出值作为样本的特征,再利用样本的标签,训练一个一维数据的逻辑回归。这个逻辑回归的最后输出的概率值就是platt's scaling后的预测概率。
假设第$i$个样本的特征为$X_i$,SVM的决策函数的输出结果为$f(X_i)$,那么platt's scaling之后预测这个样本为正的概率为
$$P(1|X_i)=\frac{1}{1+e^{af(X_i) + b}}$$
其中$a$和$b$是通过训练集训练得到的。
SofaSofa数据科学社区DS面试题库 DS面经从神经网络的角度来说,platt scaling相当于在最外面加一个sigmoid输出层
SofaSofa数据科学社区DS面试题库 DS面经
这个解释很直白
-
zhaijing
2019-01-29 11:02