Chat with us, powered by LiveChat
zurück zum blog

Können Maschinen Gerüche erkennen?


Last updated: 19.09.23
Können Maschinen Gerüche erkennen?

Künstliche Intelligenz im Bereich der Geruchserkennung

Ich erinnere mich, dass ich 2017 eingeladen war, bei einem Meetup zu sprechen. Vor mir sprach ein Referent, der uns eine KI-Lösung vorstellte, die anhand des Tippstils erkennt, wenn jemand anderes an deinem Computer zu tippen beginnt.

In diesem Moment wurde mir klar, dass die Zukunft der IT vor mir lag. Ich machte mich auf den Weg, um Data Science online zu lernen und absolvierte Hunderte von Stunden in Online-Kursen, um das Thema zu durchdringen. 2019 gründete ich ein KI-Beratungsunternehmen namens Budapest Analytics.

Eines meiner faszinierendsten Projekte stammt aus Israel.

Meine israelischen Freunde sind auf einer bahnbrechenden Mission. Sie entwickeln Hardware, die das Vorhandensein von Roten Milben in Hühnerställen erkennen kann. Rote Milben sind mehr als nur ein Ärgernis; sie verursachen allein in Europa jedes Jahr Schäden in Höhe von über 360 Millionen Euro.

Wie können wir Rote Milben nachweisen?

Die Ausscheidungen der Roten Milben geben einen deutlichen Geruch ab. Um diesen Geruch zu erkennen, nutzen wir das Konzept der "elektrischen Nase".

Aber wie können wir Gerüche messen?
MOXs und VOCs

Metalloxid-Sensoren, auch bekannt als MOX oder MOC, sind fortschrittliche Geräte, die zum Aufspüren von Gasen eingesetzt werden. Diese Sensoren bestehen aus einem Metalloxidmaterial, das mit Gasen reagiert und den elektrischen Widerstand des Sensors verändert. Diese Veränderung ist messbar.

Flüchtige organische Verbindungen (VOCs) sind eine Gruppe von organischen Chemikalien, die bei Raumtemperatur verdampfen. Sie sind die unsichtbaren Essenzen, die unsere Nasen und bestimmte Geräte aufspüren können. Die Abfälle von Roten Milben produzieren erhebliche Mengen an VOC in der Luft.

MOX-Sensoren reagieren auf VOCs in der Luft und verändern ihren elektrischen Widerstand. Auf diese Weise können wir Gerüche messen.

Hier ist ein Video, in dem das genauer erklärt wird:

https://www.youtube.com/watch?v=usEe3spV5vI

Die KI kommt

Diese MOX-Werte sind Wellen in einem Diagramm. Jede Art von Molekülverdampfung hat ein anderes Profil bei bestimmten Temperaturänderungen (die Sensoren haben Heizzyklen).

KI-Algorithmen können bestimmte Muster erkennen und sind in der Lage, bestimmte Gerüche wie Kaffee, Tee oder rote Milbenausscheidungen zu identifizieren. Um dieses Ziel zu erreichen, entwickle ich ein Deep Neural Network. Genauer gesagt, einen Autoencoder.

Ein Autoencoder ist eine Art künstliches neuronales Netzwerk, das dazu dient, effiziente Kodierungen oder Repräsentationen von Eingabedaten zu lernen. Es ist so aufgebaut, dass es die Eingabedaten in einer komprimierten Form kodiert und sie dann wieder in ihren ursprünglichen Zustand zurückdekodiert. Es dekodiert komprimierte Eingaben mit einer bestimmten Fehlerquote. Wenn die Fehlerrate hoch ist, haben wir wahrscheinlich eine Anomalie.

Der Geruch von roten Milbenausscheidungen ist eine Abweichung von der normalen Luft. Es ist eine Anomalie.

Die Idee dabei ist, dass die Sensoren auf dem Feld in den ersten 72 Stunden trainiert werden und dann jeden Tag die Luft testen. 

Wenn der Autoencoder höhere Fehlerraten liefert, bedeutet das, dass wir eine Abweichung von der normalen Luft haben. Wir nehmen an, dass der Abfall der roten Milben diese Abweichung verursacht.

Unit Testing in KI-Modellen

Als Fachmann für Softwaretests verwende ich viel Energie darauf, qualitativ hochwertigen Code zu erstellen. Obwohl wir uns in der Forschungs- und Entwicklungsphase befinden. In der Vergangenheit habe ich die Erfahrung gemacht, dass ich mit einem Unit-Test-Set verhindert habe, dass ich regressionsartige Probleme bekomme. Deshalb habe ich beschlossen, von Anfang an einen testgetriebenen Entwicklungsansatz zu verfolgen.

Das hat mehrere Vorteile:

Es wird ständig ein Testset erstellt.

Ich kann diese Tests für Regressionstests verwenden.

Dadurch wird eine sofortige Rückmeldung über Codeänderungen gewährleistet, was eine frühzeitige Fehlererkennung ermöglicht.

Es fördert modulare und wartbare Codestrukturen, indem es kleine, inkrementelle Änderungen fördert.

Die Entwicklung von KI-Modellen, vor allem von solchen, die sich mit neuartigen Konzepten wie dem "maschinellen Riechen" überschneiden, ist schlichtweg aufregend. Das Feld entwickelt sich ständig weiter, bietet neue Herausforderungen und verlangt nach innovativen Lösungen.

Jedes Projekt ist eine Lernerfahrung und jede Lösung verschiebt die Grenzen dessen, was wir bisher für möglich hielten.

An meine technikbegeisterten Kollegen und Entwickler: Die Reise in die KI ist ebenso aufregend wie lohnend. Egal, ob du versuchst, Maschinen zum "Riechen" zu bringen oder komplexe Muster zu entschlüsseln, denk daran, zu testen, zu iterieren und immer neugierig zu bleiben.

Wenn Du für Deine Reise lieber erstmal sicheres Trainings-Terrain betreten möchtest, dann komm gern in unseren Einführungskurs rund im Künstliche Intelligenz im Softwaretest!