Classification en programmation R : Le tutoriel tout en un pour maîtriser le concept !

Dans ce tutoriel, nous allons étudier la classification en R à fond. Nous couvrirons également l’Arbre de Décision, la Classification Naïve de Bayes et la Machine Vectorielle de Support. Pour le comprendre au mieux, nous utiliserons des images et des exemples en temps réel.

 Classification en R

Restez à jour avec les dernières tendances technologiques
Rejoignez DataFlair sur Telegram!!

Introduction à la classification dans R

Nous l’utilisons pour prédire une étiquette de classe catégorielle, telle que le temps: pluvieux, ensoleillé, nuageux ou neigeux.

Points importants de classification dans R

Il existe différents classificateurs disponibles:

  • Arbres de décision – Ceux-ci sont organisés sous la forme d’ensembles de questions et de réponses dans l’arborescence.
  • Classificateurs naïfs de Bayes – Un modèle probabiliste d’apprentissage automatique utilisé pour la classification.
  • Classificateurs K-NN – Sur la base des mesures de similitude comme la distance, il classe de nouveaux cas.
  • Machines vectorielles de support – C’est un classificateur linéaire binaire non probabiliste qui construit un modèle pour classer un cas dans l’une des deux catégories.

Un exemple de classification dans R via la machine vectorielle de support est l’utilisation de la fonction classification() :

classification(trExemplObj, classLabels, valExemplObj =NULL, kf=5, kernel=”linear”)

Attendez! Avez-vous terminé le tutoriel sur le clustering dans les arguments R

:

1. trExemplObj – C’est un objet ESET train d’exemples.

2. classLabels – Il est stocké dans l’objet eSet en tant que nom de variable, par exemple “type”.

3. valExemplObj – Il est connu sous le nom d’objet eSet de validation d’exemples.

4. kf – Il est appelé comme la valeur de k-plis du paramètre de validation croisée. De plus, la valeur par défaut est 5 plis. En définissant “Loo” ou “LOO” une validation croisée sans sortie que nous devons effectuer.

5. noyau – Dans l’analyse de classification, nous utilisons un type de noyau. Le noyau par défaut est “linéaire”.

6. classL – Les étiquettes du train.

7. valClassL – Il est appelé comme les étiquettes de l’ensemble de validation s’il n’est pas NULL.

8. predLbls – Il est défini comme les étiquettes prédites selon l’analyse de classification.

Arbre de décision dans R

C’est un type d’algorithme d’apprentissage supervisé. Nous l’utilisons pour des problèmes de classification. Cela fonctionne pour les deux types de variables d’entrée et de sortie. Dans cette technique, nous divisons la population en deux ensembles homogènes ou plus. De plus, il est basé sur le séparateur / différentiateur le plus significatif des variables d’entrée.

L’arbre de décision est un classificateur non linéaire puissant. Un arbre de décision utilise une structure arborescente pour générer une relation entre les différentes caractéristiques et les résultats potentiels. Il utilise les décisions de ramification comme structure de base.

 arbre de décision dans R

Pour classer les données, l’arbre de décision suit les étapes mentionnées ci-dessous:

  • Il met tous les exemples de formation à la racine.
  • En fonction des différents attributs sélectionnés, un arbre de décision divise ces exemples d’entraînement.
  • Ensuite, il sélectionnera les attributs en utilisant des mesures statistiques.
  • Le partitionnement récursif continue jusqu’à ce qu’il ne reste aucun exemple d’entraînement.

Terminologies importantes liées à l’arbre de décision

  • Nœud racine : Il représente l’ensemble de la population ou de l’échantillon. De plus, il est divisé en deux ensembles homogènes ou plus.

 Nœud racine dans l'arbre de décision

  • Fractionnement: Dans ce cas, nous effectuons la division d’un nœud en deux sous-nœuds ou plus.
  • Arbre de décision : Il est produit lorsqu’un sous-nœud se divise en sous-nœuds supplémentaires.
  • Nœud feuille/ Terminal : Les nœuds qui ne se divisent pas sont appelés Nœud Feuille ou nœud terminal.
  • Élagage: Lorsque nous supprimons des sous-nœuds d’un nœud de décision, ce processus est appelé élagage. C’est le processus inverse de la division.
  • Branche/Sous-arbre : Une sous-section de l’arbre entier est appelée branche ou sous-arbre.
  • Nœud Parent et Enfant: Un nœud, qui est divisé en sous-nœuds, est appelé nœud parent de sous-nœuds alors que les sous-nœuds sont les enfants d’un nœud parent.

Types d’arbre de décision

  • Arbre de décision à variable Catégorielle (classification) : Arbre de décision qui a une variable cible catégorielle.
  • Arbre de décision Variable continue (Régression): L’arbre de décision a une variable cible continue.

N’oubliez pas de consulter les arbres de décision R en détail

Arbres catégoriels (classification) vs Arbres continus (régression)

Les arbres de régression sont utilisés lorsque la variable dépendante est continue tandis que les arbres de classification sont utilisés lorsque la variable dépendante est catégorique.

En continu, une valeur obtenue est une réponse moyenne d’observation.

En classification, une valeur obtenue par un nœud terminal est un mode d’observations.

Il existe une similitude dans les deux cas. Le processus de fractionnement se poursuit avec des arbres cultivés jusqu’à ce qu’il atteigne les critères d’arrêt. Mais, l’arbre cultivé est susceptible de surajuster les données, ce qui entraîne une mauvaise précision sur les données invisibles. Cela apporte une “taille”. L’élagage est l’une des techniques qui utilise le surajustement des agrès.

Avantages de l’Arbre de décision dans R

  • Facile à comprendre: Il n’a pas besoin de connaissances statistiques pour les lire et les interpréter. Sa représentation graphique est très intuitive et les utilisateurs peuvent rapporter leur hypothèse.
  • Moins de nettoyage de données requis: Comparé à d’autres techniques de modélisation, il nécessite moins de données.
  • Le type de données n’est pas une contrainte : il peut gérer des variables numériques et catégorielles.
  • Simple à comprendre et à interpréter.
  • Nécessite peu de préparation de données.
  • Il fonctionne avec des données numériques et catégorielles.
  • Gère la non-linéarité.
  • Possibilité de confirmer un modèle à l’aide de tests statistiques.
  • Il est robuste. Il fonctionne bien même si vous vous écartez des hypothèses.
  • Il évolue vers le Big Data.

Vous devez absolument explorer l’Analyse de régression non linéaire R

Inconvénients de l’Arbre de décision R

  • Surajustement: C’est l’une des difficultés les plus pratiques pour les modèles d’arbres de décision. En définissant des contraintes sur les paramètres du modèle et l’élagage, nous pouvons résoudre ce problème dans R.
  • Ne convient pas aux variables continues: Au moment de l’utilisation de variables numériques continues. Chaque fois qu’il classe des variables dans différentes catégories, l’arbre de décision perd des informations.
  • Pour apprendre un arbre globalement optimal, il est NP-difficile, les algos s’appuient sur une recherche gourmande.
  • Les relations complexes “si-alors” entre les entités gonflent la taille de l’arbre. Exemple – Porte XOR, multiplexeur.

Introduction à la Classification naïve de Bayes

Nous utilisons le théorème de Bayes pour faire la prédiction. Il est basé sur des connaissances antérieures et des preuves actuelles.

Le théorème de Bayes s’exprime par l’équation suivante:

 P AB - Classification naïve de Bayes

où P(A) et P(B) sont la probabilité d’événements A et B sans se concernant. P(A | B) est la probabilité de A conditionnelle à B et P(B | A) est la probabilité de B conditionnelle à A.

Introduction aux Machines Vectorielles de Support

Qu’est-ce que la Machine Vectorielle de Support?

Nous l’utilisons pour trouver l’hyperplan optimal (ligne en 2D, un plan en 3D et hyperplan en plus de 3 dimensions). Ce qui aide à maximiser la marge entre deux classes. Les vecteurs de support sont des observations qui prennent en charge l’hyperplan de chaque côté.
Il aide à résoudre un problème d’optimisation linéaire. Cela aide également à trouver l’hyperplan avec la plus grande marge. Nous utilisons le “Truc du noyau” pour séparer les instances qui sont inséparables.

Terminologies liées à R SVM

Pourquoi Hyperplan?

C’est une ligne en 2D et un plan en 3D. En dimensions supérieures (plus que la 3D), on l’appelle hyperplan. De plus, SVM nous aide à trouver un hyperplan capable de séparer deux classes.

Qu’est-ce que la marge?

Une distance entre l’hyperplan et le point de données le plus proche est appelée marge. Mais si nous voulons le doubler, alors ce serait égal à la marge.

Comment trouver l’hyperplan optimal?

Tout d’abord, nous devons sélectionner deux hyperplans. Ils doivent séparer les données sans points entre elles. Maximisez ensuite la distance entre ces deux hyperplans. La distance ici est “marge”.

Qu’est-ce que le noyau ?

C’est une méthode qui permet de faire fonctionner SVM, dans le cas de points de données séparables non linéaires. Nous utilisons une fonction noyau pour transformer les données en un espace d’entités de dimension supérieure. Et aussi avec l’aide de celui-ci, effectuez la séparation linéaire.

Différents noyaux

1. linéaire : u’* v
2. polynôme : (gamma * u ‘ * v + coef0) ^ degré
3. base radiale (RBF): exp (-gamma * | u-v | ^2) sigmoïde: tanh (gamma * u’ * v + coef0)

RBF est généralement le plus populaire.

Comment fonctionne SVM?

  1. Choisissez un hyperplan optimal qui maximise la marge.
  2. Applique une pénalité pour les erreurs de classification (paramètre de réglage du coût ‘c’).
  3. Si le non-linéairement séparable les points de données. Transformez ensuite les données en espace à haute dimension. Cela est fait afin de le classer facilement à l’aide de surfaces de décision linéaires.

Il est temps de maîtriser le concept de visualisation de données dans R

Avantages de SVM dans R

  • Si nous utilisons une astuce de noyau en cas de données séparables non linéaires, cela fonctionne très bien.
  • SVM fonctionne bien dans l’espace à haute dimension et en cas de classification de texte ou d’image.
  • Il ne souffre pas de problème de multicollinéarité.

Inconvénients de SVM dans R

  • Cela prend plus de temps sur des ensembles de données de grande taille.
  • SVM ne renvoie pas d’estimations de probabilité.
  • Dans le cas de données linéairement séparables, cela ressemble presque à une régression logistique.

Régression Machine Vectorielle de support

  • Oui, nous pouvons l’utiliser pour un problème de régression, dans lequel la variable dépendante ou cible est continue.
  • Le but de la régression SVM est le même que le problème de classification, c’est-à-dire trouver la plus grande marge.

Applications de classification dans R

  • Une salle d’urgence d’un hôpital mesure 17 variables de patients nouvellement admis. Variables, comme la pression artérielle, l’âge et bien d’autres. De plus, une décision prudente doit être prise si le patient doit être admis aux soins intensifs. En raison du coût élevé de l’U.I.C., les patients qui peuvent survivre plus d’un mois reçoivent une priorité élevée. En outre, le problème est de prédire les patients à haut risque. Et, pour les distinguer des patients à faible risque.
  • Une société de crédit reçoit des centaines de milliers de demandes de nouvelles cartes. L’application contient des informations sur plusieurs attributs différents. De plus, le problème est de catégoriser ceux qui ont un bon crédit, un mauvais crédit ou qui tombent dans une zone grise.
  • Les astronomes ont catalogué des objets éloignés dans le ciel en utilisant des images C.C.D à longue exposition. Ainsi, l’objet qui doit être étiqueté est une étoile, une galaxie, etc. Les données sont bruyantes et les images sont très faibles, par conséquent, le catalogage peut prendre des décennies.

Résumé

Nous avons étudié la classification en R avec leurs usages et leurs avantages et inconvénients. Nous avons également appris des exemples en temps réel qui aident à mieux apprendre la classification.

Tutoriel suivant dans notre série de tutoriels R DataFlair – Modèles de formation et de test de package e1071 | SVM dans R

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.