Arten von Algorithmen der künstlichen Intelligenz, die Sie kennen sollten [Ein vollständiger Leitfaden]
Veröffentlicht: 2019-11-13Künstliche Intelligenz hat sich zu einem bedeutenden Einfluss auf die Welt entwickelt. Da große Datenmengen von verschiedenen Anwendungen und Quellen generiert werden, können maschinelle Lernsysteme aus den Testdaten lernen und intelligente Aufgaben ausführen.
Künstliche Intelligenz ist das Gebiet der Informatik, das sich damit beschäftigt, Maschinen Entscheidungs- und Denkfähigkeit zu vermitteln. Künstliche Intelligenz ist also eine Mischung aus Informatik, Datenanalyse und reiner Mathematik.
Maschinelles Lernen wird zu einem integralen Bestandteil der Künstlichen Intelligenz und befasst sich nur mit dem ersten Teil, dem Prozess des Lernens aus Eingabedaten. Künstliche Intelligenz und ihre Vorteile haben uns immer wieder in Erstaunen versetzt.
Nehmen Sie online an den KI-Kursen der weltbesten Universitäten teil – Master, Executive Post Graduate Programs und Advanced Certificate Program in ML & AI, um Ihre Karriere zu beschleunigen.
Inhaltsverzeichnis
Arten von Algorithmen der künstlichen Intelligenz
Algorithmen der künstlichen Intelligenz können grob wie folgt klassifiziert werden:
1. Klassifizierungsalgorithmen
Klassifikationsalgorithmen sind Teil des überwachten Lernens. Diese Algorithmen werden verwendet, um die betroffene Variable in verschiedene Klassen zu unterteilen und dann die Klasse für eine gegebene Eingabe vorherzusagen. Beispielsweise können Klassifizierungsalgorithmen verwendet werden, um E-Mails als Spam zu klassifizieren oder nicht. Lassen Sie uns einige der häufig verwendeten Klassifizierungsalgorithmen diskutieren.

a) Naive Bayes
Der Naive-Bayes-Algorithmus arbeitet mit dem Bayes-Theorem und verfolgt im Gegensatz zu anderen Klassifizierungsalgorithmen einen probabilistischen Ansatz. Der Algorithmus hat einen Satz von A-priori-Wahrscheinlichkeiten für jede Klasse. Sobald Daten zugeführt werden, aktualisiert der Algorithmus diese Wahrscheinlichkeiten, um etwas zu bilden, das als spätere Wahrscheinlichkeit bekannt ist. Dies ist nützlich, wenn Sie vorhersagen müssen, ob die Eingabe zu einer bestimmten Liste von Klassen gehört oder nicht.
b) Entscheidungsbaum
Der Entscheidungsbaumalgorithmus ist eher ein Flussdiagramm wie ein Algorithmus, bei dem Knoten den Test für ein Eingabeattribut darstellen und Zweige das Ergebnis des Tests darstellen.
c) Zufälliger Wald
Random Forest funktioniert wie eine Gruppe von Bäumen. Der Eingangsdatensatz wird unterteilt und in verschiedene Entscheidungsbäume eingespeist. Der Durchschnitt der Ausgaben aller Entscheidungsbäume wird berücksichtigt. Random Forests bieten im Vergleich zum Entscheidungsbaumalgorithmus einen genaueren Klassifikator.
d) Support-Vektor-Maschinen
SVM ist ein Algorithmus, der Daten mithilfe einer Hyperebene klassifiziert und sicherstellt, dass der Abstand zwischen der Hyperebene und den Stützvektoren maximal ist.
e) K Nächste Nachbarn
Der KNN-Algorithmus verwendet eine Reihe von Datenpunkten, die in Klassen unterteilt sind, um die Klasse eines neuen Beispieldatenpunkts vorherzusagen. Er wird „Lazy-Learning-Algorithmus“ genannt, da er im Vergleich zu anderen Algorithmen relativ kurz ist.
2. Regressionsalgorithmen
Regressionsalgorithmen sind ein beliebter Algorithmus unter überwachten maschinellen Lernalgorithmen. Regressionsalgorithmen können die Ausgabewerte basierend auf Eingabedatenpunkten vorhersagen, die in das lernende System eingespeist werden. Die Hauptanwendung von Regressionsalgorithmen umfasst die Vorhersage des Börsenkurses, die Vorhersage des Wetters usw. Die gebräuchlichsten Algorithmen in diesem Abschnitt sind
a) Lineare Regression
Es wird verwendet, um echte Qualitäten zu messen, indem die konsistenten Variablen berücksichtigt werden. Es ist der einfachste aller Regressionsalgorithmen, kann aber nur in Fällen einer linearen Beziehung oder eines linear trennbaren Problems implementiert werden. Der Algorithmus zeichnet eine gerade Linie zwischen Datenpunkten, die als Best-Fit-Linie oder Regressionslinie bezeichnet wird, und wird verwendet, um neue Werte vorherzusagen.
Lesen Sie: Lineare Regression – Fragen und Antworten zu ML-Interviews
b) Lasso-Regression
Der Lasso-Regressionsalgorithmus funktioniert, indem er die Teilmenge von Prädiktoren erhält, die den Vorhersagefehler für eine Antwortvariable minimiert. Dies wird erreicht, indem den Datenpunkten eine Beschränkung auferlegt wird und einige von ihnen auf den Wert Null schrumpfen können.
c) Logistische Regression
Die logistische Regression wird hauptsächlich für die binäre Klassifizierung verwendet. Mit dieser Methode können Sie eine Reihe von Variablen analysieren und ein kategorisches Ergebnis vorhersagen. Zu den Hauptanwendungen gehören die Vorhersage des Customer Lifetime Value, des Hauswerts usw

d) Multivariate Regression
Dieser Algorithmus muss verwendet werden, wenn es mehr als eine Prädiktorvariable gibt. Dieser Algorithmus wird häufig in Produktempfehlungsmaschinen für den Einzelhandel verwendet, bei denen die bevorzugten Produkte der Kunden von mehreren Faktoren wie Marke, Qualität, Preis, Bewertung usw. abhängen.
e) Multipler Regressionsalgorithmus
Der multiple Regressionsalgorithmus verwendet eine Kombination aus linearer Regression und nichtlinearen Regressionsalgorithmen, wobei mehrere erklärende Variablen als Eingaben verwendet werden. Zu den Hauptanwendungen gehören sozialwissenschaftliche Forschung, Echtheit von Versicherungsansprüchen, Verhaltensanalyse usw.
3. Clustering-Algorithmen
Clustering ist der Prozess des Trennens und Organisierens der Datenpunkte in Gruppen basierend auf Ähnlichkeiten innerhalb der Mitglieder der Gruppe. Dies ist Teil des unüberwachten Lernens. Das Hauptziel ist es, ähnliche Artikel zu gruppieren. Beispielsweise kann es alle betrügerischen Transaktionen auf der Grundlage einiger Eigenschaften in der Transaktion zusammenfassen. Nachfolgend sind die gängigsten Clustering-Algorithmen aufgeführt.
a) K-Means-Clustering
Es ist der einfachste unüberwachte Lernalgorithmus. Der Algorithmus sammelt ähnliche Datenpunkte und bindet sie dann zu einem Cluster zusammen. Die Gruppierung erfolgt durch Berechnen des Schwerpunkts der Gruppe von Datenpunkten und anschließendes Auswerten der Entfernung jedes Datenpunkts vom Schwerpunkt des Clusters. Anhand der Entfernung wird der analysierte Datenpunkt dann dem nächstgelegenen Cluster zugeordnet. 'K' in K-Means steht für die Anzahl der Cluster, in die die Datenpunkte gruppiert werden.

b) Fuzzy-C-means-Algorithmus
Der FCM-Algorithmus arbeitet mit der Wahrscheinlichkeit. Es wird davon ausgegangen, dass jeder Datenpunkt eine Wahrscheinlichkeit hat, zu einem anderen Cluster zu gehören. Datenpunkte haben keine absolute Zugehörigkeit zu einem bestimmten Cluster, weshalb der Algorithmus Fuzzy genannt wird.
c) Erwartungsmaximierungs(EM)-Algorithmus
Es basiert auf der Gaußschen Verteilung, die wir in der Statistik gelernt haben. Daten werden in ein Gaußsches Verteilungsmodell abgebildet, um das Problem zu lösen. Nach Zuweisung einer Wahrscheinlichkeit wird eine Punktprobe basierend auf Erwartungs- und Maximierungsgleichungen berechnet.
d) Hierarchischer Clustering-Algorithmus
Diese Algorithmen sortieren Cluster hierarchisch, nachdem sie die Datenpunkte gelernt und Ähnlichkeitsbeobachtungen gemacht haben. Es kann zwei Arten geben
- Divisives Clustering für einen Top-Down-Ansatz
- Agglomeratives Clustering für einen Bottom-up-Ansatz
Lassen Sie uns abschließen und schließen
KI hat die Welt mehrfach aufgeschreckt und hat viele Anwendungen in der realen Welt, um ihre komplexen Probleme zu lösen. Wir hoffen, dass dieser Artikel etwas Licht in die verschiedenen Algorithmen der künstlichen Intelligenz und ihre allgemeinen Klassifikationen gebracht hat. Algorithmen werden basierend auf dem Bedarf und der Art der Datenpunkte ausgewählt, die wir haben.
Algorithmen haben ihre Vor- und Nachteile in Bezug auf Genauigkeit, Leistung und Verarbeitungszeit. Dies sind nur einige Algorithmen. Wenn Sie mehr erfahren möchten, schauen Sie sich das Executive PG Program in Machine Learning & AI von upGrad & IIIT-B an.
Was ist Naive Bayes?
Das Bayes-Theorem wird im Naive-Bayes-Algorithmus verwendet, der im Gegensatz zu den anderen Algorithmen auf dieser Liste einen probabilistischen Ansatz verfolgt. Dies bedeutet einfach, dass die Methode eine Reihe von früheren Wahrscheinlichkeiten für jede der Klassifikationen für Ihr Ziel festgelegt hat, anstatt direkt in die Daten zu springen. Der Algorithmus ändert diese A-priori-Wahrscheinlichkeiten, um die A-posteriori-Wahrscheinlichkeit zu generieren, wenn Sie die Daten eingeben. Infolgedessen kann dies in Situationen, in denen Sie vorhersehen müssen, ob Ihre Eingabe einer von n Klassen oder keiner von ihnen entspricht, unglaublich nützlich sein. Dies ist unter Verwendung einer probabilistischen Technik machbar, weil die Wahrscheinlichkeiten, die für alle n Klassen geworfen werden, ziemlich niedrig sein werden.
Was ist ein Entscheidungsbaum?
Der Entscheidungsbaum ist einfach eine flussdiagrammähnliche Baumstruktur, in der jeder äußere Knoten einen Versuch für ein Attribut darstellt und jeder Zweig das Ergebnis des Tests anzeigt. Die erwarteten Labels werden in den Blattknoten gespeichert. Wir beginnen an der Wurzel des Baums und arbeiten uns bis zum Blattknoten vor, indem wir Attributwerte vergleichen. Beim Umgang mit hochdimensionalen Daten und mit geringem Zeitaufwand für die Datenaufbereitung verwenden wir diesen Klassifikator. Ein Wort der Vorsicht jedoch: Sie neigen zu Überanpassung und können selbst bei geringfügigen Änderungen der Trainingsdaten stark variieren.
Was ist eine Support-Vektor-Maschine?
Eine SVM ist insofern einzigartig, als sie versucht, die Datenpunkte mit möglichst breiten Rändern zwischen zwei Klassen zu sortieren. Dies wird als maximale Randtrennung bezeichnet. Ein weiterer zu beachtender Punkt ist, dass SVMs im Gegensatz zur linearen Regression die Hyperebene nur unter Verwendung der Stützvektoren darstellen, während die lineare Regression den vollständigen Datensatz verwendet. SVMs sind besonders vorteilhaft, wenn Daten viele Dimensionen haben. Sie beginnen also damit, eine zufällige Hyperebene zu erzeugen und dann den Abstand zwischen ihr und den nächsten Datenwerten aus jeder Klasse zu messen. Stützvektoren sind die Datenpunkte, die der Hyperebene am nächsten liegen.