Étude de cas

Lose It! utilise ML Kit pour
extraire les données des étiquettes nutritionnelles
et améliorer l'expérience utilisateur

Depuis 2008, Lose It! a aidé plus de 30 millions de personnes à perdre plus de 22 millions de kilos. L'application aide les utilisateurs à gérer leur alimentation en facilitant autant que possible l'enregistrement de leurs aliments. De plus, leurs équipes produit sont toujours à la recherche de nouvelles façons de simplifier les choses.

L'équipe de Lose It! a d'abord présenté Snap It, un algorithme de reconnaissance d'objets conçu pour aider les utilisateurs à enregistrer leurs aliments préférés simplement en les prenant en photo. Toutefois, le coût de calcul élevé de l'algorithme nécessitait l'utilisation d'un serveur GPU, ce qui empêchait l'expérience de fonctionner en temps réel.

À la même période, l'équipe souhaitait également ajouter une fonctionnalité d'analyse des étiquettes nutritionnelles, mais le temps d'analyse du serveur n'était que légèrement plus court que si l'utilisateur venait de saisir les informations lui-même. De plus, comme des vitesses et des signaux de réseau mobile variables pouvaient nuire à l'expérience utilisateur, ils ne pouvaient pas garantir des performances constantes.

L'équipe de Lose It! savait que ses utilisateurs apprécieraient ces deux fonctionnalités, mais seulement si elles pouvaient les rendre suffisamment rapides pour offrir l'expérience en temps réel. Que pourraient-ils faire pour accélérer le processus ?

L'équipe s'est tournée vers ML Kit pour résoudre ses problèmes de vitesse. "ML Kit s'est avéré extrêmement utile pour déployer Snap It, notre fonctionnalité de reconnaissance alimentaire, à l'aide de modèles TF Lite compressés et quantifiés", explique Edward W. Ph. D.Lowe, Jr. Directeur de la science des données et de l'IA chez Lose It! Auparavant, l'algorithme Snap It était déployé sur un serveur, ce qui nécessitait de transférer une image d'aliment au serveur pour l'inférence. Mais "un modèle personnalisé hébergé par ML Kit nous a permis de mettre en œuvre de manière fluide un modèle Snap It quantifié sur l'appareil, ce qui permet à nos utilisateurs d'utiliser cette fonctionnalité en temps réel et sans connexion de données", a expliqué M. Lowe. "Grâce à l'API de reconnaissance de texte intégrée à l'appareil, nous avons considérablement réduit le temps d'analyse des images pour la lecture des étiquettes nutritionnelles."

"Il est important de noter que ML Kit nous permet d'héberger des modèles dans Firebase", ajoute Lowe. "Cela nous permet de mettre à jour les modèles directement sur l'appareil sans mettre à jour l'application, de réduire la taille de l'application et de réaliser des tests A/B. Le fait de dissocier le déploiement d'un modèle de la release d'une application nous permet de réagir rapidement à l'évolution du comportement des utilisateurs et de mieux gérer la dérive."

Grâce à ML Kit, Lose It! a pu lancer un lecteur d'étiquettes nutritionnelles hautes performances à la disponibilité générale. Désormais, les utilisateurs peuvent simplement scanner une étiquette nutritionnelle pour renseigner instantanément les informations nutritionnelles de chaque nouvel aliment. Comme dans le cas du lecteur d'étiquettes nutritionnelles, la plupart des informations sont reconnues en moins d'une seconde. L'utilisateur n'a même pas besoin de prendre une photo : l'application peut extraire les informations directement depuis l'appareil photo.