Example: dental hygienist

Apprentissage Statistique avec Python.scikit-learn

1 Apprentissage Statistique avec Statistique sum Apr s la pr paration des donn es, cette vignette introduit l utilisa-tion de la librairiescikit-learnpour la mod lisation et l ap-prentissage. Pourquoi utiliserscikit-learn? Ou non ? Liste desfonctionnalit s, quelques exemples de mise en uvre : exploration(ACP, AFCM,k-means), mod lisation (r gression logistique,k-plusproches voisins, arbres de d cision, for ts al atoires. Optimisationdes param tres (complexit ) des mod les par validation crois e. Python pour Calcul Scientifique Trafic de Donn es avec Apprentissage Statistique avec Programmation l mentaire en Python Sciences des donn es avecSpark-MLlib1 objectif de ce tutoriel est d introduire la librairiescikit-learnde Py-thon dont les fonctionnalit s sont pour l essentiel un sous-ensemble de cellespropos es par les librairies de R.)

Titanic Les données sur le naufrage du Titanic sont décrites dans lescénarioconsa-cré à pandas. Reconstruire la table de données en lisant le fichier .csv dis-ponible dans cerépertoireou charger l’archive au format HDF5. #Lirelesdonnéesd’apprentissage importpandas as pd df=pd.read_csv("titanic-train.csv",skiprows=1,

Tags:

  Titanic

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Apprentissage Statistique avec Python.scikit-learn

1 1 Apprentissage Statistique avec Statistique sum Apr s la pr paration des donn es, cette vignette introduit l utilisa-tion de la librairiescikit-learnpour la mod lisation et l ap-prentissage. Pourquoi utiliserscikit-learn? Ou non ? Liste desfonctionnalit s, quelques exemples de mise en uvre : exploration(ACP, AFCM,k-means), mod lisation (r gression logistique,k-plusproches voisins, arbres de d cision, for ts al atoires. Optimisationdes param tres (complexit ) des mod les par validation crois e. Python pour Calcul Scientifique Trafic de Donn es avec Apprentissage Statistique avec Programmation l mentaire en Python Sciences des donn es avecSpark-MLlib1 objectif de ce tutoriel est d introduire la librairiescikit-learnde Py-thon dont les fonctionnalit s sont pour l essentiel un sous-ensemble de cellespropos es par les librairies de R.)

2 Se pose alors la question : quand utiliserscikit-learnde Python plut t que par exemplecaretde R plus com-plet et plus simple d emploi ?Le choix repose sur les points suivants : Attention cette librairie manipule des objets de classearraydenumpycharg s en m moireet donc de taille limit e par la RAM de l ordinateur ;de fa on analogue R charge en RAM des objets de Attention toujours,scikit-learn( ) ne reconna t pas (ou pasencore ?) la classeDataFramedepandas;scikit-learnutil isela classearraydenumpy. C est un probl me pour la gestion de va-riables qualitatives complexes. Une variable binaire est simplement rem-plac e par un codage(0,1)mais, en pr sence de plusieurs modalit s,traiter celles-ci comme des entiers n a pas de sens Statistique et rem-placer une variable qualitative par l ensemble des indicatrices (dummyvariables(0,1)) de ses modalit s complique les strat gies de s lection demod le et rend inexploitable l interpr tation Statistique .

3 Les impl mentations en Python de certains algorithmes dansscikit-learnsont aussi efficaces ( ), voire beaucoupplus efficaces ( for ts al atoires) pour des donn es volumineuses. R offre beaucoup plus de possibilit s pour une exploration, des rechercheset comparaisons de mod les, des interpr tations mais les capacit s de pa-rall lisation de Python sont plus performantes. Plus pr cis ment, l intro-duction de nouvelles librairies n est pas ou peu contraintes dans R commeen Python alors que celle de nouvelles m thodes dansscikit-learnest sous contr le d un petit groupe qui v rifie la pertinence des m thodes,seules celles reconnues sont accept es, et l efficacit du cons quences : Pr f rer R et ses libraires si la pr sentation (graphiques) des r sultats etleur interpr tation est prioritaire, si l utilisation et / ou la comparaison debeaucoup de m thodes est recherch e.

4 Pr f rer Python etscikit-learnpour mettre au point une cha ne detraitements (pipe line) op rationnelle de l extraction une analyse privil -giant la pr vision brute l interpr tation et pour des donn es quantitativesou rendues quantitatives ("vectorisation" de corpus de textes).En revanche, si les donn es sont trop volumineuses pour la taille du disque etdistribu es sur les n uds d unclustersousHadoop, consulter l tape suivantepour l utilisation deMLlibde Fonctions descikit-learnLa communaut qui d veloppe cette librairie est tr s active, elle volue ra-pidement. Ne pas h siter consulter la documentation pour des compl une s lection de ses principales fonctionnalit s.

5 Transformations (standardisation, discr tisation binaire, regroupement demodalit s, imputations rudimentaires de donn es manquantes) , "vectori-sation" de corpus de textes (encodage, catalogue, Tf-idf), images. Exploration : ACP, classification non supervis e (m langes gaussiens,2 Apprentissage Statistique avec d affinit , ascendante hi rarchique, SOM,..) Mod le lin aire g n ral avec p nalisation (ridge, lasso, elastic ), ana-lyse discriminante lin aire et quadratique,kplus proches voisins, proces-sus gaussiens, classifieur bay sien na f, arbres de r gression et classifica-tion (CART), agr gation de mod les (bagging, random forest, adaboost,gradient tree boosting), SVM (classification, r gression, d tection d ).

6 Algorithmes de validation crois e (loo, k-fold, VC stratifi ) et s lec-tion de mod les, optimisation sur une grille de param tres, s parational atoire Apprentissage et test, encha nement (pipe line) de traitements,courbe r sum , cette librairie est focalis e sur les aspects "machine" de l appren-tissage de donn es quantitatives (s ries, signaux, images) volumineuses tandisque R int gre l analyse de variables qualitatives complexes et l interpr tationstatistique fine des r sultats au d triment parfois de l efficacit des diff rences d usage entre R sument fi-nalement les nuances qui peuvent tre mises en vidences entre apprentissageStatistiqueet ObjectifL objectif est d illustrer la mise en uvre de quelques fonctionnalit s1de jeux de donn es l mentaires sont utilis s.

7 Celui pr c dent g r avecpandaset concernant le naufrage du titanic m lange des variables explica-tives qualitatives et quantitatives dans un objet de la classeDataFrame. Pour tre utilis dansscikit-learnles donn es doivent tre transform es en unobjet de classeArraydenumpyen rempla ant les variables qualitatives parles indicatrices de leurs modalit s. L autre ensemble de donn es est enti re-ment quantitatif. C est un probl me classique de reconnaissance de caract resqui est inclus dans la librairiescikit-learn, de m me que les trop fameuxiris de donn es sont explor es par analyse en composantes principales (carac-t res) ou analyse multiple des correspondances ( titanic ), classifi es puis mod -lis es par r gression logistique ( titanic ),k- plus proches voisins (caract res),1.

8 Consulter la documentation et ses nombreux exemples pour plus de d de discrimination, et for ts al atoires. Les param tres de complexit desmod les sont optimis s par minimisation de l erreur de pr vision estim e parvalidation crois autres fonctionnalit s sont laiss es momentan ment de c t ; celaconcerne les possibilit s d encha nement (pipeline) de m thodes et d auto-matisation. Il s agit, par exemple, de r p ter automatiquement la s parational atoire des chantillons Apprentissage et test pour estimer les distributionsdes erreurs, comme c est relativement facile mettre en uvre en R avec lalibrairiecaret2. Ces fonctionnalit s seront d velopp es en Python avec lessc narios venir sur des donn es plus complexes et plus Exploration Les donn esLes donn es "Caract res"Il s agit d explorer celles de reconnaissance de caract res dont les proc -d s d obtention et pr traitements sont d crits sur le site de l UCI (Lichman,2013)[3].

9 Les chiffres ont t saisies sur des tablettes l int rieur de cadresde r solution500 500. Des proc dures de normalisation, r - chantillonnagespatial puis de lissage ont t appliqu es. Chaque caract re appara t finalementdiscr tis sous la forme d une matrice8 8de pixels 16 niveaux de gris etidentifi par un label. Les donn es sont archiv es sous la forme d une matriceou tableau trois indices. Elles sont galement archiv es apr s vectorisationdes images sous la forme d une matrice p= la fen tre d un calepinipythondans un navigateur.# Importationsimport as pltfrom sklearn import datasets%matplotlib inline# les donn esdigits = ()# Contenu et mode d obtentionprint(digits)2.

10 Consulter les sc narios de Statistique avec # # Sous forme d un cube d images 1797 x 8x8print( )# Sous forme d une matrice 1797 x 64print( )# Label r el de chaque caract reprint( )Voici un aper u des images discriminer :images_and_labels = list(zip( , ))for index, (image, label) inenumerate(images_and_labels[:8]) (2, 4, index + 1) ( off ) (image, cmap= ,interpolation= nearest ) ( Training: %i % label)TitanicLes donn es sur le naufrage du titanic sont d crites dans le sc nario consa-cr pandas. Reconstruire la table de donn es en lisant le dans ce r pertoire ou charger l archive au format HDF5.# Lire les donn es d apprentissageimport pandas as pddf= (" ",skiprows=1,header=None,usecols=[1,2,4, 5,9,11],names=["Surv","Classe","Genre"," Age","Prix","Port"],dtype={"Surv":object ,"Classe":object,"Genre":object,"Port":o bject}) ()# # Red finir les typesdf["Surv"]= (df["Surv"],ordered=False)df["Classe"]= (df["Classe"],ordered=False)df["Genre"]= (df["Genre"],ordered=False)df["Port"]= (df["Port"],ordered=False) rifier que les donn es contiennent des valeurs manquantes, faire des impu-tations la m diane d une valeur quantitative manquante ou la modalit la plusfr quente d une valeur qualitative ()# imputation des valeurs manquantesdf["Age"]=df["Age"].


Related search queries