Тематическое исследование Потерять его! использует ML Kit для
извлечь данные из этикеток о питании
и улучшить пользовательский опыт
извлечь данные из этикеток о питании
и улучшить пользовательский опыт
С 2008 года Потеряй это! помог более чем 30 миллионам человек потерять более 50 миллионов фунтов стерлингов. Приложение помогает пользователям управлять своим питанием, максимально упрощая регистрацию продуктов питания, а их команды разработчиков всегда ищут новые способы сделать вещи еще проще.
Команда Lose It! впервые представил Snap It, алгоритм распознавания объектов, разработанный, чтобы помочь пользователям регистрировать свои любимые блюда, просто делая фотографию. Но высокая вычислительная стоимость алгоритма потребовала использования сервера с графическим процессором, а это означало, что они не могли сделать работу доступной в режиме реального времени.
Примерно в то же время команда также хотела добавить функцию сканирования этикеток с пищевыми продуктами, но время анализа сервером было лишь незначительно быстрее, чем если бы пользователь просто вводил информацию самостоятельно. Кроме того, поскольку переменные скорости и сигналы сотовой сети могли улучшить или испортить взаимодействие с пользователем, они не могли гарантировать стабильную производительность.
Потеряй это! команда знала, что их пользователям понравятся обе функции, но только в том случае, если они смогут сделать их достаточно быстрыми, чтобы предлагать опыт в режиме реального времени. Так что же они могли сделать, чтобы ускорить процесс?
Что они сделали
Команда обратилась к ML Kit, чтобы решить свои проблемы со скоростью. «Комплект ML оказался чрезвычайно полезным для развертывания нашей функции распознавания продуктов питания Snap It с использованием сжатых квантованных моделей TF Lite», — сказал Эдвард В. Лоу, младший доктор философии, директор по науке о данных и искусственному интеллекту в Lose It! Ранее алгоритм Snap It был развернут на сервере, что требовало передачи изображения еды на сервер для вывода. Но «пользовательская модель, размещенная в ML Kit, позволила нам беспрепятственно реализовать квантованную модель Snap It на устройстве, что позволяет нашим пользователям использовать эту функцию в режиме реального времени и без подключения к данным», — сказал Лоу. «А за счет использования API распознавания текста на устройстве мы смогли значительно сократить время анализа изображения для чтения этикетки с пищевой ценностью».
«Важно, что ML Kit позволяет нам размещать модели в Firebase», — добавил Лоу. «Это позволяет нам беспрепятственно обновлять модели на устройстве без обновления приложения, уменьшает размер приложения и позволяет проводить A/B-тестирование версий моделей. Отключение развертывания модели от выпуска приложения позволяет нам быстро реагировать на изменение поведения пользователей и лучше справляться с дрейфом».
Результаты
Благодаря ML Kit, Lose It! удалось запустить широкодоступный высокопроизводительный считыватель этикеток с пищевой ценностью. Теперь пользователи могут просто отсканировать этикетку с пищевой ценностью, чтобы мгновенно ввести информацию о пищевой ценности любого нового продукта. Что касается сканера пищевой этикетки, то в большинстве случаев информация распознается менее чем за одну секунду. Пользователю даже не нужно делать снимок — приложение может получать информацию прямо с камеры в режиме реального времени.