machine-learningDémarrer avec l'apprentissage automatique


Remarques

L'apprentissage automatique est la science (et l'art) de la programmation des ordinateurs afin qu'ils puissent apprendre à partir de données.

Une définition plus formelle:

C'est le domaine d'étude qui donne aux ordinateurs la capacité d'apprendre sans être explicitement programmés. Arthur Samuel, 1959

Une définition plus orientée vers l'ingénierie:

Un programme informatique est censé tirer des enseignements de l’expérience E en ce qui concerne certaines tâches T et certaines mesures de performance P, si ses performances sur T, mesurées par P, augmentent avec l’expérience. E. Tom Mitchell, 1997

Source: «Apprentissage automatique avec Scikit-Learn et TensorFlow d'Aurélien Géron (O'Reilly). Copyright 2017 Aurélien Géron, 978-1-491-96229-9.

Le machine learning (ML) est un domaine de l'informatique issu de la recherche en intelligence artificielle. La force de l’apprentissage automatique par rapport aux autres formes d’analyse réside dans sa capacité à découvrir des informations cachées et à prédire les résultats d’intrants futurs résultats (généralisation). Contrairement aux algorithmes itératifs où les opérations sont explicitement déclarées, les algorithmes d'apprentissage automatique empruntent des concepts de la théorie des probabilités pour sélectionner, évaluer et améliorer des modèles statistiques.

Installation ou configuration à l'aide de Python

1) scikit apprendre

scikit-learn est un module Python pour l'apprentissage automatique basé sur SciPy et distribué sous la licence BSD à 3 clauses. Il propose divers algorithmes de classification, de régression et de clustering, notamment des machines à vecteurs de support, des forêts aléatoires, l’amplification du gradient, k-means et DBSCAN, et est conçu pour interagir avec les bibliothèques numériques et scientifiques Python

La version stable actuelle de scikit-learn nécessite :

  • Python (> = 2.6 ou> = 3.3),
  • NumPy (> = 1.6.1),
  • SciPy (> = 0.9).

Pour la plupart l' installation pip gestionnaire de paquets python peut installer python et toutes ses dépendances:

pip install scikit-learn
 

Cependant, pour les systèmes Linux, il est recommandé d’utiliser le conda paquets conda pour éviter les processus de génération possibles.

conda install scikit-learn
 

Pour vérifier que vous avez scikit-learn , exécutez en shell:

python -c 'import sklearn; print(sklearn.__version__)'
 

Installation de Windows et Mac OSX:

Canopy et Anaconda proposent tous deux une version récente de scikit-learn , en plus d'un grand ensemble de bibliothèques scientifiques Python pour Windows, Mac OSX (également pertinentes pour Linux).

Repo officiel du code source: https://github.com/scikit-learn/scikit-learn


2) Plate-forme Numenta pour l'informatique intelligente

La plate-forme Numenta pour l'informatique intelligente (NuPIC) est une plateforme d'intelligence machine qui implémente les algorithmes d'apprentissage HTM. HTM est une théorie computationnelle détaillée du néocortex. Au cœur de HTM se trouvent des algorithmes d'apprentissage continu basés sur le temps qui stockent et rappellent les modèles spatiaux et temporels. NuPIC est adapté à une variété de problèmes, en particulier la détection des anomalies et la prévision des sources de données en continu.

Les binaires NuPIC sont disponibles pour:

Linux x86 64 bits
OS X 10.9
OS X 10.10
Windows 64 bits

Les dépendances suivantes sont requises pour installer NuPIC sur tous les systèmes d'exploitation.

  • Python 2.7
  • pip> = 8.1.2
  • setuptools> = 25.2.0
  • roue> = 0.29.0
  • insipide
  • Compilateur C ++ 11 comme gcc (4.8+) ou clang

Configuration OS X supplémentaire:

  • Outils de ligne de commande Xcode

Exécutez les opérations suivantes pour installer NuPIC:

pip install nupic
 

Repo officiel du code source: https://github.com/numenta/nupic


3) nilearn

Nilearn est un module Python pour un apprentissage statistique rapide et facile sur les données NeuroImaging. Il s'appuie sur la boîte à outils Python scikit-learn pour les statistiques multivariées avec des applications telles que la modélisation prédictive, la classification, le décodage ou l'analyse de connectivité.

Les dépendances requises pour utiliser le logiciel sont les suivantes:

  • Python> = 2.6,
  • setuptools
  • Numpy> = 1.6.1
  • SciPy> = 0.9
  • Scikit-learn> = 0.14.1
  • Nibabel> = 1.1.0

Si vous utilisez des fonctionnalités de traçage nilearn ou exécutez les exemples, matplotlib> = 1.1.1 est requis.

Si vous voulez exécuter les tests, vous avez besoin de nez> = 1.2.1 et de couverture> = 3.6.

Assurez-vous d’avoir installé toutes les dépendances énumérées ci-dessus. Ensuite, vous pouvez installer nilearn en exécutant la commande suivante dans une invite de commande:

pip install -U --user nilearn
 

Repo officiel du code source: https://github.com/nilearn/nilearn/

4) Utiliser Anaconda

De nombreuses bibliothèques Python scientifiques sont facilement disponibles dans Anaconda. Vous pouvez obtenir des fichiers d'installation à partir d' ici . D'une part, en utilisant Anaconda, vous ne devez pas installer et configurer de nombreux paquets, c'est une licence BSD, et vous disposez d'un processus d'installation trivial, disponible pour Python 3 et Python 2, tandis que À titre d'exemple, certains paquets python d'apprentissage en profondeur pourraient utiliser une version différente de numpy, puis Anaconda. Cependant, cet inconvénient peut être résolu en utilisant une autre installation Python séparément (sous Linux et MAC, votre installation par défaut, par exemple).

Le programme d'installation d'Anaconda vous invite à sélectionner l'emplacement d'installation et vous invite également à ajouter l'option PATH. Si vous ajoutez Anaconda à votre PATH, votre système d'exploitation devrait trouver Anaconda Python par défaut. Par conséquent, les modifications et les futures installations seront uniquement disponibles pour cette version de Python.

Pour que ce soit clair, après l’installation d’Anaconda et que vous l’ajoutez à PATH, utilisez Ubuntu 14.04 via le terminal si vous tapez

python
 

Anaconda Python via Terminal

Voila, Anaconda Python est votre Python par défaut, vous pouvez commencer à profiter de nombreuses bibliothèques immédiatement. Cependant, si vous souhaitez utiliser votre ancien Python

/usr/bin/python
 

Python par défaut via le terminal

En bref, Anaconda est l'un des moyens les plus rapides de démarrer l'apprentissage automatique et l'analyse des données avec Python.

Installation ou configuration à l'aide du langage R

Les packages sont des collections de fonctions R, de données et de code compilé dans un format bien défini. Les référentiels publics (et privés) sont utilisés pour héberger des collections de packages R. La plus grande collection de packages R est disponible auprès de CRAN. Parmi les paquets d’apprentissage automatique R les plus populaires, on peut citer les suivants:

1) rpart

Description: Partitionnement récursif pour les arbres de classification, de régression et de survie. Une mise en œuvre de la plupart des fonctionnalités du livre de 1984 de Breiman, Friedman, Olshen et Stone.

Il peut être installé à partir de CRAN en utilisant le code suivant:

install.packages("rpart")
 

Chargez le paquet:

library(rpart)
 

Source officielle: https://cran.r-project.org/web/packages/rpart/index.html


2) e1071

Description: Fonctions pour l'analyse des classes latentes, la transformée de Fourier courte, la mise en grappe floue, les machines à vecteurs de support, le calcul du plus court chemin, la mise en grappes ensachée, le classificateur Bayes naïf, etc.

Installation de CRAN:

install.packages("e1071")
 

Chargement du paquet:

library(e1071)
 

Source officielle: https://cran.r-project.org/web/packages/e1071/index.html


3) randomForest

Description: Classification et régression basée sur une forêt d'arbres utilisant des entrées aléatoires.

Installation de CRAN:

install.packages("randomForest")
 

Chargement du paquet:

library(randomForest)
 

Source officielle: https://cran.r-project.org/web/packages/randomForest/index.html


4) caret

Description: Fonctions diverses pour l'entraînement et le traçage des modèles de classification et de régression.

Installation de CRAN:

install.packages("caret")
 

Chargement du paquet:

library(caret)
 

Source officielle: https://cran.r-project.org/web/packages/caret/index.html