Ваш подход абсолютно верен, и вы фактически создаете тот же вывод.
LabelBinarizer
преобразует значения вашего класса (1, 2, 3
) в мульти-выход двоичных значений (1, 0, 0
) , 0, 1, 0
, 0, 0, 1
). Применение регрессора Ridge
к этим выходным данным приведет к тому, что ваша мультиклассовая регрессия будет вести себя как мультиклассовая классификация, если вы возьмете, например, наивысший результат.
RidgeClassifier
преобразует значения класса между -1
и 1
, потому что регрессия более эффективна, когда выход симметричен . Это основное различие между двумя подходами, с добавлением сахара для улучшения производительности и конвергенции.
Проверьте источник RidgeClassifier
: source
В функции fit
вы увидите использование вашего LabelBinarizer
, но с параметрами, чтобы сделать его между -1
и 1
.
Ваши окончательные значения отличаются, но это нормально потому что необработанный вывод отличается. Однако, если вы возьмете максимум, вы получите тот же результат классификации.