Im Blog-Beitrag Neuronale Netze – eine Einführung haben wir eine kurze Einführung in die Funktionsweise neuronaler Netze gegeben und erklärt, inwiefern sie dem menschlichen Gehirn nachempfunden sind. In diesem Blogbeitrag stellen wir Ihnen die elementarste Komponente eines neuronalen Netzes vor: das sogenannte Perzeptron.

Der Artikel führt durch den Lebenszyklus eines Perzeptrons und zeigt, was geschieht, wenn es „arbeitet“ oder „Vorhersagen trifft“ oder „trainiert“. Schließlich gehen wir auf Anwendungsmöglichkeiten und Einschränkungen von Perzeptren ein. Außerdem erfahren Sie, warum eine so einfache Komponente (Algorithmus/Struktur) den ersten „KI-Winter“ auslöste, eine Phase, in der das maschinelle Lernen als totgesagt galt.

Was ist ein Perzeptron?

Als Frank Rosenblatt 1958 ein Perzeptron vorstellte, war es als Maschine zur Bildklassifikation vorgesehen, die an eine 20 x 20-Pixel-Kamera angeschlossen war. Aus heutiger Sicht ist ein Perzeptron ein elementarer Algorithmus, der für lineare Klassifikationsprobleme beim maschinellen Lernen verwendet werden kann. Binäre Klassifikation bedeutet vorherzusagen, ob eine Eingabe einer von zwei Klassen angehört. Im folgenden Beispiel wählen wir die beiden Klassen 0 und 1. Weitere Beispiele wären die Diagnose von Hautkrebs anhand von Bildern, die Bestimmung, ob es sich bei einer E-Mail um Spam handelt, oder die Erkennung von Zahlungsbetrug.

Die vier grundlegenden Bestandteile eines Perzeptrons sind Eingaben, Gewichte, Schwellenwert und eine Aktivierungsfunktion.

Ein Perzeptron mit seinen vier Grundbestandteilen
Abb.1: Ein Perzeptron mit seinen vier Grundbestandteilen: Eingabe (Inputs), Schwellenwert, Gewichte (Weights), Aktivierungs- oder Schrittfunktion (Activation function)

In Grafik 1 sehen Sie, wie ein Perzeptron mathematisch funktioniert. Die Eingabe  wird mit den Gewichten  multipliziert und dann aufaddiert, bis wir einen einzigen Wert erhalten. Theoretisch haben wir jetzt einen Algorithmus, der eine Regression durchführt. Da wir ihn jedoch für Klassifikationsaufgaben einsetzen wollen, verwenden wir eine sogenannte Aktivierungs- oder Schrittfunktion.

Schauen wir uns ein praktisches Beispiel an: Wir möchten wissen, ob in einem Stammdatensatz alle Pflichtfelder befüllt sind oder nicht. Da wir uns nur dafür interessieren, ob die Felder befüllt sind oder nicht, codieren wir diese Information in drei Binärzahlen. Die Eingabe für unser Perzeptron sieht also folgendermaßen aus:

<Feld 1 ist befüllt>, <Feld 2 ist befüllt>, <Feld 3 ist befüllt>.

Nehmen wir auch für dieses Beispiel an, dass die Gewichte für unsere drei Felder Zufallszahlen mit den Werten <0,2, 0,4, 0,7> sind. Unsere Aktivierungsfunktion ist in diesem Fall lediglich eine einfache Rundungsfunktion. Ist die Zahl größer oder gleich 0,5, nimmt sie den Wert 1 an, was bedeutet, dass alle Pflichtfelder befüllt sind, andernfalls ist der Wert 0, was bedeutet, dass nicht alle Pflichtfelder befüllt sind. Nehmen wir an, unsere Eingabe lautet <1, 1, 0>, was bedeutet, dass nur zwei der drei Pflichtfelder befüllt sind. Wir beginnen damit, dass wir unsere erste Eingabe „1“ mit unserem ersten Gewicht „0,2“ multiplizieren. Als Ergebnis erhalten wir dann 0,2. Wenn wir dies für alle drei Paare tun, erhalten wir den Vektor <0,2, 0,4, 0>. Die Summe dieser Zahlen, ein Zwischenergebnis für unser Perzeptron, lautet nun 0,2 + 0,4 = 0,6.

Erinnern Sie sich daran, dass wir bis jetzt eine reelle Zahl haben, die für eine Regressionsaufgabe nützlich wäre, aber da wir am Ende ein „Ja“ oder „Nein“ haben wollen, wenden wir unsere Aktivierungsfunktion an. Wenn wir 0,6 aufrunden, erhalten wir 1, und deshalb sagt uns unser Perzeptron, dass alle Pflichtfelder befüllt sind, was in Wirklichkeit aber nicht der Fall ist. Was ist da schief gelaufen? Nun, eigentlich nichts, das Ergebnis war nur deshalb falsch, weil die Gewichte anfangs zufällig gewählt wurden.

Jetzt kommt der spaßige Teil – das Lernen! Wir müssen nun einen Weg finden, die Gewichte so anzupassen, dass dieses Perzeptron bei unseren Eingaben eine 0 statt einer 1 ausgibt. Machen wir eine weitere Runde, aber dieses Mal legen wir die Gewichte auf <0,2, 0,25, 0,7> fest. Wenn wir die Paare nun multiplizieren und aufaddieren, erhalten wir

0,2 x 1 + 0,25 x 1 + 0 x 0,7 = 0,45

Nach Anwendung unserer Aktivierungsfunktion wird dieser Wert auf 0 abgerundet. Wir sehen, dass die Ausgabe nun unserer Erwartung entspricht, was bedeutet, dass unser Perzeptron besser geworden ist. Dies war natürlich ein sehr einfaches Beispiel, da man die optimalen Gewichte einfach durch Anschauen der Zahlen und mit Rechnen herausfinden konnte. In Wirklichkeit bestehen neuronale Netze aus Tausenden von Neuronen mit unterschiedlichen Gewichten und möglicherweise verschiedenen Aktivierungsfunktionen, sodass man durch bloßes Betrachten der Zahlen unmöglich einen perfekten Klassifikator erstellen kann.

Anwendungsmöglichkeiten und Einschränkungen

Ein Perzeptron ist ein einfacher Algorithmus, der sich nur für einfache (binäre) Klassifikationsprobleme eignet. Das größte Problem bei diesem einfachen Algorithmus ist jedoch, dass er nur lineare Probleme lösen kann. Wenn Sie sich fragen, was lineare Probleme sind, denken Sie zurück an Ihren Matheunterricht in der Schule, wo Sie es mit Funktionen in einem zweidimensionalen Raum mit Achsen und Punkten zu tun hatten. Stellen Sie sich vor, in einem zweidimensionalen Raum befinden sich Punkte, die zur ersten Klasse gehören, und Punkte, die zur zweiten Klasse gehören. Wenn wir eine Linie festlegen können, die die beiden Klassen von Punkten trennt, spricht man von einem linearen (Klassifikations-)Problem.

Doch warum werden diese Perzeptren in unserer komplexen modernen Welt nicht überall eingesetzt? Nun, sie haben einen großen Nachteil: Sie können keine nicht-linearen Probleme lösen – und das ist die Art von Problemen, mit denen wir fast immer konfrontiert sind.

Ein kurzer Blick auf den KI-Winter

Das Perzeptron und seine Fähigkeiten haben in den 1960er Jahren den Hype um die KI sehr beflügelt – bis Minsky & Papert 1969 zeigten, dass ein Perzeptron keine nichtlinearen Probleme lösen kann und sich daher für viele der Probleme, die es eigentlich lösen sollte, nicht eignet. Damit begann der sogenannte KI-Winter: Fördermittel wurden reduziert und KI-Forschungsinstitute geschlossen. Etwa zehn Jahre später kam die Idee auf, dass man Perzeptren in Schichten anordnen könnte, die mittels nichtlinearen Aktivierungsfunktionen miteinander verbunden sind – was dann als neuronales Netz bezeichnet wird. Diese Entdeckung sowie die stark gestiegene Rechenleistung holten die neuronalen Netze aus dem Winterschlaf.

Ausblick auf die nächsten Blogartikel

In diesem Artikel haben wir Ihnen gezeigt, wie ein Perzeptron funktioniert und wie mehrere Perzeptren ein neuronales Netz bilden. Im nächsten Teil dieser Serie werden wir darstellen, wie man neuronale Netze in die Lage versetzt, erheblich komplexere Probleme zu lösen, indem man ihnen sogenannte verborgene Schichten hinzufügt.

Wir danken Jan Kettner und Stefan Morgenweck für ihren wertvollen Beitrag zu diesem Artikel.

DataDrivenLeaders

Die Community für Data Driven Leaders

Die Community für Data Driven Leaders vernetzt Branchenexperten und hält Sie mit exklusiven Einblicken auf dem Laufenden.

Werden Sie Teil der Data Driven Leaders

Empfohlene Artikel

Future Value Chain

Integrated Business Planning: Unternehmensplanung für eine volatile und komplexe Welt – Teil I

Die integrierte Geschäftsplanung (Integrated Business Planning, IBP) ist heute wertvoller denn je – für Unternehmen insgesamt, aber insbesondere für …

weiterlesen
Future Value Chain

Blockchain in der Gesundheitsbranche – Studie zu Marktreife und Trends

Wie stehen Pharmaunternehmen zum Einsatz der Blockchain-Technologie? Was unterscheidet die Blockchain von den derzeit genutzten Technologien? Welche Schwierigkeiten und Herausforderungen gehen …

weiterlesen
Innovation

AR / VR / MR – Science Fiction oder Science Fact?

Das Thema Augmented Reality (AR), Virtual Reality (VR) und Mixed Reality (MR) – nachfolgend von mir Extended Reality (xR) genannt – fasziniert mich …

weiterlesen

Denken Sie Ihre Value Chain neu mit uns

Kontaktieren Sie uns