Uli Middelberg: Diplomarbeit Parallele Backpropagation

Inhaltsverzeichnis

1 Einleitung

2 Künstliche Neuronale Netze

2.1 Überblick

2.2 Das Neuron als informationsverarbeitendes Element

2.2.1 Ein abstraktes Modell

2.2.2 Das McCulloch-Pitts Neuron

2.2.3 Heutige Neuronen

2.3 Kopplung von Neuronen: Ein künstliches neuronales Netz

2.3.1 Grundlegende Funktionsweise

2.3.2 Training künstlicher neuronaler Netze

3 Das Mehrschicht Perzeptron Netz

3.1 Überblick

3.2 Aufbau und Funktionsweise

3.3 Der Backpropagation-Algorithmus

3.3.1 Überblick

3.3.2 Forward-Phase

3.3.3 Backward-Phase

3.3.4 Varianten des Backpropagation-Algorithmus

3.4 Der "MouseProp" Algorithmus

3.4.1 Motivation

3.4.2 Auswählen eines aufzuspaltenden Neurons

3.4.3 Aufspalten eines Neurons

3.4.4 Bewertung des Verfahrens

3.4.5 Evaluation mittels des SBIC

3.5 Zeitreihenprognose mit MP-Netzen

3.5.1 Autoregressive Modelle

3.5.2 Verhulst-Prozess

3.5.3 Natürliche Zeitreihen

4 Parallele Backpropagation

4.1 Überblick

4.2 Parallele Systeme

4.3 Parallelisierungsstrategien

4.3.1 Partitionierung des experimentellen Raumes

4.3.2 Partitionierung der Trainingsmenge

4.3.3 Partitionierung des MP-Netzes

4.3.4 Kommunikationsaufwand

4.4 Parallele Implementationen

4.4.1 Parix

4.4.2 Realisation unter Parix

4.4.3 PVM

4.4.4 Realisation unter PVM

4.5 Ergebnisse

4.5.1 Experimentelle Speedups

4.5.2 Vergleich und Bewertung der Parallelisierungen

5 Zusammenfassung und Ausblick

6 bp - Ein Simulator für MP-Netze

6.1 Installation

6.1.1 Voraussetzungen

6.1.2 Dateistruktur

6.1.3 Makefile

6.2 Benutzung

6.2.1 Name

6.2.2 Aufruf

6.2.3 Netztopologie

6.2.4 Netzgewichte einlesen

6.2.5 Abfrage

6.2.6 Training

6.2.7 Aufbau einer Datei mit Trainingsdaten

6.2.8 Protokolldatei

6.2.9 Netzgewichte abspeichern

6.2.10 bp - parallel

7 Literaturverzeichnis


Abbildungsverzeichnis

1.1 Thematische Übersicht

2.1 Ein generisches Neuron

2.2 Ein Neuron von MCCULLOCH und PITTS

2.3 Sigmoide Funktionenschar

2.4 Ein "modernes Neuron"

2.5 Darstellung der Topologie eines KNN

2.6 Informationsfluß in einem KNN

2.7 Überwachtes Lernen in einem KNN

3.1 Topologie eines MP-Netzes

3.2 Forward-Phase

3.3 Matrix-Vektor-Operationen in der Forward-Phase

3.4 Backward-Phase

3.5 Vektor-Matrix-Operationen in der Backward-Phase

3.6 Gewichtskorrektur mit einer Impulsrate α von 0.5

3.7 Fehlerverlauf beim Training des XOR-Problems

3.8 Aufspalten eines Neurons

3.9 Zeitreihenprognose mit einem MP-Netz

3.10 Eine VERHULST-Reihe

3.11 Prognose einer VERHULST-Reihe

3.12 Fehlerverlauf auf der Trainingsmenge

3.13 Fehlerverlauf auf der Testmenge

3.14 Verlauf des sbic während des Trainings

4.1 Paralleles Batch-Training : Trainingsphase

4.2 Paralleles Batch-Training : Angleichen der Gewichte

4.3 Parallele Forward-Phase

4.4 Parallele Backward-Phase nach YOON et al.

4.5 Parallele Backward-Phase nach MORGAN et al.

4.6 Kommunikation vs. Kalkulation

4.7 Ein Parallelrechner unter PARIX

4.8 Threads unter PARIX

4.9 Ringtopologie

4.10 Kommunikation auf dem Ring

4.11 Virtueller Parallelrechner unter PVM

4.12 SPMD--Modell unter PVM

4.13 Globale Akkumulation unter PVM

4.14 Speedups für das parallele Batch-Training auf einem Workstationverbund

4.15 Speedups für das parallele Batch-Training auf dem GCel

4.16 Speedups für das parallele Batch-Training auf dem GC/PP

4.17 Speedups für das parallele Online-Training


Tabellenverzeichnis

4.1 Unter PARIX eingesetzte Hardware


Uli Middelberg: Mon Sep 11 21:41:47 MET DST 1995