KI & Co: Was sind Machine Learning, Neuronale Netze und und und?
Wenn es um KI geht, weiß natürlich jeder Bescheid. Man nickt wissend, lacht an den wichtigen Stellen und kennt sich aus mit Halbwahrheiten. Problematisch wird es nur dann, wenn es über den Smalltalk hinausgeht. Und man wirklich einen Experten vor sich hat.
Mit diesem Artikel wollen wir Dir dabei helfen, beim nächsten Tech-Talk noch mehr zu glänzen!
Was ist künstliche Intelligenz (K.I.)?
Künstliche Intelligenz ist in der Lage, menschliche kognitive Fähigkeiten nachzuahmen. Dies geschieht, indem sie Informationen aus Eingabedaten erkennt und sortiert. Diese Art der Intelligenz kann durch programmierte Abläufe entstehen, aber auch durch maschinelles Lernen.
In der Praxis werden die Begriffe KI und Machine Learning als Synonyme verwendet. In der Wissenschaft ist Machine Learning (= maschinelles Lernen)sowohl ein Teilbereich als auch die Schlüsseltechnologie der künstlichen Intelligenz.
Machine Learning ist immer Künstliche Intelligenz Künstliche Intelligenz nicht immer Machine Learning.
Was ist Machine Learning?
Maschine Learning ermöglicht heutigen IT-Systemen, Muster und Gesetzmäßigkeiten zu erkennen und geeignete Lösungen zu entwickeln. Basis dafür sind vorhandene Datenbestände und Algorithmen. Beim Machine Learning generiert man „Wissen“ aus „Erfahrung“, indem Algorithmen aus eingepflegten Datenstrukturen ein komplexes Modell entwickeln.
Dieses Modell (das “Wissen”) kann auf neue Daten wiederum angewendet werden und damit beispielsweise Prognosen, Entscheidungen und Empfehlungen treffen.
Was sind neuronale Netze?
Ein künstliches neuronales Netzwerk (KNN) ist ein computergestütztes System, das versucht, die Struktur und Funktionsweise des Gehirns nachzuahmen. Es besteht aus einer Vielzahl von Verknüpfungen zwischen digitalen Neuronen, die miteinander kommunizieren und Informationen austauschen.
Die meisten KNN-Systeme sind in der Lage, sich selbst anzulernen und zu modifizieren, indem sie neue Informationen verarbeiten und bestehende Informationen überarbeiten. Dieser Lernprozess ähnelt dem, was im Gehirn stattfindet, wenn es neue Erfahrungen macht und Informationen verarbeitet.
Übrigens: Neuronale Netze sind sogar so intelligent, dass sie selbst über sich schreiben können. Dieser Teil wurde alleine von einem künstlichen Neuronalen Netz selbst geschrieben.
Beispiel: Unterscheidung Hundebild & Katzenbild
Ein Paradebeispiel ist die Unterscheidung eines Hundebilds von einem Katzenbild. Es werden Bilder von Hunden oder Katzen gezeigt mit dem Hinweis, welches der beiden Tiere dort abgebildet ist. Nach ausreichend vielen Probebildern kann das System schließlich ein nie zuvor gesehenes Bild klassifizieren, indem es nach den zuvor erlernten Mustern sucht. Damit wurde gelernt, Hund oder Katze auf beliebigen Bildern zu unterscheiden.
3 Schichten neuronaler Netzwerke
Innerhalb eines neuronalen Netzes sind drei wesentliche Schichten zu finden. Die Erste ist die Eingabeschicht (Inputlayer), welche alle Datenpunkte einliest. Innerhalb dieser Schicht befinden sich künstliche Input Neuronen, die die eingegebenen Informationen aufnehmen und dann tiefer ins Neuronale Netz weiterreichen.
Die nächsten Schichten sind die sogenannten Hidden Layer (auf deutsch: versteckte Schichten).
Die Informationen aus den Input-Neuronen werden – vereinfacht gesagt – von den Hidden-Layer-Neuronen angenommen, gewichtet und weitergereicht. Dabei werden manche Neuronen gar nicht erst aktiviert, während andere Neuronen ausgelöst werden und die erhaltenen Informationen wieder gewichten und weiterreichen.
Die Neuronen der letzten versteckten Schicht geben die gewichteten Daten an die Output-Neuronen weiter, indem das Gesamtergebnis, also die Klassifikation, dargestellt wird. Hier erhalten wir meist mehrere Ergebnisse. Schlussendlich wird das Ergebnis verwendet, welches am wahrscheinlichsten ist.
Wie trainiert man ein neuronales Netz?
Ein neuronales Netz trainiert man mithilfe von einer geeigneten Anzahl an Trainingsepochen, die durch den Data Scientist festgelegt werden. Dafür gibt es sog. „Trainingsdaten“. Diese sind ein Bruchteil des gesamt bekannten Datensatzes mit bekannten Labeln. Der andere Teil wird unabhängig davon behandelt und zur späteren Überprüfung von erzielten Trefferquoten verwendet. Diesen anteiligen Datensatz nennt man: Testdaten.
Nach dem Training werden Testdaten eingespeist, ohne die vorhandenen Labels mitzugeben. Die Qualität eines Netzwerkes lässt sich anschließend überprüfen und die Trefferquote bestimmen.
Was ist Deep Learning?
Deep Learning nennt man das Lernen in Künstlichen Neuronalen Netzen mit mehreren bis sehr vielen Hidden Layer. Es bezeichnet also ein sehr großes neuronales Netz, welches schwierig zu interpretieren ist, aber dafür große Erfolge erzielt.
Wofür braucht man Machine Learning, neuronale Netze & Co?
Neuronale Netze werden für Simulationen und Prognosen von komplexen Systemen und Zusammenhängen verwendet. Anwendungsgebiete sind: Wettervorhersage, medizinische Diagnostik oder auch Wirtschaftsprozesse.
Konkrete Beispiel für Einsatzbereiche:
- Bild-, Sprach- und Schrifterkennung (Alexa/ Siri, Text-to-speech- Services (Amazon Polly), FaceID, Service Chatbot)
- Vorhersagen / Prognosen von Klickraten bei Onlinewerbung / Kriminalitätsraten/ Immobilienpreisentwicklung / Nutzerverhalten / Aktienvorhersagen
- Berechnung von Ausfallwahrscheinlichkeiten im Maschinenpark
- Regelungstechnik – Gegenmaßnamen bei Überschreitung von Sollmaßnahmen
- Betrugserkennung in der Schadenregulierung von Versicherungen
- Zeitreihenanalysen
- Medizinische Diagnostik, z.B. DeepcOS
- Übersetzungstools, z.B. Deepl
Wer kennt sich damit aus?
Ab jetzt logischerweise du. Ansonsten natürlich wir. 😊
Bei Fragen und Wünschen stehen dir unsere Data Scientists Rede und Antwort. Turning Data into Information ist ihre Aufgabe: Sie sind grundsätzlich dafür verantwortlich, eine strukturierte Datenbasis aus unstrukturierten Rohdaten zu schaffen. Sie analysieren und schaffen mit fachlichem Wissen eine Entscheidungsgrundlage für Unternehmen.
Unsere Data Scientists freuen sich über jede Challenge. Melde dich gerne bei uns -> hallo@codecamp-n.com