About the course

The course "Implementing Artificial Neural Networks with TensorFlow" covers the theoretical basis of a wide range of different network types and their implementation in TensorFlow.

The course was first offered by the Institute of Cognitive Science in 2016/17 and then again in 2017/18 at the University of Osnabrück in Germany.

Aim of the course

The aim of the course is to create an elaborate understanding of the theory behind artificial neural networks including all necessary mathematical knowledge. Further, current state of the art network types and approaches are introduced. A main focus is on the implementation of simple versions of the most frequently used networks and algorithms with the help of python and TensorFlow.


At the end of the course, participants shall have sufficient knowledge to design artificial neural networks on a theoretical basis to solve real-world problems. Further, they shall be able to implement and debug their networks.


Participants need advanced knowledge in python, numpy and matplotlib. Some previous knowledge about linear algebra, analysis, basic machine learning concepts and plotting are helpful but not required.

Don't get discouraged by these prerequisites. Most of the things you can learn on the go!


You don't know how to write code in python yet? Then it is high time to start learning it: It is a beautiful, fun and easy to learn programming language. Even though it isn't as accessible as it used to be and it teaches python 2.7 (the course uses python 3.x) codecademy's interactive python tutorial is still a good place to start. Once you finished the tutorial, you should be able to implement or at least understand most parts of the assignment's code.


Work through the numpy's quickstart tutorial and you are good to go.


Same holds for matplotlib: Work through the matplotlib's quickstart tutorial and you are good to go.