Figma сделала очень крутое применение LLM-кам
Очень люблю когда делают не самый простой функционал мол сделай сводку и поправь орфографию. В Фигме, судя по видео, сделали ещё очень много всяких элементов, которые ускоряют дизайн. Тут тебе и генерация изображений, и генерация блоков, стрелочек и дополнение листов. Я сначала долго думал как это всё реализовано через ЛЛМ, а потом подумал что в фигме наверно есть внутренний язык разметки, которому обучили трансформер и он стал генерировать все необходимые формочки и стрелочки.
Посмотрите видео на сайте! Ну или у меня за 50 звёздочек (100р).
https://www.figma.com/blog/introducing-figma-ai/
Demucs обучался на 800 песнях. А есть ещё проект от Deezer, который обучался на 25к песнях
https://github.com/deezer/spleeter
По качеству там вроде всё не слишком хорошо.
К счастью, все его данные являются достоянием публики и можно затюнить demucs v4 на этом.
https://sigsep.github.io/datasets/musdb.html#musdb18-compressed-stems
GitHub - yandexdataschool/speech_course: YSDA course in Speech Processing.
https://github.com/yandexdataschool/speech_course
Когда я был в школе и научился программировать, мне казалось что если просто уделить достаточно времени, то можно запрограммировать всё, что угодно. Типо, написать операционную систему, беспилотный вертолёт - нужно просто дать достаточно инструкций.
Со временем я понял, что на такие крупные проблемы может и жизни не хватить чтобы всё написать в одно лицо.
А ещё позже я понял что не всё можно запрограммировать. Какие вы можете придумать инструкции чтобы распознать кошку на фотографии? Да их просто не может существовать. И чем логичнее подходить к этому вопросу, тем хуже выйдет.
Тут нужен другой подход. Инструкции тут должны написать сами себя и с какой-то вероятностью мы найдём кошку на фото. И тут кажется что вот мы сейчас найдём достаточно данных и тоже всё обучим.
Я *подозреваю* что с AI тоже есть какие-то дырки, которые всем кажутся легко преодолимыми. Ну например, я ещё не видел одного агента, который был бы автономным и не требовал постоянного надзора человека за ним. Если дать gpt-4 интерпретатор и попросить запрограммировать что-то, что не гуглится - вроде детектора черно-белых фотографий. Она не справится даже если ей дать бесконечно много времени. (Я решил эту задачку CLIPом и разметкой на 100 изображений)
ChatGPT хорошо заменяет гугл и писателя и это очень крутой прогресс. Но думает она всё ещё очень ограниченно. И несмотря на тренд что она становится умнее, что-то фундаментальное должно сдвинуться сначала. Так что я бы относился со спокойствием к заявлениям о том что *AGI is about to break out и поработит нас*. Конечно же это крутая технология и многое меняет, но бесполезно говорить что она станет умнее/быстрее/выносливее нас - она безусловно, уже стала, но мы с вами живём примерно той же жизнью. Машины всегда были в чем-то лучше людей, но людьми они от этого не стали.
Короче, я думаю что вся история про злой AI порабощающий человечество - это спекуляция.
https://situational-awareness.ai/
Новый кодек от Меты
https://engineering.fb.com/2024/06/13/web/mlow-metas-low-bitrate-audio-codec/
Вышла Stable Diffusion 3!
https://huggingface.co/stabilityai/stable-diffusion-3-medium
RUAccent-1.5.7
1. Добавлена новая модель Tiny. Главное преимущество - размер модели 10 мегабайт! Это в 36 раз меньше, чем RUAccent-turbo.
2. Tiny-mode. Специальный режим, в котором загружается только часть словарей и моделей.
3. Исправлены мелкие баги
В режиме tiny ruAccent потребляет всего 200 мегабайт
Метрики
ruaccent_big_poetry -> 0.93 avg
ruaccent_turbo -> 0.95 avg
ruaccent_turbo2 -> 0.97 avg
ruaccent_tiny -> 0.94 avg
Код использования:
from ruaccent import RUAccent
accentizer = RUAccent()
accentizer.load(omograph_model_size='tiny', use_dictionary=True, tiny_mode=True)
text = 'на двери висит замок.'
print(accentizer.process_all(text))
Сергей Марков выпустил книгу!
Я общался с ним когда он её писал и помню что он перелопатил всю историю возникновения ИИ и вычислений. Буквально от царя гороха начал. И там столько занятных историй - умора. Пока я работал в сбердевайсах, он нас каждую неделю собирал в ресторане и рассказывал какую-нибудь занятную историю, которую подчерпал из архивов про разных исследователей.
Поразительно как развивались задачи, а с ними развивалась техника. Уверен, его книга именно об этом невероятном развитии событий. Сергей крутой дядька и я уверен что у него есть мноого чего рассказать про ИИ. Книга, кстати, бесплатная!
https://markoff.science/
torch.compile, the missing manual https://docs.google.com/document/d/1y5CRfMLdwEoF1nTk9q8qEu1mgMUuUtvhklPKJ2emLU8
Читать полностью…Скоро выступлю с докладом: "Генерация нот на основе аудио произвольного содержания". Начинаю популяризировать ML in music.
Могу тупить во время презентации) Но основные тезисы вот:
*️⃣Репрезентации от моделей предобученных для генерации музыки очень полезны. По крайней мере репрезентации от JukeBox.
*️⃣Берем репрезентации и подаем их на вход языковой модели (не обученной) и обучаем решать наши задачи из MIR.
*️⃣В будущем попробую токенезировать все возможные нотные обозначения и размечать набор данных собирая последовательность токенов. Потом на этих данных учить свои модели, в теории все будет круто и получится новая SOTA для генерации нот и др. MIR задач, хы.
Я конечно очень многое не сказал сейчас и на докладе не скажу. Формат ограничивает, так что задавайте вопросы тута, ну и... Мы еще увидимся на других конференциях/митапах! 🙂
До встречи в прямом эфире и оффлайн в 19:15! (не тыкайте на время, это ловушка)
Я недавно перешёл в генерацию изображений и вообще всегда тяготел немного больше к бизнесу, чем к инженерии. Так что блог будет немного эволюционировать по формату и по наполнению. Будет меньше ссылок на статьи из аудио, но будет больше постов о разном технологическом.
Вообще мне блог нужен для того чтобы я мог задать довольно домен-специфичные вопросы и получить на них ответ. Так что очень советую вместо канала зайти в группу @voice_stuff_chat - там те же самые посты, только с комментариями к ним. Можно сразу кинуть её в архив, но хотя бы сможете найти.
Второе объявление это нам в команду нужен человек, который умеет делать липсинк и делать его хорошо. Вилка доволно скромная, но присылайте своё резюме мне на @frappuccino_o
Тут какие-то ребята сделали эмуляцию RISC процессора на транформере. Это позволяет выполнять циклические инструкции.
https://arxiv.org/abs/2301.13196
У каждого в телеграме есть каналы ведь, да? Давайте такую акцию. Напишите мне на @frappuccino_o свой канал и 140 символов с его описанием. Если тематика похожа, я опубликую ваш канал у себя в подборке.
Взамен хочу чтобы вы написали у себя на канале пост про @voice_stuff_chat.
🔍 ЛЕКТОРИЙ ЯНДЕКСА 2024 ❣️
Уже две недели прошло с открытия Летних школ и Лектория Яндекса 2024 — эфир. И я по своей хорошей традиции собираю все лекции, которые уже были проведены. Всем приятного просмотра и погружения в большое количество лекций 🔥
ШМЯ 2024 (Школа менеджеров Яндекса) 💯
➖ Все в одной лодке: менеджер и команда (кругляй стол)
➖ Больше, чем фича-оунер: зачем мне думать про стратегию, если я управляю конкретной фичей
➖ Стратегическая прожарка Яндекс Лавки
ШАР 2024 (Школа аналитиков-разработчиков) ✨
➖ Что такое аналитика?
ШРИ 2024 (Школа разработчиков интерфейсов) 💎
➖ Node.js. Бэкенд для фронтендера
➖ Асинхронность
➖ Тулинг
➖ Типизация
➖ Типизация продвинутый
ШМР Android 2024 (Школа мобильной разработки) 💻
➖ Вводная по платформе
➖ View в Android
➖ Jetpack Compose
➖ Погружение в Kotlin и JVM
➖ Многопоточность
ШМР Flutter 2024 (Школа мобильной разработки) 💻
➖ Флаттер-мастерская: опыт команд Яндекса в разработке на Flutter
➖ Асинхронка
➖ Architecture. Часть 1: App Architecture Overview
➖ Advanced Widgets
➖ Architecture. Часть 2: Flutter, State Management, существующие решения
ШМР iOS 2024 (Школа мобильной разработки) 💻
➖ Вводная по платформе
➖ Advanced Swift programming Part 1
➖ Advanced Swift Programming Part 2
➖ Basic SwiftUI
➖ Advanced SwiftUI
ШБР 2024 (Школа бэкенд-разработки) 💻 💻 💻
➖ Вводная лекция про бэкенд
➖ Архитектура кода (Java)
➖ Архитектура кода (Python)
➖ Архитектура кода (C++)
➖ Вводная лекция про userver (С++)
➖ Как проектировать HTTP API
КИТ 2024 (Курсы информационных технологий) ⚙️
➖ Как всё организовано в Linux
➖ Инструменты Linux
#ШколаМенеджеровЯндекса #ЛекцииЯндекса
Давай наберем 30 🔥, если было полезно!
OutOfScope | OOS
Goldfish Loss: заставим LLM запоминать смысл, а не текст
Языковые модели часто вызубривают обучающие примеры, а это очень неприятно, особенно когда в датасете есть приватные данные, диалоги реальных пользователей или контент с копирайтом. Да и вообще, хочется, чтобы LLM запомнила именно смысл обучающих данных, а не заучивала их наизусть.
Оказалось, что одним из самых эффективных способов борьбы с таким поведением — это простой дропаут лосса, то есть маскирование ошибки для случайного сабсета токенов в тексте (~25%). Таким образом модель не научится дословно воспроизводить то, что видит. Даже после 10 эпох дообучения на Гарри Поттере "плагиат" в генерациях модели остаётся на уровне нуля. А главное, что такая регуляризация не ухудшает финальные метрики, в том числе на претрейне.
Статья, GitHub
Numpy 2.0 👏
Судя по релизу, улучшения чисто эстетические и более заметные для тех, кто разрабатывает numpy, чем для пользователей.
Как я понял, главная цель релиза была навести чистоту в namespace. Поэтому в удалённом там почистили много ссылок на типы. Теперь есть только одно название у каждого типа. И np.cast не работает - но он уже был deprecated. И ещё где-то 5 функций, которые я никогда не использовал. Ещё почистили импорты, поубирали from ... import * для внутренних компонентов. Так что теперь в видимых модулях должна наступить чистота.
Несмотря на такое обширное удаление, всё должно быть очень совместимым. Я не нашёл ничего часто используемого. Так что релиз должен пройти на уровне PyTorch 2.0, где никому не пришлось переписывать код под новую версию.
https://numpy.org/devdocs/release/2.0.0-notes.html
VALL-E 2: Neural Codec Language Models are Human Parity Zero-Shot Text to Speech Synthesizers
Есть два типа статей :
1. A are B
2. C is all you need
Говорят, если называть статью не вторично, то у авторов мгновенно отваливается жопа.
https://arxiv.org/pdf/2406.05370
XTTS: a Massively Multilingual Zero-Shot Text-to-Speech Model
Эрен Гёлге и Эдрессон Казанова наконец-то написали статью по XTTS. Писали они её с декабря где-то, но потом Coqui-AI разорилась и ребята дописывали статью уже в новых местах. Эдрессон в Нвидии, а Эрен и Джулиан дописывали из Cantina.ai.
XTTS - это очень сильная работа. В ТТС довольно тяжело передать эмоции, голос и поддерживать много языков. Эта система умеет всё это (со звёздочкой, ладно). XTTS обучена на целой куче разных языков, что является её силой и её слабостью одновременно.
Вообще по секрету вам скажу что главная слабость XTTS - это её датасет. Хорошие данные собирать дорого и долго, так ещё и модель с них обучать выходит дороже. XTTS выпускали уже когда все ресурсы заканчивались поэтому там данные имеют много ошибок. Если доучить на своих данных, то звучать она будет очень хорошо.
https://arxiv.org/abs/2406.04904
Там вышла новая серия моего любимого сериала. На этот раз Карпатый предлагает воспроизвести GPT-2. Длится 4 часа 🤯
https://youtu.be/l8pRSuU81PU?si=wjlOUR0d-KSfQHgT
📰 StabilityAI - Introducing Stable Audio Open - An Open Source Model for Audio Samples and Sound Design
Stable Audio Open is an open source model optimised for generating short audio samples, sound effects and production elements using text prompts.
https://stability.ai/news/introducing-stable-audio-open
PFlow на Encodec.
Список изменений:
Use Encodec instead of MelSpectrogram.
Use character-base input instead of phoneme, and GT duration as a target of duration predictor instead of MAS.
Use AdaLN-Zero from DiT for speaker-conditioned text encoder instead of concat and self-attention.
Use transformer as Flow Matching decoder instead of Wavenet blocks with AdaLN-Single timestep conditioning from PixArt-α
Use attention pooling instead of mean pooling to get fixed-size speaker embedding as P-Flow used in their ablation study.
Use conv-feedforward(FFT Block from Fastspeech) and GeGLU
Use Alibi + Convolution positional encoding in transformer, from data2vec 2.0 and voicebox
Use null cond for CFG sampling instead of mean-pooled hidden vectors.
https://github.com/seastar105/pflow-encodec
Как не разориться и сделать хороший синтез речи - Data Fest 1 июня секция Speech
Рассказываю свой рецепт того как не потратить слишком много денег на синтез речи. Почему вообще в синтез речи кто-то готов вкладывать крупные деньги? Где там сходится экономика и как её оптимизирую обычно я и где её сможете применить вы. Нанимать джунов или сеньоров, использовать SOTA или древнючий такотрон 2, покупать свои видюхи или арендовать - всё это будет в моём докладе.
Таймкоды, чтобы вам было понятно что там:
01:25 Как работает синтез речи
02:00 Основные проблемы синтеза речи
03:24 Экономика синтеза речи
03:26 Прогресс стоимости и сложности
06:52 Стоимость обучения SOTA модели для TTS
07:48 Стоимость обучения Top tier модели для синтеза речи в России
08:20 Почему кто-то платит столько за синтез речи?
10:27 Различия в разных задачах
11:27 Ключ к успеху
11:40 Если нужна быстрая система
13:28 Нужен конкретный спикер
15:50 Нужен разговорный стиль речи
17:13 Нужно успеть за две недели
18:36 Использование новых систем
20:19 Недорогие способы улучшения синтеза
21:16 Оптимизация расходов
21:17 Сокращение времени на разработку
24:05 Оптимизация вычислительных ресурсов
25:16 Стажёры или специалисты в команде?
26:14 Заключение
Ссылка на видео:
https://youtu.be/YjFLSSuSX5U