Dans l'article précédent , j'ai abordé un simple programme d'apprentissage automatique. De très petites données comme l'article précédent ne sont pas réellement utilisées. L'apprentissage automatique a essentiellement l'avantage d'avoir beaucoup de données, il en résulte généralement des données très volumineuses. Bien sûr, si vous avez beaucoup de données, cela prendra beaucoup de temps à apprendre. Vous pourriez être surpris si vous ne le savez pas, mais il est naturel de quitter le PC pendant une semaine pour apprendre. Il n'y a pas de sens pratique à faire un apprentissage aussi long à chaque exécution du programme. Par conséquent, vous pouvez gagner du temps en enregistrant les résultats d'entraînement en tant que modèle et en les exécutant dans le programme réel à l'aide de ce modèle. Cette fois, je voudrais créer un "programme de sauvegarde" et un "programme de prédiction utilisant un modèle".
Si vous ne savez pas ce que vous faites, consultez l ' article précédent .
python 3.8.5 scikit-learn 0.231
Une partie du code utilisé dans l'article précédent est utilisée.
save_model.py
import numpy as np
from sklearn import svm
import pickle
#Lire le fichier csv
npArray = np.loadtxt("data.csv", delimiter = ",", dtype = "float")
#Stockage des variables explicatives
x = npArray[:, 0:4]
#Stockage de la variable objective
y = npArray[:, 4:5].ravel()
#Sélectionnez SVM comme méthode d'apprentissage
clf = svm.SVC()
#Apprentissage
clf.fit(x,y)
#Enregistrer le modèle de formation
with open('model.pickle', mode='wb') as f:
pickle.dump(clf,f,protocol=2)
open_model.py
import pickle
#Modèle ouvert
with open('model.pickle', mode='rb') as f:
clf = pickle.load(f)
#Données d'évaluation
weather = [[9,0,7.9,6.5]]
#Prédiction à l'aide d'un modèle
ans = clf.predict(weather)
if ans == 0:
print("Il fait beau")
if ans == 1:
print("Le ciel est nuageux")
if ans == 2:
print("C'est la pluie")
$ python3 open_model.py
Il fait beau
Je vous remercie pour votre travail acharné. En sauvegardant le modèle formé de cette manière, il devient possible d'évaluer et de prédire les données sans entraîner chaque exécution. Actuellement, l'IA, qui est dite dans le monde, est créée et exploitée comme un ensemble de «programme» + «données d'apprentissage». En regardant le modèle d'apprentissage créé à partir des données collectées, c'est un plaisir différent de créer un programme à grande échelle. À la prochaine.
Recommended Posts