[PYTHON] Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 1

introduction

Soudainement, "Deep Learning from scratch - the Theory and Implementation of Deep Learning Learn with Python" et "Deep Learning from scratch" (" 2) --- Traitement du langage naturel ".

Cependant, je suis très inquiet de savoir si cela va continuer parce que je n'ai pas assez de temps. Cependant, quand j'ai fini "Language processing 100 knocks 2015" il y a quelques années, [Amateur language processing J'ai continué à publier sur Qiita en tant que 100 coups, et grâce aux goûts et aux commentaires de tout le monde, j'ai pu le terminer, donc cette fois aussi Qiita J'ai décidé d'aider.

Cette fois, je noterai ce sur quoi je suis tombé dans ce livre, chapitre par chapitre. Si vous avez des erreurs, je vous serais reconnaissant de bien les signaler de la même manière que lorsque 100 coups sur le traitement du langage amateur.

(Vers d'autres chapitres de ce mémo: Chapitre 1 / Chapitre 2 / Chapitre 3 / Chapitre 4 / Chapitre 5 / [Chapitre 6](https: / /qiita.com/segavvy/items/ca4ac4c9ee1a126bff41) / Chapitre 7 / Chapitre 8 / Résumé)

Mon environnement

Cette fois, nous allons procéder avec macOS Mojave.

L'environnement d'exploitation réel est une machine virtuelle sous la forme de Mac sur Mac. Si le matériel est un Mac, je l'utiliserais normalement tel quel, mais compte tenu des essais et des erreurs lors de la création d'un environnement de développement, la machine virtuelle est plus pratique car elle peut créer des branches et revenir avec des instantanés.

Voici les détails de l'environnement.

article environnement
dur Mac mini(Late 2012)
OS hôte macOS Mojave version 10.14.6
Infrastructure de virtualisation Parallels Desktop 15 pour Mac Pro Edition version 15.0.0 (46967)
OS invité macOS Mojave version 10.14.6

La construction de cette machine virtuelle est résumée dans Créer une machine virtuelle macOS avec Parallels Desktop (https://qiita.com/segavvy/items/306bd6574a42c35d860c).

Chapitre 1 Introduction à Python

Le chapitre 1 est une introduction à Python. Je faisais 100 coups sur le traitement du langage en Python, donc ce chapitre ressemble à une revue de Python. ..

1.1 Qu'est-ce que Python?

L'explication est que Python est bon.

1.2 Installation de Python

J'ai installé Anaconda selon le livre. Je n'avais pas d'obstacles particuliers, mais le livre ne mentionne qu'environ 3 lignes sur l'installation, je vais donc résumer brièvement la procédure.

Tout d'abord, «Télécharger» à partir du site Anaconda (https://www.anaconda.com/distribution) répertorié dans le livre. Malheureusement, il est en anglais. スクリーンショット 2019-10-27 12.44.16.png

Il vous sera demandé la version Python, donc "Download" 3.7, qui est la 3ème série, selon le livre. スクリーンショット 2019-10-27 12.45.15.png

Exécutez le programme d'installation téléchargé pour l'installer. C'était en japonais. スクリーンショット 2019-10-27 12.47.26.png On m'a demandé où l'installer en cours de route, j'ai donc choisi «Installer moi-même». Si vous ne partagez pas votre Mac avec d'autres, c'est très bien. スクリーンショット 2019-10-27 12.47.57.png スクリーンショット 2019-10-27 12.48.07.png Après cela, vous pouvez l'installer si vous procédez normalement.

1.3 Interpréteur Python

Vérifiez la version dans le terminal et exécutez l'interpréteur. スクリーンショット 2019-11-02 12.17.35.png Il semble qu'il a été installé correctement. À propos, la version Python était la 3.7.4.

1.4 Fichier de script Python

Si vous utilisez l'édition de texte standard de macOS comme éditeur de texte, définissez le format sur le texte standard. Sinon, vous ne pourrez pas enregistrer avec l'extension .py. スクリーンショット 2019-11-02 21.40.05.png Vous pouvez laisser "Codage de texte standard" comme "Unicode (UTF-8)" lors de l'enregistrement. スクリーンショット 2019-11-02 21.50.42.png Exécutez cd à l'emplacement que vous avez enregistré dans le terminal. スクリーンショット 2019-11-02 22.00.17.png Bonnes vibrations! Il ne semble y avoir aucun problème dans la gestion du japonais.

(Déraillement) Préparation de Visual Studio Code

L'édition de texte n'est pas vraiment bonne pour le codage, j'ai donc décidé d'utiliser Visual Studio Code. Vous pouvez trouver beaucoup d'installation et d'utilisation par Google, donc je ne résumerai ici que le flux d'introduction.

  1. Tout d'abord, installez Visual Studio Code. Comme je l'ai mentionné plus tôt, sous la forme de Mac sur Mac, lorsque je l'ai installé normalement, je suis resté coincé autour de l'écran, donc [Utiliser Visual Studio Code dans la machine virtuelle macOS de Parallels Desktop pour le moment](https://qiita.com / segavvy / items / 802aa24d6893ef3b174c) a été résumé.

  2. Ajoutez «l'extension Python pour Visual Studio Code» distribuée par Microsoft pour une utilisation pratique dans Python. @ tkdrecord's J'ai essayé de développer Python avec Visual Studio Code sur Mac est utile. スクリーンショット 2019-11-23 20.25.23.png

  3. Ajoutez le "Japanese Language Pack for Visual Studio Code" distribué par Microsoft pour le rendre japonais. @ ntkgcj's Visual Studio Code [vsCode] Japanese localization vous sera utile. スクリーンショット 2019-11-23 20.31.57.png

  4. Ajoutez flake8 en tant que Linter pour l'analyse statique de votre code. Vous pouvez vous référer à @ firedfly's Comfortably follow VS Code coding standards. スクリーンショット 2019-11-24 23.32.36.png

  5. Ajoutez autopep8 en tant que formateur qui formate le code. Ceci est également utile pour @ firedfly's Suivez confortablement les conventions de codage VS Code. スクリーンショット 2019-11-24 23.35.12.png

  6. Ajoutez autoDocstring pour faciliter l'écriture de docstrings telles que des descriptions de fonctions. Ceci est également utile pour @ firedfly's Suivez confortablement les conventions de codage VS Code. スクリーンショット 2019-11-24 23.37.05.png

  7. Un message apparaîtra dans le coin inférieur droit au démarrage. スクリーンショット 2019-12-03 9.23.42.png Lors de l'utilisation du terminal intégré dans l'environnement de conda (inclus dans Anaconda), il est préférable de le définir de sorte que le paramètre d'environnement de Visual Studio Code ne soit pas hérité. Voulez-vous modifier les paramètres? Il semble que cela signifie cela, alors disons "Oui".

Vous pouvez maintenant écrire votre code dans Visual Studio Code et l'exécuter facilement avec le bouton triangle vert dans le coin supérieur droit. スクリーンショット 2019-12-03 9.35.10.png Bonnes vibrations!

1.5 NumPy NumPy est inclus dans Anaconda, vous pouvez donc l'utiliser tel quel. スクリーンショット 2019-11-02 22.09.38.png

1.6 Matplotlib Matplotlib est également inclus dans Anaconda, vous pouvez donc l'utiliser tel quel. スクリーンショット 2019-11-02 22.27.56.png L'image lena.png utilisée dans le livre est publiée dans le référentiel GitHub d'O'Reilly Japan avec d'autres sources apparaissant dans ce livre, alors saisissez cette occasion pour la télécharger en une seule fois ( Clonons).

Tout d'abord, le référentiel GitHub de ce livre (https://github.com/oreilly-japan/deep-learning-from-scratch ). スクリーンショット 2019-11-02 22.41.48.png Ici, sélectionnez "Cloner ou télécharger" puis "Télécharger le ZIP". スクリーンショット 2019-11-02 22.42.10.png Il y a lena.png dans le dossier dataset de celui téléchargé, vous pouvez donc l'afficher en écrivant le code pour pointer vers le chemin de ce fichier selon le livre. スクリーンショット 2019-11-02 22.50.41.png Au fait, qui est cette femme? Pour ceux qui disent, [Lena (données d'image)] sur Wikipedia (https://ja.wikipedia.org/wiki/%E3%83%AC%E3%83%8A_(%E7%94%BB%E5%83%8F) Veuillez expliquer% E3% 83% 87% E3% 83% BC% E3% 82% BF)).

1.7 Résumé

Comme vous pouvez le voir dans le livre, ce chapitre est le strict minimum de Python, NumPy et Matplotlib. Je l'avais déjà touché avec Knock 100 language processing, donc c'était un bon sentiment de revoir, mais si vous n'êtes pas satisfait du livre Je pense qu'il serait bon d'étudier avec les livres de référence présentés.

C'est tout pour ce chapitre. Si vous avez des erreurs, je vous serais reconnaissant de bien vouloir les signaler. (Vers d'autres chapitres de ce mémo: Chapitre 1 / Chapitre 2 / Chapitre 3 / Chapitre 4 / Chapitre 5 / [Chapitre 6](https: / /qiita.com/segavvy/items/ca4ac4c9ee1a126bff41) / Chapitre 7 / Chapitre 8 / Résumé)

Recommended Posts

Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 1
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 3
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 7
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 5
Un amateur a trébuché dans le Deep Learning à partir de zéro.
Un amateur a trébuché dans le Deep Learning à partir de zéro Note: Chapitre 2
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 5
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 2
Un amateur a trébuché dans le Deep Learning ❷ fait de zéro Note: Chapitre 1
Un amateur a trébuché dans le Deep Learning ❷ fait à partir de zéro Note: Chapitre 4
[Mémo d'apprentissage] Le Deep Learning fait de zéro [Chapitre 7]
Deep learning / Deep learning made from scratch Chapitre 6 Mémo
[Mémo d'apprentissage] Deep Learning fait de zéro [Chapitre 5]
[Mémo d'apprentissage] Le Deep Learning fait de zéro [Chapitre 6]
"Deep Learning from scratch" avec Haskell (inachevé)
Deep learning / Deep learning made from scratch Chapitre 7 Mémo
[Mémo d'apprentissage] Deep Learning fait de zéro [~ Chapitre 4]
Apprentissage profond à partir de zéro
Deep Learning from scratch ① Chapitre 6 "Techniques liées à l'apprentissage"
Deep Learning from scratch Chapter 2 Perceptron (lecture du mémo)
Apprentissage profond à partir de zéro 1 à 3 chapitres
Deep learning / Deep learning from scratch 2 Chapitre 4 Mémo
Deep learning / Deep learning made from scratch Chapitre 3 Mémo
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 5 Mémo
Créez un environnement pour "Deep Learning from scratch" avec Docker
Apprentissage profond à partir de zéro (calcul des coûts)
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 7 Mémo
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 8 Mémo
Deep learning / Deep learning made from scratch Chapitre 5 Mémo
Deep learning / Deep learning made from scratch Chapitre 4 Mémo
Deep learning / Deep learning from scratch 2 Chapitre 3 Mémo
Mémo d'apprentissage profond créé à partir de zéro
Deep Learning / Deep Learning à partir de Zero 2 Chapitre 6 Mémo
[Deep Learning from scratch] J'ai essayé d'expliquer la confirmation du gradient d'une manière facile à comprendre.
"Deep Learning from scratch" Mémo d'auto-apprentissage (n ° 14) Exécutez le programme du chapitre 4 sur Google Colaboratory
Mémo d'auto-apprentissage "Deep Learning from scratch" (partie 8) J'ai dessiné le graphique du chapitre 6 avec matplotlib
Pourquoi ModuleNotFoundError: Aucun module nommé'dataset.mnist 'n'apparaît dans "Deep Learning from scratch".
Écrivez vos impressions sur l'édition du framework Deep Learning 3 créée à partir de zéro
Apprentissage profond à partir de zéro (propagation vers l'avant)
Apprentissage profond / Apprentissage profond à partir de zéro 2-Essayez de déplacer GRU
[Windows 10] Construction de l'environnement "Deep Learning from scratch"
Enregistrement d'apprentissage de la lecture "Deep Learning from scratch"
[Deep Learning from scratch] À propos de l'optimisation des hyper paramètres
Mémo d'auto-apprentissage "Deep Learning from scratch" (partie 12) Deep learning
Python vs Ruby «Deep Learning from scratch» Chapitre 2 Circuit logique par Perceptron
Python vs Ruby "Deep Learning from scratch" Chapitre 4 Implémentation de la fonction de perte
Mémo d'auto-apprentissage "Deep Learning from scratch" (glossaire illisible)
"Deep Learning from scratch" Mémo d'auto-apprentissage (n ° 9) Classe MultiLayerNet
Un amateur a essayé le Deep Learning avec Caffe (Introduction)
GitHub du bon livre "Deep Learning from scratch"
Un amateur a essayé le Deep Learning en utilisant Caffe (Practice)
[Mémo d'apprentissage] Apprentissage profond à partir de zéro ~ Mise en œuvre de l'abandon ~
Un amateur a essayé le Deep Learning avec Caffe (Vue d'ensemble)
Résumé Python vs Ruby "Deep Learning from scratch"
Mémo d'auto-apprentissage «Deep Learning from scratch» (10) Classe MultiLayerNet
Mémo d'auto-apprentissage «Deep Learning from scratch» (n ° 11) CNN
Python vs Ruby "Deep Learning from scratch" Chapitre 3 Implémentation d'un réseau neuronal à 3 couches
[Python] [Traitement du langage naturel] J'ai essayé le Deep Learning ❷ fait de toutes pièces en japonais ①
Deep Learning from scratch La théorie et la mise en œuvre de l'apprentissage profond appris avec Python Chapitre 3