2014-01-28 3 views
2

Я использую logisitic регрессию в SKLearn для классификации данных в один из 5 классов. Для подготовки данных у меня есть матрица наблюдений Y и матрица признаков X.Dummy Variables в Python Регрессия логистики SKLearn

Иногда бывает, что в моей матрице Y не будет категории 3. В этом случае, когда я вызываю метод predict_proba(X), я хотел бы иметь список из 5 вероятностей, где 3-я запись равна 0 (так как нет наблюдений категории 3). Вместо этого эта вероятность просто опускается, и возвращается список из 4 вероятностей.

Как изменить объект логистической регрессии для этого?

ответ

2

LogisticRegression не позволяет это, но его близкий родственник SGDClassifier делает:

logreg = SGDClassifier(loss="log") 
logreg.partial_fit(X, y, classes=np.arange(5)) 

SGDClassifier отличается в алгоритм обучения и параметризации. Если это не нормально, тогда вам придется перевернуть свой собственный код оболочки.

Смежные вопросы