Wann kamt ihr das letzte Mal in den Genuss, eines der schönsten Konzerte, das die Natur zu bieten hat, zu hören? Wenn ich der Geräuschkulisse lausche, die aus einfachem Piepsen und Zwitschern bis hin zu tatsächlich komplexen Vogelgesängen besteht, wünsche ich mir manchmal, diese Unterhaltungen entschlüsseln und verstehen zu können. In den frühen Morgenstunden ist dann vielleicht ein „Hallo, guten Morgen, wie geht es dir heute?“ zu vernehmen, und zwar teilweise so laut, dass man von all diesem Zwitschern aufgeweckt wird. Doch leider sind wir weit davon entfernt, die Vogelsprache zu verstehen. Aber, wäre es nicht toll, wenn wir mit einem KI-System die Vögel in unserer Umgebung anhand ihres Gesangs bestimmen könnten?
Bei meinen Recherchen stieß ich auf das erstaunliche Projekt BirdNET vom Cornell Lab of Ornithology und der TU Chemnitz zur Bestimmung von Vögeln anhand von Tonaufnahmen ihres Gesangs. Bei diesem Projekt kommt ein neuronales Netz zum Einsatz, das so trainiert wurde, dass 984 Vogelarten bestimmt werden können. Glücklicherweise haben die Forscher BirdNET auf GitHub veröffentlicht, sodass man dieses Bestimmungssystem ganz leicht abrufen und einrichten kann. Man braucht dazu nur ein paar Minuten Zeit, um drei einfache Schritte durchzuführen:
Aber Moment: Wie lassen sich die Ergebnisse sowohl in Echtzeit als auch über einen längeren Zeitraum hinweg problemlos analysieren? Hier ermöglicht euch Splunks Data-to-Everything Plattform, Antworten auf alle möglichen Fragen zu finden und sehr schnell Einblicke zu gewinnen. Auch dazu sind nur drei einfache Schritte nötig:
Lasst uns zuerst eine typische Frage beantworten: „Welche Vögel singen wann und wie lange?“ Mit der folgenden Suche erstellt ihr ein einfaches Zeitdiagramm, das zeigt, welche Vögel am eifrigsten singen:
index="birds" sourcetype="birds-tsv" Confidence>0.8 NOT "Common Name"="Human"
| rename "Begin Time _s" as time_start, "Common Name" as name, Confidence as confidence
| eval _time=('_time' + time_start)
| timechart limit=20 useother=f span=30s sum(confidence) by name
Anschließend stellen wir dies als Zeitdiagramm dar, um festzustellen, welche Vögel im Sommer nachmittags singen:
Natürlich sind auch anspruchsvollere Analysen möglich. Ihr kennt wahrscheinlich das Sprichwort „Gleich und Gleich gesellt sich gern“ und stellt euch vielleicht die Frage, „Welche Vögel singen zusammen?“. Sehen wir uns daher eine Suche an, mit der sich diese Frage beantworten lässt:
index="birds" sourcetype="birds-tsv"
| rename "Begin Time _s" as time_start, "End Time _s" as time_end,"Common Name" as name, "Confidence" as confidence, "Species Code" as code
| eval _time=_time+time_start
| eval duration=time_end-time_start
| search confidence>0.9 NOT name="Human"
| sort 0 _time
| streamstats dc(name) as dc_names first(name) as src last(name) as dest time_window=10
| table _time src dest dc_names
| where dc_names==2
| stats count by src dest
Mit einem Sankey-Diagramm können wir darstellen, welche Vögel tendenziell zusammen singen:
Wenn euch dieses Diagramm zu schwierig zu lesen ist, können wir eine stärker abstrahierte Darstellung generieren und mit dem integrierten Diagrammanalyse-Framework 3D Graph Network Topology Visualization ein „BirdNET“ erstellen. Leser mit Adleraugen sollten den kleinen Meta-Vogel in diesem Diagramm erspähen können:
Bevor wir nun zum Ende dieses Artikels kommen, sollte man eventuell noch die ein oder andere kritische Frage zu KI-Systemen stellen. Widmen wir uns beispielsweise einer Frage, die ihr euch vielleicht schon selbst gestellt habt: Können wir den Prognosen von BirdNET vertrauen und, wie wissen wir, dass die Ergebnisse zu 100% korrekt sind? Um ehrlich zu sein...wir wissen es nicht. Und ganz allgemein ist es auch enorm schwer, bei KI-Systemen eine Genauigkeit von 100% zu erzielen. Vielleicht ist euch oben im Dashboard die Einstellmöglichkeit „Confidence Level“ aufgefallen.
Was wir tun können, ist das bereits trainierte Modell zu verwenden – welches in diesem Fall von einem Team aus erfahrenen Ornithologen erstellt wurde – und seine Ergebnisse bewerten. Als BirdNET bei meinem Experiment hier in Mitteleuropa eine amerikanische Wanderdrossel zu erkennen glaubte, kamen mir Zweifel an der Richtigkeit dieses Ergebnisses. Ich stellte dann fest, dass ich viel bessere Ergebnisse erhalte, wenn ich meine Standortinformationen hinzufüge. Dadurch kann BirdNET weiteres „Wissen“ über Vogelarten in bestimmten Regionen anwenden. Nach der Feinjustierung der Parameter entsprachen die meisten Ergebnisse der erwarteten und beobachteten Realität. Ich konnte zum Beispiel leicht das Ergebnis für Amseln überprüfen, da ich sie sehr gut kenne. Ich habe sie immer beobachtet, wenn sie in der Nähe in einem Baum oder nach dem Regen auf der Jagd nach Würmern sangen. Ich war allerdings total überrascht, wie viele andere Vogelarten es in meiner Umgebung gibt. Ich hatte beispielsweise noch nie zuvor eine Nachtigall in meiner Gegend gesehen, als ich jedoch mehr über ihren komplexen und wunderschönen Gesang lernte, konnte ich sie leicht erkennen und somit die Ergebnisse des Dashboards bestätigen.
Wenn ihr euch fragt, was KI und all diese Vögel mit Splunk zu tun haben, solltet ihr euch anschauen, wie offen und flexibel die Data-to-Everything Plattform sein kann, um schnell Mehrwert zu bieten. So konnte ich zum Beispiel schon wenige Tage nachdem ich damit begann, die Vogelarten in meiner Umgebung zu erforschen, entsprechende Schlussfolgerungen ziehen. Dies lässt sich analog auf jede Entität übertragen, zu der ihr Daten sammeln könnt. Die Daten können dabei aus einem KI-System stammen oder mit einer klassischen Datenerfassungsmethode wie Protokollen, Metriken und Ereignissen aus einem beliebigen System gesammelt werden. Mein Kollege Greg schrieb neulich einen Artikel über die Zusammenarbeit mit dem Weltwirtschaftsforum, in dem er weitere Möglichkeiten beschreibt, wie man das volle Potenzial von KI ausschöpfen kann.
Was in meinem Vogelbeispiel mit der Klanganalyse funktioniert hat, kann auf dieselbe Weise auch bei Bilderkennungssystemen oder anderen KI-Systemen funktionieren. Ihr könnt schnell analysieren, was im Zeitverlauf geschieht, und die Ergebnisse ganz konkret nutzen. Natürlich könnt ihr diese Systeme auch ganz leicht mit dem Machine Learning Toolkit von Splunk kombinieren, um neben den Daten eine weitere Intelligence-Ebene anzuwenden. Und, last but not least, könntet ihr mit dem Deep Learning Toolkit for Splunk sogar euer eigenes, domänenspezifisches KI-System aufbauen. Jetzt seid ihr am Zug:Was wird euer nächstes KI-Abenteuer sein?
Happy Splunking!
Philipp
Vielen Dank an Mina, Jessica und Emma für die laufende Unterstützung und Hilfe – nicht nur bei diesem Beitrag, sondern auch bei meinen anderen Artikeln in diesem Blog!
*Dieser Artikel wurde aus dem Englischen übersetzt und editiert. Den Originalblogpost findet ihr hier: The Words of the Birds - Leveraging AI to Detect Songbirds.
Die Splunk-Plattform beseitigt die Hürden zwischen Daten und Handlungen, damit Observability-, IT- und Security-Teams in ihren Unternehmen für Sicherheit, Resilienz und Innovation sorgen können.
Splunk wurde 2003 gegründet und ist ein globales Unternehmen – mit mehr als 7.500 Mitarbeitern, derzeit über 1.020 Patenten und einer Verfügbarkeit in 21 Regionen rund um den Globus. Mit seiner offenen, erweiterbaren Datenplattform, die die gemeinsame Nutzung von Daten in beliebigen Umgebungen unterstützt, bietet Splunk allen Teams im Unternehmen für jede Interaktion und jeden Geschäftsprozess End-to-End-Transparenz mit Kontext. Bauen auch Sie eine starke Datenbasis auf – mit Splunk.