Bonjour!
Je fais du clustering avec divers algos, je sélectionne celui qui me semble le plus intéressant pour mon problème, et je voudrais stocker le modèle obtenu dans une base de données, pour ne pas avoir à le recalculer à chaque fois que je veux faire de la reconnaissance.
Mon problème, c'est que je n'arrive pas à trouver comment récupérer les caractéristiques permettant de définir le modèle obtenu (la définition des classes, essentiellement)
Supposons que je choisisse l'algo des K-means (K=5), je fais ça:
A l'issue de km.fit(df), mon modèle est constitué. Et c'est là que je voudrais stocker toutes les informations qui me permettraient par la suite de simplement interroger la base de données pour pouvoir récupérer mon modèle complet déjà calculé et pouvoir faire des prédictions dessus, quand j'en aurai besoin (plus tard donc).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 from sklearn.cluster import KMeans km = KMeans(n_clusters=5, random_state=0) km.fit(df)
J'ai cherché, mais get_params([Profond]) ne correspond pas à ce que je veux, parce que la méthode me permet de récupérer les paramètres de l'estimateur, et non du modèle en lui-même.
J'ai essayé avec joblib:
et aussi pickle:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 from sklearn import datasets import joblib joblib.dump(km3, 'model.joblib')
Mais dans les deux cas, le fichier exporté n'est pas "UTF-8 encoded" et je n'arrive pas à le lire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 import pickle with open('model.pkl', 'wb') as model_file: pickle.dump(km3, model_file)
J'espère avoir été bien claire
Merci d'avance pour votre aide et vos éclaircissements!
Partager