Créer un environnement de développement d'applications d'apprentissage automatique avec Python

J'expliquerai la procédure pour introduire l'environnement de développement d'une application d'apprentissage automatique avec Python, en particulier Numpy / Scipy / scikit-learn. L'environnement est supposé être basé sur Python3.

Base Miniconda (recommandée)

Étant donné que de nombreux paquets d'apprentissage automatique sont difficiles à compiler, il est recommandé de créer un environnement avec conda (Miniconda) où vous pouvez installer des binaires compilés. Faire.

Tout d'abord, nous allons créer un environnement de base tel que Python lui-même (en supposant Python 3), pip qui est un outil de gestion de paquet, et virtualenv qui crée un environnement virtuel.

Mac/Linux Utilisez pyenv pour l'installer séparément du Python par défaut.

# confirm installation
pyenv --version

# show python environments list
pyenv install -l

# install newest miniconda
pyenv install miniconda3-x.x.x

# refresh pyenv
pyenv rehash

# activate installed python environment globally
pyenv global miniconda3-x.x.x

Si vous voulez changer le Python utilisé dans chaque projet, vous pouvez le définir avec pyenv local x.x.x. Vous aurez besoin de pyenv rehash après avoir installé le nouvel environnement Python avec pyenv (voir ici). Veuillez noter qu'il est facile de l'oublier.

Après avoir installé Miniconda, utilisez conda pour créer l'environnement virtuel ml_env pour l'apprentissage automatique (quel que soit son nom).

conda create -n ml_env numpy scipy scikit-learn matplotlib cython jupyter

Une fois créé, activons cet environnement virtuel pour l'apprentissage automatique.

source activate ml_env ... devrait être bien, mais lors de l'utilisation de pyenv, ʻactivate de peenv et ʻactivate de conda semblent être au bâton, et le shell peut tomber. Pour contourner le problème, spécifiez correctement l'activation de conda avec le chemin complet. Vérifiez l'emplacement de l'environnement virtuel créé par conda avec conda info -e, et lancez ʻactivate dans bin` là.

conda info -e
# conda environments:
#
ml_env                   /usr/local/pyenv/versions/miniconda3-3.4.2/envs/ml_env
root                  *  /usr/local/pyenv/versions/miniconda3-3.4.2

source /usr/local/pyenv/versions/miniconda3-3.4.2/envs/ml_env/bin/activate ml_env

Cependant, cela est gênant. pyenv local semble être capable de spécifier l'environnement créé par Miniconda, donc je pense que pyenv local miniconda 3-3.4.2 / envs / ml_env est plus facile.

Windows

Après avoir installé Miniconda, utilisez conda à partir de l'invite de commande pour créer l'environnement virtuel ml_env pour l'apprentissage automatique (quel que soit son nom).

conda create -n ml_env numpy scipy scikit-learn matplotlib cython jupyter

Une fois créé, activons cet environnement virtuel pour l'apprentissage automatique.

activate ml_env

basé sur virtualenv (pour ceux qui connaissent Python)

Si vous n'utilisez pas Miniconda (si vous utilisez virtualenv), vous devrez compiler Numpy / Scipy. La procédure de création de cet environnement est expliquée ci-dessous. On suppose que Python, pip et virtualenv sont déjà inclus.

Mac Vous devez installer gcc / gfortran, donc installez Xcode et Xcode CommandLine Tools.

L'outil de ligne de commande Xcode peut être installé avec la commande suivante après l'installation de Xcode.

xcode-select --install

Puisque gfortran est nécessaire pour installer scipy, nous l'installerons également.

GFortranBinariesMacOS

L'environnement devrait être prêt maintenant ... alors vérifions le fonctionnement. Créez un dossier approprié et créez-y un environnement virtuel pour l'apprentissage automatique. Utilisez requirements.txt dans ce Gist.

mkdir ml_env_test
cd ml_env_test

#Créer un environnement virtuel
virtualenv venv

#Activer l'environnement virtuel
source venv/bin/activate

#Exigences de RAW sur GitHub.Obtenez txt(Vous pouvez le copier normalement pour créer un fichier texte)
curl https://gist.githubusercontent.com/icoxfog417/420ac8eb3fad524ee2d6/raw/ac4122eb7b53b40274d2e7ced224abaa28a383c7/requirements.txt > requirements.txt

#Installer les bibliothèques dépendantes
pip install -r requirements.txt

L'installation de scipy est assez lente et consomme de la mémoire, donc si vous exécutez Chrome ou quelque chose du genre, vous obtiendrez une erreur de mémoire. Espérons que la compilation passera et attendons tranquillement.

Lorsque pip install est terminé, la vérification de l'opération est terminée.

Linux(Ubuntu)

Je pense que ce n'est pas grave si vous obtenez ce qui suit (Ubuntu 14.04).

build-essential
gfortran
libgfortran3
python-dev(python3-dev)
libblas-dev
libatlas-base-dev
cython

La commande pour créer un environnement virtuel est la même que pour Mac, donc reportez-vous à ce qui précède.

Windows

Il est extrêmement difficile de compiler sous Windows, alors téléchargez le binaire compilé à partir d'ici et installez-le.

Unofficial Windows Binaries for Python Extension Packages

En utilisant le fichier .whl qui peut être obtenu ici, installez-le avec pip install <file_path>. Les bibliothèques requises sont indiquées dans requirements.txt here.

mkdir ml_env_test
cd ml_env_test

#Créer un environnement virtuel
virtualenv venv

#Activer l'environnement virtuel
venv\Scripts\activate

# (Depuis le site ci-dessus.Déposez le fichier whl)

# .Installez le fichier whl(Voici un exemple de numpy)
pip install numpy‑1.9.2+mkl‑cp34‑none‑win32.whl

Si vous souhaitez compiler vous-même, vous devez installer Visual Studio, MinGW / Cygwin, etc., donc c'est un grand moyen. Je pense qu'il vaut mieux s'arrêter à moins qu'il n'y ait quelque chose de spécial.

Veuillez consulter ici pour plus de détails.

Utilisez la technologie de construction automatique

koudaiii a préparé Docker et shiraco a préparé Ansible pour que vous puissiez le mettre.

koudaiii/ml-handson shiraco/ansible_ipython_machineleaning_bootstrap_conda

Contrôle de fonctionnement

Après avoir activé avec succès l'environnement virtuel (plus l'installation de pip pour virtualenv), essayez de lancer jupyter notebook. Nous avons préparé un Repository qui explique scikit-learn, veuillez donc vérifier si vous pouvez le voir.

git clone https://github.com/icoxfog417/scikit-learn-notebook.git
cd scikit-learn-notebook
jupyter notebook

Autres matériaux de référence

Recommended Posts

Créer un environnement de développement d'applications d'apprentissage automatique avec Python
Créer un environnement d'apprentissage automatique Python avec des conteneurs
Construction d'environnement AI / Machine Learning avec Python
Créer un environnement d'apprentissage automatique
[Python] Créer un environnement de développement Django avec Docker
Créer un environnement Python d'apprentissage automatique sur Mac OS
Créer un environnement d'étude d'apprentissage automatique Python avec macOS Sierra
Créez un environnement d'apprentissage automatique scikit-learn avec VirtualBox et Ubuntu
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Créez facilement un environnement de développement avec Laragon
Créez un environnement virtuel pour python avec pyenv
Créez un environnement Python moderne avec Neovim
Créer un environnement de développement pour l'apprentissage automatique
Création d'un environnement Windows 7 pour une introduction à l'apprentissage automatique avec Python
Créer un environnement de développement de langage C avec un conteneur
Créer un environnement de développement Python avec Visual Studio Code
Créez un environnement python avec ansible sur centos6
Créer un environnement de construction python3 avec Sublime Text3
Créez un environnement de développement Python sur votre Mac
Créer un environnement de développement Django à l'aide de Doker Toolbox
Construire un environnement Python avec OSX Elcapitan
Créez rapidement un environnement Python Django avec IntelliJ
Construire un environnement de développement Python sur Raspberry Pi
Créer un environnement d'exécution python avec VS Code
Obtenez un environnement de développement Python rapide avec Poetry
Apprentissage automatique avec Python! Préparation
Créer un environnement python3 avec ubuntu 16.04
Construire un environnement python avec direnv
[ev3dev × Python] Construction de l'environnement de développement ev3dev
Créer un environnement Python hors ligne
Commencer avec l'apprentissage automatique Python
J'ai essayé de créer un environnement de développement Mac Python avec pythonz + direnv
Apprentissage de l'historique pour participer au développement d'applications d'équipe avec Python ~ Créer un environnement Docker / Django / Nginx / MariaDB ~
Créer un environnement de développement Python basé sur GVim sur Windows 10 (3) GVim8.0 et Python3.6
Créez un environnement interactif pour l'apprentissage automatique avec Python
Exécutez un pipeline de machine learning avec Cloud Dataflow (Python)
Créez un environnement virtuel python avec virtualenv et virtualenvwrapper
Créez un environnement python pour chaque répertoire avec pyenv-virtualenv
Créez un environnement de développement python avec vagrant + ansible + fabric
Créer un environnement de développement Python basé sur GVim sur l'installation de Windows 10 (1)
Créer un environnement de développement Python sur Mac OS X
Créez un environnement virtuel python avec virtualenv et virtualenvwrapper
Créer un environnement de développement Python à l'aide de pyenv sur MacOS
Créez un environnement de développement avec Poetry Django Docker Pycharm
Mémo de construction d'environnement d'apprentissage automatique par Python
Configurer un environnement de développement Python avec Sublime Text 2
Créez un environnement d'apprentissage automatique à partir de zéro avec Winsows 10
Windows10 (x64) Créer nativement un environnement d'apprentissage automatique
Créez un environnement de développement local avec WSL + Docker Desktop pour Windows + docker-lambda + Python
Apprentissage automatique par python (1) Classification générale
Construire un environnement Mysql + Python avec docker
Créez un environnement virtuel avec Python!
Créer un environnement virtuel avec Python 3
Créer une application Web avec Django
Créer un environnement python3 sur CentOS7
Configurer un environnement de développement Python avec Atom
Mémo d'apprentissage "Scraping & Machine Learning avec Python"
Développement d'applications avec Docker + Python + Flask
Développement d'applications à l'aide d'Azure Machine Learning
Créer un environnement d'apprentissage automatique sur Mac (pyenv, deeplearning, opencv)