ML Underhood
3.37K subscribers
206 photos
27 videos
101 links
Рассказываем, чем живёт ML в Яндексе, и обсуждаем важные новости индустрии.

Вопросы и предложения > @yandex_ml_brand
Download Telegram
Ещё немного атмосферных фото и видео

Команда Яндекса: встреча у стенда со статьёй.
Наша первая статья (PV-Tuning: Beyond Straight-Through Estimation for Extreme LLM Compression).
Аншлаг на докладе Fei-Fei Li (From Seeing to Doing: Ascending the Ladder of Visual Intelligence).
Масштабы и пространства конференции.
Новогодний робот на стенде Booster Robotics.

ML Underhood

#YaNeurIPS
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍6🔥5❤‍🔥3
Суцкевер на NeurIPS: хайлайты

Доклад Ильи Суцкевера на NeurIPS уже разобрали на цитаты. Больше всего обсуждают идеи о росте агентности, конце претрейна и закона масштабирования. Нам удалось послушать доклад на конференции — делимся моментами, которые показались важными.

Нерезиновые данные
Претрейна на данных из интернета скоро не будет — всё, что можно, уже собрали, а синтетика просто копирует старое. Будущее за уникальными проприетарными датасетами, а успех моделей будет зависеть не от их размера, а от качества данных, на которых они обучаются.

Конец scaling law
Больше не работает scaling law, который до сих пор точно предсказывал рост качества моделей при увеличении данных и вычислений. Но это не значит, что прогресс остановится: как с законом Мура, новые этапы развития технологий откроют другие способы оптимизации.

Будущее за агентами (умными)
Сейчас модели чаще всего повторяют то, что уже видели на этапе обучения. Агенты же смогут самостоятельно анализировать ситуацию и придумывать новые стратегии. Точного рецепта для создания таких агентов пока нет, но Илья уверен, что это вопрос времени.

Интуитивность и непредсказуемость
Будущее будет связано с самосознанием систем. Пока что моделям не хватает умения находить нестандартные решения, они опираются на заранее заложенные шаблоны. Когда ИИ научится рассуждать по-настоящему, системы станут интуитивнее и одновременно непредсказуемее.

Эволюция как подсказка для ИИ
Идея в том, что ИИ может развиваться по принципам природы: адаптироваться, «мутировать» и улучшаться. Илья провёл аналогию между развитием интеллекта у животных и масштабированием моделей. Генетические алгоритмы уже используют для оптимизации архитектур, в будущем модели смогут разрабатывать такие алгоритмы сами.

В конце доклада Илья сказал: “All kinds of stuff is possible” — уже распечатали и повесили этот слайд в офисе.

ML Underhood

#YaNeurIPS
12🔥7🆒4👏2👍1
Как модель перевода от Яндекса вошла в топ-5 на конкурсе в рамках конференции WMT

В последний год у Яндекса появилась хорошая LLM для перевода. А насколько хорошая мы решили проверить на соревнованиях, которые прошли в рамках девятой Конференции по машинному переводу (WMT). По итогам модель Яндекса заняла пятое место из 14.

Речь идёт о модели, которая сейчас доступна всем в видеопереводе. Почему именно она? Всё дело в условиях соревнований. Для перевода там давали документы с HTML-структурой, поэтому и модели-участники должны были поддерживать её. У части документов была озвучка, которой позволяли воспользоваться — то есть сперва распознать речь, а уже затем перевести её.

Организаторы стремились к тому, чтобы на конкурсные тексты невозможно было заранее обучить модель. Это значит, что использовали весьма редкие документы.

Специальную модель для WMT в Яндексе не делали, а заработанное пятое место связывают сразу с несколькими факторами. Во-первых, это переход от перевода отдельных предложений к переводу целых параграфов, что позволило учитывать контекст, а значит — улучшить итоговый результат.

Важно и то, что модель Яндекса училась на перефразах. Специалисты брали уже переведённое автоматикой предложение и просили изменить его так, чтобы перевод был больше похож на человеческий. На этих перефразах, в частности, и обучали модель. Кроме того, модель Яндекса умеет сохранять структуру оригинальных размеченных документов.

Вероятно, что модель Яндекса — самая маленькая из тех, кому удалось попасть в топ-5. Остальные конкурсанты представляют собой большие мультилингвальные LLM. Наша же ориентирована на пару языков русский и английский.

Победителя определяли с помощью оценки человеком. Однако для отбора конкурсантов использовали LLM-as-a-Judge-метрику — MetricX от Google.

ML Underhood
🔥20👍61
🎄Эхоподавление у Алисы — как оно устроено и как улучшилось за год

Представим ситуацию. Яндекс Станция играет музыку, пока вы готовите новогодний стол. Очередное блюдо отправляется в духовку, и вам нужно узнать, на какое время ставить таймер. Вы спокойно спрашиваете у Алисы, а она отвечает даже несмотря на шум, который сама производит. Но как это работает? Ведь колонка небольшая, динамики находятся рядом с микрофонами. К просьбе от человека примешивается музыка, а сам звук постоянно отражается как от стен помещения, так и внутри самой колонки. Как же Станция поняла ваш запрос?

Всё дело в эхоподавлении (Acoustic Echo Cancellation, AEC). Небольшая модель внутри станции разделяет входящие аудиосигналы на фрагменты, а затем отфильтровывает их с помощью фильтра Калмана. Если во фрагменте есть активационная фраза, то Алиса войдет в режим ожидания команды. Здесь помогает и шумоподавление. Оно нужно, чтобы «отрезать» от активационной фразы посторонние шумы — например, голоса родни или стенания Ипполита из «Иронии судьбы» из телевизора.

В 2024 году AEC улучшилась. О том, что добавилось, и сопутствующих трудностях нашему каналу рассказал разработчик из команды улучшения качества звука Антон Порфирьев.

Во-первых, у Алисы появились быстрые команды. Благодаря им не нужно обращаться к ассистенту по имени, чтобы переключить или выключить песню. Внедрение этой возможности потребовало перебора параметров AEС, ведь нужно было сделать так, чтобы Алиса реагировала не только на своё имя, но и на обособленные команды вроде «тише» или «следующая». Работа над быстрыми командами помогла сделать систему эхоподавления в целом более эффективной.

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

Ещё одно интересное нововведение — бета-датасет. Раньше у Яндекса был доступ только к «лабораторным» данным, записанным в специальной студии. Они не отражали реальную ситуацию полностью, ведь эхо и реверберация звука в лабораториях всегда примерно одни и те же. Новый датасет даёт модели возможность учиться на реальных случаях во всём их многообразии.

Датасет начали разрабатывать ещё в прошлом году, но внедрили в 2024-м. Этот набор собран из данных, полученных от бета-тестеров, у которых Станция логирует всё, что происходит за несколько секунд до фразы активации. Эти секунды отрезаются от записи и складываются с чистыми активациями, записанными в лабораторных условиях. Так получаются синтетические данные, которых легко можно получить очень много.

При этом здесь активационная фраза не так важна, ведь первостепенное значение играет именно эхо. Поэтому для разных записей бета-тестеров можно использовать одну и ту же запись активации из лаборатории. Разница в объёмах датасетов значительная: если лабораторный состоит из примерно 5 тысяч записей, то бета-датасет — из порядка 50 тысяч. На получившемся наборе и перебирали гиперпараметры модели, что дало значительный прирост качества.

Вот так работает эхоподавление в Яндекс Станции. Напоследок, поздравляем вас с наступающим Новым годом! А команда ML Underhood уходит на каникулы, чтобы в январе вернуться с новыми интересными историями из мира машинного обучения.

ML Underhood
27🔥13🥰5👍1🫡1
Яркие истории о разработках Яндекса в 2024 году

За минувший год ML’щики Яндекса сделали много интересного, и о многом мы писали в нашем канале. Перед вами небольшая ретроспектива — предлагаем вспомнить разработки и улучшения в продуктах за 2024 год.

Библиотека YaFSDP

Блиц-интервью с руководителем службы претрейна YandexGPT Михаилом Хрущевым. Узнали много интересного о библиотеке YaFSDP, которая ускоряет обучение больших языковых моделей.

Как устроен YandexART, YandexART 1.3 и генерация видео в Шедевруме

Сразу три поста о прекрасном — об искусстве. Первый — о мультимодальной модели для генерации изображений YandexART в целом. Второй — о новой версии нейросети, основанной на латентной диффузии, что позволяет здорово экономить вычислительные ресурсы. Третий пост вышел в сентябре — аккурат под костры рябин. В публикации речь идет об улучшенной генерации видео в Шедевруме. Рассказали, как она устроена и как обучали модель.

Как работает Нейро

Весной Яндекс запустил сервис для поиска ответов на вопросы, заданные на естественном языке — Нейро. Под капотом у него, разумеется, LLM. А как модель себя проявляет — читайте в этом кулинарном посте с сакраментальным вопросом: «А какие же щи без капусты?»

Алиса на казахском языке, локальный ASR в Яндекс Станции и эхоподавление

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

Второй пост — о создании локальной системы автоматического распознавания речи в Станции. Технические возможности колонки накладывают на разработчиков ограничения, с которыми приходится мириться. Об этом (и многом другом) и рассказали.

Третий пост об эхоподавлении (AEC). Рассказываем, как оно устроено, а заодно о новом бета-датасете, на котором инженеры перебирали гиперпараметры, чтобы добиться улучшения качества.

OmniCast в погоде

OmniCast — новая технология, принятая на вооружение Яндекс Погодой. Она позволяет точно предсказывать осадки и циклоны, используя данные как с профессиональных, так и с любительских метеостанций.

Улучшенный фотоперевод

Осенью мы обновили фотоперевод — теперь понимать зарубежные мемы, распечатанные на бумаге (бывает и такое), совсем просто. Новая модель лучше выделяет семантические блоки, а переведённый текст стал больше похож на оригинальный благодаря алгоритму затирания. О том, что и как ещё изменилось — рассказываем в посте.

ML Underhood
👍10🔥4💩4🥰31
NPU в Яндекс Станции

В Станции Миди, Дуо Макс и ТВ Станции устанавливают нейронные процессоры (NPU). О том, зачем они нужны и с какими трудностями специалисты компании столкнулись при их использовании, нашему каналу рассказал ML-разработчик Александр Ростов.

Вычислительные ресурсы Станции ограничены, а если поставить в такое небольшое устройство слишком мощный процессор, он будет сильно нагреваться. Решение — NPU, который берёт на себя расчёты, связанные с моделями. Это чип, созданный специально для работы с нейросетями и ускорения ML-задач.

Так, до внедрения нейронного процессора разработчикам приходилось делать маленькие модели голосовой активации или споттерные модели — до миллиона параметров. Благодаря NPU в Станции теперь есть модели и на десятки миллионов параметров. Это позволило существенно прибавить в качестве, а также снизить число ложных срабатываний и случаев, когда колонка не реагирует на запрос пользователя.

По сути, NPU выступает в роли верификатора, проверяя, не допустила ли ложного срабатывания модель, работающая на CPU. Кроме того, NPU позволяет уменьшить CPU-модель и тем самым снять часть нагрузки с центрального процессора. Из-за этого вся система стала работать быстрее.

NPU работает со свёрточными нейросетями. Они учатся на GPU, затем конвертируются для применения с помощью библиотеки TensorFlow Lite для работы на NPU. Чип полностью используется споттерными моделями, однако на Станции Дуо Макс он отвечает и за распознавание жестов.

При тренировке NPU-моделей возникла проблема: стандартные датасеты оказались непригодны для обучения хорошей NPU-модели. Это было связано как со спецификой работы верификатора, так и с увеличением размера модели. CPU-модель работает на всём потоке звука, и количество негативных примеров преобладает над активациями. В свою очередь, верификатор работает только на активациях CPU-модели, поэтому видит в основном позитивные примеры.

Для снижения числа случаев, когда колонка не реагирует на пользователя, понадобилось «ухудшить» CPU-модель, чтобы она активировалась чаще. Так как обучающие данные изначально состояли из активаций более хорошей CPU-модели, это вызвало появление ложных активаций, которых верификационная модель не видела при обучении.

Чтобы решить эти проблемы, потребовалось собрать новый датасет, а также увеличить его в несколько раз.

ML Underhood
14👍8🔥5
Личные итоги года инженеров Яндекса — Александр Шишеня

2025 год вступил в свои права, поэтому можно хорошенько осмыслить, что произошло в 2024-м. Мы попросили ML-специалистов из Яндекса рассказать, какими были для них минувшие 12 месяцев. Первый на очереди — ведущий разработчик службы компьютерного зрения Александр Шишеня. Он рассказал о своих профессиональных успехах и планах.

Александр упоминает статью Physics of Language Models.

А в канале CV Time вы сможете почитать о лучших статьях по мнению Александра. Там, кстати, ещё много интересного — подписывайтесь!

#YaMLpeople

ML Underhood
13🔥7👍2👀2
Как создаются трейлеры в Яндекс Музыке

Трейлеры дают возможность быстро познакомиться с новой музыкой, чтобы решить, стоит ли погружаться в неё дальше. Трейлеры в Яндекс Музыке есть у треков, альбомов, плейлистов и исполнителей. Фрагмент для трейлера каждого трека выбирается на основе предсказаний нейросети. И в ваших итогах 2024 года тоже играл трейлер из любимых треков. О том, как создаются такие трейлеры, нашему каналу рассказал старший разработчик из команды Музыки Николай Глазырин.

Чтобы сделать трейлер для трека, нужно совсем немного: определить его начало и конец 🙂 Мы хотим, чтобы в трейлер попал самый яркий и узнаваемый законченный фрагмент трека. А ещё — чтобы фрагменты разных композиций могли плавно перетекать друг в друга.

Мы обучили модель, которая умеет предсказывать в треке одновременно границы тактов, позиции битов (по-русски их обычно называют тактовыми долями) и наилучшие моменты для начала трейлера. Это небольшой encoder-only-трансформер на 0,5М параметров, который принимает на вход аудио с частотой дискретизации 22050 Гц, а на выходе с шагом в 1/75 секунды предсказывает три числа: вероятность найти в этот момент бит, границу такта и начало подходящего для трейлера фрагмента. Для обучения мы используем нашу нейромузыку, несколько открытых датасетов с границами тактов и тактовых долей, а также небольшой собственный датасет с размеченными вручную позициями начала трейлера.

При обучении модель осваивает одновременное решение этих трёх задач. Можно заметить, что вся разметка состоит из каких-то позиций внутри трека и привязана к его темпу. Поэтому очень помогает во время обучения аугментировать данные путем ускорения-замедления аудио, чтобы модель не привязывалась к каким-то более популярным темпам.

Выходы модели мы сглаживаем полосовыми фильтрами, чтобы избавиться от лишнего шума. Диапазон частот для каждого выхода подобран отдельно, чтобы соответствовать разумному. Например, темп музыки обычно находится в диапазоне 50–200 ударов в минуту, поэтому и тактовые доли должны встречаться с примерно такой же частотой. В сглаженных выходах уже очень просто определить локальные максимумы, которые и отмечают интересующие нас моменты времени.

Для начала трейлера мы выбираем момент с максимальным значением на соответствующем выходе модели. Если в треке есть вокал (что проверяется другой моделью), то выбираем такой момент, чтобы в трейлере тоже был вокал. Конец трейлера ставим ровно через 8 тактов после начала. А чтобы трейлеры можно было красиво смиксовать, добавляем ещё небольшой фрагмент трека (1 такт) прямо перед началом. На этом фрагменте во время воспроизведения громкость плавно поднимается, а на последнем такте — наоборот, плавно затухает, что даёт плавный переход между трейлерами разных треков.

Наша модель маленькая, и поэтому достаточно быстрая, и при необходимости может работать даже на CPU. Это важно, поскольку в нашем каталоге десятки миллионов треков и ещё десятки тысяч добавляются каждый день.

ML Underhood
👍157🔥3
Как в Яндексе заменили сложную разметку на LLM

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

Яндекс использует услуги тысяч асессоров, которые каждый день выполняют десятки тысяч заданий по оценке выдачи с точки зрения качества и релевантности. Это дорогой, долгий и сложный процесс.

Идея проекта в том, чтобы отдать рутинную работу по разметке сильной нейронке. При этом мы не отказываемся от асессоров, а переключаем их на разметку более важных и сложных кейсов, а также поручаем контролировать корректность работы модели.

Архитектура

Мы начали с экспериментов с базовым претрейном от YandexGPT. На вход подавали сжатую инструкцию, запрос и контент документа, на выходе получали решение о принадлежности к одной из категорий релевантности.

Однако промптинг даже SoTA-моделей пока не даёт нужного качества на нестандартных кейсах. Инструкция оказывается для них настолько сложной, что без дообучения ни одна модель не справляется с ней. Поэтому на старте получилось выжать только 55% качества асессоров.

Тогда мы сделали ряд улучшений:

— Взяли претрейн от Нейро, который лучше понимает поисковый домен и легче обучается решать поисковые задачи.
— Обучались не просто на метку класса, но и на подготовленные Chain-of-Thoughts, чтобы научить модель больше думать перед тем, как она даёт ответ.
— Добавили внешние данные — знания, необходимые для понимания контекста, которые нельзя извлечь из текста. Пример таких знаний — то, какие страницы в сети официальные, а какие — нет.
— Подавали данные для обучения в нужном порядке — от более мусорных к более качественным.

Так мы добились качества 102% относительно разметки асессоров, что уже было неплохо. Но оставался риск «сломать» Поиск — поэтому нужно было проверить модель на разных классах запросов, исключить риск деградации со временем и учесть другие нюансы.

Решение

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

— Если модель уверена в ответе, скорее всего, задача простая и не требует помощи асессоров. С этими кейсами она нередко справляется даже лучше людей. Таких задач оказалось около половины от общей массы.
— Если модель не до конца уверена в ответе, привлекаем её вместо одного из трёх асессоров. Размер этой зоны — около 30%.
— Когда модель говорит, что совсем не уверена в решении, отдаём задачу трём сильным асессорам — как это происходит в стандартном процессе. Таких задач порядка 20%.

Результаты и планы

С помощью этого решения мы получили 105% качества и 60% экономии денег.

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

Планируем продолжать наращивать качество и запускаться на новых разметках. Также в долгосрочных планах — свести процесс к промптингу, когда ты не обучаешь модель, а описываешь задачу текстом. Так мы сможем более гибко менять инструкции разметок без переобучения модели.

Мы рассчитываем, что решение поможет нам перекинуть рутину на нейронки, а людям давать более интересные и сложные задачи.

ML Underhood
41👍14🔥9🤡4
Личные итоги года инженеров Яндекса — Максим Спорышев

Середина февраля 2025-го — не помеха для подведения итогов 2024-го. Тем более, если они такие интересные, как сегодняшние. Ими поделился руководитель группы алайнмента модели планирования движения в Яндексе Максим Спорышев. Он рассказал о собственных успехах и о том, чем ему запомнился прошлый год.

#YaMLpeople

ML Underhood
10🔥6👍3