Hier berichte ich von meiner BOGY- Woche an der Uni Konstanz.

Mein BOGY-Praktikum begann in gewissem Maße zwei Wochen vor dem offiziellen BOGY-Anfang. Meine Betreuerin Anna Alperovich von der Universität Konstanz (Arbeitsgruppe Computer Vision and Image Analysis unter der Leitung von Prof. Goldlücke) wollte mich mit dem Funktionieren und der Verwendung künstlicher neuronaler Netze vertraut machen.

BOGY- Woche an der Uni Konstanz
Das Praktikum hat mir vieles beigebracht. Es hat mir ermöglicht, einen Blick in die wissenschaftliche Arbeitswelt zu werfen, insbesondere in das Gebiet der künstlichen Intelligenz und der Datenwissenschaft. Zudem bekam ich neues praktisches Wissen und lernte, wie professionelles Programmieren aussieht.

Ein neuronales Netz ist ein von biologischen Neuronen inspirierter Algorithmus. Es kann sich entsprechend den Ergebnissen seiner Handlungen ändern. Solche Programme ermöglichen es, Probleme zu lösen, die mit klassischen Algorithmen sehr schwer lösbar wären. Da es ein komplexes Thema ist, beauftragte sie mich, die ersten Kapiteln des Buches „Neural Networks and Deep Learning“ von Michael Nielsen zu lesen und zu verstehen. Ich verbrachte somit zwei Wochen, indem ich mich mit den Algorithmen und Konzepten vertraut machte. Das Semester an der Universität im letzten Jahr, die Hilfe meiner Eltern und meine Basiskenntnisse in Python erwiesen sich als sehr nützlich. Man kann ohne Zweifel sagen, dass ich schon vor dem Beginn des Praktikums viel gelernt hatte.

Am ersten Tag des BOGY, nachdem wir uns kennen gelernt hatten und sie mir die Universität vorgestellt hatte, erklärte sie die Grundlagen der Bildverarbeitung und präsentierte das Programm für die Woche. Während der ersten beiden Tage lernte ich (auf einem besonders leistungsstarken Computer, den man mir geliehen hatte), wie man Basisoperationen mit Bildern auf Python durchführt, das heißt, wie man sie unter der Form einer Matriz importiert, schneidet etc … und vor allem, wie man Module wie numpy oder matplotlib benutzt. Programmieren mit solchen massiven Daten wie Bildern unterscheidet sich von der herkömmlichen Programmierung, denn es erfordert die Bearbeitung von einer sehr großen Anzahl von Informationen. Dies wird dank der oben genannten Module gemacht. Um all diese Daten manipulieren zu können, musste ich mich daran gewöhnen, mit Vektoren und Matrizen statt mit einzigen Variablen zu arbeiten.

Eine weitere große praktische Entdeckung war die Existenz eines „Debuggers“, der es erlaubt, Programmvariablen leicht überprüfen zu können. Ich fühlte mich zuerst mit meinen bescheidenen Kenntnissen in Python leicht verloren. Aber dank der Hilfe meiner Betreuerin, die viel Geduld und Verständnis zeigte, fühlte ich mich nach und nach wohler. Ich habe mit ihrer Hilfe ein Programm geschrieben, das Bilder von RGB nach HSV umwandelt, ein anderes, das die Umrisse des Bildes zeigt und ein Paar andere.

Ab dem dritten Tag stürzten wir uns in den Einsatz von neuronalen Netzen durch die Module aus der spezialisierten Website tensorflow. Die Arbeit mit neuronalen Netzen erfordert eine gewisse Gewohnheit, spezifische Objekte zu verwenden. Auf den ersten Blick schien mir die Aufgabe noch komplizierter als die der ersten Tage. Letztendlich zeigte mir Anna, wie man die Werkzeuge aus diesem Modul benutzt, ein Netzwerk schafft und es verwendet. In unserem Fall ging es um ein sehr klassisches Beispiel: die Identifizierung von handgeschriebenen Buchstaben. Das neuronale Netzwerk wurde durch den Mist-Datensatz geübt und getestet. Es handelt sich um eine Datenreihe aus schwarz und weißen Bilder (mit einer Seitenlänge von 28 Pixeln) von Zahlen, die von US Census-Bureau-Mitarbeitern geschrieben wurden. Die Zahlen des Test-Sets wurden von amerikanischen High School Studenten gemacht. Zu unserer Überraschung funktionierte das Netzwerk wunderbar auf US-Daten-Sätzen, erkannte aber ziemlich schlecht die Zahlen, die ich selbst geschrieben hatte. Wäre das Praktikum länger gewesen, hätten wir das Problem wahrscheinlich lösen können.

Das Praktikum bei Anna Alperovich an der Universität von Konstanz hat mir vieles beigebracht. Erstens hat es mir ermöglicht, einen Blick in die wissenschaftliche Arbeitswelt zu werfen, insbesondere in das Gebiet der künstlichen Intelligenz und der Datenwissenschaft. Ich kann es mir gut vorstellen, in meinem zukünftigen Leben in einer Disziplin an der Schnittstelle von Informatik, Mathematik und vielleicht sogar einer anderen Disziplin wie Gentechnik, Medizin usw. zu arbeiten. Auf der anderen Seite erlaubte mir dieses Praktikum nicht nur, meine Projekte in Hinsicht auf meine Studienwahl zu klären, sondern brachte mir auch neues praktisches Wissen. Ich habe entdeckt, wie das professionelle Programmieren aussieht. Es unterscheidet sich ziemlich von dem klassischen Programmieren, das ich auf http://www.france-ioi.org/  erlerne. Ich werde sicherlich weiterhin Bildverarbeitung üben, und auch die Fertigstellung und die Verwendung von neuronalen Netzen, und vielleicht sogar lernen, sie in meinen eigenen Programmen zu benutzen. Informatik ist eine Disziplin, in die es sehr schwierig ist, einzutauchen, wenn man wenig Vorwissen hat. Die Ratschläge und Erklärungen einer erfahrenen Person sind besonders hilfreich.

Daraus können wir schließen, dass ich eine sehr prägende BOGY- Woche an der Uni Konstanz verbracht habe. Das Praktikum hat mir viel Spaß gemacht.

Ich danke die Universität Konstanz und Anna Alperovich dafür, dass sie sich die Zeit genommen haben, mich aufzunehmen und diese wundervolle Woche zu organisieren.

 

 

Meine BOGY-Woche mit neuronalen Netzen

Anna Luchnikova is a student in the 10th class at the Deutsch Französisches Gymnasium Freiburg. She has completed a one-week-long BOGY internship at the University of Konstanz end of May 2018 in the department of Computer Vision and Image Analysis of Prof. Dr. Bastian Goldlücke.

Tagged on:

Leave a Reply

Your email address will not be published.

Cookie Consent with Real Cookie Banner