Я пытаюсь сделать оценку между двумя файлами. Оба имеют одинаковые данные, но не одну и ту же метку. Метки из данных поезда являются исправленными, а метки из данных испытаний не обязательно ... и я хотел бы знать точность, отзыв и f-оценка.
import pandas
import numpy as np
import pandas as pd
from sklearn import metrics
from sklearn import cross_validation
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import precision_recall_fscore_support as score
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics import precision_score, recall_score, confusion_matrix, classification_report, accuracy_score, f1_score
df_train = pd.read_csv('train.csv', sep = ',')
df_test = pd.read_csv('teste.csv', sep = ',')
vec_train = TfidfVectorizer()
X_train = vec_train.fit_transform(df_train['text'])
y_train = df_train['label']
vec_test = TfidfVectorizer()
X_test = vec_test.fit_transform(df_train['text'])
y_test = df_test['label']
clf = LogisticRegression(penalty='l2', multi_class = 'multinomial',solver ='newton-cg')
y_pred = clf.predict(X_test)
print ("Accuracy on training set:")
print (clf.score(X_train, y_train))
print ("Accuracy on testing set:")
print (clf.score(X_test, y_test))
print ("Classification Report:")
print (metrics.classification_report(y_test, y_pred))
Глупый пример данных:
TRAIN
text,label
dogs are cool,animal
flowers are beautifil,plants
pen is mine,objet
beyonce is an artist,person
TEST
text,label
dogs are cool,objet
flowers are beautifil,plants
pen is mine,person
beyonce is an artist,animal
Ошибка:
Traceback (последний вызов был последним):
Файл "precision.py", строка 30, в
y_pred = clf.predict (X_test)
Файл "/usr/lib/python3/dist-packages/sklearn/linear_model/base.py", строка 324, в прогнозе
очки = self.decision_function (X)
Файл "/usr/lib/python3/dist-packages/sklearn/linear_model/base.py", строка 298, в решении_функции
"still"% {'name': type (self). name })
sklearn.exceptions.NotFittedError: Этот экземпляр LogisticRegression еще не установлен
Я просто хотел вычислить точность теста