Passer au contenu

Pourquoi on veut du machine learning sur smartphone et pas dans le cloud

ML Kit, le SDK de machine learning de Google, fonctionne désormais entièrement sur l’appareil en question : un vrai changement de paradigme alors qu’une grande partie du machine learning est encore tributaire du cloud computing.

Le machine learning est une discipline qui a connu un essor fulgurant sur les dernières années, à tel point qu’il est aujourd’hui utilisé un peu partout, autant au niveau des professionnels que des consommateurs, et qu’il participe au fonctionnement de nombreux services que l’on ne soupçonnerait pas de prime abord. Mais pour proposer certains services complexes, qui nécessitent une puissance de calcul importante pour mettre en relation d’importants ensembles de données dans les cas concrets les plus exigeants, il arrive que les appareils non spécialisés ne suffisent plus : le machine learning nécessite alors un accès à un service cloud qui dispose de matériel autrement plus puissant que le smartphone lambda, même si ces derniers font des bonds de géant chaque année. Cela s’accompagne d’un certain nombre d’inconvénients en termes d’efficacité, avec une latence inévitable, mais aussi et surtout en termes de protection des données personnelles, avec des fuites potentielles envisageables autant pour les entreprises que pour les individus.

D’après SlashGear, ce serait la raison pour laquelle Google souhaite effectuer la transition du cloud vers un système indépendant et autonome, qui tournerait intégralement de façon locale sur un smartphone. C’est en tout cas la direction prise par la firme de Mountain View avec son ML Kit (pour “Machine Learning Kit”), déjà disponible depuis deux ans mais jusque là intimement liée à la plateforme cloud Firebase. Google ne va pas enterrer ce duo, du moins pas dans un premier temps. À la place, c’est un SDK autonome (Software Development Kit, un ensemble d’outils destiné aux développeurs d’une plateforme donnée, en l’occurrence ML Kit)  qui est lancé pour Android et iOS.

© Google

Le machine learning autonome, nomade et taillé sur mesure

Certes, cela signifie que c’est l’appareil de l’utilisateur qui va devoir effectuer le gros du travail, plutôt qu’un serveur cloud spécialement prévu pour. Mais cela a également des avantages, notamment une latence réduite et l’absence de communication avec un serveur, qui ouvre toujours la porte à une fuite de données. Un vrai argument pour faire confiance aux applications basées sur la machine learning, qui suscitent régulièrement des débats. Dans l’absolu, cela ne devrait pas vraiment présenter de gros inconvénient : aujourd’hui, les services qui font usage du ML Kit (reconnaissance de texte, détection d’objets, traduction…) sont relativement peu gourmands en ressources par rapport à l’utilisation que peuvent en faire des professionnels. Cela signifie qu’en théorie, n’importe quel smartphone actuel sera capable d’assumer ces tâches, même s’il ne date pas des deux dernières générations. Google a en tout cas créé un codelab où il présente un outil de traduction similaire à celui déjà proposé par Google, mais qui fonctionne intégralement en local même sur des appareils peu puissants. Reste donc à voir quel usage en feront les développeurs et s’ils décideront d’abandonner Firebase au profit de cette méthode locale, qui semble tout à fait prometteuse pour ce genre d’utilisations grand public.

[amazon box=”B07Z6NL7HB”]

🟣 Pour ne manquer aucune news sur le Journal du Geek, abonnez-vous sur Google Actualités. Et si vous nous adorez, on a une newsletter tous les matins.

3 commentaires
  1. « la plupart d’entre eux ont cependant un point commun. Le machine learning nécessite un accès à un service cloud qui dispose de matériel autrement plus puissant que le smartphone lambda »

    Ah bon ? Parce que non, pas vraiment en fait, et loin de là même. Il y a des tonnes de tâches de machine learning qui tournent très bien sur téléphone.

    Ça n’invalide pas le reste de l’article, mais cette affirmation est vraiment fausse.

  2. En fait je me demande si on ne mélange pas des taches totalement différentes dans cet article.

    D’un coté, il va y avoir l’apprentissage de modèles pour la reconnaissance vocale, la traduction automatique, la reconnaissance des images… Et l’on va utiliser souvent des millions ou centaine de millions d’exemples annotés (l’image de chat est taguée chat par ex) pour affiner le modèle.

    Et ça, un smartphone seul est incapable de le faire.

    Il y a l’évaluation de ce modèle et non plus l’apprentissage. Le modèle est déjà entraîné, on veut juste l’utiliser pour savoir si l’image affichée est un chat, par exemple.

    La plupart des smartphones de dernière génération ont d’ailleurs des puces dédiées à cet effet. Et il est de plus envisageable de faire cette évaluation sur le téléphone lui même. C’est d’ailleurs déjà le cas pour la reconnaissance de visages pour déverrouiller le smartphone par exemple.

    Et évidement que google veut que ce soit votre téléphone qui le fasse. Dans un cas ce sont ses serveurs qui consomment de l’énergie etc et qui leur faut payer… Dans l’autre cas, c’est le téléphone de l’utilisateur et son énergie qui est consommée…

    Enfin, si à la fin vous utilisez l’assistant de google pour faire une recherche sur le web, comme pour la météo, vous transmettrez des données.

    Mais si le maximum est exécuté en local sur le téléphone et que le minimum d’information est envoyés aux serveurs, google peut en savoir autant sur vous, vous envoyer autant de pub, mais réduire fortement ses coûts.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *