Kein Thema ist derzeit so präsent wie Künstliche Intelligenz – „KI“. Alle größeren Unternehmen haben bereits entsprechende Programme in der Umsetzung und versprechen sich mehr Umsatz, Gewinn oder Einsparungen. Doch was versteckt sich eigentlich hinter dem Begriff und wie ist die Abgrenzung zu Big Data, maschinellem Lernen und neuronalen Netzen? Und wie setzen wir das Thema bei Kinemic um?
Künstliche Intelligenz ist der Überbegriff für Softwareanwendungen, bei denen eine Maschine menschenähnliche Fähigkeiten besitzt, wie z. B. Lernen, Urteilen oder auch selbstständiges Problemlösen. Die bekanntesten Beispiele sind sicher die Schach- und Go-Programme DeepBlue bzw. DeepMind, die gegen die besten menschlichen Spieler gewonnen haben.
Aber KI-Anwendungen findet man auch in vielen weiteren Bereichen – nur wissen dies viele Leute oft nicht. Hier sind ein paar Beispiele für solche KI-Anwendungen:
Darüber hinaus gibt es noch viele weitere Anwendungsfälle und man erkennt schon, dass es teilweise nicht leicht zu sagen ist, ob nun KI zum Einsatz kommt oder ein anderes Verfahren genutzt wird. Als Beispiel sei hier der Warenkorb beim Onlineshopping genannt: Werden weitere Produkte vorgeschlagen, weil andere Benutzer sie gemeinsam im Warenkorb hatten oder weil sie in der gleichen Kategorie sind oder weil der Händler hier gerade eine Prämie erhält? Was also ist KI?
Begriffe: KI, maschinelles Lernen, neuronale Netze
Francois Chollet, Autor des Deep Learning-Frameworks „Keras“, definiert KI als „The effort to automate intellectual tasks normally performed by humans“ – frei übersetzt also “Das Bestreben, geistige Aufgaben, welche normalerweise von Menschen durchgeführt werden, zu automatisieren“. Klassische Computerprogramme eignen sich besonders für Aufgaben, die Menschen schwerfallen, wie z.B. Rechnen mit großen Zahlen oder Durchsuchen von Datenbanken. Probleme, deren Lösungsstrategien sich kaum präzise formulieren lassen und eher auf Erfahrung und Kontextwissen basieren, z.B. Erkennen von Objekten auf Fotos, sind hingegen oft schon für Kleinkinder trivial und bringen gleichzeitig Computer an ihre Grenzen.
Über Jahrzehnte wurden immer neue Arten von KIs zum Lösen solcher Aufgaben entwickelt. Z.B. erhält der Computer beim regelbasierten Lösen (sog. „Symbolische KI“) von Aufgaben die zu verarbeitenden Daten sowie die anzuwendenden Regeln und berechnet daraus Lösungen. Die Regeln müssen allerdings vorher aufwändig durch eine Person definiert werden.
Das maschinelle Lernen („Machine Learning“) bezeichnet ein weiteres Teilgebiet der KI, bei der der Computer hingegen nur einige Beispiele der Daten zusammen mit den Lösungen bekommt und daraus die Lösungsregeln selbst berechnet. Dieses Suchen der Lösungsregeln bezeichnet man auch als „Training“. Die berechneten Regeln können dann auf neue Daten angewendet werden.
Bei der Kinemic Gestenerkennung kommt dieses Verfahren auch zum Einsatz: Ein Machine-Learning System lernt aus Bewegungsdaten und der Information, welche Geste sich jeweils dahinter verbirgt. So werden Regeln abgeleitet wie Gesten und Bewegungsdaten zusammenhängen. Anhand der gelernten Regeln können dann aus neuen Bewegungsdaten Gesten erkannt werden.
Um das „Training“ umzusetzen nutzt man oft neuronale Netze – wir auch. Solche Netze haben ihr Vorbild in der Natur, genauer gesagt im Neuron wie es im Nervensystem oder im Gehirn vorkommt. Ein neuronales Netz besteht aus einer Vielzahl einzelner Neuronen, die Informationen empfangen, verarbeiten und an andere Neuronen weiterleiten. Ein einzelnes Neuron ist dabei sehr simpel – aus einer größeren Menge miteinander verbundener Neuronen entstehen allerdings sehr komplexe Effekte!
Ein wesentliches Merkmal neuronaler Netze ist, dass sie im Gegensatz zu klassischen Computerprozessoren parallel arbeiten, also viele Informationen gleichzeitig durch das Netz verarbeitet werden. Aus diesem Grund werden auch Grafikkarten für das maschinelle Lernen genutzt, da deren Architektur viele einfache Kerne vorsieht und so die hohe Parallelität gegeben ist. Dementsprechend betreiben wir auch mehrere Hochleistungsrechner um hier optimale Ergebnisse erzielen zu können – wobei komplexere neuronale Netze schon gerne mehrere Wochen auch auf leistungsfähigen Systemen benötigen können.
Wie lernt ein KI-System?
Es gibt im Prinzip zwei Ansätze, einem KI-System etwas beizubringen.
Beide Ansätze nutzen wir, abhängig von der jeweiligen Problemstellung. Unser Kinemic Gestenerkenner zum Beispiel ist ein KI-System, welches auf einer großen Menge von sorgfältig erhobenen Gestendaten trainiert wird. Damit die Gestenerkennung für jede Person zuverlässig funktioniert, wurden die Trainingsdaten auf einer breiten Benutzergruppe und in unterschiedlichsten Kontexten aufgezeichnet. Wir können dem System so also gut beibringen, welche Bewegungsdaten eine Geste sind und wann der Benutzer eine andere Handlung ausführt.
Wer noch mehr zum Thema KI erfahren möchte dem sei auch der exzellente Kurs https://www.elementsofai.de/ der Universität Helsinki empfohlen, der sich explizit auch an Einsteiger in das Thema richtet. Ebenfalls spannend ist die interaktive Seite von Allison George: „Neural networks from scratch„.
Weitere Informationen natürlich auch immer wieder in unserem Blog.
Ja, ich möchte den unregelmäßigen Kinemic-Newsletter zu Bewegungs- und Gestensteuerung, KI und weiteren Themen erhalten.
Hinweise zum Widerruf erhalten Sie in jeder Mail. Zur Datenverarbeitung bitte im Impressum schauen.
© 2016-2021 Kinemic GmbH. Alle verwendeten Logos und Markenzeichen sind Eigentum ihrer jeweiligen Besitzer.