One Vs RestClassifier logisti c регрессия в python sklearn - PullRequest
0 голосов
/ 31 марта 2020

Я использую код с этой страницы . Модель ниже работает и обеспечивает точность спуска. Мои вопросы:

1) если мои данные не сбалансированы и имеют 7 возможных значений y (Y может иметь только 1 из этих значений), я должен предоставить весовые коэффициенты класса? как? Я в замешательстве, потому что это один из классификаторов отдыха и не знаю, как вводить веса классов, поскольку только 2 оператора (lr = LogisticRegression() clf = OneVsRestClassifier(lr) ) создают все 7 моделей.

2) Если я уравновешиваю свои тренировочные данные xtrain_tfidf, используя повышенную выборку или понижающую выборку, должен ли я по-прежнему использовать веса классов?

3) как могут быть вероятности каждого класса y для каждого наблюдения? Я ищу что-то похожее на predict метод Кераса - нашел ответ. clf.predict_proba(xtest_tfidf) предоставляет вероятности

from sklearn.linear_model import LogisticRegression

# Binary Relevance
from sklearn.multiclass import OneVsRestClassifier

# Performance metric
from sklearn.metrics import f1_score

lr = LogisticRegression()
clf = OneVsRestClassifier(lr)

# fit model on train data
clf.fit(xtrain_tfidf, y_train)

# make predictions for validation set
y_test_categorical_pred = clf.predict(xtest_tfidf)

print (len(y_test))
print (len(y_test_categorical_pred))

from sklearn.metrics import confusion_matrix
print (confusion_matrix((y_test),y_test_categorical_pred))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...