• Нейросеть по фото оценила пользу блюда.Вокруг Света. Украина
    Фото: Depositphotos
    Технологии
    Среда, 25 ноября 2020

    Нейросеть по фото оценила пользу блюда

    Немецкие исследователи разработали алгоритм, определяющий пищевую ценность блюд по фотографии: их калорийность и содержание белков, углеводов и жиров.

    В отличие от многих других подобных алгоритмов новый определяет эти показатели напрямую, а не обращаясь к базе данных о пищевой ценности разных продуктов. Кроме того, алгоритм пытается предсказать и ингредиенты блюд.

    Часть людей, сбрасывающих лишний вес или поддерживающих его на одном уровне, записывают приемы еды, отмечая ее пищевую ценность. Есть даже приложения, в которых этот процесс частично автоматизирован: если человек съел еду из магазина, на ее упаковку можно навести камеру, и приложение само добавит все данные в дневник потребления. Но это не подходит для самостоятельно приготовленной пищи и еды в кафе. В первом случае человек еще может рассчитать пищевую ценность, поскольку знает все компоненты, а во втором это можно сделать лишь очень примерно.

    Исследователи в области компьютерного зрения уже несколько лет пытаются решить эту проблему. Как правило, алгоритмы по расчету пищевой ценности работают похожим образом: распознают на снимке блюдо и выдают соответствующие значения из базы. Также они могут учитывать размер блюда для более точного расчета калорий, хотя некоторые из недавних алгоритмов исходят из предположения, что перед камерой стандартная порция. Подобные многостадийные алгоритмы сложны в разработке и не очень точны, отмечают авторы новой работы во главе с Райнером Штифельхаге из Технологического института Карлсруэ. Они использовали иной подход, в котором нейросеть за один этап рассчитывает пищевую ценность на основе фотографии.

    В основе алгоритма лежит сверточная нейросеть для распознавания объектов, обученная на огромном датасете различных фотографий ImageNet. Использование предобученной сверточной нейросети — это популярный метод, позволяющий брать за основу алгоритм, который уже достаточно хорошо умеет определять признаки на изображениях, и дообучать его последние слои на своей конкретной задаче. В этом случае авторы не просто дообучали последний слой, а изменили его структуру: вместо классификации он решает задачу регрессии, то есть подбора конкретного значения, а не отнесения исходной фотографии к какому-то фиксированному классу объектов. Четыре нейрона последнего слоя выдают калорийность блюда и содержание базовых компонентов (белки, жиры, углеводы), а еще 100 нейронов выдают 100 самых вероятных ингредиентов.

    Фото: arXiv.org, 2020

    Разработчики самостоятельно подготовили датасет для обучения алгоритма, воспользовавшись двумя источниками: сайтом рецептов, где у большинства рецептов есть список ингредиентов и фотография готового блюда, и базой пищевой ценности различных продуктов. Поскольку рецепты пишутся разными людьми и содержат лишние данные (например, один и тот же продукт может быть указан как «лук», «лук, нарезанный кольцами» и «лук, нарезанный кубиками», хотя для анализа пищевой ценности это один и тот же ингредиент), исследователям пришлось полуавтоматически обработать данные. В частности, они убрали лишние слова и перевели примерные величины (например, «одна столовая ложка») в конкретные. Затем они сопоставили данные с двух предварительно обработанных датасетов и собрали их в один, содержащий 70 тысяч рецептов и 308 тысяч фотографий.

    Алгоритм также протестировали на рецептах, которые он не встречал во время обучения, и он также показал достаточно высокую точность.

    Как сообщал «Вокруг Света. Украина», нейросеть рассмотрит ожирение из космоса. Американские ученые предложили метод для оценки связи между лишним весом и средой, в которой живут люди.

    По материалам Nplus1

    Читайте также:

    Кровавые слезы: нейросеть создала идеальную песню для Евровидения

    Нейросеть оживила «Мону Лизу»

     

    Загрузить еще