Übersicht: Machine learning

Allgemeines

Auf den fol­gen­den Unter­sei­ten fin­den Sie Infor­ma­tio­nen zu den Arten von Pro­ble­men, die sich mit Hil­fe des Machi­ne lear­ning (ML) lösen las­sen. Die dazu ver­wen­de­ten Metho­den und die grund­le­gen­de Theo­rie wer­den kurz umris­sen; Code­bei­spie­le detail­lie­ren prak­ti­sche Anwendungen.

Relevanz

ML ist eines der jüngs­ten, aktivs­ten, und anwen­dungs­ori­en­tier­tes­ten Fel­der der moder­nen Mathe­ma­tik. Prak­ti­sche Erfol­ge hat es ins­be­son­de­re erzie­len kön­nen bei der Bewäl­ti­gung von Auf­ga­ben, die den Bereich des mensch­li­chen Kon­text­ver­ständ­nis­ses berüh­ren. Die Pro­zes­sie­rung von Text‑, Audio‑, Bild‑, und Video­da­ten mit dem Ziel der Ablei­tung von für Men­schen rele­van­ten seman­ti­schen Infor­ma­tio­nen hat das ML  zu einem wich­ti­gen Hilfs­mit­tel wer­den las­sen. Ein­ge­setzt wird es beson­ders in Unter­hal­tungs­in­dus­trie, Kon­su­men­ten­for­schung, Finanz­we­sen, prä­dik­ti­ver Ana­ly­tik, Medi­zin­tech­nik, Bio­in­for­ma­tik, indus­tri­el­ler Bild­in­ter­pre­ta­ti­on, zur Auto­no­mi­sie­rung von Fahr­zeu­gen und lager­ar­bei­ten sowie in ande­ren Berei­chen, die von der auto­ma­ti­sier­ten Aus­wer­tung und Inter­pre­ta­ti­on hoch­di­men­sio­na­ler Daten profitieren.

Definition

Im Gegen­satz zur mathe­ma­ti­schen Opti­mie­rung ist die Auf­ga­be des maschi­nel­len Ler­nens weni­ger klar defi­niert — es beinhal­tet nicht nur die Lösung einer Glei­chung. Statt­des­sen beschäf­tigt sich das ML mit der Ent­wick­lung und Ana­ly­se von Algo­rith­men, deren Leis­tung mit zuneh­men­der Daten­men­ge anwächst. Mathe­ma­tisch gese­hen kann dies for­ma­li­siert wer­den als die Mini­mie­rung einer loss func­tion (Straff­funk­ti­on) \(f_S(x)\) unter Rand­be­din­gun­gen \(D\) für die Para­me­ter \(x\) deren Bestim­mung das Ziel des Ler­nens ist.

$$ \begin{align} \min_x ~~~&f_S(x) \\ \text{subject to} ~~~&x \in D \end{align}$$
Im Ver­gleich zur klas­si­schen Opti­mie­rung jedoch ist \(f_S(x)\) eine a prio­ri unbe­kann­te Funk­ti­on, die erst durch Echt­welt­da­ten \(S\) ihre Form erhält. So ist etwa für ein das Schach­spiel ler­nen­des ML Pro­gramm erst klar, wel­che Spiel­si­tua­tio­nen anzu­stre­ben sind, nach­dem es eini­ge Run­den gespielt und die Erfah­rung aus die­sen Run­den bewer­tet hat. Die Kom­bi­na­ti­on von daten­ab­hän­gi­gen Model­len und mathe­ma­ti­scher Opti­mie­rung ist typisch für das ML.

Abgrenzung

In die­ser Hin­sicht gren­zen sich die Algo­rith­men des ML ab von klas­si­cher Soft­ware, die ein abge­schlos­se­nes Sys­tem bestehend aus einer fixen Abfol­ge von Befeh­len ist und somit nicht befä­higt, die eige­ne Funk­ti­ons­wei­se durch Inte­gra­ti­on neu­er Daten zu ver­än­dern. Die Fäh­gi­keit, aus neu­en Erfah­run­gen zu ler­nen zusam­men mit der Ubi­qui­tät bestimm­ter For­men von Daten macht das ML so fle­xi­bel, viel­sei­tig ein­setz­bar aber auch unüber­sicht­lich in der Gesamt­heit sei­ner Metho­den. Typi­scher­wei­se unter­schei­det man im ML zwi­schen drei Auf­ga­ben­klas­sen: Super­vi­sed lear­ning Rein­force­ment lear­ning, Unsu­per­vi­sed lear­ning. Das nach­fol­gen­de Bild gibt einen gro­ben Überblick

Beispiele

Je nach­dem, wel­che loss func­tion \(f_S(x)\) gewählt wird, lässt sich ein Algo­rith­mus zur Lösung ver­schie­de­nen Auf­ga­ben bewe­gen: \(f_S(x)\) kann ein Mass sein für Vor­her­sa­ge­feh­ler, Fehl­klas­si­fi­ka­ti­ons­ra­ten, Stra­fen für sub­op­ti­ma­le Sys­tem­steue­run­gen, Intra-Grup­pen Vari­an­zen, oder Rekon­struk­ti­ons­feh­ler. Opti­mal gewähl­te Para­me­ter \(x_1,x_2, …\) deter­mi­nie­ren das Ver­hal­ten des Algo­rith­mus so, dass die loss func­tion (als Mass für die Aus­wir­kun­gen uner­wünsch­ten Ver­hal­tens) mög­lichst klei­ne Wer­te annimmt. Ver­schie­de­ne Bedeu­tun­gen von \(f_S(x)\) und asso­zi­ier­te Anwen­dun­gen sind in der nach­fol­gen­den Tabel­le notiert.

Abbil­dung: Die ver­schie­de­nen Auf­ga­ben­klas­sen Super­vi­sed lear­ning, Rein­force­ment lear­ning, Unsu­per­vi­sed lear­ning unter­schei­den sich im Grad der Über­wa­chung (Super­vi­si­on); d.h. der Direkt­heit mit der gewünsch­tes Ver­hal­ten an den Algo­rith­mus kom­mu­ni­ziert wird.
Bei­spiel\(f_S(x)\)\(S\)\(V(x_1,x_2,…)\)
Preis­vor­her­sa­ge Vor­her­sa­ge­feh­lerPro­dukt­fea­tures, PreisePreis
Maschi­nel­le Übersetzung- Satz­wahr­schein­lich­keitPaa­re von SätzenÜber­setz­ter Satz
Bild­klas­si­fi­ka­ti­onFehl­klas­si­fi­ka­ti­ons­ra­teBil­der, ObjektklassenKlas­sen­wahr­schein­lich­kei­ten
Krebs­er­ken­nungFehl­klas­si­fi­ka­ti­ons­ra­teMedi­zi­ni­sche Daten, DiagnosenKrebs­wahr­schein­lich­keit
Maschi­nen­steue­rungUnziel­füh­ren­des VerhaltenSteue­rungs­ver­su­cheSteue­rungs­be­feh­le
Game AIWahr­schein­lich­keit NiederlageSpiel­ver­su­cheSpiel­stra­te­gie
Daten­kom­pres­si­onRekon­struk­ti­ons­feh­lerDaten­bei­spie­leKom­pri­mier­tes Objekt
Betrugs­er­ken­nungVer­hal­tens­kon­sis­tenzMeta­da­ten TransaktionenIrre­gu­la­ri­tät Transaktion
Tabel­le mit Bei­spie­len für Anwen­dun­gen des Maschi­nel­len Ler­nens. Der Term \(f_S(x)\) ist die zu mini­mie­ren­de loss func­tion, \(S\) sind die Daten, und \(V(x_1,x_2, …\) ist der Out­put des mit ML trai­nier­ten Algorithmus´.

Aufgabenfelder

Vie­le pra­xis­re­le­van­te Auf­ga­ben aus den Dis­zi­pli­nen Finanz­we­sen, Mar­ke­ting, Medi­zin, Bild­ver­ar­bei­tung, Spiel­theo­rie, Daten­ana­ly­se, … kön­nen als ML Pro­blem \(\min _x f_S(x), x\in D\) for­mu­liert wer­den. Unab­hän­gig von der kon­kre­ten Anwen­dung iden­ti­fi­zie­ren wir drei Auf­ga­ben­klas­sen, in wel­che sich Auf­ga­ben aus den obi­gen Dis­zi­pli­nen ein­ord­nen lassen:

Supervised learning

Unter dem super­vi­sed lear­ning ver­steht man ML Auf­ga­ben, bei denen das vom Algo­rith­mus gewünsch­te Ver­hal­ten direkt in Form von Daten vor­ge­ge­ben wer­den kann. Ins­be­son­de­re sind die Regres­si­on und Klas­si­fi­ka­ti­on.  Ein Modell (z.B. ein neu­ro­na­les Netz) soll dann hin­sicht­lich sei­ner Para­me­ter so ange­passt wer­den, dass das Modell­ver­hal­ten die mus­ter­gül­ti­gen Daten mög­lichst genau reprä­sen­tiert. Ist das Modell gut gewählt, baut es nicht nur­durch die Daten fest­ge­legt Input- Out­put­ver­hält­nis­se nach, son­dern agiert auch plau­si­bel in neu­en, nicht von der Daten­grund­la­ge abge­deck­ten Situa­tio­nen. In die­se Auf­ga­ben­klas­se fal­len z.B. die Erstel­lung von sta­tis­ti­schen Model­len, die prä­dik­ti­ve Ana­ly­tik, die Klas­si­fi­ka­ti­on von Text, Audio, Bil­der, Vide­os, Text­über­set­zung, auto­ma­ti­sche Gene­rie­rung von Unter­ti­teln und vie­les mehr.

Reinforcement Learning

Unter dem Rein­force­ment lear­ning ersteht man ML Auf­ga­ben, bei denen es  posi­ti­ves und nega­ti­ves Feed­back zur Beur­tei­lung des vom Algo­rith­mus gezeig­ten Ver­hal­tens gibt. Aller­dings gibt es kei­ne direk­ten Hin­wei­se, wel­ches Ver­hal­ten mus­ter­gül­tig und somit zu imi­tie­ren ist. Der Algo­rith­mus inter­agiert mit einem Sys­tem, das er mit Steu­er­si­gna­len ver­än­dern kann, wor­auf­hin die­ses reagiert mit einer Sys­tem­än­de­rung und einem bestär­ken­den oder bestra­fen­den Feed­back. Damit imi­tiert Rein­force­ment lear­ning das Lern­ver­hal­ten in rea­lem und unsi­che­ren Kon­text, etwa eines Men­schen, der zum ers­ten Mal Schach spielt. Ziel ist das Ablei­ten von opti­ma­len Abfol­gen von Ent­schei­dun­gen unter Unsi­cher­heit und in kom­pe­ti­ti­ven Situa­tio­nen. In die­se Auf­ga­ben­klas­se fal­len unter ande­rem die opti­ma­le Maschi­nen­steue­rung, das Anler­nen von AI´s in Spie­len, akti­ves Port­fo­lio­ma­nage­ment, Ver­kehrs­fluss­lei­tung Waren­la­ger­ma­nage­ment und Einkaufsplanung. 

Unsupervised learning

Beim unsu­per­vi­sed lear­ning wer­dem dem Algo­rith­mus kei­ne unmit­tel­ba­re Vor­ga­ben über das gewünsch­te Ver­hal­ten über­mit­telt. Mus­ter müs­sen vom Algo­rith­mus ohne vor­he­ri­ge Lern­erfah­rung eigen­stän­dig in den Daten gefun­den wer­den. Die­se wer­den dann ver­wen­det, um die Daten zu clus­tern oder auf die wich­tigs­ten Kom­po­nen­ten zu redu­zie­ren. So wird auf einem Daten­satz eine Struk­tur erzeugt, die in der Fol­ge genutzt wer­den kann, um z.B. aty­pi­sche Finanz­trans­ak­tio­nen zu iden­ti­fi­zie­ren, zusam­men­hän­gen­de Gene zu clus­tern, öko­lo­gisch zusam­men­hän­gen­de Pflan­zen­ge­mein­schaf­ten zu iden­ti­fi­zie­ren, Recom­men­der­sys­te­me zu betrei­ben, Märk­te in Grup­pen zu sege­men­tie­ren, oder sozia­le Netz­wer­ke zu analysieren. 

Aussicht

Die obig genann­ten Auf­ga­ben sind Stan­dard­auf­ga­ben des ML mit eigens für sie ent­wor­fe­nen Algo­rith­men, die bereits erfolg­reich in der Pra­xis erprobt wur­den. Wir stel­len nach­fol­gend eini­ge Bei­spiel­pro­ble­me dar und illus­trie­ren deren Lösung mit Code, Sket­ches, und Beschrei­bun­gen. Dabei legen wir Wert auf eine Erklä­rung des Zusam­men­han­ges zwi­schen dem Ver­hal­ten eines ML Algo­rith­mus´, den loss func­tions,  und den Echt­welt­im­pli­ka­tio­nen. In letz­ter Instanz for­ma­li­sie­ren wir wie­der Opti­mie­rungs­pro­ble­me. Im Ver­gleich zu den For­mu­lie­run­gen in der klas­si­schen mathe­ma­ti­schen Opti­mie­rung tre­ten hier jedoch daten­ge­trie­be­ne nicht­li­nea­re Ter­me wie etwa Kreuz­entro­pi­en, Kull­back-Leib­ler Diver­gen­zen, und Para­me­ter in neu­ro­na­len Net­zen auf, die eine zuver­läs­si­ge Opti­mie­rung nicht gestat­ten. Dies führt zu expe­ri­men­tel­len nume­ri­schen Ver­fah­ren; für neu­ro­na­le Net­ze gibt es den­noch gute, öffent­lich ver­füg­ba­re Soft­ware wie z.B. Pytorch.

Prak­ti­sche Anwen­dun­gen, Metho­den, und Theo­rie fin­den Sie in den ent­spre­chend benann­ten Abschnit­ten. Wir hof­fen, das Mate­ri­al inspi­riert Sie bei der Iden­ti­fi­ka­ti­on von oder der Suche nach Anwen­dun­gen von Machi­ne lear­ning in Ihrem Betrieb.