Deep Learning – Erklärung und Beispiel mit Neronalen Netzen

Deep Learning Beginenr Coding Lab Steffen Lippke Tutorials und Guides

Deep Learning? Tiefes Lernen? Hä?

Ich möchte Dir heute erklären, was Deep Learning ist, wie es funktioniert und sich von andern Buzzwords wie Künstliche Intelligenz oder Machine Learning unterscheidet.

Dazu stelle ich Dir noch ein eigenes Beispiel vor.

Ziel, Sinn und Zweck von Deep Learning

Für was brauche Deep Learning?

Typische Deep-Learning Anwendungen sind z. B. eine verbesserte Textübersetzung (Natural Language Processing) oder das Erkennen von Gegenständen auf einem Bild. Deep Learning ist in der Lage wie ein Mensch auf Basis von einem Wissensschatz etwas zuzuordnen. Das Wissen ist in einem künstlichen neuronalen Netz gebunden (siehe unten).

Deep Learning verwenden Wissenschaftler, um neue Prognosen zu erstellen und komplexe Entscheidungen von einem Algorithmus übernehmen zu lassen.

Anwendung und Probleme für Deep Learning

Die typischen Probleme von Deep Learning sind Mustererkennung und Klassifikation. Muster ist eine statische Struktur, die aufgrund ihrer Beschaffenheit wiedererkennbar ist. Ein Beispiel für Muster sind der Klang eines Wortes oder eine Bild-Textur.

Eine Klassifikation ist die Gruppierung von Objekten anhand ihrer charakteristischen Merkmale. Der Computer soll z. B. auf einem Bild zwischen Menschen und Gegenständen entscheiden können.

Abgrenzung von Künstliche Intelligenz, Machine Learning und Deep Learning

Wenn ich Künstliche Intelligenz, Machine Learning oder Deep Learning definieren möchte, wird schwierig. Bis heute gibt es keine einheitliche Definition, was unter diesen Begriffen fällt. Jedes zweites Startup kann von sich behaupten, dass diese „mit Künstlicher Intelligenz“ arbeiten.

Jeder hat eine andere Vorstellung. Jeder versteht etwas Anderes. Jeder definiert es anders.

Ich

Hype oder Althergebrachtes?

Wusstest Du das Künstliche Intelligenz, Machine Learning oder Deep Learning kein neuer Hype ist?

Arthur Samuel nutzte den Begriff “Machine Learning” im Jahr 1959. Im Sommer 1959 verstaltet John McCarthy den Workshop Dartmouth Summer Research Project on Artificial Intelligence.

Die Herausforderung früher lag zum größten Teil in der technischen Umsetzung. Die CPU-Leistung, Speicherplatz und Hauptspeicher waren sehr eingeschränkt.

Erst mit besseren Maschinen konnten die Informatiker beeindruckende Ergebnisse erzielen. Ein bekanntes Beispiel ist der Sieg gegen den Schachweltmeister im Jahr 1997. Künstliche Intelligenz nehmen die Menschen verstärkt war, weil diese in den letzten Jahren den Menschen in einigen Disziplinen geschlagen hat.

Der Überbegriff: Künstliche Intelligenz

Artificial Intelligence (AI) oder Künstliche Intelligenz versucht menschlichen / tierliche Intelligenz oder Verhalten mit Computern nachzuahmen. Eine wesentliche Unterscheidung von Künstlicher Intelligenz ist „eng (fokussierte)“ und „weit (umfassende)“:

Eine „umfassende“ KI kann alle Probleme intelligent lösen. Beim autonomen Fahren muss das Auto nicht nur Gas geben können und Schilder interpretieren, sondern auch das Verhalten aller Verkehrs-Teilnehmer korrekt interpretieren können.

Eine „fokussierte“ KI kann nur eine spezielle Aufgabe sehr gut lösen. In der Produktion soll z. B. eine KI eine fehlerfrei von einer fehlerbehafteten Schraube unterscheiden können. Solche KIs konnten des Öfteren die menschlichen Weltmeister dieses Faches schlagen.

Das Vorgehen: Machine Learning

Machine Learning (ML) oder maschinelles Lernen wendet das Konzept der Künstlicher Intelligenz an. Der Computer, eine Maschine, lernt auf der Basis einer Datengrundlage. Die Fähigkeiten des Computers verbessern sich mit der Menge an Daten (Trainingssätze), welcher er zum Lernen bekommt. Je mehr richtig zugeordneten Gegenständen (beschildert) er analysieren kann, desto besser kann er neue Gegenstände einsortieren.

Die Durchführung: Deep Learning

Deep Learning (DL) ist ein Teilgebiet von Machine Learning. Mit Deep Learning verbinden viele Wissenschaftler künstliche neuronale Netze. Neuronale Netze können nicht nur zuordnen, sondern Vorhersagen und Prognosen generieren.

Ein Beispiel ist die Predictive Maintaince: „Wie viele Wochen dauert es, bis der Lüfter ausfällt“. Die neuronale Netze simulieren eine Verbunden aus Neuronen, die dem menschlichen Gehirn nachempfunden sind.

Was sind künstliche Neuronale Netze

Künstliche neuronale Netze beinhalten als eine abstrahierte Verarbeitungsstruktur mehreren Eingängen, versteckte Schichten und Ausgänge. Sie wandeln die Eingaben in eine Ausgabe um, die von den Gewichtungen der Pfeile innerhalb des Netzes abhängt.

Die Eingänge können Signale (in Form von Zahlen) aufnehmen und eine Gewichtung verteilt die Zahlen (un)gleichmäßig auf die Neuronen der versteckten Schichten.

Die Neuronen der versteckten Schichten addieren die eingehenden Zahlen und verteilten sie Zahlen (un)gleichmäßig auf die Neuronen der Ausgänge.

Biologie Flashback: Was ist ein Neuron?

Computer Neuronen = Nerven-Zelle = Fauler elektronischer Schalter, der nur bei einem ausreichenden starken Po-Tritt, schaltet (Impuls)

Nervenzellen dienen zur Erregungsübertragung zwischen zwei Zellen. Überspringen wir den Aufbau einer Nervenzelle und konzentrieren wir uns auf die Funktionsweise der Erregungsübertragung.

Die wesentlichen Faktoren sind die elektrische Erregbarkeit (Sensibilität für den Input), das Ruhepotential (die Möglichkeit, ihn zu integrieren), das Aktionspotential (ihn weiterzuleiten und zu übertragen) und die Erregungsleitung (ihn zielgerichtet zu übertragen)…. balabal

Wikipedia, Neuronen

Vereinfacht hat ein Neuron…

  1. 1oder 2+Eingänge
  2. 1 Verarbeitungsbereich
  3. 1 oder 2+Ausgänge

Die Neuronen feuert nicht immer (leiten das Signal weiter). Erst ab einen bestimmten Schwellwert feuert das Neuron.

Die Verkettung von Neuronen ermöglicht komplexe Entscheidungen und Abwägungen. Neuronen lassen nicht jedes Signal durch. Erst bei einem bestimmten Schwellwert, feuern sie ebenfalls.

Praxis-Beispiel: Neuronale Netze Funktion

Anhand eines Bilderkennungs-Beispiels möchte ich Neuronale Netze erklären. Die Aufgabe für das Neuronale Netz ist es die Buchstaben des 4 X 4-Pixel-Displays zu erkennen. Die 16 Pixel (fast 4K-Bild) können viele Buchstaben darstellen: A, C, L, Z, N …

01 Das soll ein L sein - Deep Learning Beispiel Steffen Lippke
01 Das soll ein L sein

Das Netz braucht 16 Eingänge für die 16 Pixel und 26 Ausgänge für 26 Buchstaben unseres Alphabets.

02 Zuordnung zu den Elementen - Deep Learning Beispiel Steffen Lippke
02 Zuordnung zu den Elementen

Die Pixel kennen nur schwarz (1) und weiß (0) und das neuronale Netz gibt für die Buchstaben an den Ausgängen Wahrscheinlichkeiten zwischen 0,000 und 1,000 aus. Ein neuronales Netz kann nur mit metrischen Datenarbeiten. Haarfarbe, Rang, Arten, Orte oder Namen müssen eins-aus-N kodiert sein. Wenn Du drei Orte Frankfurt, München und Berlin im System vorkommen, dann kodierst Du Frankfurt (1,0,0), München (0,1,0) und Berlin (0,0,1). Am Ende hast Du eine große dünnbesetzte Matrix.

03 Kodierung der Elemente - - Deep Learning Beispiel Steffen Lippke
03 Kodierung der Elemente

Bei unserem L sind die Eingänge kodiert mit 1000 1000 1000 1111. Im günstigen (idealen) Fall spukt das Netz bei L ein 0,99 aus (99 % Wahrscheinlichkeit für L) aus.

04 Gewichte im Netz
04 Gewichte im Netz

Die Eingänge und die versteckten Schichten sind gewichtet mit Faktoren 0,4; 0,6; 0,3; 0,9 .

Gewichtung berechnen – Herz von Neuronalen Netzen

Die Neuronen der versteckten und Ausgangsschicht addieren die Werte von den eingehenden Pfeilen und kommen zu Schluss auf eine Wahrscheinlichkeit pro Buchstabe zwischen 0,000 und 1,000.

05 Berechnung des Netzs -  Beispiel Steffen Lippke
05 Berechnung des Netzs

Das Training mit den Probe-Daten soll die Gewichte anpassen, sodass das neuronale Netz die Buchstaben richtig erkennen kann. Mit dem Gradienten-Verfahren und Backpropagation kann ein neuronales Netz mit vielen Probe-Datensätzen die korrekte Gewichtungs-Kombination ermitteln.

Fähigkeiten für von Deep Learning / AI –Algorithmen

Informatiker mit KI-Erfahrung sind sehr gesuchte Leute. Spitzen-Gehälter ohne Personal-Verantwortung sind üblich, weil diese dem Unternehmen einen großen Mehrwert schaffen können. Wenn der Informatiker Data-Mining und Deep Learning Verfahren im Unternehmen erfolgreich anwenden kann, kann er solche Fragen beantworten:

  • „In welche Produkte soll ich investieren?“
  • „Welche Produkte kaufen die Kunden immer zusammen ein?“
  • „Welches Kaufverhalten zeigt der neue Kunde XY in 2 Jahren?“

Dazu braucht der Informatiker ein paar Kenntnisse zu …

  • Statistisches Grundwissen bzw. Statistik-Experte z. B. Diskriminanzanalyse, Clusteranalyse, Regressionsanalyse
  • Analysis z. B. Gradienten-Verfahren, Ableitungen
  • Programmier-Kenntnisse z. B. in R-Language, Python oder Go-Language
  • Abstrahiertes Denken
  • Kenntnisse über Methoden der Künstlichen Intelligenz: Aufbau und Umsetzung von neuronalen Netzen, Entscheidungsbäumen

Außerdem wird benötigt.

  • Leistungsfähige Computer mit guten Grafikkarten für z. B. Matrizen-Multiplikationen
  • Glück und gesunden Menschen Verstand
  • Viele, viele, viele Daten in höchste Datenqualität

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert


Jeden Monat teile ich mit Mitgliedern
4 neue praxisnahe Tutorials (je 1000+ Wörter).


Trage Deine Mail, damit Du
Deine Coding + Hacking Skills erweitern kannst!

Die Webseite nutzt nur technisch notwendige Cookies.