Teaching
Praktikum: Neuronale Informationsverarbeitung/Neural Information Processing
Winter Semester 2010/2011
News/Aktuelles
- Second registration period/Zweite Anmeldephase (STiNE): 18.10.2010 - 29.10.2010
- Änderung in der Raumplanung: Das Praktikum findet in F-235 (erstes Treffen) und F-234 statt.
The practical course will take place in room F-235 (first meeting) and room F-234.
Information/Allgemeine Informationen |
LV-Nummer: |
64-123 |
Lecturer: |
Cornelius Weber; Stefan Wermter |
Period: |
Mi/Wed 14-18 |
Room: |
F-235 (erstes Treffen/first meeting) & F-234 |
Credit Hours |
4 SWS |
Language: |
Deutsch/English |
Module: |
IP11-Prak |
Contents/Inhalte
Wie kodiert ein neuronales Netz eingelesene Daten, wie verarbeitet es diese, um Ausgaben zu generieren? Diese Frage wird durch die Programmierung einfacher neuronaler Netzwerkarchitekturen untersucht. Die Studierenden wählen zusammen mit den Lehrenden zunächst ein Problem aus sowie eine passende Programmierungsform (Programmiersprache, Neuronale Simulator / Libraries). Für die gewählte Programmiervariante wird dann im Team und Kleingruppen eine Programmierung des Problems durchgeführt.
Im Projekt könnte zum Beispiel ein Autoassoziator Netz (hier approximiert die Netzausgabe die Eingabe) mit verschiedenen Nebenbedingungen und Daten programmiert, trainiert und visualisiert werden. Verschiedene Nebenbedingungen an die interne Kodierung führen dabei zu einer überraschenden Vielfalt an Kodierungsstrategien: Eine limitierte Anzahl versteckter Neurone führt zur Hauptkomponentenanalyse (Beispiel Eigenfaces); Beschränkungen der Gewichte zu rezeptiven Feldern der Retina; limitierte Aktivierung der versteckten Neurone zu Kantendetektoren des visuellen Kortex; nur-positive Aktivierungen und Gewichte zu einer Teile-basierten Kodierung.
How does a neural net encode input data, how does it process them to generate output? This question will be investigated by programming simple neural network architectures. Together with the lecturers the students will choose a problem as well as a fitting programming form (programming language, neural simulator / libraries). For the chosen option a programming of the problem will be realized in the team and in small groups.
For example an auto-associator net (in this case the output approximates the input) with various constraints and data can be programmed, trained and visualized during the project. Various side constraints to the intern coding will lead to a surprising variety of encoding strategies: a limited amount of hidden neurons will lead to a main component analysis (for example Eigenfaces); constraints of weight to receptive areas of the retina; limited activation of the hidden neurons to the edge detectors of the visual cortex; only-positive activation and weights of a part-based coding.

|
|
Objective/Lernziel
Es soll vermittelt werden, wie das Gehirn sensorische Daten in abstrakte Repräsentationen transformiert, aufgrund derer wir handeln. Diese Prinzipien werden verstärkt in der Programmierung biologisch inspirierter, intelligenter Roboter eingesetzt. Programmiertechnisch werden der Umgang mit Daten, die Programmierung und Visualisierung von Matrizen und neuronaler Architekturen, und das Arbeiten im Team erlernt. Um verschiedene Lernregeln und variierende Datenbehandlung einsetzen zu können, wird auf modulare und flexible Programmierung Wert gelegt.
It shall be conveyed how the brain transforms sensory data into abstract representations due to which we are able to act. These principles are increasingly employed in the programming of biologically inspired intelligent robots. With regard to the programming techniques the dealing with data, programming, the visualization of matrixes and neural architectures, and team work will be learned. To be able to employ various learning regulations and varying data treatments, emphasis is placed on modular und flexible programming.
Procedure/Vorgehen
Nach einer Einführung durch die Veranstalter werden in Kleingruppen Konzepte zur Programmierung unter Berücksichtigung existierender Softwarepakete erarbeitet. Am Ende der Veranstaltung werden die verschiedenen Lösungswege der einzelnen Gruppen vorgestellt und miteinander kritisch verglichen.
After an introduction by the lecturers, programming concepts with regard to existing software packages will be worked out in small groups. At the end of the course the various group solutions will be presented and critically analysed.
Literature/Literatur
- Marsland 2009, Machine Learning - An Algorithmic Perspective, Kapitel 1-3,9,16
- http://pybrain.org
- http://sourceforge.net/projects/joone/
- http://www.mathworks.com/products/matlab/
Material
Das Material für diese Veranstaltung ist innerhalb des CommSy Portals zu finden:
Informatik-CommSy: WTM: Neuronale Informationsverarbeitung 2010/11