DZ BANK Logo
Innovation lab Logo
Foto: GettyImages
Trends & Technologie | 18. Januar 2018

Machine Learning Algorithmus: Neuronale Netzwerke

Nachdem das Trendscouting Team den k-means Algorithmus in einer Blogreihe erläutert hat, widme ich mich heute den Neuronalen Netzwerken als Form eines „supervised“ (deutsch: überwacht) Machine Learning Algorithmus. Wie in meinem letzten Artikel erklärt, geht es bei einem „supervised“ Prozess darum, eine Zielvariable vorherzusagen. Ich beziehe mich wieder auf mein Klassifizierungsbeispiel, in welchem ich ein Modell bauen möchte, das anhand von Kundenmerkmalen vorhersagt, ob ein Kunde ein Kredit püntklich zurück zahlen wird (1) oder nicht (0).

Jetzt aber zurück zu einem Neuronalen Netzwerk, das eigentlich wie Neuronen in der Biologie funktioniert. Eine Zelle hat verschiedene Dendriten, über die sie Reize (Inputs) aufnimmt. Anschließend werden diese Reize im Zellkörper verarbeitet und Signale an weitere Neuronen gesendet. Folgende Grafik verdeutlicht diesen Prozess.

https://www.dasgehirn.info/grundlagen/kommunikation-der-zellen/bild-aufbau-eines-neurons

Wir haben also einen Input, einen Verarbeitungs-/Prozessschritt und einen Output. In meinem Beispiel wären also die Inputvariablen die verschiedenen Kundenmerkmale (Alter, Einkommen, etc.) und der Output die Zielvariable, welche angibt, ob der Kunde den Kredit püntklich zurückzahlt (1) oder nicht (0). In dem Prozessschritt werden die Inputs in eine „Transferfunktion“ f(x) gegeben und mit einem Faktor w („Gewicht“) multipliziert. Anschließend wird ein weiterer Wert („+b“) addiert, den sogenannten „bias“ (Verzerrung).  Die Gewichte w sowohl der bias b werden durch den Trainingsprozess des Modells immer wieder angepasst, sodass die Fehlerquote der falsch klassifizierten Daten minimiert wird. An dieser Stelle noch einmal die Erinnerung aus meinem letzten Artikel: Wir trainieren das Modell mit den Trainingsdaten und verifizieren es mit den Testdaten, bei denen wir bereits den Wert der Zielvariable kennen und somit die Qualität des Modells beurteilen können. Bei der Anpassung der Variablen findet also das „Lernen“ statt. Anschließend wird der Wert der Transferfunktion f(x) in die Aktivierungsfunktion a(x) gegeben, die dann entscheidet, ob der Output der Zielvariable 1 oder 0  ist.

in Anlehnung an: https://www.learnopencv.com/understanding-feedforward-neural-networks/

Mathematisch sieht das ganze wie folgt aus. Hier beschreibt x unsere Inputdaten, w die Gewichtung und b den Bias.

1. Transferfunktion:

2. Aktivierungsfunktion:

 

Das „einfachste“ Neuronale Netzwerk mit nur einem Neuron („Single Perceptrons“) sucht nach einer linearen Funktion, die die Daten in die zwei Klassen der Zielvariable einteilt. Stellen Sie sich also vor, die blauen Punkte sind unsre Kunden, die den Kredit pünktlich zurück zahlen (1) und die organgenen Punkte repräsentieren die Kunden, die den Kredit nicht zurückzahlen (0). Bei solch einer Verteilung wäre eine lineare Einteilung hilfreich, da wir nur wenige Datenpunkte hätten, die flasch klassifiziert werden (also die blauen Punkte links der Line und die organenen Punkte rechts neben der Linie).

Dieser Algorithmus hat aber einen offensichtlichen Nachteil: Er kann nur lineare Funktionen bilden, das hilft uns in den meisten Fällen nicht weiter. Stellen Sie sich vor, Sie versuchen folgende Datensätze durch eine lineare Linie zu trennen.

Das funktioniert nicht wirklich, aber dafür gibt es eine Lösung und zwar das „Feedforward Neural Network“.  Hier hat man nicht nur ein Neuron, in dem eine Transform- und Aktivierungsfunktion stattfindet, sondern mehrere. Diese liegen in einer sogenannten „versteckten Schicht“ („hidden layer“) und können beliebig viele sein.

Wenn Sie das ganze einmal selbst testen möchten, kann ich Ihnen diese Web Anwendung  (s. Screenshot unten) empfehlen. Dort können Sie mit auf verschiedene Datensets unterschiedliche Neuronale Netze anwenden und die Anzahl der „hidden layers“ und „hidden neurons“ verändern.

Screenshot von Webanwendung

 

Welcher Machine Learning Algorithmus interessiert Sie sonst?

Ich freue mich über Ihr Feedback!

 

Quellen:

https://appliedgo.net/perceptron/http://ufldl.stanford.edu/tutorial/selftaughtlearning/SelfTaughtLearning/

https://www.toptal.com/machine-learning/an-introduction-to-deep-learning-from-perceptrons-to-deep-networks

http://blog.frankfurt-school.de/machine-learning-modern-data-analytics-artificial-intelligence/?lang=de

Understanding Feedforward Neural Networks

Kommentieren

14 − 11 =

Diese Themen interessieren uns

Lean and Secure Decentralized Delivery-versus-Payment (DvP) for Securities Settlement
Successful Decentralized Delivery-versus-Payment Process

Lean and Secure Decentralized Delivery-versus-Payment (DvP) for Securities Settlement

Weiterlesen
Comment
0
FinTech Innovationen in Asien – Ein Blick auf das FinTech Festival in Singapur
FinTech Innovationen in Asien – Ein Blick auf das FinTech Festival in Singapur
Allgemein
22. Dezember 2023

FinTech Innovationen in Asien – Ein Blick auf das FinTech Festival in Singapur

Weiterlesen
Comment
0