我在SKLearn中使用logisitic回归将数据分类为5个类之一。为了训练数据,我有一个观察矩阵Y
和一个特征矩阵X
。
有时情况我的矩阵Y
没有类别3说。在这种情况下,当我调用predict_proba(X)
方法时,我希望列出5个概率,其中第3个条目为0(因为没有类别3观察)。相反,这个概率被简单地省略,并返回4个概率的列表。
如何更改逻辑回归对象来执行此操作?
答案 0 :(得分:3)
LogisticRegression
不允许这样做,但其近亲SGDClassifier
会这样做:
logreg = SGDClassifier(loss="log")
logreg.partial_fit(X, y, classes=np.arange(5))
SGDClassifier
的训练算法和参数化不同。如果那不行,那么你将不得不推出自己的包装代码。
答案 1 :(得分:1)
可以使用sklearn.preprocessing
模块找到多类别标签。
参考: http://scikit-learn.org/stable/modules/preprocessing.html#label-binarization