Interview mit Alexander von Below

Machine Learning in der App-Entwicklung: „Algorithmen wissen nicht von sich aus, was wir von ihnen wollen“

Katharina Degenmann

Alexander von Below

Wann ist Machine Learning (ML) die richtige Wahl für die App-Entwicklung und wann nicht? Wir sprachen mit Alexander von Below, Senior Software Engineer der Deutschen Telekom AG und Sprecher auf der Mobile Tech Conference darüber, wann und wie man ML in Apps einsetzen sollte.

JAXenter: Warum lohnt sich der Einsatz von ML in der Mobile-Entwicklung. Welche Vorteile hat das?

Alexander von Below: ML ist kein Allheilmittel, das auf magische Art und Weise Probleme löst. Die heutigen Möglichkeiten erlauben uns aber, viele Probleme  sehr viel einfacher mit ML zu lösen, als das vor Kurzem noch möglich gewesen wäre — insbesondere auf mobilen Plattformen. Das prominenteste Beispiel ist hierbei vermutlich die Objekterkennung, die mit den heutigen Tools wirklich sehr einfach geworden ist. Aber auch andere Dinge lassen sich heutzutage mit viel geringerem Aufwand umsetzten, sowohl was die Entwicklung als auch was Dinge wie Batterieverbrauch angeht. Immer dann, wenn meine Aufgabe „zu groß“, „zu komplex“ oder „zu speziell“ ist und ich die Möglichkeit habe, aus Eingabedaten Folgerungen zu ziehen, dann bietet sich Machine Learning grundsätzlich an.

JAXenter: Du selbst bist stark im iOS-Bereich unterwegs. Gibt es Besonderheiten bei der App-Architektur, die man beachten muss, um ML-Modelle in iOS-Apps einzusetzen?

Alexander von Below: Eigentlich nicht. Das Schöne ist, dass Apple es mit CoreML erlaubt, Modelle aus ganz verschiedenen Quellen zu verwenden. Dadurch muss ich nicht irgendwelche speziellen Bibliotheken in meine App einbauen, auch wenn ich das Modell vielleicht einmal auf eine ganz andere Weise erzeuge.

Wichtig ist immer, dass ich die Privatsphäre des Nutzers schütze, auch wenn ich ML nur verwende, um mit den vom Nutzer erhaltenen Daten Aussagen zu treffen. Wenn die Ein- und Ausgaben irgendwo gespeichert werden, dann sollte das immer so passieren, dass mit diesen Daten kein Missbrauch getrieben werden kann. Selbst wenn ich z.B. nur eine Ergebnisliste mit erkannten Objekten speichere, sollte die Privatsphäre dabei geschützt bleiben. Zum Glück gibt es da auf iOS einfache Mittel, um das zu tun.

Immer dann, wenn meine Aufgabe „zu groß“, „zu komplex“ oder „zu speziell“ ist und ich die Möglichkeit habe, aus Eingabedaten Folgerungen zu ziehen, dann bietet sich ML grundsätzlich an.

JAXenter: Welche Tools nutzt du für den Machine-Learning-Teil in iOS und in anderen Betriebssystemen?

Alexander von Below: Auf iOS nutze ich natürlich CoreML zum Verwenden der Modelle C. Zum Erstellen der Modelle stehen mir damit ganz viele Werkzeuge offen: Create ML hat ein besonders einfaches Interface, und für komplexere Modelle kann ich auf TuriCreate, SciKit-Learn, TensorFlow oder noch andere Mittel zugreifen. Für die meisten Tools ist Python die Sprache der Wahl, nur bei CreateML kann ich bei Swift bleiben.

JAXenter: Welche Best Practices gibt es beim Einsatz von CoreML und CreateML?

Alexander von Below: Es gibt eine einfache Regel beim Machine Learning: „Garbage in, Garbage out“. Machine Learning ist nicht wirklich intelligent und es ist leicht, in Fallen zu tappen. Das Modellieren und Normieren von Eingabedaten ist vielleicht die schwierigste Aufgabe überhaupt. Bewusst oder zufällig Datensets zu erzeugen, die ganz überraschende Ergebnisse haben, ist ganz leicht, denn Algorithmen wissen ja nicht von sich aus, was wir von ihnen wollen. Auch Menschen erkennen natürlich nicht immer jeden Zusammenhang. Dinge wie „Survivorship Bias“, also die Verzerrung von Stichproben zugunsten von Dingen oder Individuen, die eine bestimmte Schwelle übertreten haben, findet sich auch im Alltag: Dass es Menschen gibt, die es trotz abgebrochener Ausbildung sehr weit geschafft haben, ist bekannt. Daraus den Schluss zu ziehen, dass Ausbildung keinen Sinn ergibt, wäre irrsinnig.

ML ist im Großen und Ganzen eine stark etablierte Technologie, die von allen großen Unternehmen in erheblichem Umfang produktiv eingesetzt wird.

JAXenter: Gibt es einen neuen großen Trend im Bereich Machine Learning, der dich im Moment besonders interessiert?

Alexander von Below: Machine Learning ist im Großen und Ganzen eine stark etablierte Technologie, die von allen großen Unternehmen in erheblichem Umfang produktiv eingesetzt wird: Amazon, Facebook, Google, Apple sind nur die größten Beispiele. Mich interessiert auf der einen Seite, wie auch kleinere Apps von Machine Learning profitieren können. Auf der anderen Seite verfolge ich gespannt das Spannungsfeld zwischen Bequemlichkeit und Privatsphäre, das sich dort aufspannt. Apple setzt hier bewusst darauf, Nutzerdaten nicht in der Cloud zu speichern und verzichtet damit auf mögliche Features. Andere Firmen dagegen speichern Daten und werten sie aus, erhalten bessere Ergebnisse — haben dann aber auch Probleme, wie sich jüngst mit dem Amazon Echo Leak gezeigt hat. Hier war gar kein Hack notwendig, um an höchstpersönliche Daten einer anderen Person zu kommen.

Vielen Dank für das Interview!

Alexander von Below begann vor 30 Jahren mit der Entwicklung von Software für den Apple Macintosh und für das iPhone, seitdem das SDK veröffentlicht wurde. Nach der Entwicklung von CD- und DVD-Recording-Lösungen bei CeQuadrat und Roxio wurde er freiberuflicher Entwickler, zunächst mit Fokus auf den OS X Kernel und später auf mobile Lösungen. Nachdem er 2009 die Deutsche Telekom bei der Entwicklung ihrer ersten mobilen Apps unterstützt hatte, trat er 2013 in die Innovationsgruppe ein und entwickelt derzeit Prototypen für neu entstehende Plattformen und spannende Produkte.
Geschrieben von
Katharina Degenmann
Katharina Degenmann
Katharina Degenmann hat Politikwissenschaft und Philosophie studiert. Seit Februar 2018 arbeitet sie als Redakteurin bei der Software & Support Media GmbH und ist nebenbei als freie Journalistin tätig.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: