Комментарии 6
Как, например, соотносятся размеры штрафа за сахар, соль и разные E?
И сахар, и соль до некоторой дозы (у каждого своя) несут пользу, далее наступает некий промежуток нейтральности, и только потом начинается вред...
Шкалы разные, да.
С сахаром и солью проще всего: там есть цифра на 100 г, поэтому штраф не линейный, а ступеньками. До первого порога ноль, потом минус один, на втором минус два. Так что ваша нейтральная зона у меня просто ноль баллов, без философии.
А вот с ешками засада. В составе не пишут, сколько её там — только что она есть. Дозы я не знаю и узнать неоткуда, поэтому штрафую по уровню риска самого вещества. Нитриты, диоксид титана, красители из шестёрки Саутгемптона — минус три. Фосфаты, глутаматы, бензоаты — минус один, потому что у них групповой ADI и набирается он из пяти разных продуктов за день. Остальное ноль.
Красный начинается с минус трёх, то есть одна тяжёлая или три средние. Сначала у меня было тупо: любая флагнутая добавка — сразу минус три. Получилось 28% красных и фосфат в йогурте весил ровно столько же, сколько нитрит в сырокопчёной колбасе. Развёл штрафы — стало 18%.
И вы точно ткнули в то, что меня самого бесит: 100 г — это не порция. Соевый соус по соли на сотню грамм выглядит как катастрофа, а его ложку льют. Что с этим делать без данных о реальном потреблении — пока не придумал. Так что это честное ограничение, а не решённая задача. Извиняюсь за простыню , тема больная)
Вы продвигаете B2C-сканер продуктов в магазине. ОК. Но мне не нужна универсальная формула полезности — это утопия. Абстрактной хорошей или плохой еды не существует. Есть подходящая или неподходящая индивидуально. Например, мне не нужны чужие рекомендации про вред оливкового масла, так как и не употребляю другого в принципе, также это масло является основным жиром в рамках средиземноморской диеты, польза которой доказана безусловно и однозначно.
Мне больше подходит такая условная схема:
[Профиль пользователя, персональная продуктовая матрица — не надо второй раз сканировать, если продукт уже задан в профиле]
├── Я ищу: [𝗑] Без сахара / без подсластителей
├── Мне нельзя: [𝗑] Глютен, [𝗑] Арахис
└── Я ограничиваю: [𝗑] Натрий / Соль
│
▼
[Сканирование штрихкода нового продукта]
│
▼
[Персональный вердикт за 𝟢.𝟧 сек]:
🟢 “Подходит под ваш профиль: Сахара нет, глютена нет”
🔴 “Не подходит: Найден сахар (𝖲𝗎𝖼𝗋𝗈𝗌𝖾) и нитрит натрия”
А что касается вашей работы по созданию глобальной продуктовой матрицы, то она может быть полезна для B2B-аналитики, за это могут и заплатить, поскольку у вас по всем конкурентным позициям собраны данные.
То есть просматривется два пути: индивидуализация и платная аналитика. А в данном варианте, чтобы я каждый раз обходил со сканером вдоль пачек с кефиром и творогом, интегральная математическая оценка мне лично ничего не даст (пусть даже научно выверенная, чего у вас нет и в помине), ну серьёзно.
Да, и не надо никакой LLM — нет задач.
Светофорить, конечно, наглядно и правильно. Но пару ремарок, раз уж автор просит:
Точного весового состава у большинства продуктов нет. Ну кроме сахара и БЖУ. А вот по NaCl такой инфы нет почти ни на одном товаре. Голый “вес” сам по себе плох в одиночку, он не учитывает фракцию/влажность/предоюработку и дает море возможностей для ЗОЖ-манипуляций. Последовательность перечисления ингредиентов вообще слабо информативна и не дает права сравнивать теплое с мягким без стат-взвешивания, оно тут лексическое. Да, датасет неполный, это извечная и самая массовая проблема больших и малых исследований. Но ситуация не безнадежна. Оцифрованные справочники технолога пищевых продуктов существуют, и они сложнее чем кажутся. Там есть еще как минимум влажность, фракция и состояние (запарен, бланширован итп). Эти данные, кстати, быстро вытащат на поверхность огромное число манипуляций производителей в аннотациях-списках по убыванию веса. Врут не то чтобы все, но сейчас врут талантливо: под ЗОЖ-тему специально (другие категории потребителй аннотации вовсе не читают). С этим надо что-то делать, что - не знаю.
Дисбаланс классов и здесь мешает. “Красный”, вредный по сахару и соли кетчуп всегда съедается в ничтожной и оттого безвредной дозе 5 г. И он тем самым обеспечивает гарантированное съедание 220 г полезных “зеленых” гречки/овсянки с сельдереем. Это устоявшееся диетическое сочетание не учтено, и классы не сбалансированы. А значит кетчуп в рекомендациях будет ошибочно заменен чем-то другим, где могут быть свои вредности (или не обеспечивается главное - гарантированное сьедание полезной гречки/овсянки с сельдереем). С этим тоже надо что-то делать. Мета-веса полезности и связей вреджное-полезное - можно было бы и построить, но исследований на эту тему нет. А строить их “по Малахову” или еще как огульно - неправильно.
Про соль больная тема, да. В ТР ТС натрий в таблице не обязателен, и его реально нет почти нигде. У меня в базе соль заполнена примерно у трети товаров, остальные просто не штрафуются по натрию — и это косяк, потому что молчание трактуется как «всё нормально».
Про порядок ингредиентов согласен лишь отчасти. Как мера он действительно грубый, но я из него беру только один бит: сахар на первом месте. Это не сравнение двух товаров между собой, а факт внутри одной банки: если сахара больше, чем всего остального, это уже о многом говорит. Стат-взвешивания тут нет, вы правы.
А вот про кетчуп — это точно в больное место. У меня всё считается на 100 г, а соуса кладут ложку. Формально красный, по жизни безвредный. Чтобы честно это починить, нужны типовые порции по категориям, а где их взять по российской полке — пока не придумал. Придумать цифру из головы могу, но тогда это будет ровно «по Малахову», о чём вы и пишете.
За справочники технолога спасибо, это полезная наводка — про влажность и состояние я не думал вообще. Пойду копать.
Напоминает германскую систему https://en.wikipedia.org/wiki/Nutri-Score. Тоже достаточно бессмысленную.
Пример мемов шуток


Я прогнал 60 тысяч составов продуктов через свой алгоритм. Вот что в еде на самом деле