ML Underhood

Description
Рассказываем, чем живёт ML в Яндексе, и обсуждаем важные новости индустрии.

Вопросы и предложения > @sofiivanova
Advertising
We recommend to visit
Roxman
Roxman
13,295,527 @roxman

Sharing my thoughts, discussing my projects, and traveling the world.

Contact: @borz

Last updated 6 days, 5 hours ago

HAYZON
HAYZON
6,745,623 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
⭐️ 𝐎𝐧𝐞 𝐋𝐨𝐯𝐞: @major
🍀 𝐌𝐲 𝐜𝐡𝐚𝐧𝐧𝐞𝐥𝐬: @kriptofo @tonfo
@geekstonmedia

Last updated 21 hours ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 month, 3 weeks ago

2 months, 1 week ago
2 months, 3 weeks ago

Видеоигры из фото и другие крутые доклады с ICML 2024

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

Туториал Physics of Language Models

Прорывной доклад первых двух дней о построении AGI на LLM. Авторы обнаружили два уровня рассуждения (reasoning) для моделей. На первом LLM могут выучивать графы причинно-следственных связей для сложных задач и делать топологическую сортировку для понимания порядка вычисления в этом графе. А на втором модель заранее просчитывает все промежуточные данные для построения ответа.

Ошибки случаются, но, благодаря linear probe, LLM с вероятностью 99% сама предсказывает, где промахнется. Исправить, правда, не сможет, поэтому рекомендуется добавлять в обучающую выборку CoT-примеры с ошибками и их исправлением.

Genie: Generative Interactive Environments

Доклад от DeepMind, сотрудники которого обучили две модели на датасете из видеоигр — в основном, 2D-платформерах. Одна модель кодирует возможные действия игрока в латентное дискретное пространство, а другая — предсказывает следующие фреймы по предыдущим. В итоге Genie способна генерировать видеоигровые уровни из текстовых промтов, рисунков и фотографий. Статья получила награду Best Paper Award.

Video-LaVIT: Unified Video-Language Pre-training with Decoupled Visual-Motional Tokenization

Доклад об авторегрессионной модели, способной предсказывать текстовые токены и видео. Она обучена на next-token prediction с диффузионной моделью для генерации кадров в пиксельном пространстве и motion-векторы. С помощью DDIM-инверсии получают «шумную» версию последнего кадра и сопоставляют ее с предыдущими. Получившаяся модель умеет генерировать весьма долгие видео по промту или первому кадру.

ML Underhood

3 months ago

?? Алиса на казахском языке!

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

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

Работа с заимствованиями

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

Агглютинация

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

Агглютинация распространяется не только на казахские слова, но и на заимствования. Например, «компьютерлеріңізде» значит «на ваших компьютерах». Мы искали в словах интернациональные корни и пытались отделить их от исконно казахских аффиксов, потому что они произносятся по разным правилам. Если заимствованные корни были, то их транскрипция записывалась русскими фонемами, а транскрипция казахских суффиксов — казахскими.

Нормализация

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

Как текст превращается в речь

Когда предварительные этапы завершены и текст переведён в фонемы, специальная модель превращает его в спектрограмму — визуальное представление звука. Потом в дело вступает ещё одна модель, которая преобразует спектрограмму в wav-файл. Последние два этапа одинаковы для всех языков.

Вот такой получился тернистый лингвистический путь! Делитесь мыслями в комментариях :)

ML Underhood

Reddit

From the languagelearning community on Reddit: An example of Turkish language's agglutination (xpost /r/turkey)

Explore this post and more from the languagelearning community

***??*** **Алиса на казахском языке**!
3 months, 3 weeks ago

Как мы работали над YaFSDP

Недавно запустилась библиотека YaFDP, которая ускоряет обучение больших языковых моделей. Подробнее о ней можно почитать в статье на Хабре. А сегодня руководитель группы претрейна YandexGPT Михаил Хрущев ответил на несколько наших вопросов о том, как создавалась библиотека.

Когда и как началась работа над YaFSDP?

За 2 недели до Нового года в 2023-м. К концу года стало ясно, что некоторые наши оптимизации не дают ускорения, которого мы ожидали. Я пошёл искать причины такого и нашел праздничную «ёлочку».

Ориентировались ли на существующие решения? Были ли какие-то референсы, может?

Сам алгоритм предложили в статье ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. Его реализация была также представлена в фреймворке DeepSpeed. К сожалению, она не очень масштабировалась и содержала много багов. Другая реализация, FSDP, сильно лучше, но и там есть проблемы с аллокацией памяти и коммуникациями. Поэтому я начал разрабатывать свою реализацию, к которой впоследствии подключились и другие ребята из моей команды.

Какие трудности возникали во время работы?

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

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

На этом на сегодня все. Рассказывайте о своём опыте работы с LLM в комментариях!

ML Underhood

3 months, 3 weeks ago
ML Underhood
3 months, 3 weeks ago
**Вентиляторные шрапнели в суперкомпьютерах**

Вентиляторные шрапнели в суперкомпьютерах

В дата-центрах Яндекса есть собственная система стоек, где на одной плате установлено сразу несколько видеокарт, к которым подключены сервера. На этой технологии работает, например, суперкомпьютер «Галушкин».

Для охлаждения карточек используются вентиляторы на 15 тысяч оборотов в минуту. В течение долгого времени эти вентиляторы работали стабильно и без перебоев. Но спустя два года один из вентиляторов во Владимире буквально разлетелся на куски во время работы.

Мы не придали этому большого значения. Вентиляторов много, они долго служили верой и правдой, поэтому единичный случай нас не насторожил. Но позже вентиляторы начали выходить из строя один за другим — абсолютно случайным образом. Предугадать уничтожение очередного устройства было невозможно.

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

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

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

Единственным решением стала замена вентиляторов. А так как выяснить наверняка, какие устройства подверглись деградации и предугадать разрушение невозможно, менять пришлось все.

Вот такая вот необычная и неожиданная поломка. А с какими неординарными неисправностями сталкивались вы? Расскажите в комментариях!

ML Underhood

4 months, 2 weeks ago

Лучшие статьи с конференции ICLR 2024Завершилась ICLR 2024, на которой представили немало интересных статей. Мы выбрали самые любопытные и полезные из них и составили вот такой список (не ранжированный).

Making LLaMA SEE and Draw with SEED Tokenizer и Emu: Generative Pretraining in MultimodalityВместо привычного vlm-пайплайна «изображение+текст —> текст», авторы обеих статей предлагают пайплайн «изображение+текст —> изображение+текст». Это интуитивное решение, которое даёт хороший результат. В идеале модель умеет всё то же, что и LLM, но способна также принимать и генерировать картинки.

Is ImageNet worth 1 video? Learning strong image encoders from 1 long unlabelled videoОбычно мы обучаем «картиночные» модели на большом количестве изображений, но иногда об объекте нельзя (или сложно) многое сказать по фото. Зато можно по видео! В статье рассматривают self-supervised претрейн на видео и показывают, что претрейн на одном полуторачасовом видео даёт картиночные эмбеддинги, сравнимые по качеству с обучением на всем ImageNet. Это очень интересно — особенно с учётом того, как много видео-контента уже существует и создается каждый день. Люди воспринимают все вокруг как видеопоток, а не отдельные кадры — и идея пробовать такое обучение кажется очень логичной.

A Newborn Embodied Turing Test for Comparing Object Segmentation Across Animals and MachinesВ статье создают новый бенчмарк для нейросетевых моделей, позволяющий сравнить результаты этих моделей с результатами новорожденных цыплят. Такие материалы позволяют лучше понять как устроены и развиваются когнитивные способности животных и людей, что, в свою очередь, тоже может служить вдохновением для развития нейросетей.

Making Pre-trained Language Models Great on Tabular PredictionАвторы используют LLM для учёта сигнала от текстовых названий признаков. Для небольших датасетов (когда сами данные недостаточно велики, чтобы избежать переобучения) это порой приводит к хорошим результатам.

Leveraging Uncertainty Estimates To Improve Classifier PerformanceСтатья об использовании оценки неопределённости для более точного предсказания в задачах несбалансированной бинарной классификации. Оценку неопеределённости получают с помощью model-agnostic фреймворка Posterior Networks, но и MC Dropout работает лишь немногим хуже.

Adaptive Retrieval and Scalable Indexing for k-NN Search with Cross-EncodersТекст о проблеме нахождения топа объекта по релевантности для сценариев, когда функция релевантности задана сложно устроенной функцией (например, глубокой нейросетью). Подход авторов позволяет существенно ускорить нахождение топа без радикальной просадки в качестве по сравнению с brute force-решениями.

А какие статьи понравились вам? Рассказывайте в комментариях!

ML Underhood

5 months, 1 week ago
**Как устроена YandexART 1.3**

Как устроена YandexART 1.3

YandexART 1.3 — наша новая версия нейросети для генерации изображений. По всем проведённым нами замерам она создаёт более качественные картинки и лучше понимает запросы — и всё благодаря переходу на технологию латентной диффузии.

Что «под капотом»

Прежде архитектура YandexART была основана на каскадной диффузии — об этой технологии мы уже рассказывали в другом посте. Если коротко, то суть её заключается в улучшении изображения по мере увеличения разрешения.

Теперь же YandexART работает на латентной диффузии. Вместо того, чтобы шаг за шагом улучшать изображение, нейросеть создаёт его в виде векторного представления, а затем за одно действие генерирует картинку в большом разрешении.

Это позволяет здорово экономить ресурсы. А результаты, как показывают SBS-замеры (Side-by-Side), получаются в 62% случаев лучше, чем у предыдущей версии YandexART.

На чём обучали нейросеть

Новая технология требует нового датасета. Если YandexART 1.2 обучали на 330 миллионах пар картинка-текст, то в версии 1.3 набор данных увеличился до более чем 850 миллионов пар.

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

Вот так и устроена YandexART 1.3. Рассказывайте в комментариях о своих впечатлениях от новой версии нейросети!

ML Underhood

5 months, 2 weeks ago
**Нейро — как он работает**Недавно Яндекс …

Нейро — как он работаетНедавно Яндекс запустил Нейро — сервис для поиска ответов на вопросы, заданные на естественном языке. А в основе всего лежат LLM. Кратко расскажем, как устроен сервис и в чём его особенности.

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

А вот, что происходит, если вы обратитесь за помощью к Нейро. Скорее всего, вопрос, который вы ему зададите, будет звучать «Как приготовить щи?». Рефразер переформулирует его в поисковый запрос с помощью LLM и получит 20 наиболее релевантных источников. Из них Нейро выберет 5 самых и на их основе YandexGPT 3 составит подробный ответ на естественном языке. Но дальше становится только интереснее.

Скажем, вы обнаружили, что дома нет капусты. В таком случае Нейро достаточно написать что-то вроде «а без капусты?» — и сервис тут же предложит подходящий вариант. Не нужно заново писать новый вопрос, ведь Нейро хранит контекст диалога с пользователем, что дает возможность задавать уточняющие вопросы. Можно даже попросить показать рецепт щей без воды.

В Нейро работают несколько моделей, обученных на разных датасетах, чтобы давать наиболее четкие и релевантные ответы. Узнать больше о том, как устроен сервис и как его разрабатывали — со всеми техническими подробностями — вы можете из статьи на Хабре. А здесь в комментариях поделитесь своими впечатлениями от Нейро!

ML Underhood

6 months, 1 week ago
ML Underhood
We recommend to visit
Roxman
Roxman
13,295,527 @roxman

Sharing my thoughts, discussing my projects, and traveling the world.

Contact: @borz

Last updated 6 days, 5 hours ago

HAYZON
HAYZON
6,745,623 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
⭐️ 𝐎𝐧𝐞 𝐋𝐨𝐯𝐞: @major
🍀 𝐌𝐲 𝐜𝐡𝐚𝐧𝐧𝐞𝐥𝐬: @kriptofo @tonfo
@geekstonmedia

Last updated 21 hours ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 month, 3 weeks ago