[PYTHON] Enregistrez le modèle pystan et les résultats dans un fichier pickle

Que faire dans cet article

--Enregistrer le modèle et le résultat créés à l'aide de pystan comme un fichier pickle

Conclusion

python


#l'écriture
with open('model.pkl', 'wb') as f:
     pickle.dump(stm, f)
with open('fit.pkl', 'wb') as g:
     pickle.dump(fit, g)
  
#Lis
stm = pickle.load(open(DATA_DIR + 'model_ForS.pkl', 'rb'))
fit = pickle.load(open(DATA_DIR + 'fit_ForS.pkl', 'rb'))

Le problème que vous souhaitez résoudre

La modélisation statistique bayésienne par pystan est pratique, mais elle nécessite beaucoup de méthode de calcul. Cela dépend de l'article, mais la plupart d'entre eux prennent environ une heure. De plus, il arrive souvent que le calcul n'ait pas convergé.

Tant de gens veulent enregistrer le résultat calculé. Cela peut être écrit dans un livre de tutoriel, mais je pense que beaucoup de gens disent que ** les livres de Rstan sont tellement nombreux qu'ils ne savent pas comment sauver python **.

Donc dans cet article

Solution

Supposons que vous compiliez et échantillonniez avec pystan comme suit: Ici, le modèle est stocké dans stm et le résultat de l'échantillonnage est stocké dans fit.

python


model = """
data{
...
}

parameters{
...
}

model{
...
}
"""
stm = pystan.StanModel(model_code=model) #compiler
stan_data = {...}
fit = stm.sampling(data=stan_data) #échantillonnage

À ce stade, vous pouvez enregistrer et écrire en écrivant comme suit. C'était facile. Même si seul le résultat est enregistré, il ne peut pas être lu. Vous devez enregistrer le modèle avec. Je ne connais pas les détails, mais il semble que le résultat de l'échantillonnage soit lié au modèle.

python


#l'écriture
with open('model.pkl', 'wb') as f:
     pickle.dump(stm, f)
with open('fit.pkl', 'wb') as g:
     pickle.dump(fit, g)
  
#Lis
stm = pickle.load(open(DATA_DIR + 'model_ForS.pkl', 'rb'))
fit = pickle.load(open(DATA_DIR + 'fit_ForS.pkl', 'rb'))

Recommended Posts

Enregistrez le modèle pystan et les résultats dans un fichier pickle
Enregistrer l'objet dans un fichier avec pickle
Enregistrez le fichier binaire en Python
Enregistrer les fichiers au format YAML avec PyYAML
Traitez le résultat de l'exécution de Splunk en utilisant Python et enregistrez-le dans un fichier
Enregistrez le fichier d'authentification Pydrive dans un répertoire différent du script
Remplacez le nom du répertoire et le nom du fichier dans le répertoire par une commande Linux.
12. Enregistrez la première colonne dans col1.txt et la deuxième colonne dans col2.txt
Créer en Python sans fichier image factice dans Django et tester le téléchargement de l'image
Enregistrez les conditions de paramétrage sous forme de fichier CSV à l'aide de UDF Manager avec OCTA
Créez une API REST à l'aide du modèle appris dans Lobe et TensorFlow Serving.
Comment enregistrer les informations de point caractéristique de l'image dans un fichier et l'utiliser pour la mise en correspondance
Obtenir le nom de fichier dans un dossier à l'aide de glob
Lisez le fichier csv et affichez-le dans le navigateur
Sélectionnez les variables requises dans TensorFlow et enregistrez / restaurez
Sortie d'un vidage binaire en binaire et retour dans un fichier binaire
Extrayez les informations de paroles dans le fichier MP3 / MP4 et enregistrez-les dans le fichier de paroles (* .lrc) pour Sony Walkman.
[Python] Vous pouvez enregistrer un objet dans un fichier en utilisant le module pickle.
[Mac] Un moyen très simple d'exécuter des commandes système en Python et de générer les résultats
[Sublime Text 2] Toujours exécuter un fichier spécifique dans le projet
Changer la destination de sortie standard en un fichier en Python
Obtenez le type MIME en Python et déterminez le format de fichier
Lire et écrire des fichiers
[Note] Importation de fichiers dans le répertoire parent en Python
Analysez l'API Researchmap avec Python et créez automatiquement un fichier Word pour la liste des succès
Écrire et lire des fichiers
[TF] Comment charger / enregistrer le modèle et le paramètre dans Keras
Paramètres d'exécution d'un test à chaque fois que vous enregistrez un fichier dans l'éditeur à l'aide de watchmedo (chien de garde)
Apprenez le flux de l'estimation bayésienne et comment utiliser Pystan grâce à un modèle de régression simple
[PyTorch] Vérifiez si le modèle et l'ensemble de données sont en mode cuda
Recherchez le nom du fichier, y compris le mot et l'extension spécifiés dans le répertoire
Quoi qu'il en soit, le journal de communication série le plus rapide est laissé dans le fichier
Spécifiez ou créez un dossier python, puis enregistrez la capture d'écran.
Lisez le fichier en Python avec un chemin relatif depuis le programme
[Python3] Enregistrez la matrice de moyenne et de covariance dans json avec les pandas
Creusez le répertoire et créez une liste de chemins de répertoire + noms de fichiers
Obtenez la formule dans le fichier Excel sous forme de chaîne en Python
Obtenez les conditions de simulation OCTA à partir d'un fichier et enregistrez avec les pandas
Formatez le journal Git et obtenez le nom du fichier validé au format csv
Compter des chaînes spécifiques dans un fichier
Exécutez Pylint et lisez les résultats
Enregistrer une variable spécifique dans tensorflow.session
Créer un fichier binaire en Python
L'histoire du "trou" dans le fichier
Vérifier s'il y a un symbole spécifique dans le fichier exécutable et ses bibliothèques dépendantes (version simplifiée)
Un mémo organisé en renommant les noms de fichiers dans le dossier avec python
Comment spécifier un fichier .ui dans la boîte de dialogue / interface graphique du widget dans PySide
Mettez le résultat du chat entre guillemets et mettez-le dans une variable
Celui qui divise le fichier csv, le lit et le traite en parallèle
Afficher le chemin complet (chemin absolu) d'un fichier dans un répertoire sous Linux Bash
Le nom du fichier était mauvais en Python et j'étais accro à l'importation
Déployer et utiliser le modèle de prédiction créé en Python sur SQL Server
Recevez une liste des résultats du traitement parallèle en Python avec starmap
Ouvrez un fichier Excel en Python et coloriez la carte du Japon
Démarrez la webcam, prenez une image fixe et enregistrez-la localement