Machine Learning-FAQ: Antworten auf die häufigsten Fragen
KI, AI, Machine Learning: Wer sich mit der Digitalisierung und neuen Technologien beschäftigt, kommt um das maschinelle Lernen nicht mehr herum. Das bedeutet im Umkehrschluss aber nicht, dass gänzlich verständlich ist, was das eigentlich bedeutet. Wie lernt eine Maschine? Welche Arten von Machine Learning gibt es? Und wie kann ich die ML-Programmierung lernen? Wir haben die wichtigsten Fragen und alle Antworten zusammengefasst.
Grundsätzlich versteht man unter dem Begriff einen Teilbereich der Forschung in der Künstlichen Intelligenz. ML bedeutet, dass IT-Systeme in der Lage sind, aus „Erfahrungen“ (also aus bereits bekannten Daten und Algorithmen) Muster zu erkennen. Beispielsweise kann sich eine KI durch maschinelles Lernen tausende von medizinischen Diagnosen „aneignen“ und dann anhand von extern eingegeben Symptomen passende „Matches“, in diesem Fall Krankheiten, finden.
Machine Learning (ML) kann aber auch Unterstützungsleistungen etwa beim Kampf gegen den Klimawandel bieten, wie Tanmay Bakshi im Interview verriet: „Machine-Learning-Technologie wird nicht verwendet werden, um eine Lösung für den Klimawandel zu finden. Sie kann aber ein Werkzeug sein, um unseren Weg zur Problemlösung zu beschleunigen.“ Wir haben uns mit Andreas Stocker, Technical Team Leader bei Anexia angesehen, wo die größten Unklarheiten liegen und beantworten nachfolgend die wichtigsten Fragen zu ML.
1. Welche Arten von Machine Learning werden unterschieden?
Andreas Stocker: Grundsätzlich wird bei Machine Learning zwischen „Supervised“ und „Unsupervised“ unterschieden.
Im „Supervised“-Fall ist gewünschte Ergebnis des Machine Learning Algorithmus dem Entwickler schon vorab bekannt, so dass zum Lernen bereits valide Ergebnisse vorliegen. Der Algorithmus schaut sich also die Ausgangsdaten an und versucht Muster zu erkennen um auf die bekannten validen Ergebnisse zu kommen. Das erlernte „Wissen“ kann dann auf andere, unbekannte, Ausgangsdaten angewandt werden. Einfach ausgedrückt: Ich habe einen Ordner voller Bilder von Haustieren. Als Mensch sage ich dem Algorithmus was davon Katzen, und was davon Nicht-Katzen sind, womit der Algorithmus versucht die Muster zu erkennen (sog. Training). Danach kann ich dem Algorithmus ein neues Bild geben, dieser wendet die erlernten Muster an, und kann damit Katzen von Nicht-Katzen unterscheiden.
Der „Unsupervised“-Fall ist dagegen ergebnisoffen. Man gibt dem Algorithmus möglichst viele Daten, und er versucht diese nach Gemeinsamkeiten zu gruppieren bzw. Anomalien herauszufinden. Dieser Ansatz ist z.B. bei Online-Shop beliebt um Kunden mit ähnlichem Kaufverhalten zu gruppieren und entsprechende Produktvorschläge machen zu können.
2. Was muss ein Entwickler für ML-Anwendungen mitbringen? Welche Ausbildung ist dazu notwendig?
Diese Frage lässt sich pauschal nicht wirklich beantworten. In jedem Fall muss man einen langen Atem mitbringen und einen Hang zum Ausprobieren haben, da man nur sehr selten beim ersten Versuch den Algorithmus optimal trainiert hat. Vieles im Machine Learning Bereich kann man sich autodidaktisch beibringen, und Bibliotheken wie TensorFlow oder Scikit Learn erleichtern einem die Arbeit schon sehr. Geht es um Anwendungsfälle wie Objekterkennung in Bildern und Videos, Mustererkennung in Texten oder clevere Produktvorschläge in einem Online Shop, so kommt man ohne besondere Ausbildung, aber mit viel Interesse für das Thema, schon sehr weit.
Möchte man aber ein Konkurrenzprodukt zu Google Assistant oder DeepL anbieten (beide basieren sehr stark auf Machine Learning), so braucht man auch Leute mit Data Science- und Mathematik-Ausbildung. Auch entsprechendes Domain-Wissen (wie in diesem Fall Sprachwissenschaftler) wird für solche Produkte benötigt.
3. Worauf ist zu achten, wenn man sich das erste Mal mit dem Thema auseinandersetzt?
Nur nicht entmutigen lassen! Aller Anfang ist schwer, und beschäftigt man sich zum ersten Mal mit Machine Learning so wird man schnell mit Informationen aus den Bereichen der Neuralen Netzwerke, Stochastik oder Data Science überflutet. Man muss nicht auf Anhieb alles im Detail verstehen. Viel wichtiger ist, dass man sich praktisch mit dem Thema beschäftigt und einfach mal ausprobiert. Für einen leichten Einstieg empfehle ich die Bibliothek Keras, die sich sehr leicht benutzen lässt.
4. Welche Vorteile kann ML für neue Geschäftsmodelle bringen?
Mit Machine Learning kann man Zusammenhänge erkennen die man als Mensch nicht so erkannt hätte. Durch Machine Learning lassen sich Workflows und Prozesse und deren Zusammenhänge analysieren und in Folge dessen auch optimieren. Oft können durch Machine Learning Teile eines Prozesses automatisiert oder zumindest teilautomatisiert werden. In Folge sinkt die Fehlerrate.
5. Stichwort Bild-/Objekterkennung: Wo liegen hier die Tücken?
Gerade bei Bild- und Objekterkennung hat man sehr oft das Problem des Over- oder Underfitting. Ist das Modell mit dem man den Algorithmus trainiert zu komplex und speziell, so tut sich ein Machine Learning Algorithmus schwer allgemein gültige Muster zu erkennen. Im Ergebnis hat man dann einen Algorithmus der sehr gut mit den Trainingsdaten funktioniert und die gesuchten Objekte erkennt, gibt man ihm dann aber neue Ausgangsdaten so kann er wenig damit anfangen – das ist sog. Overfitting.
Umgekehrt kann es aber auch passieren, dass das Trainingsmodell zu einfach gehalten ist, so dass die erkannten Muster zu allgemeingültig sind. Im Ergebnis erkennt der Algorithmus dann Objekte wo gar keine sind. Überspitzt und vereinfacht ausgedrückt: Gras ist grün, aber nicht alles was Grün ist, ist auch Gras. Versucht man also nur anhand der Farbe Grün Gras zu erkennen, so hat man es mit sog. Underfitting zu tun.
6. Welche Datensätze lassen sich zum Üben verwenden?
Trainingsdaten sind natürlich das Um und Auf bei Machine Learing, und da zählt Qualität und Quantität! Glücklicherweise haben sich schon diverse Firmen und Organisationen die Arbeit gemacht solche Daten zusammenzutragen. So bekommt man mit Googles Open Images eine Sammlung von über 9 Millionen Bildern die in über 6.000 Kategorien eingeteilt werden – und das kostenlos unter der Creative Commons Lizenz. Auch spezialisierte Datensätze gibt es frei zu haben: Auf kaggle.com findet sich eine Bildersammlung von Lego-Steinen aus allen Blickwinkeln – schön kategorisiert.
7. Wie lassen sich Gesichtserkennung und Datenschutz miteinander vereinbaren?
Gesichtserkennung als solches ist kein Datenschutzproblem. Wichtig ist wie damit umgegangen wird. Nehmen wir ein bekanntes Beispiel das wohl viele kennen werden: So gut wie alle aktuellen Smartphones bieten eine Funktion zum Entsperren via Gesichtserkennung an. Diese Erkennung läuft nur am Gerät selbst – es werden keine Daten an Google oder Apple übertragen. Hier sehe ich also kein Datenschutzproblem. Anders sieht es dann aus, wenn diese Erkennungsmuster im großen Stiele gesammelt werden und z.B. Staaten dazu nutzen, mit Hilfe von Kameras die an öffentlichen Plätzen montiert werden, Bewegungsprofile ihrer Bürger zu erstellen. Wie fast alles im Leben lässt sich diese Technologie also für Positives als auch für Negatives nutzen.
8. Wo steht ML in fünf Jahren?
Zukunftsvorhersagen, besonders in so schnelllebigen Gebieten wie Machine Learning, entpuppen sich im Nachhinein meist als grob falsch. Daher wage ich auf diese Frage keine Antwort zu geben.
9. Wie wird ML bei Anexia bereits eingesetzt?
Anexia setzt Machine Learning hauptsächlich im Bereich der Bilderkennung ein. In den meisten Fällen geht es darum bestimmte Objekte in Bildern oder Videos zu erkennen um diese dann kategorisieren oder gruppieren zu können. Da dem Kunden hier ja bekannt ist, was er in den Bildern und Videos erkennen möchte, wird zum Trainieren der „Supervised“-Ansatz gewählt.