👩🔬 Когда ингредиент становится вектором — 27 мая 2026 г. в 18:12:00.514
👩🔬 Когда ингредиент становится вектором Я повар, но еще и физтех. Мне одинаково интересно, почему соус расслаивается и почему большая языковая модель начинает нести уверенную чушь с лицом профессора. В прошлом году я даже записал видеокурс про LLM, RAG и ИИ-агентов, так что вся эта ИИ-кухня мне тоже хорошо знакома. Обычно эти две области живут в разных головах. Одни люди умеют читать статьи про эмбеддинги, другие — отличать нормальный бульон от мутной воды с лаврушкой. Поэтому когда мне присылают академическую работу на стыке машинного обучения и кулинарии, я читаю её дважды. Сначала как инженер: что за данные, какая постановка, где сильные и слабые места. Потом как повар: понимают ли авторы, что за продукт у них в руках, или просто гоняют ингредиенты по графу, как пельмешку по дну миски. Контекст такой. Глава Anthropic, одной из ведущих ИИ-компаний, в последние месяцы часто говорит примерно одну и ту же вещь: следующая волна автоматизации серьёзно заденет офисный труд. Отчёты, код, документы, аналитика, переписка — всё, что можно описать, разбить на шаги и поручить модели. С ремеслом сложнее. Там, где нужны руки, вкус, нос, телесная память и понимание материала — разговор другой. Повар останется поваром. Кто-то всё ещё должен попробовать соус и понять: соли не хватает, кислоты мало, жир торчит, текстура поплыла. ЧатГПТ не накормит людей. Но это не значит, что вокруг кухни ничего не происходит. Происходит, ещё как. Недавно вышла статья Epicure: Navigating the Emergent Geometry of Food Ingredient Embeddings. Авторы — Якуб Радзиковский и Жозеф Чен из конторы со смешным для русского уха названием KAIKAKU.AI. Работа интересная: не революция, но крепкий эксперимент с хорошими вопросами и спорными выводами. Давайте разбираться. О чём работа Авторы взяли 4,14 миллиона рецептов на семи языках и обучили три модели, которые превращают каждый ингредиент в числовой вектор размерности 300. Если совсем по-человечески: модель пытается разместить продукты в многомерном пространстве так, чтобы близкие по смыслу ингредиенты оказывались рядом. Только «смысл» здесь можно понимать по-разному. Если два продукта часто встречаются в одних и тех же рецептах — они близки по кулинарному контексту. Например, чеснок, соевый соус и имбирь будут тянуться друг к другу не потому, что у них одинаковая химия, а потому что азиаты постоянно кладут их в одну кастрюлю. А если продукты разделяют общие ароматические соединения — это уже близость другого типа. Тут речь не о традиции, а о сенсорном профиле: что может рифмоваться по запаху и вкусу. Дальше с этими векторами можно делать математику. Искать соседей, двигать ингредиенты в сторону определённой кухни: покажи рис, но в южноазиатском контексте. Смотреть, какие группы возникают сами: китайские ферментированные продукты, средиземноморская тема, индийские бобовые. В работе три модели: Cooc, Core и Chem. Разница между ними в том, на каком сигнале они учились. - Cooc видит только совместную встречаемость ингредиентов в рецептах. - Chem видит только химическое родство ароматов из FlavorDB. - Core смешивает оба сигнала. И вот это хорошая постановка. Архитектура одна, словарь один, граф один, меняется только тип сигнала. То есть можно смотреть не на кашу из факторов, а на конкретную разницу: что даёт рецептурный контекст, а что даёт химия. Что сделано хорошо Первое — чистая инженерная постановка. Когда три модели отличаются одним параметром, различия в результате можно честно обсуждать. В прикладном машинном обучении это встречается не так часто, как хотелось бы. Обычно там намешают всего, потом долго объясняют, почему «в целом стало лучше». Здесь ребята сделали аккуратнее. Второе — нормальная чистка словаря. Из примерно двухсот тысяч сырых строк, вытащенных из рецептов, авторы собрали словарь из 1790 канонических ингредиентов. И это не мелочь.

