какие коэффициенты идут в какой класс в мультиклассовой логистической регрессии в scikit learn?
Я с помощью логистической регрессии пакет scikit узнать за проблема мультиклассовой.
logit = LogisticRegression(penalty='l1')
logit = logit.fit(X, y)
Меня интересует, какие функции являются движущей силой данного решения.
logit.coef_
Вышесказанное дает мне прекрасный фрейм данных в формате (n_classes, n_features)
, но все классы и имена объектов исчезли. С функциями все в порядке, потому что предположение, что они индексируются так же, как я их передал, кажется безопасным...
Но с классами это проблема, так как я никогда явно не передавал в занятия в любом порядке. Итак, к какому классу принадлежат наборы коэффициентов (строки в фрейме данных) 0, 1, 2 и 3?
1 ответ:
Порядок будет таким же, как и возвращаемый
logit.classes_
(classes_-атрибут подогнанной модели, представляющий уникальные классы, присутствующие в y), и в основном они будут расположены в алфавитном порядке в случае строк.Чтобы объяснить это, мы вышеупомянутые метки y на случайном наборе данных с LogisticRegression:
Таким образом, в матрицеimport numpy as np from sklearn.linear_model import LogisticRegression X = np.random.rand(45,5) y = np.array(['GR3', 'GR4', 'SHH', 'GR3', 'GR4', 'SHH', 'GR4', 'SHH', 'GR4', 'WNT', 'GR3', 'GR4', 'GR3', 'SHH', 'SHH', 'GR3', 'GR4', 'SHH', 'GR4', 'GR3', 'SHH', 'GR3', 'SHH', 'GR4', 'SHH', 'GR3', 'GR4', 'GR4', 'SHH', 'GR4', 'SHH', 'GR4', 'GR3', 'GR3', 'WNT', 'SHH', 'GR4', 'SHH', 'SHH', 'GR3', 'WNT', 'GR3', 'GR4', 'GR3', 'SHH'], dtype=object) lr = LogisticRegression() lr.fit(X,y) # This is what you want lr.classes_ #Out: # array(['GR3', 'GR4', 'SHH', 'WNT'], dtype=object) lr.coef_ #Out: # array of shape [n_classes, n_features]
coef_
индекс 0 в строках представляет собой " GR3 "(первый класс в массивеclasses_
, 1 = " GR4 " и т. д.Надеюсь, это поможет.