Am prezis cu adevărat sentimentul?

Analiza sentimentelor în Python

Violeta Misheva

Data Scientist

Împărțire antrenament/testare

numărul total de observații împărțit în seturi de antrenament și testare, unde setul de antrenament este blocul mai mare

  • Set de antrenament: utilizat pentru a antrena modelul (70-80% din date)
  • Set de testare: utilizat pentru a evalua performanța modelului
Analiza sentimentelor în Python

Antrenament/testare în Python

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=123, stratify=y)
  • X : caracteristici
  • y : etichete
  • test_size: proporția datelor utilizate la testare
  • random_state: generator de seed pentru împărțire
  • stratify: proporția claselor din eșantion va fi aceeași cu proporția valorilor furnizate acestui parametru
Analiza sentimentelor în Python

Regresie logistică cu împărțire antrenament/testare

log_reg = LogisticRegression().fit(X_train, y_train)
print('Accuracy on training data: ', log_reg.score(X_train, y_train))
0.76
print('Accuracy on testing data: ', log_reg.score(X_test, y_test))
0.73
Analiza sentimentelor în Python

Scor de acuratețe cu împărțire antrenament/testare

from sklearn.metrics import accuracy_score
log_reg = LogisticRegression().fit(X_train, y_train)
y_predicted = log_reg.predict(X_test)
print('Accuracy score on test data: ', accuracy_score(y_test, y_predicted))
0.73
Analiza sentimentelor în Python

Matricea de confuzie

un exemplu de matrice de confuzie pentru o problemă de clasificare binară

Analiza sentimentelor în Python

Matricea de confuzie în Python

from sklearn.metrics import confusion_matrix
log_reg = LogisticRegression().fit(X_train, y_train)
y_predicted = log_reg.predict(X_test)
print(confusion_matrix(y_test, y_predicted)/len(y_test))
[[0.3788 0.1224]
 [0.1352 0.3636]]
Analiza sentimentelor în Python

Să exersăm!

Analiza sentimentelor în Python

Preparing Video For Download...