Apps | Artificial Intelligence
Kein Smartphone ohne Smart-App – Ein Blick auf MLKit
28. Juni 2018

Machine Learning ist ein komplexes und möglicherweise schwer zugängliches Thema, da es eine gewisse Expertise verlangt. Mit dem auf der Google I/O 2018 angekündigten Firebase MLKit stellt Google ein Framework zur Verfügung, das Machine Learning Funktionalität für mobile Apps einfacher umsetzbar machen soll.
Warum Machine Learning in Apps
Software wird immer intelligenter und personalisierter und in vielen Fällen sind die Ergebnisse davon so selbstverständlich für uns, dass wir uns keine Gedanken mehr darüber machen wie das überhaupt funktionieren kann. Die Antwort ist in dem Fall – Machine Learning. Riesige Mengen an Daten werden gesammelt, Algorithmen werden darauf angewandt und ein Modell wird erstellt, das einem Stück Software schlussendlich die Möglichkeit gibt, mir zu sagen, welche TV Show mir als nächstes gefallen könnte.
Die Frage, warum Machine Learning in einer mobilen App überhaupt Sinn macht, wird am besten mit konkreten Beispielen erklärt. Grundsätzlich kann Machine Learning in Apps dafür eingesetzt werden, um eine personalisiertere Benutzererfahrung anbieten zu können oder um eine App einfach intelligenter zu machen. Alles was die Benutzer dafür tun müssen ist: die App benutzen. Hier ein paar Beispiele:
Netflix
Auf Basis von Bewertungen, angesehenen Filmen etc. werden den Benutzern Vorschläge geliefert, die genau auf deren Vorlieben zugeschnitten sind.
Google Maps
Anhand der Daten darüber, wie lange gewisse Benutzer an gewissen Orten benötigen, um einen Parkplatz zu finden, kann die App brauchbare Parkplätze vorschlagen.
Uber
Machine Learning verwendet man hier dafür, um genauere Ankunftszeiten eines bestellten Ubers zu liefern.
Google Photos
Bilder werden analysiert, um den Benutzern die Möglichkeit zu geben, ihre Bilder nach darauf abgebildeten Dingen zu durchsuchen. Die Thematik ist für Apps bereits sehr relevant und wird in Zukunft immer relevanter, deshalb werfen wir lieber ganz schnell einen Blick auf MLKit.
Was ist MLKit?
Wie zuvor schon kurz erwähnt, basiert die Funktionalität einer Machine Learning Anwendung auf einem geeigneten Modell. Diese Modelle werden auf gewisse Daten (z.B. Bilder von Katzen) trainiert, um danach auf unbekannte Daten (Bilder von unbekannten Katzen) angewandt zu werden. Welche Ergebnisse geliefert werden, hängt davon ab, worauf das Modell ausgelegt wurde (z.B. für wie süß die Katze auf einer Skala von 1-10 befunden wird). Das Erstellen solcher Modelle kann in vielen Fällen ein sehr aufwändiger Prozess sein. MLKit stellt daher bereits fertige Modelle für gewisse Standardanwendungen zur Verfügung. Da diese Modelle von Google kommen, muss ich an dieser Stelle nicht erwähnen, dass Google sie mit ausreichend Daten füttert und daher ohne jegliche Anpassungen sehr solide Ergebnisse liefern (mehr dazu weiter unten).
Ein großes Plus von MLKit ist die Tatsache, dass es über Firebase angeboten wird und damit sowohl für Android als auch für iOS verfügbar ist. Modelle kann man entweder offline (am Gerät) oder in Firebase als cloud-basierte Lösung verwalten. Eigene Modelle (zum Beispiel mit Tensorflow erstellt) können somit ebenfalls direkt auf Firebase gehostet und in MLKit verwendet werden.