#python
#python
Вопрос:
Недавно я скопировал свои коды с R на Python, и мне нужна помощь в отношении кодов. Насколько я знаю, логистическая регрессия в sklearn включает только l1
или l2
регуляризованный термин, который представляет регрессию лассо и гребня соответственно. Однако реализация как регуляризованных терминов l1, так и l2, т. Е. ElasticNet, может быть намного лучше.
В случае R существует примечательный пакет glmnet
, который может идеально реализовать вышеуказанные идеи, тогда как пакет glmnet
в python, похоже, поддерживает только систему Linux вместо Windows 10 на моем компьютере (пожалуйста, обратитесь к этому) Кроме того, будет намного лучше, если пакет сможет визуализировать результат (например, путь усадки)
#logtistic with penalty terms in sklearn
from sklearn.linear_model import LogisticRegression
LogisticRegression(C=0.1,random_state=seed,penalty='l1')
LogisticRegression(C=0.1,random_state=seed,penalty='l2')
Комментарии:
1. Ну, я нахожу sklearn.linear_model.SGDClassifier, который кажется правильной моделью, реализуя функцию потерь как «log», а штраф — как «elasticnet». Итак, оставшаяся проблема — это способ визуализации результата (см. github.com/bbalasub1/glmnet_python/blob/master/test /… )
Ответ №1:
sklearn.linear_model.SGDClassifier(loss='log', penalty='elasticnet')
Комментарии:
1. Спасибо за ваш ответ. На самом деле, в приведенном выше ответе я нашел этот метод. Мне было интересно, смогу ли я визуализировать результат? Например, путь усадки.