Random forest

Pages: 31 (7586 mots) Publié le: 31 janvier 2011
Random Forest : Généralisation des arbres de classification.
Le Random Forest ou « Forêt Aléatoire » est une méthode d'apprentissage supervisée. Cette méthode propose une solution au problème de sur-ajustement rencontré dans les méthodes d'arbres de décision classique. Il s'agit donc ici de construire un ensemble d'arbres, « forêt », ou chaque arbre vote pour une classe. La construction dechacun de ces arbres (par la méthodes classique) est combinée à une double randomisation. Le nombre de d'arbres doit-être suffisamment grand pour que l'analyse ai un sens. Afin de l'étudier cette méthode, sera appliquer sur deux jeu de donnée : Tout d'abord le « crabs », qui contient 200 spécimens de Leptograpsus variegatus dont 100 femelles et 100 mâles (comportant chacun 50 bleues et 50 oranges).Pour chacune des variables: – longueur de la carapace (CL) – largeur de la carapace (CW) – taille du lobe frontal (FL) – taille du rostre (RW) – profondeur du corps (BD) on cherche à savoir s'il y a une corrélation avec soit le sexe, soit la couleur des spécimens, afin de prédire l'appartenances des individus aux différents groupes et de définir des règles de classification pour séparer sexe etcouleurs. Puis sur « musk » contenant 475 descripteurs dont on chercher à prédire les caractéristique des gènes qui sont « musk » (notés 1 dans la colonne 169) ou « non musk » (notés 0 dans cet colonne 169). C'est ce que nous allons voir dans un premier temps en cherchant le nombre de variables à utiliser, puis en étudiant dans un second temps l'importances des variables.

1) Jeu de données crabs:Le random forest est lancé sur le jeu de donnée « crabs2 », qui correspond au jeu de donnée « crabs » moins la colonne 3, qui correspond a un index et n'a pas d’intérêt pour la construction des arbres.
resRF = randomForest(sex~., data=crabs2) #on stock la sortie dans la variable resRF

La fonction randomForest prend comme argument une matrice ou une dataframe : data=crabs2 et une formule quidécrit le modèle à étudier: sex~., c'est-à-dire que l'on observe toutes les variables par rapport au sexe.
Call: randomForest(formula = sex ~ ., data = crabs2) Type of random forest: classification Number of trees: 500 No. of variables tried at each split: 2

OOB estimate of Confusion matrix: F M class.error F 89 11 0.11 M 11 89 0.11

error rate: 11%

Le résultat en sortie du randomForestindique ici un nombre de 500 arbres, et taux d'erreur de 11%, ce qui est un résultats plutôt satisfaisant.
names(resRF)

La fonction names() fournit ici les catégories de du randomForest:
[1] "call" "type" "predicted" "err.rate" "confusion" "votes" "oob.times" "classes" [9] "importance" "importanceSD" "localImportance" "proximity" "ntree" "mtry" "forest" "y" [17] "test" "inbag" "terms"

dont lesplus interessant sont: – – – – predicted: les valeurs prédites des données d'entrée sur la base d'échantillons OOB. mtry: nombre de variables proposé à l'arbre à chaque noeud, q y: vrai valeurs importance: donne l'importances des variables, plus elle est élevée, plus la variables est utilisée.

Si on regarde la table de contingence des valeurs prédite en fonction: – du sexe :table(resRF$predicted,crabs2$sex)

on a:
F M F 89 11 M 11 89

soit 22 individus mal classé.
resRFcol = randomForest(sp~., data=crabs2) Call: randomForest(formula = sp ~ ., data = crabs2) Type of random forest: classification Number of trees: 500 No. of variables tried at each split: 2 OOB estimate of Confusion matrix: B O class.error B 89 11 0.11 O 12 88 0.12 error rate: 11.5%

– de la couleur: table(resRFcol$predicted,crabs2$sp)

on a:
B O B 89 12 O 11 88

soit 23 individus mal classé. Vérification du nombre de bien classé:
sum(diag(table(resRF$predicted, crabs2$sex))) [1] 178 #d'individus bien classé sum(diag(table(resRFcol$predicted, crabs2$sp))) [1] 180 #d'individus bien classé

ce qui est cohérent avec les résultats de la table de contingence. On calcule alors le nombre d'erreur...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Random
  • random
  • Random
  • Forest gump
  • Phillipe forest
  • Document random
  • Forest Gump
  • Chimie random

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !