sklearn.linear_model.SGDClassifier中损失函数的精确定义

时间:2014-05-09 22:05:59

标签: python machine-learning scikit-learn

我知道我可以将损失功能更改为以下之一:

  

损失:str,'hinge'或'log'或'modified_huber'      要使用的损失函数。默认为“铰链”。铰链损失是      标准线性SVM模型使用的保证金损失。 '日志'损失是      逻辑回归模型的丢失可以用于      二元分类器中的概率估计。 'modified_huber'      另一种平稳的损失是对异常值的容忍。

但这个功能的定义是什么? 我了解hingemax(0, 1 - margin)。还有其他什么呢?

2 个答案:

答案 0 :(得分:4)

以下是所有这些功能的图表,取自scikit-learn example gallery

enter image description here

在当前的dev version of the example中,损失是在脚本中内联实现的。

答案 1 :(得分:3)

sklearn的源代码可在GitHub上获得,因此您可以对其进行检查。损失函数列表可以在sklearn/linear_model/stochastic_gradient.py中找到。损失的定义如下:sklearn/linear_model/sgd_fast.pyx#L46