Stellen Sie sich vor, Sie würden ein Fahrzeug kaufen, OK, gehen Sie einfach in ein Geschäft und kaufen Sie das erste, das Sie sehen? Nein, ist das nicht so? Sie beraten größtenteils kaum jemanden um Sie herum, nehmen deren Schlussfolgerung, fügen Ihre Erkundung hinzu und gehen danach zu einer endgültigen Schlussfolgerung über. Wir sollten eine weniger schwierige Situation annehmen: An welchem Punkt Sie sich auch immer für einen Kinofilm entscheiden, gehen Sie auf Ihre Begleiter zu, wenn Sie Umfragen über den Film durchführen (es sei denn, es handelt sich um einen Ihrer bevorzugten Charaktere auf der Leinwand)?

Haben Sie zu irgendeinem Zeitpunkt gefragt, aus welchem Grund wir vor einem Kinofilm oder vor dem Kauf eines Fahrzeugs oder möglicherweise vor der Organisation eines Anlasses Informationen über ihre Gefühle oder Prüfungen erhalten? Dies geschieht mit der Begründung, dass die Befragung einer Person je nach ihrer Neigung einseitig sein könnte; wie dem auch sei, wenn wir verschiedene Personen befragen, versuchen wir damit die Veranlagung auszuschliessen, die eine Einzelperson möglicherweise hat. Eine Person mag aufgrund ihrer Beschäftigung mit diesem Gebiet eine sehr solide Abneigung gegen ein bestimmtes Ziel haben; auf jeden Fall können zehn andere Personen eine sehr solide Neigung für ein ähnliches Ziel haben, da sie dort eine großartige Begegnung hatten. Daraus können wir ableiten, dass die eine Person einem ausgezeichneten Fall nach und nach ähnlich war und dass ihre Erfahrung einem Fall entsprechen könnte.

Ein weiteres Modell, das wir sicher alle schon einmal erlebt haben, ist während der Treffen in jeder Organisation oder Schule. Wir müssen häufig verschiedene Sitzungsrunden erleben. Trotz der Tatsache, dass die in verschiedenen Sitzungsrunden gestellten Fragen vergleichend, wenn nicht gar gleich sind – Organisationen setzen immer noch alles aufs Spiel. Die Erklärung dafür ist, dass sie Einblicke von verschiedenen Pionieren der Rekrutierung benötigen. Für den unwahrscheinlichen Fall, dass sich zahlreiche Pioniere auf eine Aufsteigerin konzentrieren, ist die Wahrscheinlichkeit hoch, dass sie am Ende einen anständigen Vertrag erhält.

In der Welt der Analytik und Datenwissenschaft nennt man dies “Ensembling”. Ensembling ist eine “Art von beaufsichtigter Lerntechnik, bei der mehrere Modelle auf einem Trainingsdatensatz trainiert werden und ihre individuellen Ergebnisse durch eine Regel kombiniert werden, um das Endergebnis abzuleiten”.

Wie wäre es, wenn wir die obige Definition brechen und nach und nach einen Blick darauf werfen.

Wenn wir feststellen, dass verschiedene Modelle auf einem Datensatz vorbereitet werden, kann das gleiche Modell mit verschiedenen Hyperparametern oder verschiedene Modelle auf dem Vorbereitungsdatensatz vorbereitet werden. Die Wahrnehmungen bei der Vorbereitung können sich während der Inspektion etwas unterscheiden; wie dem auch sei, im Allgemeinen setzt sich die Bevölkerung wie bisher fort.

“Outputs werden nach irgendeiner Regel kombiniert” – es könnte mehrere Regeln geben, nach denen Outputs kombiniert werden. Die am weitesten verbreiteten Regeln sind die normale (soweit es um die numerische Ausbeute geht) oder die Abstimmungsregel (soweit es um die Kahlschlag-Ausbeute geht). Wenn uns verschiedene Modelle die numerische Ausbeute liefern, können wir einfach den Durchschnitt aller Ausbeuten nehmen und den Durchschnitt als Ergebnis verwenden. Sollte es zu einer Kahlschlag-Ausbeute kommen, können wir das Abstimmungsergebnis verwenden – die größte Anzahl von Malen, die eine Ausgabe erfolgt, ist die letzte Ausgabe. Es gibt noch andere komplexe Strategien zur Bestimmung der Ausbeute, die jedoch nicht in den Anwendungsbereich dieses Artikels fallen.

Random Forest ist eine solche unglaubliche Ensemble-KI-Berechnung, bei der verschiedene Entscheidungsbäume erstellt und anschließend der von jedem einzelnen Entscheidungsbaum erzeugte Ertrag konsolidiert wird. Der Entscheidungsbaum ist ein Anordnungsmodell, das die Idee des Datengewinns an jedem Knotenpunkt verwirft. Für jeden der Informationsschwerpunkte versucht der Entscheidungsbaum, die Informationsschwerpunkte an jedem der Hubs zu charakterisieren und den Datengewinn an jedem Hub zu überprüfen. Er ordnet an dem Punkt an, an dem der Datenzuwachs am größten ist. Dieses Verfahren wird so lange fortgesetzt, bis jeder der Hubs erschöpft ist oder kein zusätzlicher Datengewinn mehr zu verzeichnen ist. Entscheidungsbäume sind außerordentlich einfache und unkomplizierte Modelle; dennoch haben sie eine geringe Vorhersagekraft. Um ehrlich zu sein, werden sie als “schwache Studenten” bezeichnet.

Arbitrary Backwoods schießt auf die entsprechenden schwachen Schüler. Er gesellt sich zu den Ausbeuten verschiedener ausgesuchter Bäume und braut danach endlich seinen eigenen Ertrag zusammen. Arbitrary Woods geht mit einer ähnlichen Leitlinie um wie Decision Tress; jedenfalls wählt es nicht jeden der Informationsschwerpunkte und -faktoren in jedem der Bäume aus. Arbitrary Woods testet willkürlich Informationsschwerpunkte und -faktoren in jedem der Bäume, die es herstellt, und fügt sich dann gegen Ende in den Output ein. Es vertreibt die Veranlagung, die ein Entscheidungsbaummodell im Rahmen des Rahmenwerks darstellen kann. Ebenso verbessert es die Vorhersagekraft insgesamt. Wir werden dies im folgenden Bereich sehen, wenn wir ein Beispiel für eine Informationssammlung nehmen und über die Präzision von Arbitrary Woodland und Entscheidungsbaum nachdenken.

Gegenwärtig sollten wir eine kleine Kontextanalyse vornehmen und versuchen, verschiedene Irregular Backwoods-Modelle mit verschiedenen Hyperparametern auszuführen und eines der Arbitrary Woodland-Modelle mit dem Entscheidungsbaum-Modell zu analysieren. (Ich bin sicher, dass Sie mir in diesem Punkt zustimmen werden – auch ohne das Modell zu aktualisieren, können wir instinktiv sagen, dass Irregular Backwoods uns bessere Ergebnisse liefern wird als das Entscheidungsbaum-Modell). Der Datensatz stammt von der UCI-Site und ist unter diesem Link zu finden. Die Informationen enthalten 7 Faktoren – sechs logische (Kaufwert, Support, NumDoors, NumPersonen, BootSpace, Wohlbefinden) und eine Reaktionsvariable (Bedingung). Die Faktoren sind kristallklar und spielen auf die Eigenschaften von Fahrzeugen an, und die Reaktionsvariable ist “Fahrzeugwert”. Jeder einzelne der Faktoren ist von Natur aus out und hat jeweils 3-4 Figurenstufen.

Beginnen wir mit der Implementierung des R-Codes und prognostizieren die Fahrzeugakzeptanz basierend auf erklärenden Variablen.

1 2 3 4# Datenquelle: https://archive.ics.uci.edu/ml/machine-learning-databases/car/   install.packages (“randomForest”) Bibliothek(randomForest)
1 2 3 4 5 6 7 8# Laden Sie den Datensatz und erkunden Sie data1 <- read.csv(file.choose(), Kopfzeile = WAHR)   Kopf(daten1)   str(daten1)   Zusammenfassung(Daten1) 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23> Kopf (Daten1)   KaufenPreis Wartung NumTüren NumPersonen BootSpace Sicherheitszustand 1 vhoch vhoch 2 2 klein niedrig unzugänglich 2 vhigh vhigh 2 2 klein med unacc 3 vhoch vhoch 2 2 klein hoch unzugänglich 4 vhigh vhigh 2 2 med niedrig unakk. 5 vhigh vhigh 2 2 med med unacc 6 vhigh vhigh 2 2 med hoch unakk. > str(daten1) ‘data.frame’: 1728 obs. von 7 Variablen:  $ Einkaufspreis: Faktor mit 4 Stufen “hoch”, “niedrig”, “med”,…: 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 …  $ Unterhalt: Faktor mit 4 Stufen “hoch”, “niedrig”, “med”,…: 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 …  $ NumDoors : Faktor mit 4 Stufen “2”, “3”, “4”, “5mehr”: 1 1 1 1 1 1 1 1 1 1 …  $ NumPersonen : Faktor mit 3 Stufen “2”, “4”, “mehr”: 1 1 1 1 1 1 1 1 1 2 …  $ BootSpace : Faktor mit 3 Stufen “groß”, “med”, “klein”: 3 3 3 2 2 2 1 1 1 3 …  $ Sicherheit : Faktor mit 3 Stufen “hoch”, “niedrig”, “med”: 2 3 1 2 3 1 2 3 1 2 …  $ Bedingung : Faktor mit 4 Stufen “acc”, “gut”, “unacc”,…: 3 3 3 3 3 3 3 3 3 3 3 3 3 3 … > Zusammenfassung(Daten1)  KaufenPreis Wartung NumTüren NumPersonen BootSpace Sicherheitszustand    hoch :432 hoch :432 2 :432 2 :576 groß :576 hoch:576 acc : 384   niedrig :432 niedrig :432 3 :432 4 :576 med :576 niedrig :576 gut : 69   med :432 med :432 4 :432 mehr:576 klein:576 med :576 unacc:1210   vhigh:432 vhigh:432 5mehr:432 vgood: 65 

Nun werden wir den Datensatz in Zug und Validierungssatz im Verhältnis 70:30 aufteilen. Wir können auch einen Testdatensatz erstellen, aber bis auf weiteres werden wir nur Zug und Validierungssatz beibehalten.

1 2 3 4 5 6 7 8# Aufspaltung in Zug und Validierungssätze # Trainingssatz : Validierungssatz = 70 : 30 (zufällig) set.seed(100) Zug <- Stichprobe(nZeile(Daten1), 0.7*Zeile(Daten1), ersetzen = FALSCH) TrainSet <- data1[Zug,] ValidSet <- data1[-Zug,] Zusammenfassung(TrainSet) Zusammenfassung (ValidSet)
1 2 3 4 5 6 7 8 9 10 11 12> Zusammenfassung(TrainSet)  KaufenPreis Wartung NumTüren NumPersonen BootSpace Sicherheitszustand   hoch :313 hoch :287 2 :305 2 :406 groß :416 hoch :396 acc :264   niedrig :292 niedrig :317 3 :300 4 :399 mittel :383 niedrig :412 gut : 52   med :305 med :303 4 :295 mehr:404 klein:410 med :401 unacc:856   vhigh:299 vhigh:302 5mehr:309 vgood: 37  > Zusammenfassung (ValidSet)  KaufenPreis Wartung NumTüren NumPersonen BootSpace Sicherheitszustand   hoch :119 hoch :145 2 :127 2 :170 groß :160 hoch:180 acc :120   niedrig :140 niedrig :115 3 :132 4 :177 med :193 niedrig :164 gut : 17   med :127 med :129 4 :137 mehr:172 klein:166 med :175 unacc:354   vhigh:133 vhigh:130 5mehr:123