Как приложения для отслеживания калорий получают свои данные о питательных веществах: технический анализ изнутри
Подробное техническое объяснение пяти методов, которые используют приложения для отслеживания калорий для создания своих баз данных продуктов: государственные базы данных, данные от производителей, лабораторный анализ, краудсорсинг и оценка с помощью ИИ. Включает диаграммы потоков данных, анализ соотношения затрат и точности, а также разбивку методологии для конкретных приложений.
Каждый раз, когда вы вводите данные о еде в приложении для отслеживания калорий и видите, как на экране появляется число калорий, это число откуда-то берется. Но откуда именно? Как приложение определяет, что ваш обед содержит 487 калорий, 32 грамма белка и 18 миллиграммов витамина C? Ответ зависит от того, какое приложение вы используете, и различия в методах получения данных приводят к значительным различиям в уровне точности.
В этой статье рассматриваются пять основных методов, которые приложения для отслеживания калорий используют для создания своих баз данных продуктов, поток данных, необходимый для каждого метода, соотношение затрат и точности, а также то, как конкретные приложения реализуют каждый подход.
Пять методов получения данных
Метод 1: Государственные базы данных о питательных веществах
Источник: Национальные базы данных о составе продуктов, поддерживаемые государственными учреждениями, в первую очередь USDA FoodData Central (США), NCCDB (Университет Миннесоты, США), AUSNUT (Стандарты питания Австралии и Новой Зеландии), CoFID/McCance и Widdowson's (Общественное здравоохранение Англии, Великобритания) и CNF (Здравоохранение Канады).
Поток данных:
| Этап | Процесс | Контроль качества |
|---|---|---|
| 1. Получение данных | Загрузка или доступ через API к государственной базе данных | Проверка целостности данных при импорте |
| 2. Нормализация формата | Сопоставление полей данных государственного источника со схемой приложения | Проверка полей, контроль единиц измерения |
| 3. Стандартизация порций | Приведение к удобным для потребителя порциям | Проверка по данным FNDDS |
| 4. Сопоставление питательных веществ | Сопоставление кодов питательных веществ с отображением в приложении | Проверка полного охвата питательных веществ |
| 5. Тестирование интеграции | Сопоставление значений с источником | Автоматическое выявление отклонений |
| 6. Ввод для пользователя | Поисковый ввод продуктов с полным профилем питательных веществ | Постоянный мониторинг точности |
Точность: Высокая. Государственные базы данных используют стандартизированные лабораторные аналитические методы (протоколы AOAC International). Записи USDA Foundation Foods представляют собой золотой стандарт с значениями, определенными с помощью бомбового калориметра, анализа Кьельдаля и хроматографических методов.
Ограничения: Государственные базы данных охватывают обширный ассортимент обычных продуктов, но имеют ограниченное покрытие брендированных товаров, ресторанных блюд и международных продуктов. База данных USDA FoodData Central о брендированных продуктах содержит данные, предоставленные производителями, которые регулируются, но не проверяются независимо.
Затраты: Низкие прямые затраты (государственные данные доступны публично), но интеграция требует значительных инженерных усилий для нормализации форматов данных, обработки обновлений и управления сопоставлением между государственными кодами продуктов и терминами поиска потребителей.
Приложения, использующие этот метод в качестве основного источника: Nutrola (USDA + международные базы данных, перекрестная проверка), Cronometer (USDA + NCCDB), MacroFactor (основа USDA).
Метод 2: Данные от производителей
Источник: Данные с панели питательных веществ от производителей продуктов, полученные через базы данных штрих-кодов (Open Food Facts, API производителей), прямые отправки от производителей или базу данных USDA о брендированных продуктах.
Поток данных:
| Этап | Процесс | Контроль качества |
|---|---|---|
| 1. Получение данных | Сканирование штрих-кода, отправка от производителя или OCR изображения этикетки | Проверка штрих-кода, обнаружение дубликатов |
| 2. Парсинг этикетки | Извлечение значений питательных веществ из формата этикетки | Проверка формата, нормализация единиц измерения |
| 3. Ввод данных | Сопоставление значений этикетки с схемой базы данных | Проверка диапазонов (выявление неправдоподобных значений) |
| 4. Проверка качества | Сравнение с ожидаемыми диапазонами состава | Автоматическое обнаружение выбросов |
| 5. Ввод для пользователя | Поисковый ввод брендированных продуктов | Сообщение об ошибках пользователей |
Точность: Умеренная. Регламенты FDA (21 CFR 101.9) допускают, чтобы заявленные калорийные значения превышали фактические значения на 20 процентов. Исследования показали, что фактическое содержание калорий отклоняется от значений на этикетках в среднем на 8 процентов (Jumpertz et al., 2013, Obesity), при этом отдельные товары показывают отклонения, превышающие 50 процентов в некоторых случаях. Urban et al. (2010) обнаружили, что ресторанные блюда показывают наибольшие отклонения от заявленных питательных значений.
Ограничения: Этикетки содержат только подмножество питательных веществ (обычно 14-16 питательных веществ). Многие микроэлементы, отдельные аминокислоты, жирные кислоты и фитонутриенты не указаны. Кроме того, данные этикеток отражают формулировку на момент маркировки; изменения формулировки могут не сразу отражаться в базе данных.
Затраты: Низкие до умеренных. Инфраструктура сканирования штрих-кодов и технологии OCR требуют инвестиций в разработку, но стоимость за запись минимальна после настройки систем.
Приложения, использующие этот метод: Большинство приложений используют это для брендированных продуктов, включая Lose It! (сильная зависимость от сканирования штрих-кодов), MyFitnessPal (в дополнение к краудсорсингу) и MacroFactor (кураторские брендированные добавления).
Метод 3: Лабораторный анализ
Источник: Физические образцы продуктов, приобретенные в розничных магазинах и проанализированные с использованием стандартизированных методов аналитической химии в аккредитованных лабораториях.
Поток данных:
| Этап | Процесс | Контроль качества |
|---|---|---|
| 1. Закупка образцов | Приобретение репрезентативных образцов из нескольких мест | Соблюдение протоколов отбора |
| 2. Подготовка образцов | Гомогенизация образца в соответствии с протоколами AOAC | Стандартные операционные процедуры |
| 3. Проксидный анализ | Определение влаги, белка, жира, золы, углеводов | Повторные анализы, эталонные материалы |
| 4. Анализ микроэлементов | HPLC, ICP-OES, AAS для витаминов и минералов | Сертифицированные эталонные стандарты |
| 5. Компиляция данных | Запись результатов с оценками неопределенности | Рецензирование результатов |
| 6. Ввод в базу данных | Ввод проверенных значений с документацией о происхождении | Сопоставление с существующими данными |
Точность: Наивысшая возможная. Аналитическая неопределенность обычно составляет 2-5 процентов для макронутриентов и 5-15 процентов для микроэлементов, когда методы соответствуют стандартам AOAC International.
Ограничения: Чрезвычайно дорого ($500-$2,000+ за продукт для полного проксидного и микроэлементного анализа) и времязатратно (2-4 недели на образец). Ни одно потребительское приложение не может позволить себе независимо анализировать миллионы продуктов.
Затраты: Запредельно высоки для коммерческого масштаба. Именно поэтому приложения используют существующий лабораторный анализ (USDA FoodData Central), а не проводят независимый анализ.
Приложения, использующие этот метод: Ни одно потребительское приложение не проводит независимый лабораторный анализ. Приложения, которые используют данные лабораторного анализа, получают их через государственные базы данных (USDA, NCCDB).
Метод 4: Краудсорсинг пользовательских данных
Источник: Индивидуальные пользователи приложения вручную вводят данные о питательных веществах с упаковки продуктов, рецептов или личных оценок.
Поток данных:
| Этап | Процесс | Контроль качества |
|---|---|---|
| 1. Ввод пользователя | Пользователь вводит или сканирует информацию о питательных веществах | Базовая проверка формата |
| 2. Отправка | Запись добавляется в базу данных (часто доступна немедленно) | Автоматическая проверка диапазонов (по желанию) |
| 3. Обзор сообщества | Другие пользователи могут отмечать ошибки | Сообщество отмечает (непоследовательно) |
| 4. Модерация | Отмеченные записи проверяются модераторами | Волонтерская или минимально оплачиваемая модерация |
| 5. Управление дубликатами | Периодическая консолидация дубликатов | Автоматическая и ручная (часто с задержкой) |
Точность: Низкая до умеренной. Urban et al. (2010) в Journal of the American Dietetic Association обнаружили, что неквалифицированные лица, вводящие данные о составе продуктов, производят среднюю ошибку 20-30 процентов для содержания энергии. Tosi et al. (2022) обнаружили, что краудсорсинговые записи в MFP отклонялись от лабораторных значений на 28 процентов.
Ограничения: Нет систематического контроля качества. Дубликаты появляются быстрее, чем их можно консолидировать. Один и тот же продукт может иметь десятки записей с разными значениями калорий. Пользователи без специальной подготовки принимают решения о вводе, что приводит к систематическим ошибкам (путаница между похожими продуктами, неправильные размеры порций, ошибки с десятичными точками).
Затраты: Почти нулевые. Пользователи бесплатно вносят трудозатраты, что является экономическим фактором, способствующим доминированию этой модели.
Приложения, использующие этот метод в качестве основного источника: MyFitnessPal (14+ миллионов краудсорсинговых записей), FatSecret (модель общественного вклада).
Метод 5: Оценка с помощью ИИ
Источник: Модели компьютерного зрения, которые идентифицируют продукты по фотографиям и алгоритмически оценивают их питательное содержание.
Поток данных:
| Этап | Процесс | Контроль качества |
|---|---|---|
| 1. Съемка изображения | Пользователь фотографирует свою еду | Оценка качества изображения |
| 2. Идентификация продуктов | CNN/Transformer классифицирует продукты | Оценка уверенности |
| 3. Оценка порции | Оценка глубины или масштабирование по объекту-эталону | Проверка калибровки |
| 4. Сопоставление с базой данных | Идентифицированный продукт сопоставляется с записью в базе данных о питательных веществах | Оценка уверенности сопоставления |
| 5. Расчет питательных веществ | Размер порции × значения питательных веществ на единицу | Проверка согласованности |
Точность: Переменная. Meyers et al. (2015) сообщили о точности идентификации продуктов от 50 до 80 процентов для разнообразных блюд в системе Im2Calories. Thames et al. (2021) оценили более современные модели и обнаружили улучшение точности классификации, но сохраняющиеся проблемы с оценкой размера порции, сообщая о средних ошибках порции от 20 до 40 процентов. Сложная ошибка неопределенности идентификации, умноженная на неопределенность оценки порции, может привести к оценкам калорий с широкими доверительными интервалами.
Ограничения: Точность оценки ИИ зависит как от модели зрения, так и от базы данных, с которой она сопоставляется. Идеальная идентификация продукта, связанная с неточной записью в базе данных, все равно дает неточный результат. Смешанные блюда, перекрывающиеся продукты и незнакомые презентации снижают точность классификации.
Затраты: Высокие первоначальные инвестиции в обучение модели и инфраструктуру, но почти нулевые предельные затраты на каждую оценку.
Приложения, использующие этот метод: Cal AI (основной метод), Nutrola (в качестве удобного интерфейса для ввода, поддерживаемого проверенной базой данных), различные новые приложения.
Многоуровневый подход Nutrola к получению данных
Подход Nutrola к получению данных сочетает в себе сильные стороны нескольких методов, минимизируя их слабости.
| Этап потока | Подход Nutrola | Цель |
|---|---|---|
| 1. Основное получение данных | USDA FoodData Central | Лабораторная основа |
| 2. Перекрестная проверка | AUSNUT, CoFID, CNF, BLS и другие национальные базы данных | Многоуровневая проверка |
| 3. Выявление несоответствий | Автоматическое сравнение по источникам | Обнаружение ошибок |
| 4. Профессиональный обзор | Проверка зарегистрированных несоответствий диетологом | Экспертное разрешение |
| 5. Интеграция брендированных продуктов | Данные от производителей с проверкой диетолога | Охват брендированных товаров |
| 6. Ввод с помощью ИИ | Распознавание фотографий и голосовой ввод | Удобство для пользователя |
| 7. Сопоставление с базой данных | Идентифицированные ИИ продукты сопоставляются с проверенными записями | Гарантия точности |
| 8. Постоянный мониторинг | Обратная связь от пользователей + периодическая повторная проверка | Постоянное качество |
Ключевое отличие в потоке Nutrola заключается в разделении между интерфейсом ввода (распознавание фотографий и голоса, оптимизирующее удобство) и основной базой данных (основанной на USDA, перекрестно проверенной и подтвержденной диетологами, что оптимизирует точность). Эта архитектура гарантирует, что скорость и легкость ввода с помощью ИИ не идут в ущерб точности данных, поскольку каждая запись, с которой ИИ сопоставляется, была профессионально проверена.
В результате получается база данных из более чем 1.8 миллиона записей, подтвержденных диетологами, доступная через несколько методов ввода (распознавание фотографий ИИ, голосовой ввод, сканирование штрих-кодов, текстовый поиск) за 2.50 евро в месяц без рекламы.
Резюме соотношения затрат и точности
| Метод получения данных | Стоимость за запись | Точность (макро) | Точность (микро) | Масштабируемость | Скорость выхода на рынок |
|---|---|---|---|---|---|
| Лабораторный анализ | $500–$2,000 | ±2–5% | ±5–15% | Очень низкая | Медленная (недели) |
| Интеграция с гос. базами данных | $10–$30 | ±5–10% | ±10–15% | Умеренная | Умеренная (месяцы) |
| Профессиональный обзор + перекрестная проверка | $5–$15 | ±5–10% | ±10–20% | Умеренная | Умеренная |
| Данные от производителей | $1–$3 | ±10–20% | Ограниченное покрытие | Высокая | Быстрая (дни) |
| Краудсорсинг | ~$0 | ±15–30% | Часто отсутствует | Очень высокая | Мгновенная |
| Оценка с помощью ИИ | <$0.01 | ±20–40% | Не применимо | Очень высокая | Мгновенная |
Таблица показывает основное соотношение, с которым сталкивается каждое приложение для отслеживания калорий: точность стоит денег, а масштабирование — дешево. Приложения, которые ставят приоритет на размер базы данных, используют краудсорсинг, потому что это бесплатно и быстро. Приложения, которые ставят приоритет на точность, инвестируют в интеграцию с государственными данными и профессиональную проверку.
Как работают обновления базы данных
База данных о продуктах не является статичным продуктом. Производители продуктов изменяют формулы, новые продукты выходят на рынок, а аналитическая наука улучшается. Механизм обновления для каждого метода получения данных значительно различается.
Государственные базы данных обновляются по установленным циклам. USDA FoodData Central выпускает основные обновления ежегодно, при этом компонент Foundation Foods обновляется по мере появления новых аналитических данных. Приложения, интегрирующие государственные данные, должны повторно синхронизировать свои базы данных с каждым выпуском.
Данные от производителей меняются всякий раз, когда продукт реформулируется. Нет централизованной системы уведомления о реформуляциях, поэтому приложения должны либо периодически повторно сканировать продукты, либо полагаться на пользователей для сообщения о устаревших записях.
Краудсорсинговые данные обновляются непрерывно по мере того, как пользователи отправляют новые записи, но без контроля качества новые отправки так же вероятно могут ввести ошибки, как и исправить их.
Модели ИИ улучшаются через периодическое повторное обучение на новых данных, но это требует курируемых обучающих наборов данных и вычислительных ресурсов. Обновления моделей происходят в инженерных циклах, а не в циклах данных о питательных веществах.
Обновленный поток Nutrola включает циклы выпуска USDA, обновления национальных баз данных и постоянную проверку записей о брендированных продуктах для поддержания актуальности по всем 1.8 миллионам записей.
Почему методология получения данных должна быть вашим первым критерием выбора
При оценке приложений для отслеживания калорий большинство пользователей задаются вопросами о функциях: Есть ли сканирование штрих-кодов? Могу ли я вводить рецепты? Синхронизируется ли это с моим фитнес-трекером? Эти вопросы разумны, но второстепенны. Первый вопрос всегда должен быть: Откуда берутся данные о питательных веществах и как они проверяются?
Приложение с красивым дизайном и обширными функциями, которое предоставляет неточные данные о питательных веществах, активно противоречит цели. Оно создает ложное доверие к оценкам калорий, которые могут отклоняться от реальности на 20-30 процентов. Для пользователя, нацеленного на дефицит в 500 калорий, систематическая ошибка в 25 процентов означает разницу между достижением дефицита и поддержанием текущего веса.
Сравнение методологий получения данных в этой статье предоставляет основу для выбора приложения на основе доказательств. Приложения, основанные на USDA FoodData Central с профессиональными слоями проверки (Nutrola, Cronometer), предлагают принципиально другой уровень надежности данных по сравнению с краудсорсинговыми альтернативами (MFP, FatSecret) или оценкой только на основе ИИ (Cal AI).
Часто задаваемые вопросы
Как приложения для отслеживания калорий получают свои данные о питательных веществах?
Приложения для отслеживания калорий используют пять основных методов: интеграция с государственными базами данных (USDA FoodData Central, NCCDB), отправка данных от производителей, лабораторный анализ (доступный через государственные базы данных), краудсорсинг пользовательских данных и оценка на основе ИИ из фотографий еды. Каждый метод имеет разные профили точности и затрат. Наиболее точные приложения, включая Nutrola и Cronometer, основываются на данных, проанализированных в лабораториях, и добавляют слои профессиональной проверки.
Почему у некоторых трекеров калорий миллионы записей о продуктах, а у других нет?
Различия в размере баз данных в первую очередь обусловлены краудсорсингом. Приложения, такие как MyFitnessPal, позволяют любому пользователю отправлять записи, что быстро увеличивает количество записей до миллионов. Однако многие из этих записей являются дубликатами или содержат ошибки. Приложения с меньшими, но проверенными базами данных (1.8 миллиона записей, подтвержденных диетологами, Nutrola, кураторские данные USDA/NCCDB Cronometer) ставят приоритет на точность каждой записи, а не на общее количество записей.
Является ли оценка калорий с помощью ИИ такой же точной, как отслеживание на основе базы данных?
Текущие исследования показывают, что оценка на основе фотографий ИИ менее точна, чем поиск продуктов в проверенной базе данных. Thames et al. (2021) сообщили о средних ошибках оценки порции от 20 до 40 процентов для систем ИИ. Однако точность оценки ИИ сильно зависит от базы данных, с которой она сопоставляется. Nutrola использует ИИ как удобный интерфейс для ввода (распознавание фотографий и голоса), сопоставляя идентифицированные продукты с проверенной базой данных, сочетая удобство ИИ с точностью базы данных.
Как часто необходимо обновлять базы данных о продуктах?
Производители продуктов регулярно реформулируют продукты, а USDA обновляет FoodData Central ежегодно. Приложение должно включать основные обновления государственных баз данных как минимум раз в год и иметь процесс обновления записей о брендированных продуктах при реформуляциях. Краудсорсинговые базы данных обновляются непрерывно, но без контроля качества, в то время как кураторские базы данных обновляются реже, но с проверенной точностью.
Могу ли я проверить, откуда мой трекер калорий получает свои данные?
Некоторые приложения открыто сообщают о своих источниках данных. Cronometer помечает записи своим источником (USDA, NCCDB или производитель). Полезным тестом является поиск распространенного продукта, такого как "сырой брокколи, 100 г", и проверка, возвращает ли приложение одну определенную запись (что указывает на кураторскую базу данных) или несколько записей с разными значениями (что указывает на краудсорсинговую базу данных с проблемами дублирования).
Готовы трансформировать отслеживание питания?
Присоединяйтесь к тысячам тех, кто изменил свой путь к здоровью с Nutrola!