Verständnis für die Anwendung von Machine Learning (ML) auf Embedded-Systemen mit eingeschränkten Ressourcen.
- Bestehen aus: Eingabeschicht, versteckten Schichten, Ausgabeschicht
- Verbindungen zwischen allen Neuronen jeder Schicht
- Können beliebige stetige Funktionen approximieren
Funktion | Formel / Verhalten | Verwendung |
Sigmoid | 1+e−x1 | Klassisch, nicht mehr empfohlen |
Tanh | ex+e−xex−e−x | Besser als Sigmoid |
ReLU | max(0,x) | Standard für hidden layers |
Leaky ReLU | max(αx,x) | Vermeidet "Dead Neurons" |
- Handgeschriebene Ziffern (0–9)
- 28×28 Pixel, Graustufen
- Trainingsdaten: 60'000 Bilder, Testdaten: 10'000
- In Keras integriert:
keras.datasets.mnist.load_data()
- Initialisierung: Gewichtung & Architektur definieren
- Forward Pass: Input → Output berechnen
- Loss berechnen: z. B. mit
categorical_crossentropy
- Backpropagation: Gradienten berechnen
- Optimierung: z. B. mit
Adam
, SGD
, RMSprop
- Wiederholung über viele Epochen
model = keras.Sequential([
keras.Input(shape=(28, 28, 1)),
layers.Flatten(),
layers.Dense(16, activation="relu"),
layers.Dense(16, activation="relu"),
layers.Dense(10, activation="softmax"),
])
model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
model.fit(x_train, y_train, batch_size=50, epochs=5, verbose=1)
Phase | Beschreibung |
Training | Nur auf leistungsstarken Systemen |
Inferenz | Optimiert für Embedded (z. B. Raspberry Pi, Jetson Nano) |
Framework | Beschreibung |
TensorFlow | Marktführer, weit verbreitet |
Keras | High-Level API auf TensorFlow |
PyTorch | Flexibel & beliebt bei Forschung |
TFLite | Optimiert für Embedded Inferenz |
- Kamera → Bild → OpenCV-Preprocessing → TensorFlow-Modell → Klassifikation
- Eingabegerät: USB-Kamera
- Hardware: Raspberry Pi
- Training auf PC, Deployment auf Pi
- Quantisierung (8-bit statt 32-bit)
- Pruning (Entfernung unwichtiger Gewichte)
- Model Compression (z. B. mit TFLite Converter)
Embedded Machine Learning macht es möglich, KI in kleine Geräte zu bringen – lokal, datensparsam und reaktiv.