Imaginez que vous achetiez un véhicule, OK, allez simplement dans un magasin et achetez le premier que vous voyez ? Non, n’est-ce pas ? La plupart du temps, vous ne conseillez pratiquement personne autour de vous, vous prenez leur conclusion, vous y ajoutez votre exploration et ensuite vous allez chercher une conclusion finale. Nous devrions prendre une situation moins difficile : quel que soit le moment où vous allez voir un film, vous adressez-vous à vos compagnons pour des enquêtes sur le film (sauf si, hors de propos, il met en scène un de vos personnages préférés à l’écran) ?
Avez-vous déjà demandé pour quelle raison nous obtenons des informations sur leurs sentiments ou leurs vérifications avant d’aller au cinéma ou avant d’acheter un véhicule ou d’organiser une occasion ? Cela s’explique par le fait que l’enquête auprès d’une personne peut être unilatérale selon son inclination ; quoi qu’il en soit, lorsque nous interrogeons différentes personnes, nous tentons d’écarter la prédisposition qu’une personne solitaire peut donner. Un individu peut avoir une aversion très forte pour un objectif particulier en raison de son implication dans ce domaine ; en tout cas, dix autres individus peuvent avoir une inclination très forte pour un objectif similaire puisqu’ils y ont fait une magnifique rencontre. On peut en déduire que cette personne s’est progressivement rapprochée d’un excellent cas et que son expérience pourrait être celle d’un cas.
Un autre modèle dont je suis certain que nous avons tous fait l’expérience est celui des réunions dans n’importe quelle organisation ou école. Nous devons fréquemment faire l’expérience de plusieurs séries de réunions. Bien que les questions posées lors des différentes séries de réunions soient comparatives, voire identiques, les organisations mettent toujours tout en jeu. L’explication est qu’elles ont besoin d’avoir les vues de divers pionniers de l’enrôlement. Si, par hasard, de nombreux pionniers se concentrent sur une personne prometteuse, la probabilité qu’elle finisse par obtenir un contrat décent est élevée.
Dans le monde de l’analyse et de la science des données, on appelle cela “ensembling”. L’assemblage est un “type de technique d’apprentissage supervisé dans lequel plusieurs modèles sont formés sur un ensemble de données d’apprentissage et leurs résultats individuels sont combinés par une règle quelconque pour obtenir le résultat final”.
Et si nous rompions la définition ci-dessus et y jetions un coup d’œil petit à petit.
Au moment où nous déclarons que divers modèles sont préparés sur un ensemble de données, le même modèle avec divers hyperparamètres ou divers modèles peuvent être préparés sur l’ensemble de données de préparation. La préparation des perceptions peut varier quelque peu pendant l’inspection ; quoi qu’il en soit, de manière générale, la population continue comme avant.
“Les résultats sont combinés par une règle quelconque” – il pourrait y avoir plusieurs règles selon lesquelles les résultats sont combinés. Les plus connues sont la règle normale (pour le rendement numérique) ou la règle du vote (pour le rendement net). Lorsque différents modèles nous donnent le rendement numérique, nous pouvons simplement prendre la moyenne de tous les rendements et utiliser la moyenne comme résultat. S’il devait y avoir une sortie nette, nous pouvons utiliser le vote – la sortie qui se produit le plus souvent est la dernière sortie. Il existe d’autres stratégies complexes pour déterminer le rendement, mais elles n’entrent pas dans le cadre de cet article.
Random Forest est l’un de ces incroyables calculs d’IA d’assemblage qui fonctionne en faisant différents arbres de choix et en consolidant ensuite le rendement créé par chacun des arbres de décision. L’arbre de choix est un modèle d’arrangement qui fonctionne à partir de l’idée de gain de données à chaque centre. Pour chacun des centres d’information, l’arbre de décision tentera de caractériser les centres d’information à chacun des centres et de vérifier le gain de données à chaque centre. L’ordre des points est alors celui du centre où l’augmentation des données est la plus importante. Il poursuivra cette procédure jusqu’à ce que chacun des centres soit épuisé ou qu’il n’y ait plus de gain de données. Les arbres de décision sont des modèles exceptionnellement basiques et simples ; néanmoins, ils ont un faible pouvoir de prédiction. À vrai dire, on les appelle les élèves faibles.
Arbitrary Backwoods s’en prend aux étudiants faibles équivalents. Il réunit le rendement de divers arbres de choix et concoit ensuite, enfin, son propre rendement. Arbitrary Woods traite d’une ligne directrice similaire à celle de Decision Tress ; en tout cas, il ne choisit pas tous les centres d’information et facteurs de chacun des arbres. Il teste au hasard les foyers d’information et les facteurs dans chacun des arbres qu’il fabrique et rejoint ensuite la production vers la fin. Il expulse la prédisposition qu’un modèle d’arbre de choix peut présenter dans le cadre. De même, il améliore le pouvoir de prédiction dans son ensemble. Nous le verrons dans le domaine suivant lorsque nous prendrons un exemple de collecte d’informations et que nous réfléchirons à la précision de l’Arbre de décision et de la forêt arbitraire.
Actuellement, nous devrions faire une petite analyse contextuelle et tenter d’exécuter divers modèles de Backwoods irréguliers avec divers hyperparamètres, et analyser un des modèles de Woodland arbitraires avec le modèle de l’arbre de décision. (Je suis certain que vous serez d’accord avec moi sur ce point – même sans actualiser le modèle, nous pouvons dire instinctivement que le modèle Irregular Backwoods nous donnera des résultats préférables à l’arbre de choix). L’ensemble de données est tiré du site de l’UCI et peut être consulté sur ce lien. L’information contient 7 facteurs – six logiques (Valeur d’achat, Soutien, NumDoors, NumPersons, BootSpace, Bien-être) et une variable de réaction (Condition). Les facteurs sont clairs comme du cristal et font allusion aux qualités des véhicules et la variable de réaction est la “valeur du véhicule”. Chacun de ces facteurs est entièrement naturel et comporte 3 ou 4 niveaux de chiffres.
Commençons l’implémentation du code R et prédisons l’acceptabilité de la voiture sur la base de variables explicatives.
1 2 3 4 | # Source des données : https://archive.ics.uci.edu/ml/machine-learning-databases/car/ install.packages(“randomForest”) bibliothèque(randomForest) | |
1 2 3 4 5 6 7 8 | # Chargez l’ensemble des données et explorez data1 <- read.csv(file.choose(), header = TRUE) tête(données1) str(data1) résumé(données1) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | > tête(data1) Prix d’achat Maintenance NumDoors NumPersons BootSpace Condition de sécurité 1 vhigh vhigh 2 2 small low unacc 2 vhigh vhigh 2 2 small med unacc 3 vhigh vhigh 2 2 small high unacc 4 vhigh vhigh 2 2 med low unacc 5 vhigh vhigh 2 2 med med unacc 6 vhigh vhigh 2 2 med high unacc > str(data1) data.frame” : 1728 obs. de 7 variables : Prix d’achat $ : Facteur avec 4 niveaux “haut”, “bas”, “moyen”,… : 4 4 4 4 4 4 4 4 4 4 4 4 … $ Entretien : Facteur avec 4 niveaux “élevé”, “faible”, “moyen”, … : 4 4 4 4 4 4 4 4 4 4 4 4 … $ NumDoors : Facteur avec 4 niveaux “2”, “3”, “4”, “5plus” : 1 1 1 1 1 1 1 1 1 1 … $ NumPersons : Facteur avec 3 niveaux “2”, “4”, “plus” : 1 1 1 1 1 1 1 1 1 2 … $ BootSpace : Facteur avec 3 niveaux “big”, “med”, “small” : 3 3 3 2 2 2 1 1 1 3 … Sécurité : Facteur avec 3 niveaux “élevé”, “faible”, “moyen” : 2 3 1 2 3 1 2 3 1 2 … Condition : Facteur avec 4 niveaux “acc”, “good”, “unacc”, … : 3 3 3 3 3 3 3 3 3 3 3 … > résumé(données1) Prix d’achat Maintenance NumDoors NumPersons BootSpace Condition de sécurité high :432 high :432 2 :432 2 :576 big :576 high:576 acc : 384 faible :432 faible :432 3 :432 4 :576 moyenne :576 faible :576 bonne : 69 med :432 med :432 4 :432 more:576 small:576 med :576 unacc:1210 vhigh:432 vhigh:432 5more:432 vgood : 65 |
Maintenant, nous allons diviser l’ensemble de données en train et validation dans le rapport 70:30. Nous pouvons également créer un ensemble de données de test, mais pour l’instant, nous nous contenterons de conserver l’ensemble de données de train et de validation.
1 2 3 4 5 6 7 8 | # Séparé en deux ensembles : le train et la validation # Ensemble de formation : Ensemble de validation = 70 : 30 (aléatoire) set.seed(100) train <- échantillon(nrow(data1), 0,7*nrow(data1), remplacer = FAUX) TrainSet <- data1 [train,] ValidSet <- data1[-train,] résumé(TrainSet) résumé(ValidSet) |
1 2 3 4 5 6 7 8 9 10 11 12 | > résumé(TrainSet) Prix d’achat Maintenance NumDoors NumPersons BootSpace Condition de sécurité high :313 high :287 2 :305 2 :406 big :416 high:396 acc :264 faible :292 faible :317 3 :300 4 :399 moyenne :383 faible :412 bonne : 52 med :305 med :303 4 :295 more:404 small:410 med :401 unacc:856 vhigh:299 vhigh:302 5more:309 vgood : 37 > résumé(ValidSet) Prix d’achat Maintenance NumDoors NumPersons BootSpace Condition de sécurité high :119 high :145 2 :127 2 :170 big :160 high:180 acc :120 bas :140 bas :115 3 :132 4 :177 med :193 bas :164 bon : 17 med :127 med :129 4 :137 more:172 small:166 med :175 unacc:354 vhigh:133 vhigh:130 5more:123 |