Neuronal Networks Exam SS20 German PDF

Title Neuronal Networks Exam SS20 German
Author Earl Kess
Course Neuronale Netze
Institution Karlsruher Institut für Technologie
Pages 12
File Size 612.3 KB
File Type PDF
Total Downloads 82
Total Views 152

Summary

Fakultät für InformatikProf. Dr. A. WaibelInstitut für Anthropomatik und Robotik (IAR)Aufgabenblätterzur Klausur „Deep Learning & Neuronale Netze“am 28. August 2020, 10:30 Uhr – 11:30 Uhr Beschriften Sie bitte gleich zu Beginn jedes Lösungsblatt deutlich lesbar mit Ihrem Namen und Ihrer Matrikel...


Description

Fakultät für Informatik Prof. Dr. A. Waibel Institut für Anthropomatik und Robotik (IAR)

Aufgabenblätter zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020, 10:30 Uhr – 11:30 Uhr • Beschriften Sie bitte gleich zu Beginn jedes Lösungsblatt deutlich lesbar mit Ihrem Namen und Ihrer Matrikelnummer. • Diese Aufgabenblätter werden nicht abgegeben. Tragen Sie Ihre Lösung deshalb ausschließlich in die für jede Aufgabe vorgesehenen Bereiche der Lösungsblätter ein. • Extra Material (einschließlich Taschenrechner) sind während der Klausur nicht zugelassen. Täuschungsversuche durch Verwendung unzulässiger Hilfsmittel führen unmittelbar zum Ausschluss von der Klausur und zur Note „nicht bestanden“. • Halten Sie Begründungen oder Erklärungen bitte so kurz wie möglich. (Der auf den Lösungsblättern für eine Aufgabe vorgesehene Platz steht übrigens in keinem Zusammenhang mit dem Umfang einer korrekten Lösung!) • Die Gesamtpunktzahl beträgt 60 Punkte (+6 Punkte max. für die Programmieraufgabe, falls Sie die Klausur bestehen). • Verwenden Sie weder Rotstift noch Bleistift. Alle Lösungen in rot oder mit Bleistift werden nicht gewertet.

Viel Erfolg!

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

Aufgabe 1

Mehrschichtiges Perzeptron

3

(17 Punkte)

Gegeben sei ein mehrschichtiges Perzeptron (MLP) mit folgender Konfiguration: • Eingabevektor X ∈ R3 • Verdeckte Schicht H ∈ R3 . H und X sind durch die Gewichtsmatrix W H ∈ R3×3 folgendermaßen verbunden: ˆ wobei H ˆ = W HX H = f (H)

(1)

Hierbei ist f die ReLU-Aktivierungsfunktion f (x) = max (x, 0) und W H ist die Diagonalmatrix   h w 11 0 0 h 0 . W H :=  0 w22 (2) h 0 0 w33 • Ausgabeschicht O ∈ R2 . O und H sind durch die Gewichtsmatrix W O ∈ R2×3 verbunden: O = W OH

(3)

  P1 der beiden Klassen durch • Abschließend werden die Wahrscheinlichkeiten P := P2 die Softmax-Funktion geschätzt: exp Oi Pi = P j exp Oj

(4)

• Die Zielfunktion (loss function) ist die Kreuzentropie (cross entropy ) Funktion X Yj logPj (5) L=− j

.   Frage 1 (3 Punkte): der Eingabe X = 1.0 2.0 −1.0 und gewünschten  Gegeben  Ausgabe Y = 0.0 1.0 , berechnen Sie die Ausgabe der verdeckten Schicht H, die Ausgaben O und den Wert der Zielfunktion L. Die Werte für W H bzw. W O können aus Abb. 1 entnommen werden. Frage 2 (10 Punkte): Verwenden Sie Backpropagation, um die Gradienten der Gewichtstmatrizen W H und W O zu bestimmen. Ihre analytische Lösung muss die Graˆ enthalten. Verwenden Sie für Ihre Lösung dienten der Aktivierungen O, H und H den entprechenden Graph auf dem Lösungsblatt. Frage 3 (4 Punkte): Führen Sie nun mit den berechneten Gradienten ein Update der Gewichtsmatrix W O mit Stochastic gradient descent (SGD) durch. Nehmen Sie η := 1 als Lernrate an. Geben Sie die Formel und die veränderten Gewichte an.

Abbildung 1: Darstellung des einfachen MLPs

5

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

Aufgabe 2

(33 Punkte)

Lernen von Sequenzen

Frage 1 (5 Punkte): Gegeben der Eingabesequenz X ∈ R2×5 und der Gewichtsmatrix W ∈ R2×3 mit     1 1 0 1 1 0 1 −1 X := und W := , (6) 0 1 0 1 1 0 1 −1 berechnen Sie die Werte der verdeckten Schicht eines 1D Time-delay neural networks (TDNN), was äquivalent zu einem 1D Convolutional neural network (CNN) ist. Wichtige Hinweise: • Der delay factor ist 2, also Ht = f (Xt , Xt+1 , Xt+2 ), was einer Filtergröße von f := 3 eines CNNs entspricht. • Die Eingabe wird am Ende durch Nullvektoren der Gesamtgröße 2×2 aufgefüllt (Padding ). • Die Aktivierungsfunktion f ist die ReLU-Funktion: f (x) = max(x, 0). Geben Sie die genaue Berechnung für den ersten Zeitschritt an und die Ergebnisse für die weiteren Zeitschritte.. Frage 2 (6 Punkte): In Abbildungen 2 und 3 sind zwei unterschiedliche Versionen eines “kausalen” TDNNs/CNNs abgebildet, deren i-te verdeckte Schicht Hti im Zeitschritt t von den aktuell verfügbaren Eingaben Xt , Xt−1 , Xt−2 , . . . abhängig ist, wobei t ∈ [1, t] und i ∈ [1, h]. H 31

H 23

H 33

H 43

H 35

H 63

H 73

H 38

H 93

3 H 10

Verdeckte Schicht 3

H 21

H 22

H 32

H 42

H 25

H 62

H 72

H 28

H 92

2 H 10

Verdeckte Schicht 2

H 11

H 21

H 31

H 41

H 15

H 61

H 71

H 18

H 91

1 H 10

Verdeckte Schicht 1

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

Eingabesequenz

Abbildung 2: “Kausale” TDNN/CNN In der dilatierten (dilated ) Version wird der Filter, im Vergleich zur normalen Version auf einen größeren Bereich angewandt. Die Filtergröße / Länge wird dabei gleich gehalten und Eingaben werden mit einer bestimmten Schrittgröße übersprungen. Eine Schicht mit einer Dilation von 1 ist äquivalent zu einer herkömmlichen CNNSchicht, wobei eine Dilation von 2 bedeutet, dass die Faltung jeden zweiten Zeitschritt angewendet wird und dazwischen jeweils eine Eingabe wegfällt. Beide dargestellten Netze nutzen eine Filtergröße von f := 2 und h := 3 verdeckte Schichten. In jedem Zeitschritt ist die Eingabe sowie die Ausgabe ein Vektor der Dimension n := 100 für

6

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

H 31

H 23

H 33

H 43

H 35

H 63

H 73

H 38

H 93

3 H 10

Verdeckte Schicht 3

H 21

H 22

H 32

H 42

H 25

H 62

H 72

H 28

H 92

2 H 10

Verdeckte Schicht 2

H 11

H 21

H 31

H 41

H 15

H 61

H 71

H 18

H 91

1 H 10

Verdeckte Schicht 1

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

Eingabesequenz

Abbildung 3: Dilatierte (dilated ) “kausale” TDNNs/CNNs alle Schichten. Die Gesamtzahl der Zeitschritte beträgt t := 10 und im dilatierten Modell nimmt der dilation Wert von 1 bis 2 bis 4 exponentiell zu. Berechnen Sie die Anzahl der Gewichte und neuronaler Verbindungen in beiden Netzen. Hinweis: Es gibt keinen Unterschied zwischen gestrichtelten und durchgezogenen Linien, sie dienen nur der besseren Darstellung. Frage 3 (10 Punkte): Gegeben Sei die Topologie eines rekurrenten neuronalen Netzes (RNN) wie in Abb. 4. Das Netz besteht aus zwei RNNs, denen die Eingabesequenz X jeweils in umgekehrter Reinhenfolge präsentiert wird (Bidirectional recurrent neural networks).

Abbildung 4: Topologie eines rekurrenten neuronalen Netzes (RNN) Die verdeckte Schicht H wird als Summe des letzen Zustands der beiden RNNs

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

7

berechnet: f Htf = f (WIF Xt + W Hf Ht−1 ) f ) Htb = f (WIb Xt + WHb Ht+1

H = H4f + H1b O = WO H L= O−Y ∂L =1 ∂O Die Ausgabeschicht O ist eine lineare Abbildung von H. Die Zielfunktion (loss) L wird durch einem Vergleich der Ausgabe O mit Trainings-Labels errechnet. Verwenden Sie die Kettenregel, um ∂L ∂L and B ∂W ∂X1 I

(7)

durch Backpropagation through time (BPTT) zu berechnen. Frage 4 (4 Punkte): Beschreiben Sie kurz (besser mit Formeln) warum die LSTM Architektur wirksam das Problem der verschwindenden Gradienten (Vanishing Gradient Problem) angeht. Frage 5 (4 Punkte): Welche der folgenden Methoden hilft / helfen dem Netz, im Bezug auf ungesehene Beispiele (samples) besser zu generalisieren? Beschreiben Sie für die anderen Methoden, warum sie nicht helfen. Hinweis: Gehen Sie davon aus, dass die Verteilung der Ein- und Ausgabe zwischen Training und Test gleich bleibt. 1. Zufälliges Maskieren mit Nullen von Zellen der verdeckten Schichten (Hidden Units) im Training und Test 2. Zufälliges Maskieren der Gewichte mit Nullen im Training; im Test werden die unmaskierten Gewichte verwendet 3. Multiplikation der Hidden Units mit einer festen Maske aus Nullen und Einsen im Training; im Test werden die unmaskierten Gewichte verwendet 4. Multiplikation der Hidden Units im Training mit einer kontinuierlichen Maske, die zufällig, entsprechend einer multivariaten Normalverteilung N (0, In )1 generiert wurde; im Test werden die unmodifizierten Gewichte verwenet. Frage 6 (4 Punkte): Welche der folgenden Aussagen sind wahr? Erklären Sie, warum die anderen Aussagen falsch sind. 1. Batch-Normalisierung / Normalisierung von Schichten (Layer normalization) kann die Verschiebung der Kovarianz zwischen verdeckten Schichten verringern und SGDs Konvergenzverhalten verbessern. 2. Gewichte von vortrainierten Netzen, wie z. B. ResNets101 or VGGNet, können ohne Weiteres zur Klassifikation unbekannter Klassen verwendet werden. 1

In beschreibt die Einheitsmatrix In = diag(1, 1, . . . , 1).

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

8

3. Für lange Sequenzen, in welchen die Zeitdimension t die Anzahl der Hidden Units h dominiert, sind Attention-Modelle RNNs und CNNs vorzuziehen, da sie besonders speichererffizient sind. 4. Neuronale Netze können als Komponenten anderer Probabilistischer Graphischer Modelle (probabilistic graphical models), wie z. B einem Hidden Markov Model (HMM), agieren.

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

Aufgabe 3

Anwendung Neuronaler Netze

9

(20 Punkte)

Abbildung 5: Röntgenbild für eine COVID-19 Erkennung, Quelle: Silverstein, et al. 2020 Frage 1 (8 Punkte): Ein Röntgenbild der Größe 512 × 256 × 1 (mit einem Graukanal) soll für die Diagnose einer Virusinfektion mittels CNN-Klassifikator verwendet werden. Der Klassifikator enthält 4 Convolution-Schichten, siehe Tabelle 1. Die ersten zwei Schichten enthalten jeweils eine residuale Verbindung zwischen der Ein- und Ausgabe der jeweiligen Schicht. Die vorletzte Schicht ist eine Global Average Pooling (GAP) Schicht, welche die Pixel-Werte in jedem Kanal mittelt. Zum Beispiel reduziert die GAP-Schicht einen Tensor der Größe X ∈ R5×5×20 zu R20 . Die letzte Schicht des Netzes ist eine lineare Softmax-Schicht, die die Wahrscheinlichkeit schätzt, ob eine Person am Virus erkrankt ist oder nicht. Die beschriebene Architektur des Netzes ist auch in Abb. 6 dargestellt. Schicht 1 2 3 4

Kernel 3×3 5×5 6×6 8×8

Stride 1 1 2 2

Padding 1 2 2 3

#Filter (Ausgabekanäle) 64 128 256 512

Tabelle 1: Convolution-Schichten des Klassifikators Berechnen Sie die Größen der verdeckten Schichten entsprechend der Vorlage auf dem Lösungsblatt. Frage 2 (4 Punkte): Es ist auch möglich den Status der Virusinfektion mit mehreren Röntgenaufnahmen über Zeit zu diagnostizieren. Gegeben eine Folge von N Aufnahmen (N ist eine nicht festgelegte Zahl) derselben Größe wie in der vorherigen Frage,

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

10

residual Conv(3, 1, 1, 64)

Conv(4, 2, 2, 256)

Global Average Pooling

Eingabe X Conv(5, 1, 2, 128)

Conv(6, 2, 3, 512)

Linear + Softmax

residual

Abbildung 6: ConvNet-Architektur mit Conv(Filter-Größe, Stride, Padding) welche der folgenden Architekturen ist für die Klassifikationsaufgabe geeignet? Beschreiben Sie grob, warum die anderen Architekturen nicht für die Aufgabe geeignet sind. 1. Ein sequence-to-sequence-Modell in dem die Hälfte der Sequenz einem Encoder und die andere Häfte dem Decoder entspricht, siehe Abb. 7a. 2. Es werden alle Röntgenbilder einer Sequenz gemittelt und die gleiche Architektur wie in Abb. 6 verwendet. 3. Im ersten Schritt wird jede Aufnahme von einem CNN verarbeitet, anschließend wird ein RNN verwendet, um so die sequentielle Information zu integrieren. Abschließend findet dann die Klassifiktation am Ende des RNN statt, siehe Abb. 7b. Die CNNs verwenden dieselben Parameter. 4. Jedes Bild der Folge wird durch dasselbe CNN verarbeitet. Anschließend verwendet eine Attention-Schicht das letze Bild als Query und gewichtet (Attention) die Ausgaben der CNN-Schicht vor der Klassifikation (Abb. 7c). Bild 5

Bild 6

Bild 7

Bild 8

Klassifikation

Bild 1

Bild 2

Bild 3

Bild 4

(a) Sequence-to-sequence Ansatz Klassifikation

Klassifikation

Bild 1

Bild 2

Bild 3

(b) Rekurrentes Netz

Bild 4

Bild 1

Bild 2

Bild 3

Bild 4

(c) Netz mit Self-attention

Abbildung 7: Konfigurationen für eine Sequenz von Aufnahmen Frage 3 (4 Punkte): Geben Sie zwei Beispiele für neuronale Architekturen, die Bilder erzeugt, welche aus den Trainingsbeispielen interpoliert werden. Was sind deren Zielfunktionen (loss functions )?

11

Aufgaben zur Klausur „Deep Learning & Neuronale Netze“ am 28. August 2020

Frage 4 (4 Punkte): Gegeben sei das Diagramm der Trainings- und ValidierungsGenauigkeit (accuracy, in %) mit (trdrop , valdrop ) und ohne Dropout (tr, val). Beantworten Sie die zwei Fragen: 1. Wann begann das Netz ohne Dropout mit einer Überanpassung (Overfitting)? 2. Angenommen es liegt kein Implementierungsfehler vor, schlagen Sie einen Grund vor, warum die Trainings- bzw. Validierungsgenauigkeit nach Hinzufügen von Dropout schlechter wurde.

100

Genauigkeit [%]

80

60

40

20 tr trdrop

0 0.1

0.2

0.3

0.4 0.5 0.6 0.7 Anzahl von Updates / Beispielen

0.8

val valdrop 0.9

Abbildung 8: Trainings- und Validierungsgenauigkeit, mit und ohne Dropout

1 ·104...


Similar Free PDFs