machine-learning Tutoriel
Démarrer avec l'apprentissage automatique
Recherche…
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
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
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