sklearn“ RidgeClassifier”是做什么的?

Pet*_*nek 6 python machine-learning scikit-learn logistic-regression

我想了解的区别RidgeClassifier逻辑回归sklearn.linear_model。我在文档中找不到它。

我想我很了解LogisticRegression的功能,它计算系数并截取最小化half of sum of squares of the coefficients + C times the binary cross-entropy loss,其中C是正则化参数。我从头开始检查了一个简单的实现,结果是一致的。

RidgeClassifier的结果不同,我无法弄清楚,那里的系数和截距是如何计算的?查看Github代码,我没有足够的经验来解开它。

我问的原因是,我喜欢RidgeClassifier的结果-它可以更好地概括我的问题。但是在我使用它之前,我至少想知道它的来源。

感谢您的帮助。

Ven*_*lam 6

RidgeClassifier()LogisticRegression()与l2罚金相比,其工作方式有所不同。的损失函数RidgeClassifier()不是交叉熵。

RidgeClassifier()通过Ridge()以下方式使用回归模型来创建分类器:

为了简单起见,让我们考虑二进制分类

  1. 生成目标变量,其值等于+1-1基于其所属的类。

  2. 建立一个Ridge()回归模型(这是一个回归模型)来预测我们的目标变量。损失函数是RMSE + l2 penality

  3. 如果Ridge()回归的预测值(基于decision_function()函数计算)大于0,则将其预测为正类,否则为负类。

对于多类别分类

  1. 使用LabelBinarizer()创建多输出回归的情况下,再培养独立的Ridge()回归模型,每一个类(一-VS-休息建模)。

  2. 从每个类的Ridge()回归模型(每个类的实数)获取预测,然后用于argmax预测该类。

  • 找到了原因,更新了我的答案。一行-他们使用ridge回归模型构建ridgeClassifier。 (2认同)