Deep Learning Estimation of Absorbed Dose for Nuclear Medicine Diagnostics

05/23/2018 ∙ by Luciano Melodia, et al. ∙ 0

The distribution of energy dose from Lu^177 radiotherapy can be estimated by convolving an image of a time-integrated activity distribution with a dose voxel kernel (DVK) consisting of different types of tissues. This fast and inacurate approximation is inappropriate for personalized dosimetry as it neglects tissue heterogenity. The latter can be calculated using different imaging techniques such as CT and SPECT combined with a time consuming Monte-Carlo simulation. The aim of this study is, for the first time, an estimation of DVKs from CT-derived density kernels (DK) via deep learning in Convolutional Neural Networks (CNNs). The proposed CNN achieved, on the test set, a mean intersection over union of intersection over union (IoU) = 0.86 after 308 epochs and a corresponding mean squared error (MSE) = 1.24 · 10^-4. This generalization ability shows that the trained CNN can indeed learn the complex transfer function from DK to DVK. Future work will evaluate DVKs estimated by CNNs with full MC simulations of a whole body CT to predict patient specific voxel dose maps. Keywords: Deep Learning, Nuclear Medicine, Diagnostics, Machine Learning, Statistics

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 16

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Grundprinzip

Ausgehend von der Verteilung der Zerfälle wird die Dosisverteilung geschätzt. Ein weit verbreitetes Verfahren ist die Faltung mit einem sog. Dosis-Voxel-Kern. Dabei wird ein Würfel mit – in diesem Fall – Voxel erzeugt.
Eine übliche Verfahrensweise Dosisverteilungen zu berechnen, ist die Verwendung von sog. S-Werten oder eng. S-Values vgl. [SVAL:2007].
Unter den S-Werten versteht man den Bruchteil der mittleren kinetischen Energie für jeden radioaktiven Zerfall, welche von einer Volumeneinheit absorbiert wird. Die Energie, die in einer spezifischen Volumeneinheit gemessen werden kann, ergibt sich aus der linearen Superposition von jedem mitwirkenden Voxel innerhalb der räumlichen Verteilung um eine Strahlungsquelle. Die Energiedosis, welche um eine kreisförmig strahlende isotrope Quelle in einem homogenen Medium als Punkt gemessen werden kann, nennt sich Dosis-Punkt-Kern [DPK:SGO:2008, DPK:BOD:2008].
Bei der Berechnung von hochauflösenden Voxel-S-Werten werden Monte-Carlo-Simulationen verwendet. Die Quelle wird dabei als Voxel definiert, wobei der Winkel und der Ort der emittierten Strahlung stichprobenartig ermittelt werden. Die Teilchen werden auf ihren Emissionsursprung zurück berechnet (Material mit ) und die absorbierte Energie wird in jedem Voxel gespeichert, mit einer Auflösung von üblicherweise . Die durchschnittliche absorbierte Dosis für jedes simulierte Teilchen wird in angegeben und anschließend in umgerechnet, um als Voxel-S-Wert verwendet werden zu können.
Die erzeugten S-Werte können in einer geeigneten Größe für die Berechnung von absorbierter Strahlungsdosis verwendet werden vgl. [MIR:17]. Die Dosis für eine bestimmte Gewebeprobe ist die Summe der Eigenaktivität und der Aktivität des umliegenden Gewebes gemäß:

(1)

Die Quelle und die berechnete Zieldosis sind Voxel aus dem Gewebe des Patienten, entsprechend der kummulierten Aktivitätenkarte aus dem SPECT Detektorfeld. Demenstprechend ist für ein bestimmtes Voxel die durchschnittlich absorbierte Dosis gegeben durch die Summe der Beiträge aller Quellvoxel mit der Anzahl . Die Aktivität von ist gegeben durch das Produkt der zeitlich eingebetteten Aktivität und der S-Werte von Voxel zu Voxel gemäß:

(2)

Die resultierende absorbierte Dosis kann durch Faltung erhalten werden. Eine Möglichkeit der Implementierung wäre der eng. Fast Hartley Transform Algorithmus [HART:1984].
Für jedes verwendete Radionuklid wird eine S-Wert-Matrix berechnet, welche als Faltungskern verwendet wird um die mittlere absorbierte Dosis für jedes Voxel zu bestimmen. Dieses Verfahren birgt einen immensen Nachteil, denn es können keine Inhomogenitäten innerhalb des Gewebes berücksichtigt werden. Die Voxel haben unterschiedliche Gewebsklassen, z.B. eng. soft tissue für weiches Gewebe und somit eine zugehörige Massendichte von

. In das Voxel im Zentrum des Würfels, welcher im weiteren Verlauf als Tensor bezeichnet wird, wird ein radioaktives Lutetium

Isotop platziert. Mit Hilfe einer Monte-Carlo-Simulationssoftware (GAMOS) vgl. [DPK:CHI:2006, DPK:REY:2002, MON:2002] werden anschließend Zerfälle für die Dichtekerne des ganzen Körpers eines Patienten simuliert oder für einen Dosis-Voxel-Kern. Als Resultat erhält man eine Dosisverteilung im Tensor der Einheit Gray in Bezug auf einen Zerfall. Es kann ebenfalls ein statistischer Fehler für jedes Voxel bestimmt werden.

Abbildung 1: Schematische Darstellung der Faltung von Zerfallskarte und Dosis-Voxel-Kern. In der mittleren Darstellung ist die Verteilung der Zerfälle für einen Patienten dargestellt, die mit einem homogenen Dosis-Voxel-Kern gefaltet wird um zur Dosisverteilung, welche im Bild rechts zu sehen ist, zu gelangen.

Dieser Dosis-Voxel-Kern wird mit der Zerfallsverteilung gefaltet, um die Dosisverteilung zu erhalten vgl. Abb. 1. Formal schreibt sich die Faltungsoperation wie folgt vgl. Kap. 8.1:

(3)

Die Einheit der Energiedosis ist . Die Dosis kann wie folgt berechnet werden:

(4)

Wobei die deponierte Energie in einem Voxel, die Masse des Voxels, die Massendichte innerhalb des Voxels und das Volumen des Voxels bezeichnet.
Aus der Gleichung () lässt sich schließen, dass die Dosisverteilung in einem Dosis-Voxel-Kern stark dichteabhängig ist. Bei der Faltung mit der Zerfallsverteilung wird vorausgesetzt, dass der Patient vollständig aus Weichgewebe besteht, was zu erheblichen Fehlern bei der Dosisverteilung führt. Im Anschluss wird dies für die zu diskutierende Methode berücksichtigt.

2 Dichte spezifische Dosis-Voxel-Kerne

Die Faltung mit einem Dosis-Voxel-Kern bestehend aus Weichteilgewebe ist eine zeiteffektive Methode zur Abschätzung der im Körper deponierten Strahlungsenergie, jedoch werden Dichteunterschiede von z.B. Knochen, Weichgewebe und Luft nicht berücksichtigt. Da von jedem Patienten ein SPECT/CT akquiriert wurde, ist die Information der Dichteverteilung vorhanden. Um diese zu nutzen, müsste man anstatt mit nur einem Kern die verschiedenen Zerfallsverteilungen auch mit verschiedenen Kernen falten.
In Abb. 2 wird die Vorgehensweise schematisch dargestellt. Zunächst wird das CT-Bild in kleine Volumeneinheiten zerlegt, um die Dichteverteilungskerne zu erhalten. Dabei ist das CT-Bild auf die Ortsauflösung der SPECT-Aufnahme skaliert. Anschließend wird die absorbierte Strahlungsdosis der einzelnen Dichteverteilungskerne mit Hilfe von Monte-Carlo-Simulationen berechnet. Sowohl die Zerfallsverteilung als auch die Dichteverteilung aus dem CT gehen in die Monte-Carlo-Simulation ein und heraus kommt die gewünschte Dosisverteilung [MIR:17].

Abbildung 2: Aus der CT-Bildgebung lassen sich die Elektronenmassen messen, aus denen die Massendichte berechnet werden kann. Einzelne Ausschnitte ergeben die Dichteverteilungskerne. Mittels Monte-Carlo-Simulation können daraus Dosis-Voxel-Kerne berechnet werden. Um schließlich die Dosisverteilung zu erhalten, wird die Karte der Zerfallsverteilungen, die man aus der SPECT-Bildgebung erhält, mit den Dosis-Voxel-Kernen gefaltet.

Da die Berechnung und Simulation mit den unterschiedlichen Dichteverteilungskernen immens kostspielig und zeitintensiv ist, jedoch die Faltung mit nur einem Kern zu unzureichenden Ergebnissen führt, soll ein neuer Ansatz vorgestellt werden. Ziel ist es, den Transfer, welcher bei der Monte-Carlo-Simulation berechnet wird, aus den Daten der unterschiedlichen Dichteverteilungen lernen zu können. Anschließend sollen die gelernten Filter für die Zerfallsverteilung zur Faltung eingesetzt werden, um die Dosisverteilung zu erhalten.
Für dieses Verfahren werden Techniken aus dem Deep-Learning verwendet. Das nachfolgende Kapitel soll einen Überblick zu den gängigen Techniken geben und gleichzeitig zur im Experiment verwendeten Architektur hinführen. In den Erläuterungen zu den neuronalen Netzen soll für die Notation die fettgedruckte Schreibweise für Vektoren verwendet werden. Fettgedruckte Großbuchstaben entsprechen dabei Matrizen bzw. Tensoren.

[1]DeepLearningEinführung in Deep Learning

3 Überwachtes Lernen mit neuronalen Netzen

Die vermutlich am besten erforschte und populärste Technik des maschinellen Lernens ist das überwachte Lernen. Wenn eine Klassifizierungs- oder Regressionsaufgabe vorliegt, z.B. eine Zuordnung von Bildern in verschiedene Gruppen, wird dabei zunächst ein Datensatz für jeden Vertreter gesammelt. Während des Trainings werden der Maschine die Bilder gezeigt. Diese berechnet einen Vektor von Zielwerten, dabei entpricht jede Dimension einer zugeordneten Kategorie oder Klasse [HIN:DL:2015]. Es wird entweder ein Vektor erzeugt, dessen Werte oder annehmen können, oder sich im Wertebereich zwischen und befinden. Ersteres gibt für jedes Bild eine feste Klassenzugehörigkeit an, letzteres eine Wahrscheinlichkeit. entspräche beispielsweise der Zugehörigkeit zu einer Klasse und eben nicht.
Ziel der Aufgabe ist es, den Informationseingang so zu verrechnen, dass dessen Wert an der entsprechenden Dimension des Vektors maximiert wird vgl. [HIN:DL:2015]. Jeder Wert in diesem Vektor steht dabei für eine Kategorie, zu der die Eingangsinformation zugeordnet werden soll. Vor dem Trainingsbeginn werden die Gewichte zufällig initialisiert, sodass es beliebig unwahrscheinlich ist, dass bei der Eingabe des Bildes die entsprechende Klasse resultiert. Deshalb wird eine Fehlerfunktion eingesetzt, die den Fehler oder den metrischen Abstand zwischen Eingabe und Ausgabe berechnet. Diese Funktion gilt es anschließend zu maximieren. Im Falle neuronaler Netze modifiziert die Maschine mittels Rückwärtspropagation in jedem Trainingsschritt ihre Parameter, sodass sich der Fehler verringert vgl. [HIN:DL:2015]. Die Parameter sind reelle Zahlen, die häufig auch Gewichte genannt werden. Modellhaft wird die Analogie zur Funktionsweise und Dynamik in menschlichen Hirnzellen gesucht, den Perzeptren vgl. [ROB:1962]

. Deshalb wird eine einzelne verarbeitende Zelle auch als Perzeptron oder Neuron bezeichnet

[NNN:1988].

Abbildung 3:

Aktivierungsfunktionen: Tangens Hyperbolicus, Rectifier-Linear-Unit

[RELU:2013], Soft-Exponential-Function [SOFTEX:2016] (Bildquelle: Wikipedia [WIKI]).
(5)

In der obigen Gleichung (5) ist die Aktivität einer Schicht formalisiert. Dabei ist das Ausgangssignal als explizite Funktion der Eingangssignale , , wobei die Anzahl der Beispiele bezeichnet und die Menge der zu Grunde liegenden Daten. ist das Gewicht in der -ten Schicht am -ten Neuron, entsprechend ist W die Gewichtsmatrix des Netzes. ist eine Aktivierungsfunktion, bspw. Signumfunktion, Tangens Hyperbolicus oder Fermifunktion vgl. [INN:1987]. Verwendet man die Signumfunktion für Klassifikationsaufgaben, folgt die Bedingung und für jedes Muster muss gelten , wobei einen Vektor meint, welcher in Richtung der entsprechenden Klasse zeigt. Betrachtet man ein ideales Musterbeispiel , so gilt . Geometrisch ist dies so zu interpretieren, dass mit eine Gerade, Ebene oder Hyperebene im Raum definiert wird, welche die Muster im Eingangsraum in zwei Klassen einteilt. Ein einzelnes Perzeptron kann demzufolge nur linear separable Probleme lösen vgl. Abb. 4 [INN:1987, vgl. S. 9-11].

Abbildung 4: Binärer Klassifikator: einschichtiges einzelnes Perzeptron. (1) Vektor ist orthogonal zur Trennebene zwischen zwei Klassen, (2) Forderung nach , (3) mit einem einzelnen einschichtigen Perzeptron nicht lösbares, nicht linear separables Problem.

Herkömmliche neuronale Netze arbeiten mit einer asymmetrischen eng. Feedforward-Kopplung oder Vorwärtskopplung. Es gibt für gewöhnlich keine Rückkopplung zwischen Ausgangs- und Eingangsschicht und auch keine lateralen Kopplungen zu den Nachbarperzeptren. Der Algortihmus erhält Muster als Eingabe und strebt in Richtung geeigneter Gewichte. Für die Anpassung dieser Gewichte wird eine Lernschrittweite definiert, welche üblicherweise als geschrieben wird. Daraus ergibt sich die Update-Regel [INN:1987, S. 12]:

(6)

Für die obige Gleichung gibt es immer dann eine genaue Lösung, wenn eine Richtung gefunden werden kann, für die alle Projektionen der Muster positiv sind . Für die Schwierigkeit eine Trennebene zu finden, lässt sich folgendes Maß angeben: . Ein solches Perzeptron ist geeignet, um einfache binäre Klassifikationsaufgaben zu bewerkstelligen. Mehrlagige Netze mit mindestens zwei Schichten, den sog. eng. Hidden Layer, können auch nicht linear separable Probleme lösen. Dabei erfolgt die Verarbeitung in zwei Schritten.

4 Lernen mittels Gradientenabstieg

Mittels Gradientenabstieg werden die Gewichte eines neuronalen Netzes iterativ angepasst, bis der Algorithmus konvergiert, ein Stop-Kriterium erfüllt ist oder die Kostenfunktion gänzlich verschwindet, was in der Praxis selten der Fall ist. Die Kostenfunktion wird häufig als Distanz oder Divergenz zwischen Eingabe und Ausgabevektor formalisiert. Einfache Distanzmaße bieten sich an, wie etwa die euklidische Norm, oder der mittlere quadratische Fehler. Im Folgenden soll eine Liste einen Überblick über gängige Kostenfunktionen schaffen, welche hauptsächlich für Klassifikationsprobleme verwendet werden [LOSS:2005, LOSS:2003, LOSS:2014].

(mittlerer quadratischer Fehler)
(Kullback-Leibler-Divergenz)
(logarithmisch basierte Funktion)

Durch den Einsatz des Logarithmus (logarithmische Stauchung) besitzt die Funktion weniger lokale Minima als der MSE.

(Entropie-ähnliche Funktion)

Für die Entropie-ähnliche Kostenfunktion gilt, dass der Fehler der Ausgabeschicht direkt proportional zur Differenz von Zielausgabe und tatsächlicher Ausgabe ist:

(7)

5 Vorwärtspropagation

Unter Vorwärtspropagation versteht man die Präsentation eines Reizmusters in der Eingangsschicht und die sukzessive Berechnung der gewichteten Eingaben aller darauffolgenden Schichten, bis zur Ausgabe.
Der hier beschriebene Algorithmus ist in [HIN:DL:2015] einführend in die Deep Learning Thematik vorgestellt worden.

Abbildung 5: Vorwärtspropagation bei einem neuronalen Netz.

Sei für die nachfolgenden Beispiele ein Vektor der Länge . Jede Dimension steht für ein Merkmal der Stichprobe. Die durchgezogenen Linien symbolisieren Gewichte von einem Perzeptron zum nächsten. Perzeptren addieren sämtliche gewichteten Muster aus der vorherigen Schicht auf, und transformieren diese mittels Aktivierungsfunktion. Dieser Vorgang wird bis zur Ausgabe fortgesetzt. Hier verändert sich die Aktivierungsfunktion. Für Klassifikationsaufgaben ist es sinnvoll zu entscheiden, ob ein Beispiel einer Klasse zugehörig ist oder nicht. Dies geht am besten mittels Wahrscheinlichkeiten. Die Softmax-Funktion , die Werte im Intervall ausgibt, kann dafür gewählt werden. Die Aktivität eines neuronalen Netzes mit zwei Schichten für Klassifikationsaufgaben im Feedforward-Schritt ist gegeben durch:

(8)

6 Rückwärtspropagation

Die Rückwärtspropagation ist ein Algorithmus für die Korrektur der Gewichte bei jedem Iterationsschritt. Die Erläuterungen die nun folgen entstammen der 1987 veröffentlichten Publikation [INN:1987] für Berechnungsverfahren mit neuronalen Netzen, sowie dem von Hinton et. al. 1986 publizierten Aufsatz über das Lernen der Repräsentation von Daten mittels rückwärts propagierter Fehlerrechnung [HINTON:1986].
Der eng. Backpropagation-Algorithmus ist äquivalent zu einem iterativen Gradientenabstieg für eine Kostenfunktion, hier in den Beispielen ein Distanzmaß (z.B. MSE). Die Kosten berechnen sich aus der tatsächlichen Ausgabe der kumulierten Aktivität eines neuronalen Netzes und der gewünschten Zielausgabe.
Die Nichtlinearität wird durch eine Transformation mittels Aktivierungsfunktion gewährleistet. Im Folgenden soll als Aktivierungsfunktion gehandhabt werden.
Der Faktor wird gerne vorangestellt, weil die Aktivierungsfunktion so analytisch leichter zu differenzieren ist, diese Veränderung ist jedoch nicht zwangsläufig notwendig.
Unterhalb der Schichten ist die entsprechende Kostenfunktion notiert. Für die Updates der Kostenfunktion wird die -Regel verwendet. Der gesamte Fehler zwischen tatsächlicher Ausgabe und dem Zielmuster ist durch gegeben:

(9)
(10)
(11)
(12)

meint die Aktivität am i-ten Perzeptron, während das Muster präsentiert wird. Es wird vorausgesetzt, dass die Kostenfunktion kontinuierlich und differenzierbar ist. Für die erste Schicht berechnet sich das wie folgt:

(13)
(14)
(15)
(16)
(17)

In der Ausgabeschicht ergibt sich der Fehler der Vorwärtspropagation wie folgt:

(18)

Dieser Fehler ist der fortgepflanzte Fehler aus den Hidden-Layer-Schichten:

(19)
(20)

Eine Sammlung an Trainingsbeispielen wird Ensemble, eine vollständige Präsentation aller Beispiele Epoche genannt. Die Präsentation der Muster erfolgt zufällig. Die Anzahl der Muster, die für einen Iterationsschritt verwendet werden, nennt sich eng. Batch-Size und ließe sich mit Packetgröße sinngemäß übersetzen. Die Konvergenz des Algorithmus ist nicht bewiesen, ebenso wenig, wie ein wohldefiniertes Stop-Kriterium. Im Allgemeinen sollte gelten, dass der Gradient einen kleinen Wert annimmt, oder aber der Gewichtsvektor keine signifikante Veränderung über eine bestimmte Anzahl an Iterationsschritten macht . Zusammenfassend ergibt sich folgender Algorithmus für ein -schichtiges Netzwerk, wobei und die Aktivität des -ten Perzeptrons in der -ten Schicht bezeichnet. Dabei gilt, dass die Aktivität in der Eingangsschicht dem Netto-Input entspricht und mit das synaptische Gewicht der entsprechenden afferenten Kopplung () bezeichnet wird: Zunächst werden die Gewichte mit kleinen Werten initialisiert, z.B. . Anschließend wird das erste Muster präsentiert, sodass jede Eigenschaft des Musters in einem numerischen Wert kodiert ist (). Jetzt berechnet man die Aktivitäten höherer Schichten mit bis zur letzten Schicht .

Abbildung 6: Darstellung des Feedforward-Algorithmus (links) und Verlauf der Rückwärtspropagation des Fehlers (rechts).

An dieser Stelle ist die Vorwärtspropagation abgeschlossen und es greift der Fehlerberechnungsalgorithmus. Üblicherweise berechnet man den Fehler der Ausgabeschicht zuerst, sodass die Terme, welche mittels Kettenregel aus der Ableitung entstehen [vgl. 2.12], für die Berechnung in früheren Schichten wieder verwendet werden können. Der Fehler der Ausgabeschicht ist dann , wobei die Aktivität am -ten Perzeptron in der -ten Schicht meint. Somit ergeben sich auch die Fehler tieferer Schichten: .
Zuletzt werden alle Gewichte mittels -Regel verbessert und durch die neuen Gewichte ersetzt: . Diese Prozedur wird für alle Muster im Trainingsensemble wiederholt.

7 Rekurrente neuronale Netze (RNN)

Rekurrente neuronale Netze sind eine Architekturform, die eine große Bandbreite von Berechnungsmodellen meint. Im Kern unterscheiden sich diese Modelle nur geringfügig in der Architektur von klassischen neuronalen Netzen. Dieser Unterschied manifestiert sich jedoch in ihrer mathematischen Definition. Im Gegensatz zu afferenten neuronalen Netzen, mit klassischer Vorwärtspropagation, besitzen rekurrente neuronale Netze zyklische Strukturen [RNN:2009], die bei der Iteration berechnet werden.
Durch die Verwendung lateraler Kopplungen sind neuronale Netze auch Ausgangspunkt für die eng. Skip-Connections gewesen, welche maßgeblichen Einfluss auf die Bewegung des Gradienten haben. Diese Verbindungen werden im Deep Learning als Überbrückung verwendet und bieten dem Gradienten einen anderen Pfad an. Die Skip-Connections tauchten zuerst bei den sog. Residuennetzen auf und wurden später in die sog. U-Netze überführt [RESNET, UNET1]. Dazu in Kap. id1 mehr.
Ein rekurrentes neuronales Netz verhält sich so, dass es ein eigenes dynamische Aktivierungsverhalten innerhalb der rekurrenten Strukturen entwickelt. Versteht man afferente Netze als Transferfunktion , so wäre ein rekurrentes neuronales Netz ein dynamisches System [RNN:2009].
Weiterhin verfügt das rekurrente Netz über eine Art nicht lineare Historie zu den bereits trainierten Eingabemustern. Es kann als eine Art Kurzzeitgedächtnis verstanden werden [RNN:2009]. Die Kopplungen können entweder in Form einer direkten Rückkopplung (Rekursion innerhalb eines Perzeptron), einer indirekten Rückkopplung (Rekursion zum vorherigen Perzeptron), einer lateralen Kopplung (zum benachbarten Perzeptron) oder eines vollständig verbundenen Graphen auftreten.
Derartige Modelle haben eine Kosten- oder Energiefunktion zu Grunde, die mit einem stochastischen Prozess minimiert werden soll. Die afferenten und rekurrenten Kopplungen sind dabei vollständig symmetrisch vgl. [RNN:2009]. Die bekanntesten Vertreter dieser Netze sind Hopfield Netze [HOPF], Boltzmann Maschinen [BOLZ], oder die in jüngster Vergangenheit aufgekommenen eng. Deep Belief Networks [DBN]. Typische Anwendungen in diesem Gebiet sind Assoziativspeicher, Datenkompression, unüberwachte Modellierung von Verteilungen und Modellierung von zeitlich abhängigen Mustern, wie Bewegungsabläufen [RNN:2009, HINT:2007].

7.1 Einfache rekurrente neuronale Netze (SRNN)

Einfache rekurrente neuronale Netze arbeiten mit dem in Kap. 6 erläuterten Rückwärts-propagation-Algorithmus. Elman hat 1991 die Funktionsweise dieser Algorithmen beschrieben [RNN:1991].

Abbildung 7: Einfaches rekurrentes neuronales Netz mit einer Eingangs-, einer Ausgangs- und einer tieferen Schicht. Die grünen Punkte entsprechen einfachen Assoziativspeichern in Form von Summen.

In der versteckten Perzeptrenschicht im neuronalen Netz können laterale Kopplungen eingeführt werden, die zu sog. Kontexteinheiten führen. Diese Kontexteinheiten sind Perzeptren, deren Gewicht konstant bei bleibt. Die Anzahl dieser Kontexteinheiten entspricht der Anzahl Einheiten in der versteckten Schicht, mit der die laterale Kopplung besteht. Die versteckten Einheiten koppeln anschließend an selbige Perzeptren zurück, von denen sie ihre Information beziehen. Jedes kontextuelle Perzeptron erhält von genau einer Perzeptreneinheit die gewichtete Information. Die Kontexteinheiten beinhalten eine exakte Kopie der Information der mit ihnen gekoppelten Perzeptren zum Iterationszeitpunkt . Zum Iterationsschritt wird der Inhalt an die gekoppelte Schicht zurückgegeben. Jedes kontextuelle Perzeptron ist afferent mit jedem Perzeptron der verborgenen Schicht verbunden. Die Addition und Gewichtung erfolgt mittels Vorwärtspropagation vgl. Kap. 5. Diese Kontexteinheiten werden als Assoziativspeicher betrachtet, da in ihnen sämtliche Informationen, die vom neuronalen Netz verarbeitet wurden, beinhaltet sind. Die Information zum Iterationszeitpunkt bedingt den gewichteten Ausgang der verborgenen Schicht, welcher wiederum für den nächsten Iterationsschritt in die Kontexteinheiten gespeichert wird.

7.2 Lernen von Sequenzen mit rekurrenten neuronalen Netzen

Um Zeitreihen zu lernen werden modifizierte Architekturen verwendet. Im Folgenden wird ein Überblick über Techniken für rekurrente neuronale Netze gegeben, um zeitliche Abhängigkeiten zu kodieren. Als Zeitreihe versteht sich jegliche zeitliche Abhängigkeit, wie ein steigender oder fallender Aktienkurs, das Lernen bestimmter Bewegungsabläufe oder medizinische Anwendungen: Herzschlag, Blutdruck oder Hirnaktivitäten. Wie kann man zum Beispiel lernen, wann der Blutdruck steigt bzw. fällt, abhängig von der vorherigen Aktivität? Angenommen es liegen Daten von verschiedenen Patienten vor. Einer der Patienten ist stationär behandelt worden, dessen Werte liegen über eine geraume Zeit vor, anders als bei Patienten die eine 24 Stunden Messung absolvieren. Die erste Herausforderung ist also die Vereinheitlichung der Dimension, da eine unterschiedliche Menge an Daten von jeder Testperson vorliegt vgl. [GOOG:2015].
Eine Möglichkeit zur Vereinheitlichung der Dimensionen wäre die größte Datenmatrix als Ausgangsdimension zu verwenden. Anschließend werden alle anderen Matrizen auf dieselbe Größe formatiert, indem die fehlenden Belegungen mit Nullen aufgefüllt werden. Es ist von Vorteil, die Daten auf dieselbe Art und Weise mit Nullen zu füllen. Ausgehend von einer Ecke oder dem Zentrum der Matrix. Im Englischen nennt sich dieser Vorgang

Zero-Padding

. Daraufhin kann mittels Faltung der unterschiedlich dimensionale Eingang an Information in eine einheitliche Größe reduziert werden vgl. [GOOG:2015]. Um die Dimensionsreduktion zu gewährleisten und die wichtigsten Aktivitäten zu berücksichtigen, ist es möglich nach der Faltung das eng. Max-Pooling zu verwenden (vgl. 8.4). Unter so drastischen Kriterien kann jedoch der Informationsverlust für die Bilderkennung zu hoch sein. Für das beschriebene Szenario ist diese Methode also ungeeignet, da man von einer präzisen zeitlichen Information ausgehend Rückschlüsse auf zukünftige Ereignisse schließen möchte vgl. [GOOG:2015].
Eine alternative Möglichkeit mit unterschiedlich großer Eingangsinformation umzugehen, sind rekurrente Netze. Ein geeignetes Modell für die Vorhersage solcher abhängiger Variablen könnte wie folgt aussehen vgl. Abb. 8 [GOOG:2015]:

Abbildung 8: Rekurrentes neuronales Netz, wie es für das Lernen von Sequenzen verwendet wird [GOOG:2015]. Dabei kann der Eingang eine beliebige Anzahl an Dimensionen haben. Gibt es einen Datensatz, dem Messungen fehlen (Datenpunkte oder Vektorpositionen), werden diese Belegungen mit Nullen aufgefüllt. Die nicht lineare Aktivität innerhalb der Perzeptren mit lateralen Bindungen ist eine sigmoide Funktion. Als Ausgabe wird eine Kodierung mit Information über die sequenziellen Bezüge innerhalb der Daten generiert. Die Ausgabe muss nicht zwangsläufig dieselbe Dimension wie der Eingang haben. Es ist ebenso möglich die Daten niedriger- oder höherdimensional zu kodieren.

Dabei sind Messpunkte des Blutdrucks zum Zeitpunkt der Gesamtzeit . bezeichnen die Aktivitäten im neuronalen Netz, häufig auch lokales Feld genannt. Das Gewicht vom Eingang in die erste tiefere Schicht heißt , das Gewicht zwischen den tieferen Schichten wird mit bezeichnet und die Gewichte aus der tieferen Schicht heraus zur Ausgabe mit , analog zu [GOOG:2015]. Diese Gewichte sind für alle Perzeptren gleich, sie werden also geteilt, sind Skalare und erhalten deshalb keinen Index. Durch das Teilen der Variablen kann der rekurrente Eingang beliebig lang gewählt werden. Nach der Vorwärtspropagation werden die Gewichte durch Gradientenabstieg auf der Kostenfunktion mit dem Backpropagation-Algorithmus optimiert. Die Aktivitäten in den versteckten Schichten können anschließend sukzessive wie folgt angepasst werden [GOOG:2015], wobei die Aktivität im lokalen Feld bezeichnet:

(21)
(22)
(23)
(24)

7.3 Langzeit-, Kurzzeitspeicher mit rekurrenten neuronalen Netzen (LSTM)

Für die Langzeit-, Kurzzeitspeicher oder eng. Long Short-Term Memory, gibt es besondere Anwendungsfälle für das Lernen von Transfers. Leider ist die Rückwärtspropagation über die Zeit ein schwieriges Unterfangen, welches häufig zu explodierenden oder verschwindenden Gradienten führt [HOCHREITNER:2001].

Abbildung 9: LSTM-Perzeptren in einem rekurrenten neuronalen Netz. Der rote Pfad ist ein nicht linearer Pfad. Der Gradient kann auch über den linearen, einfacheren Pfad verbessert werden.

Der Blutdruck bei einem gesunden Menschen ist für gewöhnlich über Nacht durchgehend stabil. Morgens hat der Mensch im Allgemeinen leicht erhöhten Blutdruck, der über den Tag hinweg schwankt.
Entsprechen die Daten diesem Szenario, würde das System in der ersten Dimension, also am Morgen, immer einen hohen Wert für jeden Datenpunkt zum Training erhalten. Das entspräche einem niedrigen Gradienten, der sich über den Verlauf der Optimierung kaum noch ändern würde [GOOG:2015]. Dieses Verhalten ist nicht wünschenswert, da eine ähnliche Gewichtung für alle Tageszeiten erwartet wird.
Le formuliert dies wie folgt: Wenn der Gradient in einer bestimmten Dimension äußerst klein ist und in anderen Dimensionen extrem groß, dann sieht die Landschaft der Kostenfunktion aus wie ein Tal, mit sehr steilen Wänden und einem tiefen Becken vgl. [GOOG:2015]. Der Grund für dieses Verhalten des Gradienten, so Le weiter, ist die Nutzung von sigmoiden Aktivierungsfunktionen. Durch die iterative Verbesserung der Kostenfunktion werde diese auch mit der Ableitung der sigmoiden Funktion multipliziert. Dies könne schnell zur Sättigung führen.
Eine Möglichkeit dies zu verhindern wäre die -Funktion als Aktivierung zu verwenden [HOCHREITNER:2017]. Diese verhindert die Bildung von Extremwerten beim Gradienten. In Kap. id1 wird im Detail vorgestellt, welche Funktion für den experimentellen Anwendungsfall gewählt wurde, um diesem Problem zu entgehen.
Abgesehen davon ist für das rekurrente Lernen wohl das LSTM die größte Verbesserung [SCHMIDHUBER:2003, HOCHREITNER:1997, GOOG:2015]. Die Idee hinter LSTM ist eine Veränderung der rekurrenten Struktur, sodass der Gradient bei der Rückwärtspropagation stabiler bleibt. Die Kerne dieser Assoziativspeicher sind die rekurrenten Perzeptren, die eine Integration über die Zeit darstellen vgl. [GOOG:2015]. Die anschließenden Erläuterungen folgen den Aufsätzen [HOCHREITNER:1997] und [GOOG:2015].
Angenommen die Daten haben zum Zeitpunkt die Werte und die tieferen Einheiten hatten zum vorangegangenen Zeitschritt die Aktivität , dann haben die Perzeptren, welche den Assoziativspeicher bilden, folgende Werte:

(25)

Dabei meint der Operator die elementweise Multiplikation zweier Vektoren. Das neue Gewicht der Assoziativspeicher ist somit eine gewichtete Linearkombination aus , also dem Gewicht aus dem vorangegangenen Zeitschritt und . Dies entspricht zwei unterschiedlichen Pfaden, denen der Gradient bei der Rückwärtspropagation folgen kann, sollte eines der beiden Bestandteile extreme Werte annehmen. Häufig wird für die Funktion eine sigmoide Funktion wie der gewählt, um explodierende Gradienten zu verhindern. Von diesem Assoziativspeicher ausgehend, lässt sich der Zustand der versteckten Schichten wie folgt berechnen:

(26)

und werden für die nachfolgenden Zeitschritte zur Berechnung der Aktivität benötigt. Dies gibt dem Gradienten wiederum mehr Möglichkeiten unterschiedliche Pfade einzuschlagen. Die Terme und werden im Englischen häufig auch Gates genannt, zu Deutsch entspricht das den Schranken. Diese Schranken sind Faktoren, die den Beitrag des jeweiligen Terms, also der Aktivität zum Schritt bzw. gewichten. Sie werden wie folgt implementiert:

(27)
(28)
(29)
(30)

Mit diesen Parametern und dieser Architektur können folgende Eigenschaften erzielt werden [GOOG:2015]:

  • [noitemsep]

  • Es ist möglich die Verbindungen zu den rekurrenten Perzeptren bereits zu Beginn zu nutzen, sodass sich das LSTM-Netz ähnlich wie ein Faltungsnetz verhält. Die Gradienten können zu den Werten jedes Zeitschrittes hin konvergieren.

  • Es ist ebenfalls möglich die Verbindungen zu den rekurrenten Perzeptren von Beginn an zu initialisieren, sodass man im schlimmsten Fall ein einfaches rekurrentes Netz trainiert.

  • LSTM-Einheiten sind numerisch sehr stabil. Durch die Aktivierungsfunktion sind die addierten Werte in einem normierten Bereich, z.B. zwischen und .

8 Faltungsnetze (CNN)

Die eng. Convolutional Neural Networks oder Faltungsnetze sind eine Technik des Deep Learning, welche die Bildverarbeitung in den vergangenen Jahren maßgeblich geprägt und weiterentwickelt haben. Besonders wurde die Bildklassifikation [IMGK:2014], sowie Objekterkennung [OBJ:2014, OBJF:2015] und semantische Zuordnung von Bildinhalten [SEG:2015] verbessert.

Faltungsnetze zeigen beeindruckende Performanz bei standardisierten Benchmarktests mit Datensätzen wie z.B. ImageNet

[IMGNET:2009] oder MSCOCO [MSCOCO:2014]. Die Fähigkeit der semantischen Repräsentation macht sie ebenso wertvoll für das Belernen einer Funktion für den Bild zu Bild Transfer. Im Folgenden werden die Prinzipien von Faltungsnetzen erläutert und gängige Modelle vorgestellt.

8.1 Theorem der Faltung

In der mathematischen Disziplin der Funktionalanalysis ist die Faltung ein Operator der zwei Funktionen und auf eine Dritte abbildet . Faltung ist ein sehr nützliches Werkzeug, möchte man feststellen, wie viel von den Eigenschaften einer Funktion in einer anderen enthalten sind. Die Faltung ist wie folgt definiert vgl. [FKA:2007]:

(31)

Der Wert des bestimmten Integrals ist eine veränderliche Funktion von , somit eine Integralfunktion. Zur Erläuterung soll die Faltung der Funktionen und dienen. Dabei ist die Faltung so zu verstehen, dass die Ergebnisfunktion angibt, wie stark der Wert der Funktion zum Iterationszeitpunkt im Funktionswert der Gewichtungsfunktion zum Iterationsschritt enthalten ist. Ein analytisches Beispiel für die Faltung von und ist im Anhang unter Zusätzliches zum Kapitel : Deep Learning gegeben.
Neuronale Netze verwenden ebenfalls das Prinzip der Faltung. Für diskrete Größen wird die Multiplikation der Faltungsmatrix, auch Kern genannt, im nächsten Abschnitt erläutert.

8.2 Faltungsmatrizen

Für die Faltung von Bildern verarbeitet man diskrete Mengen. Die Informationen über einen bestimmten Zustand werden in eine Faltungsmatrix geschrieben. Faltungsmatrizen sind quadratisch mit einer ungeraden Anzahl an Spalten- bzw. Zeilenvektoren. Für viele Operationen der Bildverarbeitung wird das Faltungsprinzip aus Kap. 8.1 verwendet. Für eine Menge an Pixel in einem Bild, oder einer beliebigen diskreten Menge an Datenpunkten, lässt sich die Faltungsoperation wie folgt formalisieren:

(32)

ist die gefaltete Matrix, wobei die Koordinaten den jeweiligen Eintrag definieren. bezeichnet den Kern, der zur Faltung verwendet wird. bezeichnet die Matrix der Datenpunkte des ursprünglichen Datensatzes. Faltet man ein Bild, so entspricht dem ursprünglichen Bild. Mit wird die Matrixmitte des Kernels bezeichnet.

Abbildung 10: Graphische Veranschaulichung der Faltungsoperation diskreter Mengen. Die Faltung wird mit einem Filter von und einer Schrittweite (eng. Stride von durchgeführt. Bei der Faltung wird zunächst von links nach rechts gefaltet. Die Werte innerhalb der rot markierten Matrix werden aufsummiert und in das hervorgehobene Feld in der rechten kleineren Darstellung der Matrix geschrieben. Die Matrix nach der Faltung ist kleiner, gemäß der Anzahl an Schritten entlang einer Achse.

8.3 Übersetzungsinvarianz der Faltung

Deep Learning wird häufig für große Datenstrukturen verwendet. Dabei ist entscheidend, dass der Datenhaushalt zu bewältigen ist. Bei großen Datenmengen sind die Dimensionen des Eingangs sehr hoch, dementsprechend würde jedes Perzeptron eine Summe der gewichteten Dimensionen für jedes Beispiel annehmen. Angenommen es liegt ein Bild vor, so wäre der Eingangsraum Dimensionen groß und jedes Neuron würde ebensoviele Komponenten für die Aktivität aufaddieren. Eine mögliche Lösung ist das sog. Teilen der Gewichte oder eng. weight sharing vgl. [GOOG:2015].
Ein Beispiel soll das Prinzip verdeutlichen. Ausgehend von einer beliebigen Schicht und neun eingehenden Gewichten , von denen jeweils drei den gleichen (oder einen ähnlichen) Wert haben:

(33)
(34)
(35)

So sollen die Aktivitäten in die nächste Schicht propagiert werden vgl. [GOOG:2015]. Dadurch, dass die Gewichte dreier Verbindungen gleich sind, können sich diese den Wert teilen. So muss nicht der gesamte Datensatz verarbeitet werden. Statt alle Gewichte zu speichern, reicht es ein Gewicht aus jedem Tupel zu verarbeiten, z.B. , und .
Diese Idee, Gewichte zu teilen, entspricht der Operation der Faltung, bei der eine Matrix, also ein Satz von Gewichten, für mehrere Positionen der Eingangssignale einer Schicht angewendet wird [GOOG:2015]. Diese Matrizen nennt man auch Filter.

Abbildung 11: Darstellung der gemeinsamen Gewichte wie sie in Faltungsnetzen umgesetzt werden (Bildquelle: [CNNWEIGHTS]).

Filter haben eine weitere nützliche Eigenschaft für die Verarbeitung von Daten. Innerhalb der Pooling-Schicht, dazu in Abschnitt 8.4 mehr, spielt die Reihenfolge der Informationen in den Perzeptren keine Rolle vgl. [GOOG:2015]. In natürlichen Daten ist der Übersetzungstransfer die häufigste Ursache für verrauschte Daten. Beim Max-Pooling wird von einer festgelegten Anzahl Perzeptren nur eines, welches die höchste Aktivität aufweist, in die nächste Schicht geleitet. Deshalb eignen sich solche Architekturen besonders für natürliche Daten. Bei diesem Vorgang von Faltung und Pooling wird die Dimension in den Daten drastisch reduziert.

Abbildung 12: Weite und enge Formen der Faltung. Der Filter in diesem Beispiel hat die Größe 5 (Bildquelle: [CNNWEIGHTS]).

Viele kürzlich aufgekommene Architekturen haben zusätzlich eine weitere Art von Transformation, die lokale Kontrastnormalisierung, oder eng. local contrast normalization vgl. [GOOG:2015, JARR:2009]. Diese Schicht erhält als Eingabe die Aktivität der Max-Pooling-Schicht. Es wird der Mittelwert subtrahiert und die Standardabweichung der eingehenden Perzeptren dividiert [GOOG:2015]. Das erlaubt eine Helligkeitsinvarianz, was für Bildsegmentierung und Objekterkennung ein nützliches Werkzeug ist. Diese Konstruktion wird für die Vorwärtspropagation analog zu herkömmlichen neuronalen Netzen trainiert. Bei der Rückwärtspropagation werden die Gewichte, die sich die gruppierten Perzeptren teilen, gemittelt vgl. [GOOG:2015]:

(36)
(37)
(38)

8.4 Pooling

In der bisherigen Literatur sind die populärsten Ansätze das Max-, Min- und das Average-Pooling, sowie Stochastic-Pooling. Komplexere Pooling-Schichten, wie das räumlich pyramidale Pooling sind zuletzt in den Fokus der Untersuchungen gerückt [POOL:2011, POOL:2010, POOL:2013, POOL:2016]. Der Begriff Pooling kommt aus dem Englischen und entspricht übersetzt ins Deutsche einer Bündelung. Üblicherweise werden Pooling-Schichten innerhalb von Faltungsnetzen eingesetzt. Diese Schichten werden nach der Faltung verwendet, um besondere Merkmale entlang bestimmter Achsen oder Bereiche der verarbeiteten Matrix auszumachen. Ein Faltungsnetz berechnet Filter, die ein besonderes Merkmal am Eingangsobjekt kodieren und später bei der Vorhersage entdecken. Anders als mit der herkömmliche Aktivierungsfunktion bei der sämtliche Werte der Matrix separat verarbeitet werden, kann mittels Pooling die Aktivität über eine ganze Achse gelernt werden, oder einen Teil der Matrix. Pooling-Schichten leiten nur eine bestimmte Menge an Informationen weiter. Es kommt also zu einem Verlust. In welcher Form diese Informationen an die nächste Schicht weiter gegeben werden können, wird in diesem Kapitel beschrieben.
Das Pooling ist eine Technik, bei der eine Größe vordefiniert wird, die üblicherweise nicht veränderlich ist. Diese Größe kann einem Vektor, einer Matrix oder einem Tensor entsprechen, je Dimension mit der gebündelt wird. Normalerweise wird eine Matrix für ein -Pooling verwendet.
Beim Max-Pooling wird diese vordefinierte Größe wie eine Schablone am ersten Zeilen- und Spalteneintrag der Eingangsmatrix angelegt. Aus diesem Bereich wird die größte Aktivität gewählt. Diese Aktivität entspricht dem ersten Eintrag der Ausgangsmatrix. Dieses Verfahren wird für die gesamte Eingangsinformation iterativ wiederholt. Dabei muss eine zweite Größe festgelegt werden, die angibt, um wie viele Pixel die Schablone für jeden Iterationsschritt verrückt wird. Diese Größe nennt sich Schrittweite oder eng. stride. Die Schrittweite wird für jede Dimension der Eingangsinformation angegeben, für eine Matrix entspräche sie einem Vektor, für einen Tensor einem Vektor, entsprechend der Schrittweite in jede Raumrichtung.

9 Stochastischer Gradientenabstieg (SGD)

Der stochastische Gradientenabstieg stellt eines von vielen Optimierungsverfahren dar, die häufig in neuronalen Netzen verwendet werden. Bisher wurden verschiedene Techniken der Zusammensetzung von Perzeptren-Netzen behandelt. Die Optimierung der Parameter spielt jedoch ebenfalls eine zentrale Rolle. Als nächstes werden gängige Algorithmen vorgestellt, die auch im experimentellen Teil dieser Arbeit zum Einsatz kommen.
Im Gegensatz zum klassischen Gradientenabstieg ist der stochastische Gradientenabstieg eine starke Vereinfachung. Die Erklärungen und Beispiele für den SGD sind dem Aufsatz »

Large Scale Machine Learning with Stochastic Gradient Descent

« von Bottou entnommen [BUTTOU:2010].
Anstatt den ganzen Gradienten zu berechnen, wird für den SGD nur der Gradient zu einem Beispiel während des Iterationsschritts berechnet:

(39)

Im Gegensatz dazu formalisiert man den Gradientenabstieg wie folgt:

(40)

Im Gegensatz zum Gradientenabstieg in Gleichung (40) besteht die Hoffnung darin, dass sich Gleichung (39) durch die zufällige Auswahl eines Beispiels so verhält wie Gleichung (40), trotz des hinzugefügten Rauschens verursacht durch die Vereinfachung vgl. [BUTTOU:2010].
Da der SGD keinen Bezug zu Beispielen aus vorhergehenden Iterationsschritten hat, kann er online berechnet werden. Der SGD ist eine direkte Minimierung des erwarteten Risikos, bzw. der erwarteten Kosten und wird aus der tatsächlichen Verteilung der zu Grunde liegenden Stichprobe gezogen.
In der Literatur wurde das Konvergenzverhalten des SGD weitreichend untersucht. Verständlicherweise ist die Konvergenz des SGD limitiert, durch die verrauschte Schätzung des tatsächlichen Gradienten. Wenn der Gradient zu langsam abnimmt, nimmt die Varianz des Parameters ebenso langsam ab. Unter ausreichender Regularisierung entspricht das bestmögliche Konvergenzverhalten . Die Erwartung des Residuenfehlers konvergiert mit einer ähnlichen Geschwindigkeit, vgl. [BUTTOU:2010, MURATA:1998].

10 Adaptives Moment niedriger Ordnung (ADAM)

Das zunehmende Interesse an maschinellem Lernen bedarf robuster Lösungen zur Optimierung von Kostenfunktionen von nicht stationären Daten.
Die Methode wurde so gestaltet, das zwei sehr erfolgreiche Ansätze miteinander kombiniert wurden. Dazu gehört der AdaGrad Algorithmus [ADAGRAD:2011]

und der RMSProp Algorithmus

[RMSPROP:2012]. AdaGrad zeigte bis zu diesem Zeitpunkt gute Performanz mit sparsam kodierten Daten, während RMSProp sehr gut mit online und mit stationären Daten umgehen konnte [KINGMA:2015].

1:Prozedur: 

Adaptives Moment niedriger Ordnung

2:Parameter: : Lernschrittweite
3:Parameter: : exponentielle Strafterme für die Momentschätzungen
4:Parameter: : Stochastische Kostenfunktion mit den Parametern
5:Parameter: : Initialisierungsparameter
6:     
7:     
8:     
9:     while  nicht konvergiert do
10:         
11:          (Berechne den Gradienten zum Zeitpunkt )
12:          (Update Schätzung des ersten Moments)
13:          (Update Schätzung des zweiten Moments)
14:          (Fehlerkorrektur des Moments erster Ordnung)
15:          (Fehlerkorrektur des Moments zweiter Ordnung)
16:               return
Algorithmus 1 ADAM Algorithmus aus dem Aufsatz von Kingma und Lei Ba [KINGMA:2015], ist die elementweise Quadrierung von . In Ihrem Aufsatz geben die beiden Autoren als gute Initialparameter , , und an. Im folgenden Algorithmus sind alle Vektoroperationen elementweise zu verstehen [KINGMA:2015].

Einige Vorteile des ADAM Algorithmus: Die Anzahl an Update-Schritten ist invariant in Bezug auf die Skalierung der Daten, die Veränderung des Gradienten ist nahezu gänzlich an die Schrittweite gebunden, es werden keine stationären Daten benötigt, der Algorithmus funktioniert auch mit Matrizen sparsamer Kodierung und der Algorithmus vollführt eine schrittweise Annäherung, ähnlich dem simulated annealing vgl. [KINGMA:2015].
Im beschriebenen Algorithmus 1 entspricht der Term einer Energie- bzw. Kostenfunktion, die von einem Satz Parametern abhängt [KINGMA:2015]. Insgesamt soll der Erwartungswert der Funktion minimiert werden. Der Algorithmus wird als stochastisch bezeichnet, durch die Verwendung von zufällig gewählten Beispieldaten, anhand derer der Gradient berechnet wird. Eine weitere Möglichkeit den Algorithmus als stochastisch zu verstehen, wäre das inherente Rauschen der Funktion [KINGMA:2015]. bezeichnet den Gradienten der Funktion , die zum Iterationszeitpunkt berechnet wurde. bezeichnen analog die jeweilige Funktion zum Zeitschritt . Bei der Berechnung des Gradienten für einen neuen Zeitschritt wird dieser in Richtung der Momente erster und zweiter Ordnung gelenkt, dabei sind und Regularisierungsterme vgl. [KINGMA:2015].
Kingma und Lei Ba testeten den Algorithmus auch unter experimentellen Bedingungen mit Faltungsnetzen. Nicht zuletzt soll der Algorithmus wegen der guten Benchmark Ergebnisse verwendet werden. In der Literatur gibt es viele Erweiterungen für ADAM. Von besonderem Interesse ist jedoch die Einbindung des Nesterov Moments in den Optimierungsalgorithmus. In [NESTEROV:2015] zeigte diese Variante hervorragende Testergebnisse, weshalb der Algorithmus im nächsten Kapitel ebenfalls vorgestellt wird.

11 Nesterov adaptives Moment niedriger Ordnung (NADAM)

Möchte man ein bestehendes Deep Learning System verbessern, so gibt es unterschiedliche Möglichkeiten wie man vorgehen kann vgl. [NESTEROV:2015]: Entweder man macht das Netz tiefer, man ersetzt gewöhnliche rekurrente Einheiten durch LSTM-Zellen oder man setzt Methoden der Vorverarbeitung ein, um die Daten möglichst rauschfrei zu präsentieren [NESTEROV:2015].
Weiterhin konnte gezeigt werden, dass auch eine sorgfältige Auswahl der Verteilung bei der Initialisierung von Faltungsnetzen auschlaggebend für die frühe Entwicklung des Gradienten ist und somit auch für die Performanz des Systems [INIT:2013].
Dabei werden die Parameter des Systems durch Optimierungsalgorithmen in jedem Iterationsschritt angepasst. Der Gradientenabstieg ist der prominenteste Algorithmus und inzwischen sehr gut verstanden.
Für die Beschleunigung des Gradientenabstiegs wurde die Einführung eines Moments vorgeschlagen [MOMENTUM:1964]. Dabei wird, ähnlich dem physikalischen Verständnis von Moment, eine Art Geschwindigkeitsvektor, der eine enstprechende Raumrichtung angibt, verwendet. Dieser Vektor wird mit einem Kostenterm (meist einer Konstante, hier und in den Ausführungen von Dozat und Polyak als bezeichnet) multipliziert.
Dies hat den Vorteil, dass der Gradient in Raumrichtungen, die eine rasante Veränderung und einen starken Abfall aufweisen, drastisch verlangsamt wird und vice versa in Richtungen beschleunigt wird, in denen der Gradient oszilliert [NESTEROV:2015].

1: (Berechnung des Gradienten zum Zeitschritt )
2: (Berechnung des Moments mit Kosten )
3: (Moment mit Lernschrittweite )
Algorithmus 2 Gradientenabstieg mit klassischem Moment [NESTEROV:2015].

Sutskever et al. schlugen bereits die Einbindung des Nesterov-Moments in den Algorithmus des Gradientenabstiegs vor [NESTEROV:2015, SUTSKEVER:2013]. So zeigt sich, betrachtet man die erste Gleichung der Momentberechnung, dass der Update-Schritt gleichbedeutend mit einem Gradientenabstieg in Richtung des Moments zum Zeitschritt ist und ein weiterer Schritt in Richtung des Gradienten zum Zeitschritt gemacht wird vgl. Algorithmus 1 [NESTEROV:1983].

(41)

Dozat postuliert, dass der Momentterm nicht vom derzeitigen Gradienten abhängt (), sondern lediglich vom Gradienten des letzten Iterationsschritts vgl. Algorithmus 1 [NESTEROV:2015]. Sutskever et al. schlugen deshalb vor, dass die Parameter noch vor Berechnung des Gradienten angepasst werden sollten, um eine Qualitätsverbesserung gegenüber dem klassischen Gradientenabstieg zu erreichen vgl. [SUTSKEVER:2013].

(42)
(43)
(44)

Während für den klassischen Gradientenabstieg das Moment als eine gewichtete Summe der letzten Update-Schritte verstanden werden kann, entspricht es bei ADAM einem gewichteten Mittelwert der Gradienten der letzten Iterationen [KINGMA:2015, NESTEROV:2015].

(45)
(46)

Indem die Gradienten statt der Updates verwendet werden, ist es dem Algorithmus möglich kontinuierlich die Richtung zu wechseln, selbst wenn die Lernrate bereits sehr klein ist, was wiederum zu einer präziseren Konvergenz führt [KINGMA:2015, NESTEROV:2015]. Der Algorithmus korrigiert auch den Initialisierungsfehler, der durch die Initialisierung der Momente mit Nullwerten entsteht, durch den Nenner [NESTEROV:2015]. Im Folgenden möchte ich dem Aufsatz von Dozat [NESTEROV:2015] folgen und erläutern, wie es gelingt, diese Modifikationen in den ADAM-Algorithmus zu integrieren. bezeichnet dabei die Kosten einer Richtung, in welche der Gradient während eines Update-Schritts gelenkt werden soll. Statt den Gradienten zuerst zu berechnen, anschließend zu den Ausgangswerten der Parameter zurückzukehren, um dann wiederum einen Schritt in Richtung des Moments zu machen, wird das Moment zum Zeitschritt nur ein Mal berechnet, während des Updates des Zeitschritts . Dies geschieht wie folgt vgl. [NESTEROV:2015, NESTEROV:1983]:

(47)
(48)
(49)

Dieselbe Umformung kann nun auch für ADAM (Alg. 1) angewendet werden:

(50)
(51)

Daraus entsteht dann das Nesterov adaptive Moment niedriger Ordnung. In Alg. 3 wird der vollständige Algorithmus noch einmal zusammengefasst.

1:Prozedur: Nesterov adaptives Moment
2:Parameter:
3:     
4:     while  do
5:         
6:         
7:         
8:         
9:         
10:               return
Algorithmus 3 Schätzung des Nesterov adaptiven Moments [NESTEROV:2015].

Der Algorithmus wurde mit verschiedenen Optimierungsalgorithmen empirisch verglichen, darunter ADAM und dem klassischen SGD. In Kombination mit Faltungsnetzen zeigte er die beste Performanz unter den getesteten Verfahren [NESTEROV:2015].
Da dieser Algorithmus sowohl den SGD als auch den ADAM in der Geschwindigkeit der Konvergenz übertroffen hat, wird er im weiteren Verlauf der Arbeit zur Optimierung der Parameter der neuronalen Netze in Kap. id1 verwendet.

[1]ExperimentTranferfunktion zur Schätzung der Strahlungsdosis

12 Arbeiten zur Bildsegmentierung

Bei der Bildsegmentierung ist es die Aufgabe einen semantisch zusammengehörigen Teil eines Bildes zu erkennen und diesen abzugrenzen. Verschiedene wissenschaftliche Disziplinen nutzen Bildsegmentierung und Bilderkennung zur Analyse. Die Medizin insbesondere benutzt diese Techniken häufig als diagnostisches Werkzeug.
Besondere Fortschritte machte die Einführung der Faltungsnetze, die in den letzten Jahren für visuelle Aufgabenfelder den bisherigen Standard übertroffen haben [GIR:2014, KRI:2012]. Zu diesem Zeitpunkt wurden Faltungsnetze hauptsächlich für Klassifikationsaufgaben verwendet, jedoch gehört zur Bildsegmentierung mehr. Durch die Zuordnung von jedem Pixel zu einer bestimmten Klasse lässt sich aus der Klassifikationsaufgabe eine Lokalisierungsaufgabe umformulieren vgl. [UNET1]. Dadurch wurden Faltungsnetze für die Bildsegmentierung interessant.
Ab diesem Zeitpunkt gab es großen Andrang die Benchmarks zu übertreffen. Zuletzt sind die reinen Faltungsnetze (eng. Fully Connected Convolutional Neural Networks, kurz FCNN), die auf die klassische Struktur gänzlich verbundener Perzeptren verzichten, zum Standard erklärt worden vgl. [FCNN1, FCNN2, FCNN3].
FCNNs wurden weitreichend für verschiedene Aufgaben eingesetzt. So eigneten sie sich für die Tiefenschätzung [FCNN4], Bildrestoration [FCNN5], der Rekonstruktion von Bildern für die Verbesserung der Auflösung [FCNN6] und nicht zuletzt der Schätzung von Dichten [FCNN7], weshalb sie auch in den Fokus dieser Untersuchung gerückt sind.
Diese Netze erhielten viel Aufmerksamkeit und konnten deshalb schnell weiterentwickelt werden. Durch die Kombination der LSTM-Zellen mit den Faltungsnetzen entstanden noch performantere Netze zur Extraktion von Merkmalen [GIL:2017]. Eine besondere Architekturform der Faltungsnetze ist das U-Netz, welches von Ronneberger et. al. 2015 vorgestellt wurde [UNET1, UNET2]. Die Architektur besteht aus einem symmetrischen Aufbau. Wie bei Autoencodern auch, wird die Information über eine Dekodierungsschicht zunächst verarbeitet. Hierbei wird sukzessive die Dimension in den Daten durch Faltung und Pooling verringert. Dabei wird jedoch die Filteranzahl in jeder Faltungsschicht zeitgleich erhöht. Dies ist der kontraktive Pfad für die Lokalisierung der Muster vgl. [UNET1]. Anschließend erfolgt eine Schicht zur Entkodierung des Gelernten. Die Anzahl der Schichten entspricht dabei der Anzahl der Dekodierungsschichten. Jede Schicht enthält dieselbe Anzahl an Filter wie bei der Dekodierung, jedoch in umgekehrter Reihenfolge. Durch Upsampling wird dabei die Dimension der Daten wieder auf den Ausgangszustand gebracht. Das Besondere an diesem Netz, was auch den entscheidenden Unterschied zu herkömmlichen Autoencodern macht, sind die Verkettungen zwischen den Schichten der Dekodierung und Entkodierung. Dabei wird jede Schicht der Dekodierung mit einer Entkodierungsschicht verknüpft, die dieselbe Dimension hat. Die Verknüpfung erfolgt über einen Pfad mit einer möglichst einfachen Aktivierung, beispielsweise eine lineare Aktivierungsfunktion, oder gar ohne Aktivierung. Es konnte gezeigt werden, dass diese Art von neuronalen Netzen in der Segmentierung die bisherigen Standards bei weitem übertreffen [UNET1]. Weiterhin haben diese Netze eine besonders günstige Berechnungszeit, sie sind also schnell vgl. [UNET1].
Aufgrund dessen wird diese Architekturform für den hier vorgestellten Rekonstruktionsvorgang adaptiert. Durch die Kombination verschiedener Techniken aus der Rekonstruktion und Segmentierung soll nicht nur eine erfolgreiche Lokalisation erfolgen, sondern eine möglichst voxelgenaue Transferfunktion gelernt werden.

13 Metriken zur Messung der Segmentierung und Rekonstruktion

Für das Experiment werden verschiedene Metriken verwendet, um das Ergebnis korrekt interpretieren zu können. Diese Untersuchung ist die erste ihrer Art, weshalb versucht wird den State of the Art in Anbetracht anderer Problemstellungen anzugeben. Bei den folgenden Metriken ist es gelegentlich wichtig die Achsen des Tensors separat zu erläutern. Zu diesem Zweck wird die erste Dimension mit , die zweite mit und die Dritte mit benannt, sodass gilt: und .

MSE (eng. mean squared error)

Der mittlere quadratische Fehler ist definiert als der Erwartungswert des quadrierten Fehlers von Eingang und Zielausgabe, . Diese Art Fehler zu messen gewichtet Fehler im Quadrat höher und Fehler im Quadrat niedriger. Dieses Maß ist ein gängiges Maß für Regressionsprobleme. Als Metrik für die Qualität des neuronalen Netzes ist diese Art Fehler am wenigsten geeignet, da der Fehler nicht auf ein Intervall zwischen normiert ist. Aufgrund mangelnder Untersuchungen in diesem Bereich gibt es auch keine Referenzwerte auf die Bezug genommen werden kann. Der mittlere quadratische Fehler wird trotzdem gemessen, um Eigenschaften der Daten aus dessen Beziehung zu den anderen beiden verwendeten Metriken abzuleiten. Der MSE wird mit dem MAE verglichen. Für normalisierte Daten im Intervall ist zu erwarten, dass der Fehler deutlich kleiner ausfällt als der MAE. Für Daten mit großer Varianz würde er entsprechend größer ausfallen.

MAE (eng. mean absolute error)

Der mittlere absolute Fehler gibt ein gutes relatives Maß zum mittleren quadratischen Fehler und ist definiert als der Betrag der Differenz von Eingang und Zielausgabe: . Der MAE ist für auf normierte Daten größer als der MSE. Auch diese Messung gibt jedoch nicht die Möglichkeit eines standardisierten Vergleichs her, denn der MAE ist nicht auf die Werte in den Daten normiert, sodass er als Metrik keine Aussagekraft hat. Die Messung soll trotzdem durchgeführt werden, da der MAE den Fehler linear gewichtet und somit ein Referenzwert zum MSE darstellt. Liegen bspw. Normalisierungsfehler vor, so können diese durch das Beobachten des Verhaltens der beiden Metriken entdeckt werden.

IoU (eng. intersection over union)

In der Bildsegmentierung und dem Fachbereich Computer Vision ist der Jaccard-Koeffizient oder eng. Intersection Over Union sehr weit verbreitet. Im Allgemeinen wird damit der gelernte Überlapp zweier Mengen gemessen. Der Jaccard-Koeffizient ist definiert als: .
Die folgende Implementierung der IoU wird für das neuronale Netz als Kostenfunktion verwendet:

(52)

Es wird jeweils zwischen Vorhersage und Zieltensor für jedes Pixel paarweise der kleinste und größte Wert genommen. Anschließend wird der kleinere Wert durch den größeren dividiert. Mit dieser Implementierung erhält man einen Fehler normiert auf das Intervall . Bei der Berechnung des Fehlers werden auch die räumlichen Positionen im Tensor berücksichtigt.
Weiterhin ist dieses Maß für Segmentierungsverfahren weit verbreitet und kann dadurch auf einfache Weise Aufschluss über die Qualität der produzierten Vorhersage geben [mit-saliency-2, mit-saliency-3].
Bei der Auswertung spielt als zweiter Faktor die physikalische Interpretierbarkeit eine zentrale Rolle. Etwa der gesamten deponierten Energie liegt im Zentrum, wo das simulierte Isotop deponiert wurde. Aus diesem Grund ist es sinnvoll eine Kostenfunktion zu berechnen, welche den Fehler mit dem Anteil an deponierter Energie gewichtet. Indem aus beiden Tensoren paarweise das Minimum mit dem Kehrbruch des Maximums gewichtet wird, kann dieser Effekt erzielt werden (). Die IoU bietet somit eine Metrik, welche den Fehler proportional zur deponierten Energie angibt.

Normalisierung

Vor der Verarbeitung werden die Daten auf ein bestimmtes Intervall normiert. Da in der letzten Schicht des neuronalen Netzes eine sigmoide Funktion angewendet wird, welche ebenfalls Werte im Intervall zurück gibt, eignet sich eine Min-Max-Normalisierung besonders. Um jedoch zu verhindern, dass der Gradient sättigt, werden die Werte auf ein etwas kleineres Intervall normiert. Dadurch erfolgt die Aktivierung nicht nahe den Grenzwerten und . Diese Bereiche sind Flach vgl. Abb. 3, was eine Sättigung des Gradienten bedeutet.

(53)

14 Verschiebung der Kovarianz

Faltungsnetze zu trainieren birgt viele Herausforderungen. Dadurch das eine große Anzahl Parameter optimiert werden muss, gibt es auch einen großen Suchraum. Deshalb können die Filter während des Gradientenabstiegs sehr unterschiedliche Verteilungen annehmen, ebenso wie der Informationseingang von Schicht zu Schicht. Dies macht die richtige Initialisierung der Gewichte und Parameter äußerst schwierig und hat auch Konsequenzen für die gewählte Lernschrittweite vgl. [COVSHIFT].
Ioffe und Szegedy definieren die interne Verschiebung der Kovarianz oder eng. Internal Covariate Shift als die Veränderung der Verteilung der Aktivitäten des Netzwerks, während die Parameter des Netzes im Trainingsdurchlauf adaptiert werden [COVSHIFT].
LeCun, aber auch Wiesler und Ney, publizierten bereits früh ihre Erkenntnisse, dass neuronale Netze mit zentrierten Daten, linearen Transformationen mit Mittelwert und Varianz , sowie dekorrelierten Merkmalen bessere Ergebnisse erzielen können [LECUN98b, WIESLER:2014].
In diesem Kapitel möchte ich auf die Normalisierung der Batches eingehen und erläutern, wie dadurch der Covariate Shift verhindert werden kann. Ich stütze mich dabei auf die Ausführungen von Ioffe und Szegedy [COVSHIFT].
Die Batch-Normalisierung kann für jede affine Transformation gefolgt von einer Nichtlinearität der folgenden Form verwendet werden:

(54)

Wobei die gelernten Gewichte, die gelernte Verzerrung und eine beliebige Nichlinearität meint. Die Verzerrung kann vernachlässigt werden, da die Daten im nächsten Schritt normalisiert werden und durch die Subtraktion des Mittelwerts der Einfluss der Verzerrung eliminiert wird vgl. [COVSHIFT]. Anders als bei Ioffe und Szegedy wird die Batch-Normalisierung nach der Aktivierung durchgeführt. Dies hat den Hintergrund, dass die LeakyReLU-Nichtlinearität verwendet wird. Batch-Normalisierung zentriert die Daten aus einer Faltungsschicht entsprechend den gelernten Mustern. Negative Aktivierungen, welche durch die Verwendung eines Skalierungsterms in der Aktivierungsfunktion erlaubt werden, können nicht länger berücksichtigt werden. Batch-Normalisierung nach der Aktivierung normalisiert die positiven Daten ohne diese durch die negativen statistisch zu verzerren. Der Gedanke dabei ist, dass diese Merkmale in der nächsten Faltung ohnehin durch die Aktivierungsfunktion entsprechend skaliert werden, bspw. im Falle einer ReLU-Funktion auf gesetzt und somit nicht länger berücksichtigt werden.

1:Prozedur: Batch-Normalisierung
2:Parameter: : Werte für über einen Satz an Beispielen
3:Parameter: : zu lernende Parameter
4:      (Mittelwert für Mini-Batch)
5:      (Varianz für Mini-Batch)
6:      (Normalisierung)
7:      (Skalierung und Verschiebung)
8:return
Algorithmus 4 Batch-Normalisierung für die Faltung in neuronalen Netzen nach Ioffe und Szegedy [COVSHIFT].

Daraus ergibt sich folgende Normalisierungsgleichung für die Aktivitäten:

(55)

Für Faltungsschichten ist es ebenfalls wichtig zu berücksichtigen, dass Merkmale aus demselben Filter, mit einer anderen Position, dieselbe Normalisierung erhalten. Um dies zu gewährleisten wird eine Mini-Batch Normalisierung für alle Positionen durchgeführt [COVSHIFT]. Im Algorithmus 4 ist eine Menge von Werten aus einer kleinen Menge an Beispielen und deren räumlicher Aktivität. Ist also die Größe der Mini-Batch mit benannt, und die Merkmalskarte (oder Filter) mit , so wird die Größe des Mini-Batch auf festgelegt [COVSHIFT].
Würde man den Informationseingang einer Faltungsschicht auf diese Weise normalisieren, beeinflusst dies die Repräsentation durch die Transferfunktion. Verwendet man bspw. eine sigmoide Funktion, würde die Aktivität auf den linearen Teil der Nichtlinearität eingeschränkt sein [COVSHIFT]. Um zu gewährleisten, dass die Normalisierung auch die ursprüngliche Identität abbilden kann, sollte diese optimal sein, sollen zwei Parameter für die Muster gelernt werden vgl. [COVSHIFT, LECUN98b]. Diese skalieren und verzerren die normalisierten Werte entsprechend des Gradienten:

(56)

Diese Parameter werden mit dem ursprünglichen Modell iterativ gelernt. Während des Trainingsvorgangs muss die Rückwärtspropagation der Kostenfunktion entsprechend der hier vorgestellten Transformation erfolgen. Ebenso wird der Gradient mit Berücksichtigung der Batch-Normalisierung verändert. Hierfür wird die Kettenregel wie folgt angepasst vgl. [COVSHIFT]:

(57)
(58)
(59)
(60)
(61)
(62)

15 Residuennetze

Residuennetze verwenden die Idee von Einheiten mit deren Hilfe eine zusätzliche Residuenfunktion in Abhängigkeit von dem Informationseingang in einer Schicht gelernt werden soll [RESNET].
Daraus lässt sich der Ausgang aus einer Residueneinheit wie folgt formalisieren:

(63)
(64)

Wobei und den Eingang in der -ten Schicht meint und eine Residuenfunktion. ist eine identische Abbildung. Auf diese Weise kann der gesamte Inhalt eines überbrückten Teils des neuronalen Netzes durch die Summe des propagierten ungewichteten Inhalts und einer Residuenfunktion dargestellt werden. Die Realisierung dieser Technik erfolgt durch eine Verbindung, welche einen Teil des Netzes überbrückt und die Information von einem Teil des Netzes in einen tieferen propagiert vgl. [RESNET]. Bei der Verwendung von U-Netzen wird der Inhalt von Schichten überbrückt, die bei der Verarbeitung der Daten als Ausgabe dieselbe Dimension liefern.
Für diese Modifikation gibt es in der Literatur viele Bezeichnungen, zuletzt wurden Deep Learning Systeme als Residuennetze bezeichnet, welche eine lineare Überbrückung zwischen jeder Schicht anbieten [RESNET]. Dadurch kann theoretisch der Inhalt durch das gesamte Netz linear rückwärts propagiert werden. Die Verbindungen selbst werden Skip Connections genannt und sollen fortwährend sinngemäß mit Überbrückung bezeichnet werden.

Abbildung 13: Die Grafik zeigt zwei tiefere Schichten mit einer Überbrückung vgl. [RESNET].

Jüngst wurden verschiedene Aktivierungsfunktionen zur Propagation mittels Überbrückung getestet [HOCHREITNER:1997, SRIVASTAVA:2015, SRIVASTAVA:2015:2], wobei die besten Ergebnisse mit der Verkettung von Matrizen bzw. Tensoren oder einer linearen Aktivierung erzielt wurden. Andere Aktivierungsfunktionen zeigten größere Fehlerraten im empirischen Versuch.
Falls also eine identische Abbildung ist, sodass , kann Gleichung (3.12) in (3.13) eingesetzt werden und es ergibt sich vgl. [RESNET]:

(65)

Rekursiv fortgesetzt erhält man für die tieferen Schichten:

(66)
(67)

Oder allgemein:

(68)

Dies gilt für die Schicht mit der Überbrückung und die dazwischen befindlichen Schichten. Die Merkmale tieferer Aktivitäten der Schicht können dargestellt werden durch den Netto-Input der Schicht und eine Residuenfunktion zwischen zwei beliebigen Perzeptreneinheiten und .
Die Merkmale jeder tieferen Einheit ist die Summe der Ausgangsinformation aller vorherigen Residuenfunktionen und . Dies steht im Kontrast zu herkömmlich „flachen” Netzen, in denen ein Merkmal das Produkt aus dem gewichteten Eingang ist (bei gleichzeitiger Vernachlässigung von Normalisierung und Regularisierung) [RESNET].
Diese Verbindungen haben auch einen günstigen Einfluss auf den rückwärts propagierten Fehler, wie die folgende Modifikation der Kettenregel entsprechend Gleichung (3.17) zeigt vgl. [RESNET]:

(69)

Gleichung (3.18) führt an, dass der Gradient durch zwei Terme dargestellt werden kann: welcher die Information direkt propagiert, ohne eine Gewichtung vorzunehmen, und einen zweiten Term welcher durch die Gewichtung propagiert wird [RESNET].
Aus Gleichung (3.17) und (3.18) folgt, dass das Signal direkt in die überbrückte Schicht weiter propagiert werden kann. In diesem Experiment wird die Technik nach der letzten Faltungsschicht und vor Dropout und Pooling eingebettet. Dadurch kann der Gradient auf die gelernte Information des ersten Teils auch nach weiteren Faltungsoperationen zurückgreifen.
In den U-Netzen zeigte sich diese Methode bereits als sehr effektiv [UNET1, UNET2] und auch im empirischen Versuch der Schätzung der Dosis-Voxel-Kerne konnte die bestehende Performanz des Systems nur mit Hilfe von Überbrückungen erreicht werden.

16 Dropout

Neuronale Netze mit vielen Schichten sind zunehmend schwerer zu trainieren. Dropout anzuwenden ist eine einfache Möglichkeit das Phänomen des sog. Overfitting zu verhindern, bei dem die Trainingsdaten in gewisser Weise auswendig gelernt werden und die Generalisierungsfähigkeit verloren geht. Dropout dünnt dabei das Netzwerk aus, indem es durch eine Zufallsvariable aus einer Bernoulli-Verteilung bestimmt, welche Perzeptren innerhalb einer Schicht weiterhin aktiv bleiben und somit auch propagiert werden. Ein neuronales Netz mit Perzeptreneinheiten kann als Sammlung von ausgedünnten Subnetzen verstanden werden. Diese Netze sind weiterhin so konzipiert, dass alle Gewichte aus der vorherigen Schicht geteilt werden, sodass die Anzahl Parameter ist vgl. [DROPOUT].
Gegeben sei ein neuronales Netz mit tieferen Schichten und sei der Index der tieferen Schichten. Weiterhin sei die Anzahl Perzeptreneinheiten in einer der tieferen Schichten und analog der Index der Perzeptreneinheit innerhalb einer Schicht. Weiterhin bezeichne den Informationsausgang