Neuronale Netze mit Tensorflow

Was ist "maschinelles Lernen"?

Manche Aufgaben sind für Computer einfach, für Menschen aber schwer. Beispielsweise kann der Computer sehr schnell, und ohne müde zu werden tausende Zahlen miteinander multiplizieren. Eine Aufgabe, die ein Mensch sehr anstrengend und ermüdend empfinden dürfte.

Andererseits ist es für Computer zunächst sehr schwer, bei den folgenden 3 Bildern zu entscheiden, welches ein Zebra, welches einen Zebrastreifen und welches ein Hochhaus zeigt. Ein Aufgabe, die die meisten Menschen mühelos bewältigen werden.

1) Bildquellen: Wolkenkratzer von Michael Gaida, Zebrastreifen von Mike Ljung und Zebra von Tyrone Porter

Problem	Computer	Mensch
Tausende Zahlen multiplizieren	Einfach und schnell	Schwer und langsam
Zebrabilder unterscheiden	Schwer	Einfach und schnell

Was können Computer gut?

Die „klassische“ Programmierung durch kluge Aneinanderreihung einzelner Anweisungen, Verzweigungen oder Schleifen nennt man imperative Programmierung. Eine Rechenaufgabe zu programmieren ist beispielsweise in so ziemlich jeder Programmiersprache ein Kinderspiel. Das Navi so zu programmieren, dass es die kürzeste Route berechnen kann, ist schon komplexer – aber auch für dieses mathematische Problem lässt sich die Lösung noch immer gut in (vielen) einzelnen expliziten Anweisungen formulieren.

Es gibt aber trotzdem viele Aufgaben, die man nicht einfach lösen kann, indem man einzelne Befehle geschickt aneinanderreiht.

Ein Regelwerk, das bei unbekannten Bildern beispielsweise durch Betrachtung jedes einzelnen Pixels und seiner Relation zu anderen Pixeln entscheiden soll, welches der drei Bilder oben ein Zebra darstellt ist nahezu undenkbar und fast sicher unmöglich imperativ zu programmieren.