KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG

Die Seite wird erstellt Valentina Lang
 
WEITER LESEN
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
r ck
                                           AI Spektrum 2019
  fü rdru
     e
  nd
So

            Das Magazin für Künstliche Intelligenz

        KÜNSTLICHE
        INTELLIGENZ                Die Suche nach dem
                                passenden Algorithmus

        IN DER PRAXIS         Pragmatisch zum Einsatz:
                                    Machine Learning
                                          in der Cloud
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Convolutional Neural Nets – Praxisbeispiel I

   AUTOENCODER – EINE VIELSEITIG
   EINSETZBARE ARCHITEKTUR
                         Autoencoder sind generative neuronale Netzwerke, die äußerst vielseitig
                         einsetzbar sind. Sie finden unter anderem beim maschinellen Übersetzen
                         Anwendung, bei der Anomalieerkennung oder der Bildbearbeitung. Welche
                         Spezialformen sind für die semantische Segmentierung von Bildern geeignet –
                         wie es etwa beim autonomen Fahren unerlässlich ist?

                         Convolutional Neural Nets (CNN) spielen seit       Artikels steht die Lösungsarchitektur für diese
                         drei bis vier Jahren eine führende Rolle im Be-    und andere Aufgabenklassen: der Autoencoder.
                         reich der Computer Vision. Autonomes Fahren
                         zum Beispiel kann nur dann funktionieren, wenn     Autoencoder-Architektur
                         das Fahrzeug unterschiedliche Objekte auf Ka-
                         merabildern pixelgenau identifizieren kann. Die-   Autoencoder stellen eine spezielle Klasse neu-
                         se Aufgabe ist deutlich schwerer als etwa eine     ronaler Netzwerke dar. Sie werden darauf trai-
                         Bildklassifikation oder eine Bounding Box-Lo-      niert, ihren Input zu rekonstruieren. Im Prinzip
                         kalisation. Eine verwandte, speziellere Aufga-     bestehen sie aus drei Teilen: dem Encoder, der
Abb. 1: Autoencoder      benklasse ist das Freistellen von Objekten etwa    Codierung und dem Decoder.
führen im Prinzip drei   von Fahrzeugen auf Bildern, also die Trennung
Aufgaben durch           von Objekt und Hintergrund. Im Fokus dieses        Ein einfacher Autoencoder kann als Hinterein-
                                                                            anderausführung zweier Funktionen h (Encoder)
                                                                            und g (Decoder) modelliert werden: g∘h. Im Fall
                                                                            des Feature Learnings ist man jedoch nicht an der
                                                                            Ausgabe des Decoders g(h(x)) interessiert, son-
                                                                            dern an der Codierung h(x). Eine Möglichkeit,
                                                                            die Abstraktion der Features zu fördern, besteht
                                                                            darin, eine kleinere Dimension für h(x) im Ver-
                                                                            gleich zu x wählen.

                                                                            Eine exakte Rekonstruktion, das heißt g(h(x))
                                                                            = x ist zudem oftmals nicht das Ziel: Ein tradi-
                                                                            tioneller Autoencoder minimiert beim Training
                                                                            den Loss L(x,g(h(x))). Bei ausreichender Ka-
                                                                            pazität begünstigt dies das Lernen der Identi-
                                                                            tätsfunktion. Ein Denoising-Autoencoder hin-
                                                                            gegen minimiert nun L(x,g(h(x*))), wobei x*
                                                                            eine korrumpierte Version von x ist. Der Auto-
                                                                            encoder muss also lernen, die Korrumpierung
                                                                            rückgängig zu machen.

AI SPEKTRUM
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Autoencoder – eine vielseitig einsetzbare Architektur

                                                                                                                 Abb. 2: Semantic
                                                                                                         (Instance) Segmentation
                                                                                                            klassifiziert Bildinhalte
                                                                                                         beim autonomen Fahren

Autoencoder kommen traditionell bei der Di-         Das Unet (vgl. [UNET17]) ist eine Autoenco-
mensionsreduktion oder beim Feature Learning        der-Architektur aus dem medizinischen Be-
zum Einsatz. In jüngerer Zeit hingegen werden       reich, deren Fokus auf der effektiven Nutzung
sie häufig auch als generative Methode genutzt      des Trainingssets und der Anwendung von
– insbesondere sind hier die Variational Autoen-    Daten-Augmentierung liegt. Diese spezielle
coder im Kontext des maschinellen Übersetzens       Architektur gehört zu den Fully Convolutional
sowie die Semantic Segmentation zu nennen.          Networks und wird häufig zur Semantic Seg-
                                                    mentation und insbesondere zur Binary Seg-
Semantic Segmentation beim Autonomen                mentation verwendet.
Fahren
                                                    Abbildung 3 zeigt das Unet. Der Encoder bildet
Fahrzeuge benötigen ein Konzept ihrer Umge-         in mehreren Schritten den Feature-Raum aus.
bung, um selbstständig navigieren zu können.        Mit jedem Schritt vergrößert sich die Anzahl an
Dazu analysieren sie vor allem auch die Um-         Features, während sich die Größe der Eingabe
gebungsbilder der Außenkameras und müssen           verkleinert. Der Decoder bildet darauffolgend
auf diesen Aufnahmen Objekte voneinander            den Feature-Raum auf die ursprüngliche Größe
unterscheiden können. Eine Möglichkeit be-          der Eingabe zurück.
steht darin, jedem Pixel eine eigene Klasse
zuzuordnen (zum Beispiel „Fahrzeug“, „Fuß-
gänger“ oder „Verkehrszeichen“). Der zugehö-
rige Problemtyp heißt Semantic Segmentation.
Werden die klassengleichen Bereiche zudem
in identifizierbare Objekte unterteilt, spricht
man von Instance Segmentation. Autonomes
Fahren benötigt diese Unterscheidbarkeit, da
etwa bei Straßenschildern die Instanzen ent-
scheidend sind, um richtig agieren zu können.
Für den Anwendungsfall der Objektfreistellung
ist die klassenweise Semantic Segmentation
hinreichend.

Aufgrund ihrer generativen Eigenschaft sind
Autoencoder für Semantic Segmentation gut           Encoder und Decoder sind mit Long Range Skip                          Abb. 3:
geeignet – wenn dabei das Trainingsziel ange-       Connections verbunden. Diese erlauben es dem                Die Autoencoder-
passt wird: Es geht nicht darum, das Ausgangs-      Decoder, auf Attribute des Encoders zuzugreifen              Architektur Unet
bild zu reproduzieren, sondern eine Segmen-         und damit durch das Downsampling verloren
tierung zu erzeugen. Allgemein bestehen die         gegangene, räumliche Information wiederher-
Samples aus dem Ausgangsbild (Input) und ei-        zustellen. Diese sind insbesondere wichtig,
nem Zielbild (Target). Das Target ordnet jedem      um eine pixelscharfe Rekonstruktion des Inputs
Pixel eine Klasse zu. Jede Klasse entspricht also   zu erhalten. Encoder und Decoder sind durch
genau einer Farbe (vgl. Abbildung 2).               das Bottleneck verbunden. Das Unet schließt mit

                                                                                                              Abb. 4: Originalbild,
                                                                                                          Binärmaske und freige-
                                                                                                         stelltes Fahrzeug mittels
                                                                                                            Binary Segmentation
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Diese Rate ist also ein Maß für die Granularität
                                                                                    der Features. Der Decoder verwendet diese
                                                                                    verschiedenen “Sichten” für die Rekonstruktion
                                                                                    beziehungsweise die Generierung der Maske.
                                                                                    Encoder, Decoder, Classification Layer und Skip
                                                                                    Connections orientieren sich wieder an der klas-
                                                                                    sischen Unet-Architektur.

                                                                                    Trainingsdaten und Augmentierung
Abb. 5: 3x3-Filter mit den Ausdehnungsraten 1, 2 und 4
                                                                                    Das im hier geschilderten Praxisbeispiel gewählte
                                                                                    Trainingsset ist mit rund 5.000 Fahrzeugen und
                                                                                    etwa 17.500 Samples recht klein. Zudem weist es
                                                                                    nur wenige, unterschiedliche Fahrzeugperspekti-
                                                                                    ven und -lagen auf. Auch der Bildhintergrund vari-
                                                                                    iert nur schwach. Diese Effekte stellen einen Bias
                                                                                    im Trainingsset dar, der durch dessen Erstellung
                                                                                    begründet ist und motiviert den Einsatz von Da-
                                                                                    ten-Augmentierung, das heißt der Anreicherung
                                                                                    des Trainingssets um künstlich erzeugte Samples.

                                                                                    Dem Bias bei der Fahrzeugdarstellung wird mit
                                                                                    Standard-Augmentierungen wie Skalierung und
                                                                                    Translation auf dem Trainingsset begegnet. Der
                                                                                    Bildhintergrund benötigt ein anderes Vorgehen:
                                                                                    Während des Trainings ersetzen hier realistische
                                                                                    oder synthetische Bilder den Originalhintergrund.
Abb. 6: Bottleneck des Dilated Unet mit kaskadierten Dilated Convolutional Layern   Wir benötigen also Wissen darüber, welcher Teil
                                                                                    eines Inputs den Hintergrund ausmacht. Auf-
                            einem Convolutional Layer ab, dessen 1x1-Con-           grund der Natur der Aufgabe enthält das gewähl-
                            volution der pixelweisen Klassifikation dient.          te Trainingsset dieses Wissen.

                            Spezialfall Binary Segmentation                         Abbildung 7 zeigt die Pipeline zur Batch-Ge-
                                                                                    nerierung. Standard-Augmentierungen werden
                            Ein Spezialfall der Semantic Segmentation stellt        von den Keras-Generatoren ausgeführt und
                            die sogenannte Binary Segmentation dar, bei der         können mit der Hintergrund-Augmentierung
                            nur genau zwei Klassen existieren. Ein typisches        kombiniert werden. Die synthetischen Hinter-
                            Einsatzgebiet ist die Segmentierung eines Bildes        gründe werden mithilfe eines parametrischen
                            in Objekt und Hintergrund, also das Lernen einer        Frameworks generiert.
                            entsprechenden Binärmaske.
                                                                                    Die Hintergrund-Augmentierung zielt weniger
                            Die Architektur des im Folgenden behandelten            auf die Accuracy der Modelle als vielmehr auf die
                            CNN orientiert sich am bereits vorgestellten            Generalisierungsfähigkeit und damit die Praxis-
                            Unet. Den Bottleneck haben wir im Vergleich zum         tauglichkeit. Dieser Ansatz hat sich im Verlauf der
                            klassischen Unet durch abgestufte Dilated Con-          Experimente als sehr wirksam herausgestellt.
                            volutions (vgl. [MSCA15]) ausgebaut (vgl. Abb. 5).
                                                                                    Transfer Learning und Fine Tuning
                            Es handelt sich hier um eine Sequenz von Con-
                            volutional Layern, welche mit einer zunehmenden         In unserem Projekt konnten wir Transfer Lear-
                            Ausdehnungsrate (Dilation Rate) versehen sind.          ning und Fine Tuning (siehe Kasten) erfolgreich

Abb. 7: Im Praxisbeispiel
verwendete Pipeline

AI SPEKTRUM
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Autoencoder – eine vielseitig einsetzbare Architektur

                                                                                                           Autoren
  Transfer Learning und Fine Tuning                Dabei können dem Grunde nach zwei ver-
                                                   schiedene Techniken angewandt werden:
  Transfer Learning steht für die Übertragung
  bereits gelernten Wissens auf eine verwand-      XX "Einfrieren"  der bereits gelernten
  te oder sogar neue Domäne und/oder Auf-             CNN-Filter (Gewichte/Biases) des Res-
  gabenklasse. Technisch geschieht das in der         Net50-Cortex, so dass nur der neue Klas-
  Regel in zwei Schritten:                            sifikator trainiert wird. Dann spricht man
                                                      im engeren Sinne von Transfer Learning.
  1. Architektur-Adaption                          XX Verwenden der bereits gelernten
                                                      CNN-Filter lediglich im Sinne einer Ge-              Thomas Stahl
  2. Adaption der lernbaren Parameter durch          wichts-Initialisierung für das Re-Trainieren.        (thomas.stahl@bmiag.de)
      fokussiertes Training                           Dieser Ansatz wird meist als Fine Tuning             ist Informatiker/Mathema-
                                                                                                           tiker und arbeitet als Lead
                                                      bezeichnet.                                          Architect/CTO bei der b+m
  Das populäre "ResNet50" (vgl. [DERES15])                                                                 Informatik AG. Er beschäftigt
  zum Beispiel ist als auf dem ImageNet-Da-        Natürlich sind auch (Layer-weise) Abstufun-             sich seit dem Studium intensiv
  tensatz vortrainierter CNN-Klassifikator frei    gen und Mischformen über mehrere Trainings-             mit AI und Machine Learning.
  verfügbar und kennt 1.000 Klassen aus dem        stufen hinweg anwendbar.
  Bereich Tiere, Natur und Alltagsgegenstän-
  de. Ein solches Netz hat also bereits einen      Die wesentlichen Vorteile von Transfer Lear-
  “alltagstauglichen visuellen Cortex" ausge-      ning/Fine Tuning sind:
  bildet.
                                                   XX Das  Training benötigt in der Regel we-
  Angenommen, die neue Domäne wäre die                sentlich weniger Daten und damit auch
  Klassifikation 200 verschiedener amerika-           Rechenzeit, sofern die Zieldomäne genü-
  nischer Automarken, dann bestünde die               gend nah an der Transferbasis liegt.
  Architektur-Adaption im Austausch des Res-       XX Die resultierenden Systeme abstrahieren/
  Net50-Klassifikators durch einen neuen, un-         generalisieren in der Regel wesentlich               Christian Koch
  trainierten Klassifikator mit 200 Output-Neu-       besser als solche, die dem Problem der               (christiankochjj@gmx.de)
                                                                                                           arbeitet als Data Scientist
  ronen. Im zweiten Schritt würde dann das            geringen Trainingsdaten allein durch Aug-            bei einer Bank in Hamburg.
  neu entstandene CNN zum Beispiel mit dem            mentierung begegnen (siehe oben).                    Er ist für das Modellieren von
  Stanford-Cars-Datensatz re-trainiert.                                                                    hochdimensionalen Daten und
                                                                                                           Automatisieren von komplexen
                                                                                                           Prozessen zuständig.

im Bereich der Autoencoder-Architekturen ein-      Fazit
setzen. Die Architektur-Adaption besteht dabei
darin, den Encoder des Dilated Unet beispiels-     Für den hier vorgestellten Anwendungsfall, die
weise durch eine vortrainierte Instanz des Res-    Freistellung von Objekten auf Fotos, hat sich
Net50 (ohne Klassifikator-Kopf) zu ersetzen und    die binäre semantische Segmentierung als ge-
geeignete Long Range Skip Connections zwi-         eignetes Problem-Framing herausgestellt. Und
schen den Residual Blocks des neuen Encoders       eine Autoencoder-Architektur bietet einen
und dem Decoder zu etablieren.                     dazu passenden Lösungsansatz. Dilated Unets
                                                   und Derivate sind in diesem Bereich durch-
Neben Architekturvariationen haben wir ver-        aus State-of-the-Art, wie unter anderem Kag-
                                                                                                           Stephan Wersig
schiedene Experimente mit abgestuftem Trans-       gle-Challenges zeigen. Mit dem Transfer Lear-           (stephan.wersig@bmiag.de)
fer Learning und Fine Tuning durchgeführt. Als     ning-Ansatz, Hintergrund-Augmentierung und              arbeitet als Softwarearchi-
vielversprechend für unser Szenario hat sich       Ensembling verbesserte sich die Accuracy leicht         tekt bei der b+m Informatik
                                                                                                           AG. Seine Schwerpunkte sind
dabei ein mehrstufiges Verfahren herausge-         und die Generalisierungsfähigkeit deutlich. Das         Machine Learning und Soft-
stellt, bei dem der neue Encoder mit kleiner       finale Ensemble besitzt eine Accuracy von 99,4          ware-Engineering.
Learning Rate und sehr breiter Augmentierung       Prozent auf dem Testdatensatz des Beispiels.
zunächst für wenige Epochen antrainiert wird,      Zudem sind die Ergebnisse von Bildfreistellun-
bevor die Encoder-Layer eingefroren werden.        gen im realen Betrieb sehr vielversprechend.
Transfer Learning mit eingefrorenem Encoder        Um das Modell weiter zu entwickeln, werden
gleich in der ersten Stufe anzuwenden, hat sich    wir deshalb mehr und besser verteilte Trainings-
für unseren Kontext als nicht-optimal herausge-    daten akquirieren sowie eine (automatisierte)
stellt, zumal die vortrainierten ResNet50-Filter   Hyperparameter-Optimierung durchführen.
offenbar nicht genau genug auf unsere Zieldo-
mäne passen.                                       Literatur & Links
                                                   [UNET17] Ronneberger, O., Fischer, P. & Brox, T. (2017). U-Net: Convolutional
                                                   Networks for Biomedical Image Segmentation. Bildverarbeitung für die Medizin.
Stichproben mit frei gewählten Testdaten aus
dem Internet zeigen bessere Generalisierungs-      [MSCA15] Yu, F. & Koltun, V. (2016). Multi-Scale Context Aggregation by Dilated
eigenschaften der mittels Transfer Learning und    Convolutions. CoRR, abs/1511.07122.
Fine Tuning erzeugten Modelle als Modelle          [DERES15] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun (2015).
ohne diesen Ansatz.                                Deep Residual Learning for Image Recognition.

                                                                                          Mehr Fachbeiträge unter ai-spektrum.de
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Innovation. Intelligent. Individuell.

ARTIFICIAL INTELLIGENCE AS A SERVICE

Mehr Innovation für Ihr Business
Nutzen Sie unsere AI-Kompetenz:

•   Risikoprognosen (Klassifikation/Regression)
•   Computer-Vision (Bildanalyse und -verarbeitung)
•   Semantische Textanalyse
•   Anomalieerkennung (z. B. Fraud oder IT-Infrastruktur)
•   Data Mining

Erfahren Sie mehr auf bmiag.de
KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG KÜNSTLICHE INTELLIGENZ IN DER PRAXIS - Das Magazin für Künstliche Intelligenz - Die Suche nach dem passenden Algorithmus - b+m Informatik AG
Sie können auch lesen