Neuronale Netze und Parallelrechner - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

Neuronale Netze und Parallelrechner

Description:

Neuronale Netze und Parallelrechner L sung des 838-Dekoderproblems mit dem Backpropagation-Algorithmus auf einem CNAPS-Board von Pieter Raath & Peter Wendzioch – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 25
Provided by: PeterWe94
Category:

less

Transcript and Presenter's Notes

Title: Neuronale Netze und Parallelrechner


1
Neuronale Netze und Parallelrechner
  • Lösung des 838-Dekoderproblems mit dem
    Backpropagation-Algorithmus auf einem
  • CNAPS-Board

von Pieter Raath Peter Wendzioch
2
Inhalte_at_Referat
3
Neuronale Netze_at_Referat
  • Motivation
  • Das Neuron
  • Backpropagation
  • feed forward
  • backpropagate
  • Probleme

4
Motivation_at_Neuronale Netze
  • Neuronale Netze sind informationsverarbeitende
    Systeme.
  • Sie bestehen aus einer großen Anzahl einfacher
    Einheiten (Neuronen).
  • Informationen werden über die Neuronenverbindungen
    ausgetauscht.
  • Informationen werden massiv parallel verarbeitet.
  • sind in Form von Programmen, Netzwerksimulatoren
    oder in Form spezieller neuronaler Hardware in
    vielen Anwendungsgebieten einsetzbar.
  • Idee Nachbildung menschlicher Informationsverarbe
    itung

5
Motivation_at_Neuronale Netze
Anzahl der Verarbeitungselemente
Art
Speicherung
Schaltzeit eines Elements
6
Das Neuron_at_Neuronale Netze
7
Backpropagation_at_Neuronale Netze
  • Für neuronale Netze existieren eine Vielzahl von
    Lernmethoden.
  • Das hier ist vorgestellte Verfahren ist
    Backpropagation, eine Art Standardverfahren.
  • Als Gradientenabstiegsverfahren berechnet es den
    Gradienten der Fehlerfunktion.
  • Die Fehlerfunktion ist ein Vergleich zwischen
    erwarteter (Sollwert) und realer Ausgabe
    (Istwert).
  • Die Kombination derjenigen Gewichte eines Netzes,
    die den Berechnungsfehler minimiert, gilt als
    Lösung des Lernproblems.

8
feed forward_at_Neuronale Netze
i
o
h1
0,75
h1
e1
0,1
0,1
0,1
0,1
0,1
0,1
0,1
0,51
0,1
-0,25
-0,5
0,9
0,1
0,9
a1
a1
0,47
0,9
0,1
0,9
0,25
-0,5
h2
h2
0,49
-0,37
e2
0,1
0,9
0,9
0,1
0,25
9
backpropagate_at_Neuronale Netze
0,01
i
o
h1
0,75
0,76
e1
0,1
0,1
0,1
0,1
0,1
0,1
0,1
0,51
0,1
-0,25
-0,24
-0,5
0,9
0,1
0,9
-0,4
0,9
0,1
0,9
a1
0,47
0,9
0,1
0,9
0,25
0,24
-0,5
-0,6
h2
-0,37
0,49
e2
-0,09
0,9
0,9
0,9
0,1
0,25
0,26
-0,01
10
Probleme_at_Backpropagation
  • Lokale Minima der Fehlerfläche
  • Flache Plateaus
  • Oszillationen in steilen Schluchten
  • Verlassen guter Minima

11
Parallelrechner_at_Referat
  • Motivation
  • Klassifizierung
  • Probleme

12
Motivation_at_Parallelrechner
  • Aufgaben der Informatik werden immer komplexer
    und datenintensiver.
  • Klimamodelle
  • Spracherkennung
  • Bildverarbeitung
  • von Neumann-Prinzip ist für diese und viele
    andere Probleme uneffizient.
  • Speziell Berechnung der Neuronengewichte von
    NNs
  • Erhöhung der Verarbeitungsleistung durch
    zeitgleiche Verarbeitung größerer Datenmengen.
  • Architektur der Parallelrechner

13
Klassifizierung_at_Parallelrechner
  • Jeder Prozessor arbeitet auf eigenem Datenstrom.
  • Alle Prozessoren führen den gleichen Befehl aus.
  • Beispiel Adaptive Solutions CNAPS, Thinking
    Machines CM-2.
  • Jeder Prozessor arbeitet aus eigenem Datenstrom.
  • Jeder Prozessor arbeitet auf eigenem Befehlstrom.
  • Beispiel Hypercube, Dual Pentium

14
Probleme_at_Parallelrechner
  • Datenabhängigkeit.
  • Explizite und implizite Parallelität
  • Explizite P. liegt bei strukturierten Daten vor
    (Vektor, Matrizen).
  • Implizite P. muß mit Datenabhängigkeitsanalyse
    ermittelt werden.
  • Bei gemeinsam genutzen Ressourcen treten
    Wartezeiten auf, die den Geschwindigkeitsvorteil
    mindern.
  • Mangelnde Unterstützung der Hardware durch
    Betriebssysteme und Compiler.

15
CNAPS_at_Referat
  • Board
  • CSC CNAPS 1064
  • Processornode
  • CNAPS-C
  • CNAPI
  • CNAPSBP.DLL

16
Board_at_CNAPS
17
CSC CNAPS-1064_at_CNAPS
PN63
18
Processor Node_at_CNAPS
19
CNAPS-C_at_CNAPS
  • CNAPS-C ist an das ANSI-C angelehnt.
  • Zusätzliche Sprachelemente für die
    CNAPS-spezifische Programmentwicklung
  • Der Datentyp domain faßt eine Gruppe von PNs
    zusammen, auf denen Funktionen parallel
    ausgeführt werden.
  • Funktionen können als entry points definiert
    werden, damit sie vom Host-Programm aus
    aufgerufen werden können.
  • Spezielle Datentypen für die Festpunktarithmetik.
  • u.a.
  • Direkte Hardwareprogrammierung ist in der
    Assemblersprache CPL möglich.

20
CNAPI_at_CNAPS
  • Das CNaps Application Programming Interface
    stellt u.a. folgende elementare Funktionen zur
    Kommunikation mit dem CNAPS-Board zur Verfügung
  • Laden der Programme
  • Laden der Daten
  • Kontrolle der Programmausführung
  • Setzen von Breakpoints
  • Abfragen des Fehlerstatus
  • u.a.

21
CNAPSBP DLL_at_CNAPS
  • In der CNAPSBP.DLL ist eine parallele Version des
    Back-propagation-Algorithmus implementiert.
  • Mit ihren Funktionen läßt sich ein 3-schichtiges
    feed-forward-Netz initialisieren, trainieren und
    verifizieren
  • bpInitTraining()
  • bpTrain()
  • bpGetLastResult()
  • bpDone()
  • bpTerminate()
  • bpInitApplication()
  • bpRunApplication()

22
Beispiel_at_Referat
  • 838-Dekoder
  • Netztopologie
  • Demonstration
  • Interpretation

23
838-Dekoder_at_Beispiel
24
Netztopologie_at_Beispiel
Input
Output
Hidden
  • 8 Input-Neuronen
  • 3 Hidden-Neuronen
  • 8 Output-Neuronen
  • Vollständig verbundenes feed-forward-Netz
Write a Comment
User Comments (0)
About PowerShow.com