[PYTHON] Créons une IA à trois voies avec Pylearn2 --Save and load model -

introduction

Cet article est une suite de "Faisons une IA à trois yeux avec Pylearn 2". Il contient des informations telles que le modèle MLP que vous utilisez et le format de la partition, nous vous recommandons donc de lire l'article précédent avant de lire cet article.

Dans l'article précédent

À l'avenir, sur la base des résultats d'une formation, j'essaierai de l'implémenter dans un jeu à trois yeux afin que je puisse facilement obtenir le prochain coup pour n'importe quelle entrée. Tout d'abord, je dois créer un programme de jeu d'affilée.

Puisqu'il était lié, je vais m'en rendre compte. Pour ce faire, nous avons dû enregistrer et charger le modèle entraîné. Je vais vous montrer comment faire cela et créer une troisième ligne dans wxPython. Les fichiers nécessaires tels que le code source sont publiés sur GitHub, veuillez donc les obtenir à partir de là.

Comment enregistrer et charger un modèle dans Pylearn 2

Une fois que je l'ai su, c'était facile.

from pylearn2.utils import serial
...
...
ann = mlp.MLP([h0,out], nvis=9)
path = "./hoge.pkl"

# save model
serial.save(path, ann, on_overwrite='backup')

# load model
ann = serial.load(path)

Vous pouvez sélectionner «ignorer» ou «sauvegarde» pour «sur réécriture».

À moins que vous n'ayez une raison spécifique, je pense que la «sauvegarde» est bien.

Trois yeux par wxPython

Environnement de contrôle de fonctionnement

Je pense que wxPython fonctionnera également avec 2.8. Cliquez ici pour la procédure d'installation de wxPython [http://qiita.com/kanlkan/items/5e6f2e63de406f46b3b1#wxpython%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3 Veuillez consulter% 83% 88% E3% 83% BC% E3% 83% AB) et ainsi de suite. L'installation de Pylearn 2 est une tâche difficile sous Windows, alors exécutez-le sous Linux. Sur Mac ... je suis désolé, je ne sais pas ...

Comment utiliser

tic-tac-toe.png

  1. Définissez les paramètres du modèle et enregistrez le modèle entraîné Définissez les paramètres du modèle dans le demi-panneau droit.
  1. Sélectionnez le mode de jeu
    1. Spécifiez le fichier de modèle à charger et Game Start
  1. Cliquez avec le bouton gauche de la souris pour placer 〇 ×. L'ordinateur le met automatiquement à partir du résultat d'apprentissage.

Une fois que vous avez enregistré le modèle, vous pouvez simplement le spécifier et jouer avec.

Points à apprécier

Veuillez regarder le comportement de l'IA en modifiant les paramètres tels que. Il est également recommandé de jouer au jeu tout en regardant le niveau de confiance (je l'appelle) de la main que l'ordinateur émet vers la console comme indiqué ci-dessous.

[ 0.1223754   0.07839377  0.1005455   0.09967972  0.0958171   0.05355689
  0.13877278  0.08772236  0.22313648]
[  1.69255291e-01   1.79474672e-01   6.59611187e-02   8.35728072e-02
   1.76704145e-01   5.69182580e-05   1.74977445e-01   1.48576416e-01
   1.42118607e-03]
[  3.94020768e-02   3.56583963e-03   9.39233627e-05   1.20089713e-01
   4.85647829e-01   2.05857441e-04   2.00150417e-01   1.50013023e-01
   8.31320404e-04]
[  3.55036488e-01   8.74969597e-03   2.24572898e-04   7.35919590e-04
   1.89100732e-02   3.48102279e-04   2.63566398e-01   3.48737495e-01
   3.69125555e-03]

Les neuf nombres entre [] font un total. Neuf nombres correspondent à neuf carrés. L'IA atteint la case avec la valeur la plus élevée parmi elles. Si vous considérez ce nombre comme une probabilité,

Lorsque vous touchez un carré étrange en toute confiance, c'est un peu adorable.

Essayez différentes choses et jouez avec.

référence

https://github.com/lisa-lab/pylearn2/blob/master/pylearn2/train.py http://fastml.com/how-to-get-predictions-from-pylearn2/ http://deeplearning.net/software/pylearn2/library/utils.html

Recommended Posts

Créons une IA à trois voies avec Pylearn2 --Save and load model -
Faisons une IA à trois yeux avec Pylearn 2
Créons un diagramme PRML avec Python, Numpy et matplotlib.
Créons un groupe gratuit avec Python
Créez une application graphique native avec Py2app et Tkinter
Essayez de créer un jeu simple avec Python 3 et iPhone
Créez un lot d'images et gonflez avec ImageDataGenerator
Créons une application Mac avec Tkinter et py2app
Créer une visionneuse de modèle 3D avec PyQt5 et PyQtGraph
[Linux] Créez un auto-certificat avec Docker et apache
Créez une caméra de surveillance WEB avec Raspberry Pi et OpenCV
Créons un script qui s'enregistre avec Ideone.com en Python.
Créez des applications, enregistrez des données et partagez-les avec un seul e-mail
Créez un script de déploiement avec fabric et cuisine et réutilisez-le
Créer une page d'accueil avec django
Créer et lister des modèles Django
Créer un répertoire avec python
Créez un lecteur vidéo avec PySimpleGUI + OpenCV 2 Ajoutez le paramètre ROI et la fonction d'enregistrement (DIVX, MJPG, GIF)
[AWS Hands-on] Créons un service d'identification des célébrités avec une architecture sans serveur!
Créez un fichier temporaire avec django sous forme de zip et renvoyez-le
Créez une illusion rayée avec correction gamma pour Python3 et openCV3
Spécifiez ou créez un dossier python, puis enregistrez la capture d'écran.
Créez un DMP privé sans coût initial ni développement avec BigQuery
J'ai essayé de créer des taureaux et des vaches avec un programme shell
Obtenez les conditions de simulation OCTA à partir d'un fichier et enregistrez avec les pandas
Créer et renvoyer un fichier CSV CP932 pour Excel avec Chalice
Enregistrer et charger des données avec joblib, pickle
Faisons une interface graphique avec python.
HTTPS avec Django et Let's Encrypt
Faisons une rupture de bloc avec wxPython
Créez un environnement virtuel avec Python!
Faisons l'IA d'Othello avec Chainer-Part 1-
Enregistrer et récupérer des fichiers avec Pepper
Faisons un graphe avec python! !!
Faisons un spacon avec xCAT
Faisons l'IA d'Othello avec Chainer-Part 2-
Créez un stepper de poisson avec numpy.random
Créer un téléchargeur de fichiers avec Django
[AWS] Créez un environnement Python Lambda avec CodeStar et faites Hello World
Créons une fonction de chat avec Vue.js + AWS Lambda + dynamo DB [Paramètres AWS]
Créer une pile avec une file d'attente et une file d'attente avec une pile (à partir de LetCode / Implémenter la pile à l'aide de files d'attente, Implémenter la file d'attente à l'aide de piles)
Créer une application Todo avec Django ④ Implémenter la fonction de création de dossier et de tâche
Créez un environnement Python 3 avec pyenv sur Mac et affichez des graphiques Network X
Créez un arbre de décision à partir de 0 avec Python et comprenez-le (5. Entropie des informations)