Regresia logistică: revizuită

Analiza sentimentelor în Python

Violeta Misheva

Data Scientist

Modele complexe și regularizare

Modele complexe:

  • Model complex care captează zgomotul din date (supraajustare)
  • Număr mare de caracteristici sau parametri

Regularizare:

  • O metodă de simplificare pentru a obține un model mai puțin complex
Analiza sentimentelor în Python

Regularizare în regresia logistică

from sklearn.linear_model import LogisticRegression
# Regularization arguments
LogisticRegression(penalty='l2', C=1.0)
  • L2: reduce toți coeficienții spre zero
  • Valori mari ale C: penalizare mică, modelul se potrivește bine pe datele de antrenament.
  • Valori mici ale C: penalizare mare, model mai puțin flexibil.
Analiza sentimentelor în Python

Predicția unei probabilități vs. predicția unei clase

log_reg = LogisticRegression().fit(X_train, y_train)
# Predict labels 
y_predicted = log_reg.predict(X_test)
# Predict probability
y_probab = log_reg.predict_proba(X_test)
Analiza sentimentelor în Python

Predicția unei probabilități vs. predicția unei clase

y_probab
array([[0.5002245, 0.4997755],
       [0.4900345, 0.5099655],
        ...,
       [0.7040499, 0.2959501]])
# Select the probabilities of class 1
y_probab = log_reg.predict_proba(X_test)[:, 1]
array([0.4997755, 0.5099655 ..., 0.2959501]])
Analiza sentimentelor în Python

Metrici ale modelului cu probabilități prezise

  • Generează ValueError când este aplicat cu probabilități.
  • Scorul de acuratețe și matricea de confuzie funcționează cu clase.
# Default probability encoding:
# If probability >= 0.5, then class 1 Else class 0
Analiza sentimentelor în Python

Să exersăm!

Analiza sentimentelor în Python

Preparing Video For Download...