Um die Genauigkeit auf einen Blick zu beurteilen, erzeugen wir zunächst die Grafik aus Abbildung 5. Die blauen Kreuzchen zeigen die abgeleiteten Gewichtswerte als Funktion der tatsächlichen Werte für den kompletten Testdatensatz. Der Fehler erscheint als Abstand zwischen den blauen Kreuzchen und der orangefarbenen Linie.

Abbildung 5: Der Fehler im Modell lässt sich über einen Testdatensatz herausfinden.
Eine beim Bewerten eines Regressionsmodells häufig verwendete Metrik ist der mittlere absolute Fehler, englisch Mean Absolute Percentage Error (MAPE [8]). Er verrät, wie sehr sich die vorhergesagten Werte von den beobachteten unterscheiden. Für unseren Testdatensatz beträgt der MAPE 9,44 Prozent – für den Betreiber einer Vertical Farm definitiv präzise genug.
Execution Time
Um die Lösung zu evaluieren, installieren wir schließlich die vollständige Tensorflow-Distribution auf einem Test-RasPi und vergleichen die Mustererkennung zwischen dem ursprünglichen Tensorflow-Modell auf der einen und dem optimierten .tflite-Modell von Tensorflow Lite auf der anderen Seite.
Es zeigt sich, dass Tensorflow Lite drei bis vier Mal schneller seine Schlüsse zieht als Tensorflow und die Prozessdauer im Bereich von wenigen Millisekunden liegt.
Fazit
Tensorflow Lite ermöglicht es dem Betreiber der vertikalen Farm, das Erntedatum des Salats recht genau vorherzusagen. Das erfordert weder einen leistungsstarken Server noch eine ständige Verbindung in die Cloud.
Indem wir die Rechenkosten und die Größe des neuronalen Netzwerkmodells reduzieren, läuft das Konstrukt auch am Edge auf einem Raspberry Pi, der Tensorflow Lite verwendet. Da die Aufgabe nur einen kleinen Fußabdruck im System erzeugt, kann der RasPi parallel andere kritische Tasks erledigen, die die Farm in Betrieb halten. Darüber hinaus läuft Tensorflow Lite auch auf so kompakten IoT-Geräten wie einem ARM-Cortex-M-Mikrocontroller.
Tensorflow Lite unterliegt jedoch einigen Einschränkungen. Es unterstützt nur eine Teilmenge von Operatoren, was das Design des Modells limitiert. Beispielsweise unterstützt es RNNs (Recurrent Neural Networks) nicht vollständig. Allerdings scheint ein Google-Team gerade daran zu arbeiten, diese Lücke für alle Modelle zu schließen, die Tensorflow derzeit anbietet.
Ein weiterer Schwachpunkt ist der fehlende Support für das Reinforcement Learning, das mehr Rechenkapazitäten erfordert, da es am Edge eine inkrementelle Trainingsaufgabe absolvieren muss. Diese Herausforderung ließe sich jedoch mit einem Edge-TPU-Gerät meistern oder auch mit Komponenten wie dem Google-Coral-Board [9] oder dem Coral-USB-Stick, die sich an einen Raspberry Pi stecken lassen. (kki)
Der Autor
Alexis Duque leitet den Forschungs- und Entwicklungsbereich von Rtone, einem französischen Systemhaus mit über 10 Jahren IoT-Expertise. Er ist Telekommunikationsingenieur (Insa Lyon, 2015), und hat einen Ph.D. in Informatik der Universität von Lyon (2018).
Infos
- Tensorflow Lite: https://www.tensorflow.org/lite
- Pandas: https://pandas.pydata.org
- Numpy: https://numpy.org
- OpenCV: https://opencv.org
- ELK-Stack: https://www.elastic.co/what-is/elk-stack
- Frischmasse: https://de.wikipedia.org/wiki/Frischmasse
- Sequential Model: https://tensorflow.rstudio.com/guide/keras/sequential_model/
- MAE: https://de.wikipedia.org/wiki/Mittlerer_absoluter_Fehler
- Google Coral: https://coral.ai





