(A) (N)eural (N)et for (E)xploration
Prof. Dr. habil. Dennis Klinkhammer
No requirements for operation in the browser, THONNY for the use on a microcontroller
Learn about the basic concepts of neural networks and how to use AI-ANNE:
- AI-ANNE tutorial (ENG, FRE, SPA, GER, RUS, CH)
Just follow the links and use AI-ANNE for free:
-
AI-ANNE professional
(train and export neural networks onto microcontrollers with full parameter insights) -
KI-ENNA education (currently only in German)
(train neural networks with easy examples and computer vision) -
KI-ENNA academic (currently only in German)
(train neural networks with insights into weights and biases)
Although AI-ANNE is primarily a teaching tool, it can also be used for real-time evaluation of sensor data in production processes or social media data, for example.
With the AI-ENNA-APP, neural networks can be trained directly in the browser and exported to a microcontroller. 'ReLU', 'Leaky ReLU', 'Sigmoid' and 'Tanh' are available as activation functions. If necessary, other classification data can also be used for training. The “micropython” folder contains the code for initializing the microcontroller (main.py) and indicates where to copy & paste the parameters. The code is copied to the microcontroller via Thonny and the microcontroller is then restarted - that's it! AI-ANNE-B(asic) (ai-anne-b.py) works directly in Thonny and any Python environment, even without display, RGB matrix or dependencies and demonstrates pretrained neural networks as well as forward and backward propagation on a microcontroller.
AI-ANNE primarily enables hardware-related programming with insights into the functioning of neural networks for pupils and students. For this purpose, the architecture of neural networks and underlying functions (matrix multiplication, etc.) including the transfer of weights and biases are provided in MicroPython. Teachers can use the examples provided or develop their own examples and make them available here voluntarily. Improvements to the AI-ANNE code are also very welcome. Just get in touch with me here on GitHub :-)
This is an example of how AI-ANNE can be used as an interactive learning tool in the classroom:
The current version 2.0.1 of AI-ANNE is available under MIT License. Version 1.0 from 2021 was available under the German Free Software License. Special thanks @tonygod2 from instructables.com for his tutorials on getting the display up and running.
(E)in (N)euronales (N)etz zum (A)usprobieren
Prof. Dr. habil. Dennis Klinkhammer
Keine Voraussetzungen für den Betrieb direkt im Browser, Thonny für den Betrieb auf einem Microcontroller
Grundlagen neuronaler Netzwerke und deren Training mit KI-ENNA:
- KI-ENNA tutorial (ENG, FRA, SPA, DEU, RUS, CH)
Einfach den Links folgen:
-
AI-ANNE professional
(trainiere und exportiere neuronale Netzwerke auf Microcontroller und veranschauliche alle Parameter) -
KI-ENNA education
(trainiere neuronale Netzwerke mit einfachen Beispielen und Computer Vision) -
KI-ENNA academic
(trainiere neuronale Netzwerke mit Einlicken in die Weights und Biases)
Obwohl KI-ENNA vornehmlich ein didaktisches Tool ist, kann es bspw. für die Echtzeitauswertung von Sensordaten in Produktionsprozessen oder Social Media Daten verwendet werden.
Mit der KI-ENNA-APP können neuronale Netze direkt im Browser trainiert und auf einen Microcontroller exportiert werden. Dabei stehen 'ReLU', 'Leaky ReLU', 'Sigmoid' und 'Tanh' als Aktivierungsfunktionen zur Verfügung. Bei Bedarf können auch andere Klassifikationsdaten für das Training verwendet werden. Im Ordner "micropython" befindet sich der Code zur Initialisierung des Microcontrollers (main.py) und wo die Parameter eingefügt werden können. Dieser wird via THONNY auf den Microcontroller kopiert und dieser anschließend neu gestartet - das ist es auch schon! KI-ENNA-B(asic) (ki-enna-b.py) funktioniert direkt in Thonny und jeder Python Umgebung, ganz ohne Display, RGB-Matrix oder Abhängigkeiten und demonstriert sowohl vortrainierte Neuronale Netze als auch Forward und Backward Propagation direkt auf dem Microcontroller.
KI-ENNA ermöglicht vornehmlich das hardwarenahe Programmieren mit Einblicken in die Funktionsweise von Neuronalen Netzen für Schülerinnen und Schüler sowie Studierende. Hierfür wird die Architektur Neuronaler Netze sowie zugrundeliegende Funktionen (Matrixmultiplkation, etc.) einschließlich der Transfer von Weights und Biases in MicroPython vorgegeben. Lehrerinnen und Lehrer können auf die vorgegebenen Beispiele zurückgreifen und eigene Beispiele entwickeln und freiwillig hier zur Verfügung stellen. Auch Verbesserungen am Code von KI-ENNA sind herzlich willkommen. Melden Sie sich einfach hier auf GitHub bei mir :-)
Dies ist ein Beispiel, wie KI-ENNA als interaktives Lerntool im Klassenraum verwendet werden kann:
In der aktuellen Version 2.0.1 steht KI-ENNA unter der MIT Lizens zur Verfügung. Version 1.0 von 2021 war noch unter der German Free Software License verfgügbar. Besonderer Dank gilt @tonygod2 von instructables.com für seine hilfreichen Display-Tutorials.


