Case study Lose It! utilizza il ML Kit per
estrarre i dati dalle etichette nutrizionali
e migliorare l'esperienza utente
estrarre i dati dalle etichette nutrizionali
e migliorare l'esperienza utente
Dal 2008, Lose It! ha aiutato più di 30 milioni di persone a perdere più di 15 milioni di chili. L'app aiuta gli utenti a gestire le proprie diete rendendo più semplice possibile la registrazione degli alimenti e i loro team di prodotto sono sempre alla ricerca di nuovi modi per semplificare le cose.
Il team di Lose It! ha introdotto per la prima volta Snap It, un algoritmo di riconoscimento degli oggetti progettato per aiutare gli utenti a registrare i loro alimenti preferiti semplicemente scattando una foto. Tuttavia, l'elevato costo di calcolo dell'algoritmo richiedeva l'utilizzo di un server GPU, il che significava che non erano in grado di rendere disponibile l'esperienza in tempo reale.
Nello stesso periodo, il team voleva anche aggiungere una funzionalità di scansione delle etichette nutrizionali, ma il tempo di analisi del server era solo leggermente più veloce rispetto a quando l'utente aveva appena inserito le informazioni. Inoltre, poiché la velocità e gli indicatori di rete cellulare variabili potevano creare o compromettere l'esperienza utente, non erano in grado di garantire prestazioni coerenti.
Il team di Lose It! sapeva che i suoi utenti avrebbero apprezzato entrambe le funzionalità, ma solo se erano in grado di offrire tale esperienza abbastanza rapidamente da offrire l'esperienza in tempo reale. Cosa potrebbero fare per velocizzare le cose?
Cosa hanno fatto
Il team si è rivolto a ML Kit per risolvere i problemi di velocità. "ML Kit si è dimostrato estremamente utile per il deployment della nostra funzionalità di riconoscimento degli alimenti, Snap It, utilizzando modelli TF Lite compressi e quantizzati", ha affermato Edward W. Lowe, Jr. Ph.D., Director of Data Science and AI in Lose It! In precedenza, l'algoritmo Snap It veniva eseguito su un server, il che richiedeva il trasferimento di un'immagine alimentare al server per inferenza. Ma "un modello personalizzato ospitato da ML Kit ci ha permesso di implementare senza problemi un modello Snap It quantificato sul dispositivo, che consente ai nostri utenti di utilizzare questa funzionalità in tempo reale e senza una connessione dati", ha dichiarato Lowe. "E grazie all'API on-device di riconoscimento del testo, siamo riusciti a ridurre notevolmente i tempi di analisi delle immagini per la lettura delle etichette nutrizionali."
"L'importante è che ML Kit ci consente di ospitare modelli in Firebase", ha aggiunto Lowe. "Questo ci consente di aggiornare i modelli sul dispositivo senza aggiornare l'app, ne riduce le dimensioni e ci consente di eseguire il test A/B delle versioni del modello. Disconnettere il deployment del modello dalla release dell'app ci consente di rispondere rapidamente al cambiamento del comportamento degli utenti e di affrontare meglio le deviazioni."
Risultati
Grazie al ML Kit Lose It! è stato in grado di lanciare un lettore di etichette nutrizionali ad alte prestazioni, ampiamente disponibile. Ora gli utenti possono semplicemente scansionare l'etichetta di un'alimentazione per inserire immediatamente le informazioni sull'alimentazione relative a qualsiasi nuovo alimento. Per quanto riguarda lo scanner di etichette nutrizionali, le informazioni vengono riconosciute in meno di un secondo nella maggior parte dei casi. L'utente non ha nemmeno bisogno di scattare una foto: l'app può recuperare le informazioni direttamente dalla visualizzazione della fotocamera in tempo reale.