Zurück

Top 10 ML Algorithmen für Einsteiger

Inhaltsverzeichnis

    Im Jahr 2022 feiern wir das 10-jährige Jubiläum von [at] – Alexander Thamm.

    2012 waren wir die erste Beratung im deutschsprachigen Raum, die sich Data & AI auf die Fahne geschrieben hat. Heute lässt sich sagen, künstliche Intelligenz (KI) hat das Potential, einen wichtigen Beitrag bei einigen der großen wirtschaftlichen und gesellschaftlichen Herausforderungen unserer Zeit zu leisten. KI spielt eine Rolle bei der Energiewende und bei der Reaktion auf den Klimawandel, beim autonomen Fahren, bei der Erkennung und Behandlung von Krankheiten oder der Pandemiebekämpfung. KI steigert die Effizienz von Produktionsprozessen und erhöht die Anpassungsfähigkeit von Unternehmen auf Marktveränderungen durch Echtzeitinformationen sowie Vorhersagen.

    Die wirtschaftliche Bedeutung der Technologie steigt rasant an. Mittlerweile nutzen mehr als zwei Drittel der deutschen Unternehmen künstliche Intelligenz und Machine Learning (ML).

    Mit unseren #AITOP10 zeigen wir euch, was gerade im Bereich Data & AI angesagt ist. Unsere TOP10-Listen präsentieren Podcast-Highlights, industriespezifische KI-Trends, KI-Experten, Tool-Empfehlung und vieles mehr. Hier bekommt ihr einen breiten Querschnitt über das Data & AI-Universum, das uns seit nunmehr 10 Jahren antreibt.

    Unsere Top 10 ML-Algorithmen

    Recommender, Clustering, Regression, Text Analytics, Anomaly Detection… Machine Learning kann heute für vielfältige Problemstellungen eingesetzt werden und ist dabei schneller und genauer denn je. Aber was hat es mit den Algorithmen dahinter auf sich? Wir schauen hinter die Kulissen und zeigen euch, welche Algorithmen beim Machine Learning wirklich zum Einsatz kommen.

    Platz 10 – Lineare Regression

    Lineare Regression ist eine der einfachsten Machine Learning (ML) Algorithmen und kinderleicht zu verstehen. Beispiel: Wer einen Baum pflanzt, tut was Gutes für die Umwelt. Leider dauert es eine Weile, bis aus einem kleinen Samen ein ausgewachsener Baum wird. Um das zu dokumentieren, wird in unserem Beispiel jeden Monat die Baumhöhe gemessen. Das funktioniert zwar in den ersten zwei Jahren gut, irgendwann kommt aber selbst der Größte nicht mehr mit dem Maßband an die Baumspitze. Hier kommt die lineare Regression ins Spiel: Da wir die bereits gemessenen Höhen in ein Diagramm eingetragen haben, können wir die zukünftige Höhe des Baumes zu jedem Zeitpunkt relativ genau schätzen. Haben wir die Höhe das letzte Mal vor einem Monat messen können, ziehen wir durch alle bisher gemessenen Punkte eine Gerade und verlängern diese noch ein Stück weiter. Nun lässt sich je nach durchschnittlicher Abweichung ziemlich genau die aktuelle Baumhöhe für diesen Monat bestimmen.

    Lineare Regression zeigt den Zusammenhang zwischen einer unabhängigen Variable (in diesem Fall der Zeit) und einer abhängigen Variable (der Höhe des Baumes). Oft sind aber mehrere unabhängige Variablen vorhanden, mithilfe derer eine Vorhersage getroffen werden soll. Dazu eignet sich die multiple lineare Regression. Das Funktionsprinzip bleibt gleich, jedoch werden mehrere Dimensionen verwendet, um eine Vorhersage zu treffen. In unserem Beispiel wären das beispielsweise zusätzlich zur Zeit die Temperatur. Steigt die Temperatur, wächst der Baum schneller, sinkt sie, wächst er langsamer.

    Wichtig dabei ist aber, dass ein linearer Zusammenhang zwischen den unabhängigen Variablen (Zeit, Temperatur) und der abhängigen Variable (Höhe des Baumes) gibt. Besteht der Zusammenhang nicht, macht lineare Regression keinen Sinn und wir ermitteln hier Zufallszahlen. Die Fehlerrate der Werte sollte annähernd normalverteilt sein. Sind die Werte kreuz und quer verstreut, wird das Festlegen einer passgenauen Regressionslinie (Ausgleichsgerade) schwierig. Zuletzt sollte die unabhängigen Werte nicht voneinander abhängig sein. Die Sonnenstunden sind beispielsweise von der variable Temperatur abhängig und eignen sich daher nicht für die multiple lineare Regression.

    Sinnvoll ist der Einsatz von (multipler) linearer Regression beispielweise beim Forecasting von Markttrends, Preisentwicklungen sowie der Risikobewertung in der Finanz- und Versicherungsbranche.

    Platz 9 – Logistische Regression

    Nicht immer muss ein konkreter Zahlenwert vorhergesagt werden, oft geht es auch um die Klassifizierung von Daten. Damit gemeint ist die Vorhersage der Kategorie einer Variable mithilfe von gegebenen unabhängigen Variablen. Beispiel: Ernährung, Sport und Gesundheit spielen heute eine große Rolle. Wer sich gesund ernährt und viel Sport treibt, dem wird ein längeres Leben, gute Gesundheit und ein niedrigeres Risiko einen Herzinfarkt zu erleiden. Aber stimmt das wirklich? 

    Möchte ich vorhersagen, ob ich innerhalb der nächsten 10 Jahre einen Herzinfarkt erleiden werde, kann ich mehrere Werte für die Vorhersage nutzen: Was ist mein BMI (Body-Mass-Index)? Habe ich Vorerkrankungen? Wie ist mein Blutdruck? Alles Werte, durch die ich mehr oder weniger genau meinen Gesundheitsstatus beschreiben kann. Durch logistische Regression kann man eine Vorhersage treffen, ob in den nächsten 10 Jahren einen Herzinfarkt wahrscheinlich ist. Aber wie? 

    Zunächst benötigt man einen Datensatz, in dem all diese Daten vorhanden sind (BMI, Blutdruck, Alter, Vorerkrankungen, Blutdruckwerte). Um ein ML-Modell zu trainieren, muss außerdem in den Trainingsdaten die Information enthalten sein, ob innerhalb der nächsten 10 Jahre ein Herzinfarkt eintrat. Beim Training wird eine Kurve ermittelt, die bestimmt, in welche Kategorie Daten eingeordnet werden können. Im Gegensatz zu linearer Regression sagt die logistische Regression also keine Zahlenwerte vorher, sondern klassifiziert Datensätze in 2 Kategorien: Ja und Nein, Herzinfarkt oder kein Herzinfarkt. Sind Werte wie Blutdruck, BMI oder Cholesterin über oder unter einem bestimmten Level, behauptet das Modell, dass der Patient in den nächsten 10 Jahren einen Herzinfarkt erleidet. Aber wie genau ist diese Vorhersage?

    Das gute an logistischer Regression ist, dass eine Aussage über die Genauigkeit der Vorhersage getroffen werden kann. So bestimmt die bereits erwähnte Kurve die Grenze: Herzinfarkt/kein Herzinfarkt. Zusätzlich ermittelt das Modell die Wahrscheinlichkeit der Vorhersage. Liegen die Werte beispielsweise nah an der Grenze, ist die Wahrscheinlichkeit lediglich knapp über oder unter 50%. Andersherum liegt sie je nach Genauigkeit des Modells bei knapp über 0% oder knapp unter 100%.

    Daher liefert die logistische Regression niemals eindeutige Werte, lediglich probabilistische Werte. Das bedeutet in der Praxis: Eine Person mit einem BMI von 50 wird zu 84% einen Herzinfarkt innerhalb der nächsten 10 Jahre erleiden. Nicht zu verwechseln ist dieser Wert mit der Accuracy des gesamten Modells. Diese kann durch Einbeziehung weiterer für die Ausgangsgröße wichtige Werte oder Anpassung des Modells erhöht werden.

    Genutzt wird der Algorithmus im Credit Scoring, in der Medizinforschung und Erkrankungsvorhersage oder auch für die Betrugserkennung in der Finanz- und Versicherungsbranche. Insgesamt ist logistische Regression ein effektiver Algorithmus für ganz unterschiedliche Fälle von Klassifizierung.

    Platz 8 – Entscheidungsbäume

    Was hat Machine Learning mit Bäumen zu tun? Mehr als man denkt! Um beim Beispiel zu bleiben: Wie kann man vorhersagen, ob ein Baum Früchte trägt? Mit einem Entscheidungsbaum. 

    Hat man eine Tabelle gefüllt mit verschiedenen Attributen von Bäumen, kann man daraus einen Entscheidungsbaum erstellen. Angefangen bei der Wurzel, fragt man bei jeder Gabelung nach dem Wert eines Baums-Attributs und geht dann zur nächsten Gabelung. Am Ende gibt einem der Baum jeweils die Antwort 0 oder 1, ja oder nein. An der ersten Gabelung steht beispielsweise die Frage “Ist der Baum tot?”. Ist das Attribut der Spalte “lebendig” (= nein), ist die Vorhersage beendet: Der Baum wird keine Früchte tragen. Andersrum geht es weiter: „Wie groß ist der Baum?“. Ist die Größe des Baums unter einem bestimmten Schwellwert, trägt er keine Früchte und die Antwort ist wiederum “nein”. Falls doch, geht der Entscheidungsbaum immer eine Gabelung weiter, bis das Ende des letzten Astes und damit die abschließende Vorhersage “ja” oder “nein” getroffen wird. 

    Entscheidungsbäume werden in der Kundenaquise zur Identifizierung potenzieller Kunden oder zur Bestimmung der Kreditwürdigkeit in der Finanzbranche verwendet. Sie sind einfach zu lesen und zu interpretieren und können auf nicht-lineare Daten angewendet werden. Ein weiterer Vorteil ist, dass die Daten meist wenig Vorbereitung und Bereinigung benötigen, weil Ausreißer und fehlende Daten einen geringen Einfluss auf die Vorhersagegenauigkeit haben. Dafür sind sie weniger effektiv in der Vorhersage von kontinuierlichen Variablen, weil durch das Kategorisieren eine Variable Informationen verloren gehen. 
     

    Platz 7 – Random Forest

    Gerade wenn man wichtige Entscheidungen trifft, fragt man oft seine Freunde, Verwandte oder Kollegen um Rat. Dabei beschränkt man sich selten auf eine Person, sondern fragt mehrere, um diverse und vielleicht auch unterschiedliche Antworten zu bekommen. Ganz ähnlich funktioniert der Random Forest Algorithmus. Dabei nutzt der Random Forest Algorithmus Entscheidungsbäume – nicht nur einen, sondern gleich einen ganzen Wald. 

    Wie auch bei einer wichtigen persönlichen Entscheidung, kennen sich unterschiedliche Vertrauenspersonen mit unterschiedlichen Aspekten der Entscheidung aus. Beim Random Forest Algorithmus werden analog dazu Entscheidungsbäume mit unterschiedlichen, neu zusammengefügten Teilen des Datensatzes generiert. Das nennt man Bagging oder auch Bootstrap Aggregation. Wichtig ist, dass sich dadurch kein Entscheidungsbaum doppelt, sondern jeweils einen anderen Teil des gesamten Datensatzes repräsentiert. 

    Zuletzt kommt man nach Rücksprache auf einen Konsens: Beim Random Forest Algorithmus passiert das ganz demokratisch. Die Vorhersage wird aufgrund des Votings aller Entscheidungsbäume generiert. Stimmen 3 mit “ja” und 2 mit “nein”, lautet die Entscheidung also “ja”. Wenn das Ziel der Vorhersage keine Klassifikation, also ein Wahrheitswert, sondern ein Zahlenwert sein werden soll, wird der Durchschnittswert aller Bäume genommen. 

    Der Algorithmus findet Anwendung in den verschiedensten Feldern: Im Finanzsektor kann Random Forest zur Identifizierung von Zahlungsbetrug oder zum Kredit-Scoring verwendet werden; in der Medizin zur Identifizierung von Krankheiten aufgrund der Krankenakte oder Vorhersage der Arzneimittelempfindlichkeit. Der Algorithmus kann also für vielfältige Klassifikations- und Regressionsprobleme benutzt werden.

     

    Platz 6 – K-Means

     

    Wer eine neue Filiale seiner Pizzeria aufmachen möchte, muss sich zunächst überlegen wo. Dafür eignet sich der Clustering-Algorithmus K-Means hervorragend. Möchte man beispielsweise in ein neues Stadtviertel expandieren und dort 2 Filialen eröffnen, so kann man dafür die bestehenden Daten über die Orte der Bestellungen aus diesem Viertel nutzen. Das minimiert die Lieferwege und ermöglicht später Vorhersagen darüber, zu welchem der beiden Restaurants ein möglicher Kunde nach Standort geht. 

    Zunächst zeichnet man auf einer Karte alle Datenpunkte auf und platziert zusätzlich dazu 2 (für k=2 bzw. 2 Fililalen) sogenannte Zentroide auf zwei zufällige Punkte der Karte. Jetzt werden alle Punkte dem jeweilig nächsten Zentroid zugeordnet und dementsprechend in eine Klasse eingeordnet. Die Zentroide werden anschließend wieder gelöscht. Nun wird anhand des “Massenschwerpunkts” die Mitte aller Punkte einer Klasse ermittelt und so die neuen Zentroiden bestimmt. Jetzt geht es wieder von vorne los: Die Punkte werden dem näheren Zentroid zugeordnet, klassifiziert und die Zentroiden werden wieder gelöscht. Das passiert so lange, bis die Position der Zentroiden sich nicht mehr verändern. 

    So können 2 optimale Standorte für die neuen Filialen bestimmt werden. Das gleiche kann mit den Herkunftsdaten der Kunden gemacht werden, nachdem die Filialen eröffnet wurden. Dadurch kann eine Vorhersage getroffen werden, bei welcher Filiale ein Kunde bestellen wird.

    K-Means kann beispielsweise zum Clustering von kriminellen Aktivitäten genutzt werden. Auf einer Stadtkarte können so kriminelle Hotspots gefunden und nach der Art der häufigsten Straftaten untersucht werden. Weiterführend ist der Algorithmus hilfreich bei der Identifizierung von betrügerischen Finanzaktivitäten oder der Anomalie-Erkennung in Netzwerken.

    Platz 5 – k-nearest neighbors

    Stell dir vor, du suchst nach einem Job. Deine 3 besten Freunde stehen um dich herum und beraten dich, ob du Data Strategist oder Data Scientist werden solltest. Welchen Konsens gäbe es bei den dreien? Und welchen, bei deinen 5, 10 oder gar 20 besten Freunden? 

    K-NN löst dieses Problem ganz simpel: Derjenige, der am nächsten dran ist, gewinnt. Stehst du also direkt neben einem Data Strategisten, bist du jetzt auch einer. Nun kann es aber sein, dass dieser eine Data Strategist dich unbedingt überzeugen möchte, auch einer zu werden, weil rundherum nur Data Scientisten stehen. Hier naht das “k” zur Rettung: Das k bestimmt, wie viele deiner Freunde, die am nächsten an dir dran stehen, miteinbezogen werden. Bei k=3 stimmen deine 3 nächsten Freunde ab – ganz demokratisch. Nun kann es sein, dass der Data Strategist ganz alleine dasteht und überstimmt wird. So funktioniert die Vorhersage von k-NN. 

    K-NN ist ein Algorithmus zum Clustern von Daten. Das Ziel ist, einen Wert, der nicht bekannt ist, einer bestimmten Kategorie zuzuordnen. Das geschieht ganz demokratisch: Man stellt alle Datenpunkte beispielweise auf einer zweidimensionalen Fläche dar. Die Daten sind bereits in Kategorien eingeteilt. Nun möchte ich aber erfahren, zu welcher Kategorie einer neuer Datenpunkt gehört. Hier kommt das k ins Spiel. Der Datenpunkt wird auf der Fläche dargestellt und es werden die Kategorien der k nächsten Nachbarn betrachtet. Anschließend wird abgestimmt: Die meisten Nachbarn mit der gleichen Kategorie gewinnen.

    K-NN lässt sich in der realen Welt vor allem gut zur Erkennung von Ausreißern nutzen. Das hilft sowohl in der Finanzbranche bei der Bekämpfung von Kreditkartenbetrug als auch in der Überwachung von Computersystem oder Sensornetzwerken. Weiterführend kann k-NN zur Vorverarbeitung und Bereinigung von Daten verwendet werden, wenn anschließend weitere ML-Algorithmen auf einen Datensatz angewendet werden sollen.

    Platz 4 – Boosting

    Boosting-Algorithmen halten für Data Scientists so einige Lebensweisheiten bereit. Dabei handelt es sich beim Boosting um einen relativ generischen Algorithmus, der in Kombination mit verschiedenen Algorithmen angewendet werden kann. Dabei konstruiert ein Boosting-Algorithmus aus mehreren schwachen ML-Modellen ein einzelnes starkes ML-Modell. Aber wie? 

    Verbunden werden auch die Schwachen mächtig. 

    Friedrich Schiller in Wilhelm Tell

    Wir lernen schon früh im Leben, dass wir gemeinsam stärker und schlauer sind als allein. Den schweren Küchentisch zu verschieben ist alleine fast unmöglich, zu zwei schwierig und zu viert gar kein Problem. Genau dieses Konzept machen sich Boosting-Algorithmen zunutze. Es werden unterschiedliche Modelle trainiert, die zwar einzeln einen hohe Fehlerrate und schlechte Vorhersagegenauigkeit haben, zusammen aber eine deutlich bessere. Wer Teil 1 unserer ML-Algorithmen Serie verfolgt hat, der hat eventuell ein Deja-Vu: Random Forests. Aber wo liegt der Unterschied? 

     

    Boosting-Algorithmen machen sich ein weiteres sehr bekanntes Konzept zu Nutze: Lernen aus den Schwächen anderer.  Hat eine:r meiner Komilliton:innen die Statistik-Klausur vor mir geschrieben und bei der linearen Regression kläglich versagt, wird er oder sie mir dazu raten, mich vor allem damit zu beschäftigen. Natürlich übt man vor der Klausur jetzt verstärkt die lineare Regression, die anderen Klausurthemen werden aber nicht außer Acht gelassen. So funktioniert Boosting – lerne aus der Vergangenheit und nutze dafür ein ganzes Ensemble aus Modellen.

    Verbunden werden diese beiden Techniken durch Iteration: Das erste Modell lernt, wird im Hinblick auf die Vorhersagegenauigkeit getestet und abgespeichert. Schwächen bei der Vorhersage des Modells werden identifiziert, die zugehörigen Daten etwas mehr gewichtet und das nächste Modell wird trainiert. Alle Modelle werden in einem Ensemble gespeichert und treffen somit am Ende zusammen die Vorhersage. Bei der Ermittlung der Schwäche bzw. falsch klassifizierten Datenpunkte gibt es bei Boosting-Algorithmen verschiedene Versionen: Bei AdaBoost wird dafür die Fehlerrate genutzt, beim Gradient Boosting der Abstand des vorhergesagten Punktes zum wahren Wert.

    Eine Implementation von Boosting-Algorithmen ist beispielsweise das XGBoost-Framework. Mithilfe von Regressionsbäumen, der Minimierung der Verlustfunktion durch Extreme Gradient Boosting, Parallel-Processing und Regularisierungsparametern ist XGBoost schneller und genauer als AdaBoost oder Random Forest.

    Platz 3 – Naive Bayes

    Spam-Mails nerven. Umso mehr, wenn sie nicht im Spam-Order, sondern im normalen Postfach landen. So könnten sie mitunter viel Schaden anrichten und ganze Intranets lahmlegen. Deshalb nehmen wir uns dieses Problems nun an – mit Naive Bayes. 

    Der Algorithmus macht es sich zunächst leicht: Um ein ML-Modell mit Naive Bayes zu trainieren, werden zunächst alle bereits im Spam-Ordner vorhandenen Mails in Wörter unterteilt. Die Häufigkeit der vorhandenen Wörter wird anschließend ermittelt. Zum Beispiel: Wie oft kommt das Wort “Spam” in einer Spam-Mail vor? Wie oft kommt das Wort “Hallo” in einer normalen Mail vor? 

    Das Gröbste haben wir nun schon hinter uns. Jetzt können wir anhand einer neuen Mail entscheiden, ob diese wahrscheinlich eine Spam-Mail ist oder nicht. Aber wie? Mithilfe des Satz von Bayes! Dieser besagt: Wie groß die Wahrscheinlichkeit ist, dass A eintritt, wenn B schon eingetreten ist. Anders gesagt, wie groß die Wahrscheinlichkeit ist, dass die E-Mail Spam ist, wenn ein bestimmtes Wort darin vorkommt. 

    Wer aufmerksam mitgelesen hat, wird festgestellt haben, das Wort “Spam” – das wir vorher gezählt haben – wird wohl kaum in einer Spam-Mail stehen. Die Wahrscheinlichkeit dafür wird also 0 betragen. Wer bei der Wahrscheinlichkeitsrechnung in der Schule gut zugehört hat weiß: Wahrscheinlichkeiten werden miteinander multipliziert. 0 * 100% sind aber immer noch 0 … wie jetzt? 

    Um das zu vermeiden, addieren wir zu jedem Wort, was wir gezählt haben ein imaginäres Wort dazu. Das bedeutet, unser Wort “Spam” wurde nun nicht 0-mal gezählt, sondern 1 Mal. So lässt sich mit Naive Bayes voraussagen, ob unsere E-Mail Spam ist oder nicht. 

    Ein klassischer Use Case für Naive Bayes ist die Dokumentenklassifikation. Ein Naive Bayes Classifier kann bestimmen, ob ein Dokument eher der einen oder der anderen Kategorie angehört. Hierzu zählt auch die Identifizierung von Spam. Weiter können Sprache oder Text auf Stimmung analysiert werden (werden hier positive oder negative Emotionen ausgedrückt?). Naive Bayes stellt eine Alternative zu vielen, komplizierteren Algorithmen dar, gerade wenn die Menge an Trainingsdaten vergleichsweise gering ist. 

    Platz 2 – Support Vector Machines

     

    Wer schon mal auf einer Landstraße unterwegs war, hat mit annähend hundertprozentiger Sicherheit dort mal einen Baum gesehen. Meist sogar mehrere – einen sogenannten Wald. Diese Bäume stehen oft schon länger da, als die Straße, auf der man fährt. Falls diese aber direkt am Wegesrand wachsen, kommt es schonmal vor, dass sich Wurzeln unter den Asphalt verirren und nervige Huckel oder Straßenschäden entstehen. Das möchten wir verhindern. Aber wie? 

    Landstraßen führen oft an Wäldern vorbei oder durch Wälder hindurch. Um zwei kleine Dörfer zu verbinden, möchten wir eine Straße zwischen einem Misch- und einem Nadelwald bauen. Dabei helfen uns Support Vector Machines. Um den Asphalt noch Jahre später befahren zu können und die Ruhe der Wälder zu bewahren, ist es nötig, die Straße möglichst weit weg von beiden Wäldern zu bauen. Support Vector Machines machen genau das möglich: Sie ermitteln eine Linie, die zwei Klassen von Daten (Misch- und Tannenwald) optimal separieren. Doch was bedeutet hier optimal? 

    Optimal bedeutet, die beiden Klassen möglich weit voneinander zu separieren. Das hat einen ganz praktischen Vorteil: Vergrößert sich einer der Wälder, wachsen die jungen Ausläufer nicht zu nah an der Straße und der Asphalt bleibt noch Jahre später frei von Straßenschäden. Ermittelt wird diese optimale Trennlinie durch Vektoren. Das hört sich zwar mathematisch an, ist aber gar nicht so kompliziert. 

    Wir führen rechts und links von der Straße Korridore ein, die parallel zur Straße verlaufen. Anschließen verbreitern wir diese, bis sie an den nächsten Baum treffen. Nun kann es sein, dass wir uns beim Planen verschätzt haben und den Korridor noch verbreitern könnten, wenn die Straße eine andere Richtung nimmt. Dazu messen wir orthogonal den Vektor vom Korridor zum zweitnächsten Punkt. Können wir diesen noch weiter minimieren, besteht Verbesserungsbedarf. Liegt der Korridor an 2 Punkten an, ist unsere Straße optimal geplant. 

    Sprießt nun ein neuer Baum aus dem Boden (ähnlich einer Vorhersage) kann aufgrund des Korridors ziemlich genau gesagt werden, zu welcher Klasse der Punkt bzw. zu welchem Wald der Baum gehört. Umso breiter der Korridor, umso vielversprechender die Vorhersage. 

    In unserem Bespiel haben wir uns eine zweidimensionale Fläche angeschaut. Support Vector Machines können das Gleiche jedoch sogar in einem drei-dimensionalen Feld. Liegen die Punkte nicht wie hier in 2 Klassen nebeneinander, sondern wird eine von der anderen eingekesselt, kann eine weitere Dimension mit einer Transferfunktion hinzugefügt werden. So lassen sich die Punkte wieder mit einer linearen Linie unterteilen. 

    Anwendung finden Support Vector Machines in nahezu allen Bereichen: Zur Gesichtserkennung kann die Grenze zwischen Hintergrund und Körper gezogen werden, bei der Handschrifterkennung dient der Algorithmus zu Zeichenerkennung oder hilft bei der Klassifizierung von Artikel in verschiedene Kategorien. Der Algorithmus erfordert nur kurze Trainingszeiten und ist daher für manche Probleme eleganter und besser geeignet als ein aufwendig zu trainierendes künstliches neuronales Netz. 

    Platz 1 – Artificial Neural Networks

    Ein künstliches neuronales Netz ist die “Königsklasse” der ML-Algorithmen. Es benötigt viel Rechenpower und hat teilweise lange Trainingszeiten. Dafür kann es aber komplexe Probleme in nahezu allen Bereichen lösen. Beispielweise Bild- und Videoerkennung mit ImageNet, NLP mit GPT-3 (und bald OpenGPT-X), oder Bilderstellung mit DALL:E 2 sind bekannte Aufgaben, die mit künstlichen neuronalen Netzen bewältigt werden. Der Haken an der Sache: künstliches neuronale Netze sind unglaublich kompliziert zu durchblicken und verstehen. 

    Das Vorbild von künstlichen neuronalen Netzen ist das menschliche Gehirn. Daher ähneln sich die die Funktionsprinzipien dieser beiden Systeme. Da wir aber (leider) keine Neurowissenschaftler sind, bringt uns diese Metapher nicht wirklich näher zum Verständnis künstlicher neuronaler Netze. Also ein etwas realitätsnäheres Beispiel, das selbstfahrende Auto. 

    Die heute von verschiedenen Automobilherstellern entwickelten Autos nutzen diverse Technologien wie Kameras, LIDAR Technologie und Näherungssensoren. Natürlich wissen wir alle, wie man Auto fährt, ein künstliches neuronales Netz weiß das jedoch nicht. Wir nutzen als Eingänge also vier Radarsensoren (vorne links/rechts, hinten links/rechts) und messen die Geschwindigkeit des Fahrzeugs. Unsere Möglichkeiten das Fahrzeug zu steuern, also die Ausgänge beschränken sich auf Gas, Bremse und Lenken. Und wie verkabeln wir das Ganze?

    Ganz einfach: Alles mit jedem. Jeder Input und jeder Output stellt dabei ein Neuron dar. Das bedeutet aber leider auch, dass ein Signal vom hinteren Radarsensor die Bremse triggern würde oder ein Signal vom vorderen Radar das Gas. So wird unser Auto vorerst nicht in Fahrt kommen. Nun kommt aber der Clou und Grund, warum künstliche neuronale Netze so schwer zu durchblicken sind. Bislang besteht unser künstliches neuronales Netz aus 2 Schichten: Input und Output. Dazwischen fügen wir jetzt aber eine Schicht weiterer Neuronen ein, ein sogenanntes “hidden layer”. Dieses ist mit der Input- und Output-Schicht kreuz und quer verbunden. Durch verschiedene Rechenoperationen kann es die Eingangssignale addieren, umkehren, aggregieren oder auch subtrahieren. Dadurch verändert sich der Signalfluss je nach Eingang. Aber kann unser Auto dadurch schon fahren? Leider immer noch nicht.

    Nun wird dieses Modell trainiert. Bei diesem Prozess versucht es, durch Trial-and-Error beim vorgegebenen Input auf den richtigen Output, also die richtige Reaktion, zu kommen. Mithilfe von Trainingsdaten wird das Modell trainiert und findet dabei heraus, welche Verbindungen bei bestimmter Transformation in dem “hidden layer” zum richtigen Ergebnis führen. Ist der Output falsch, werden die Funktionen der Neuronen verändert und es wird erneut trainiert. Hat es eine gewisse Genauigkeit erreicht, kann es mit unbekannten Daten getestet werden und bei Bestehen im selbstfahrenden Auto implementiert werden.

    In der Realität haben künstliche neuronale Netze mehrere Layer. Auch der Input ist unterschiedlich: Mal sind es Zahlen, aber auch Wörter oder auch Bilder bzw. Videos. Als Output haben komplizierte Modelle wie beispielweise DALL:E 2 gleich ein ganzes Bild, also sehr viele einzelne Werte. Bei anderen Modellen geht es nur um die Erkennung einer handgeschriebenen Zahl – also genau einen Output. Genau diese Vielseitigkeit machen künstliche neuronale Netze aber aus. Sie können die unterschiedlichsten Probleme in nahezu jeder Branche lösen, egal um welche Datentypen es sich handelt. Lediglich die Menge an Trainingsdaten und die verfügbare Rechenpower muss vergleichsweise relativ groß sein, um effektive künstliche neuronale Netze zu trainieren.

    Künstliche neuronale Netze werden von nahezu allen Tech-Konzernen genutzt – wie Google, Facebook, Apple, Netflix Amazon, Microsoft – und können für die verschiedensten Zwecke genutzt werden: Zur Generierung von User-Insights, Text-Analyse, Recommender-Systeme, Entdeckung von Medikamenten oder auch für bahnbrechende wissenschaftliche Erkenntnisse wie bspw. AlphaFold von Deepmind.
    Teste neuronale Netzwerke selbst

    Diesen Beitrag teilen:

    X

    Cookie Freigabe

    Diese Website verwendet notwendige Cookies zur Sicherstellung des Betriebs der Website. Eine Analyse des Nutzerverhaltens durch Dritte findet nicht statt. Detaillierte Informationen über den Einsatz von Cookies finden Sie in unseren Datenschutzerklärung.