2017-10-05 1 views
4

Je travaille sur une application de bureau python. Cette application fait des prédictions. En ce moment, j'entraîne mon modèle sklearn en utilisant le script python, enregistrez les paramètres du modèle en tant que dictionnaire dans un fichier yaml. Ensuite, je construis dans ce yaml dans mon application python. Ensuite, lorsque j'utilise l'application, le modèle est recréé en utilisant les paramètres du dictionnaire. J'ai réalisé que les gens qui ont une version différente de sklearn ont une erreur. J'ai essayé de sauvegarder mon modèle dans un fichier pickle, mais dans ce cas, il a produit un avertissement lorsque l'application fonctionnait sur une machine avec une version différente de sklearn.Quelle est la meilleure façon de sauvegarder le modèle sklearn?

Répondre

4

Il n'existe aucune garantie qu'un modèle sklearn donné soit compatible entre les versions de sklearn. En effet, l'implémentation ou l'API interne peut changer entre les versions. Voir plus d'informations here.

Si vous considérez une version, le meilleur moyen est en effet de pickle, et de ne pas enregistrer les paramètres dans un fichier yaml. Il est même préférable d'utiliser joblib pour le faire. Voir plus d'informations here.

4

J'ai réalisé que les personnes ayant une version différente de sklearn ont une erreur. Dans ce cas

, créer des environnements isolés Python en utilisant virtualenvs