Lors de l'étude ou de l'enseignement de l'apprentissage automatique basé sur le Tutoriel PyData.Tokyo # 1, de la division des données de formation, J'ai du mal à comprendre les parties d'apprentissage, de prédiction et de vérification. Je vais expliquer cette partie.
pydatatokyo_tutorial_ml.ipynb
dans PyData.Tokyo Tutorial # 1 pour le code détaillé.Matrice de caractéristiques «X»
Données d'étiquette de classe y
Si vous procédez comme suit, vous pouvez diviser les données.
from sklearn.model_selection import train_test_split
X_train, X_val, y_train, y_val = train_test_split(X, y, train_size=0.8, random_state=1)
--X_train: matrice de fonctionnalités pour l'apprentissage (80%) --X_val: matrice des caractéristiques d'évaluation (20%) --y_train: étiquette de classe d'entraînement (80%) Données inconnues --y_val: étiquette de classe d'évaluation (20%) Utilisé pour répondre à des données inconnues (le garder caché)
from sklearn.linear_model import LogisticRegression
clf = LogisticRegression()
Initialisez clf et utilisez-le pour l'apprentissage, la prédiction et la vérification suivants.
clf.fit(X_train, y_train)
Entraînez-vous à l'aide de la méthode d'ajustement CLF initialisée Les données donnent à 80% des données d'entraînement une matrice de caractéristiques et une étiquette de classe
y_train_pred = clf.predict(X_train)
y_val_pred = clf.predict(X_val)
Prédire avec la méthode de prédiction de clf.
--y_train_pred
: résultat de la re-prédiction avec les données d'entraînement
--y_val_pred
: résultat de la prédiction utilisant les données d'évaluation
Jusqu'à présent, je n'ai pas utilisé y_val
. Autrement dit, y_train
est traité comme des données inconnues
from sklearn.metrics import accuracy_score
train_score = accuracy_score(y_train, y_train_pred)
val_score = accuracy_score(y_val, y_val_pred)
ʻAccuracy_score est donné
les données d'étiquette de classeet
le résultat de prédiction ci-dessus`, et le taux de réponse correct est affiché.
--train_score: résultat de la prédiction à l'aide des données d'entraînement --val_score: à la suite d'une prédiction utilisant des données d'évaluation, cela signifie qu'une prédiction a été faite à l'aide de données inconnues.
Recommended Posts