Sinекура
3.34K subscribers
911 photos
15 videos
260 links
Канал Сергея Николенко обо всём, но в основном об AI.

Сайт с выступлениями, лекциями и публикациями: https://sergeynikolenko.ru/
Download Telegram
На семинаре лаборатории Маркова продолжаем (но — ура! — точно не заканчиваем) серию докладов про state-space models и Mamba. Второй доклад будет конкретно про Mamba, с техническими деталями и во всех подробностях; думаю, это будет полезно даже безотносительно архитектуры как таковой.

Кстати, в deep learning частенько бывает так, что интересная математически сложная идея после пристального взгляда на архитектуру в реальности превращается в небольшой дополнительный трюк, до которого авторы скорее всего безо всякой математики дошли, а потом уже объяснили концептуально. Относится ли Mamba к этой категории? Узнаем об этом в среду.

Погружение в детали реализации Mamba
Ссылка на трансляцию (среда 22 октября, 14:00)

Владислав Ушаков (Яндекс)
Максим Романов (Лаборатория Маркова, МКН СПбГУ
)

Мы продолжаем детальный разбор SSM-based моделей. В начале семинара разберём архитектуру Mamba — что такое «селективность», как устроено обновление состояния, затем пройдёмся по минимальным имплементациям S4 и Mamba. А потом погрузимся в детали эффективной реализации по следующему плану.

1. Краткое введение в GPU-вычисления: архитектура GPU, модель массового параллелизма.

2. Постановка задачи префиксной суммы (Scan) и эволюция алгоритмов её решения на GPU: от Sequential Scan до Work-Efficient Parallel Scan.

3. Разберём, где и как Parallel Scan применяется в Mamba, а также какие ещё GPU-оптимизации используются при обучении.

#markovlab #seminar #spsu
🔥183👍3
Коллеги, хочу попросить у вас технической помощи, не понимаю что делать.

Но сначала представлю вторую лекцию курса "Технологии и фронтиры науки о данных" в ЮФУ. Напомню, что это обзорные лекции для первокурсников, так что в них нет никакой сложной математики и их можно слушать всем желающим:

ЮФУ — 2025.10.16 — Задачи машинного обучения и ранняя история AI
(слайды и доска на странице курса)

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

А теперь проблема. Как только я выложил первую лекцию на youtube, под ней сразу стали появляться комментарии о том, какой там ужасный звук и куда мне следовало бы засунуть свой микрофон.) Хамские комментарии я порицаю (и удаляю), но проблема действительно была, и была внезапно со стороны MTS Link, в котором проходят лекции в ЮФУ.

MTS Link вдруг решил поуправлять моим микрофоном и самостоятельно понизить ему громкость. На первой лекции я пытался с этим воевать, не знал что делать и просто возвращал микрофон обратно. Но, конечно, не справился с этим на 100%, и в результате звук в первой лекции и правда плохой, неровный: то тише, то громче. Я попытался его вытянуть постобработкой, но вышло так себе.

Потом я, конечно, погуглил, как с этим справиться, нагуглил какую-то галочку в опциях микрофона в Windows ("Allow applications to take exclusive control of this device"), снял её и пришёл на вторую лекцию. Но оказалось, что MTS Link на эту галочку наплевать, и он продолжил управлять моим микрофоном; тогда я просто расслабился и позволил ему понизить мне громкость микрофона и оставить на едином уровне (по подсчётам OBS на уровне -15-20 дБ). Звук стал ровнее, шумов я никаких во второй лекции тоже не слышу, но к ней опять пишут комментарии, что слышен клиппинг; у меня уши не особо чуткие, но вероятно, с такой громкостью шумодав действительно обрезает часть голоса.

Что делать? Проще всего было бы, конечно, запретить MTS Link трогать мой микрофон, но я не могу найти, как это сделать...

#sfu #lectures #dsfrontiers
😢229
Думаю, вам срочно нужен кот.

Это не значит, что у меня закончился контент, но сколько ж можно сплошь лекции да лекции подряд. Сегодня убираем из контента первую "н".

#lifestyle
❤‍🔥9034😍16👍9🔥5
Сегодня на семинаре была довольно мощная лекция, коллеги рассказали много интересного про параллельные вычисления, то бишь про то, что на всех этих пресловутых GPU происходит.

Дальше будет продолжение, оно же, видимо, окончание.

#markovlab #seminar #spsu
21🔥14
В курсе "Основы байесовского вывода" сегодня лекция про один развёрнутый пример, на мой взгляд, интересный и изрядно неожиданный:

СПбГУ — 2025.09.23 — Байесовский вывод для гауссиана
(слайды, доска и код на странице курса)

Мы уже много раз говорили в курсе о гауссианах, в основном в контексте линейной регрессии. И всё, что мы обсуждали, сводилось к тому, что что с гауссианами ни делай, получаются опять гауссианы. Можно их перемножать, маргинализовать, делать свёртку двух гауссианов, всё равно сумма многочленов второй степени останется многочленом второй степени. Байесовский вывод в линейной регрессии приводит к тому, что наша уверенность в (точечном) ответе уменьшается; но это уменьшение — это увеличение дисперсии в предсказательном распределении, а оно всё равно остаётся гауссианом.

И вот в этом примере оказывается, что не остаётся! Для этого, конечно, пришлось к гауссиану подмешать гамма-распределение как априорное для параметра τ (precision, величина, обратная дисперсии), но как иначе, это же как минимум положительная величина. Выясняется, что если маргинализовать апостериорное распределение по τ, то есть проинтегрировать по τ и оставить только μ, то его апостериорное распределение уже вовсе не будет гауссианом, а будет... распределением Стьюдента! Это, по-моему, очень интересный результат: не просто дисперсия увеличивается при байесовском выводе, а буквально меняется форма распределения; затухающий экспоненциально гауссиан превращается в распределение с тяжёлыми, полиномиальными хвостами. И это очень легко проверить на практике, мы это в численном примере на лекции увидели.

Кстати, здесь есть интересная историческая деталь: распределение Стьюдента начал рассматривать вовсе не Уильям Госсет, а совсем другие люди лет на двадцать раньше. Ещё в 1870-х годах немецкие математики Фридрих Хельмерт и Якоб Люрот занимались байесовским выводом и получили распределение Стьюдента именно как предсказательное распределение для гауссиана. Везде байесианисты!)

#spsu #lectures #bayes2025
18👍1
Пятничный пост сегодня о небольшой, но необычной и интересной игре; как всегда, полностью по ссылке:

OneShot

OneShot — интересное произведение искусства. Одна из тех игр, которые не хочется подробно обсуждать, потому что хочется, чтобы вы играли в неё, ничего не зная заранее. Но я всё-таки немножечко попробую.

Во-первых, это нарративная история. Квест в самом классическом смысле этого слова: суть геймплея OneShot состоит в том, чтобы решать загадки и продвигаться по сюжету, путешествуя из одной локации в другую. Загадки иногда (далеко не всегда!) решаются буквально применением собранных предметов в нужные места. Но это, конечно, далеко не самое интересное, что есть в этой игре.

Главный герой по имени Нико (кажется, в игре нигде не сказано определённо, мальчик это или девочка) носит кошачьи ушки и смотрит на мир кошачьими глазками, но регулярно называет себя “обычным ребёнком” и отказывается самоидентифицироваться как кот. Завязка сюжета состоит в том, что Нико просыпается в незнакомой комнате и вскоре узнаёт, что ему нужно спасти мир, который потерял свет и в результате довольно быстро разрушается. Чтобы это сделать, нужно принести на самую высокую башню Солнце, которое представляет собой обычную электрическую лампочку. Скорее всего, вы уже зеваете и ждёте стандартного приключения с некоторой долей самоиронии вроде лампочки. Но подождите, you ain’t heard nothing yet.

Графически это 2D adventure, сделанная на RPG Maker, так что у самого геймплея есть узнаваемый графический стиль, который ничем особенным от других игр на RPG Maker не отличается.

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

А теперь главное, что поднимает эту игру в моих глазах на два уровня выше. Это будет даже не то чтобы спойлер, я просто расскажу вам эпизод, который происходит в самом начале игры. Буквально первый NPC, которого вы встречаете в игре — это робот, предназначенный для того, чтобы приветствовать мессию и ввести его в курс дела. Да, мессия — это Нико, он несёт в мир солнце, и все, кого он встречает, тут же узнают мессию по лампочке.

Робот сначала рассказывает об этом удивлённому Нико. Потом Нико расспрашивает робота о том, как в этом мире всё устроено. В частности, Нико удивляется тому, что писал на экране компьютер, который был в самой первой комнате.

И робот говорит, что это было предназначено для… человека, сидящего за компьютером, называя того по юзернейму. Более того, оказывается, что Нико, будучи мессией, может напрямую общаться с этим человеком; нужно только закрыть глаза и сосредоточиться.

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

Диалоги и вообще тексты в игре, кстати, первоклассные. Иногда — нечасто, но иногда! — проступает то, что Нико всего лишь ребёнок, который совершенно не готов(а) спасать какие-то чужие миры, и это действительно берёт за душу.

Слом четвёртой стены — это то ощущение, которое я очень люблю в играх; от OneShot остаётся то же послевкусие, как от Stanley Parable или Doki Doki Literature Club, только в другой форме, да ещё и с интересными не всегда тривиальными загадками. Попробуйте сами!

#games #tgif
21💘1
В этот раз в курсе "Глубокое обучение" была очень важная тема:

СПбГУ — 2025.10.23 — Глубокие порождающие модели и идея GAN
(слайды и доска на странице курса)

С одной стороны, поговорили о том, что такое вообще порождающие модели. Хотя можно это по-разному объяснять, трудно определить это более конкретно, чем то, что у модели "большой" выход, а не "маленький" (число, вектор вероятностей классов). Мы поговорили о двойственности между порождающими и дискриминирующими моделями (где наивный Байес соответствует логистической регрессии) и о таксономии глубоких порождающих моделей, т.е. порождающих моделей, в которых где-то есть нейросети. Обсудил все те части этой таксономии, о которых не буду рассказывать подробно, а также привёл примеры ранних глубоких авторегрессивных моделей (PixelCNN, WaveNet).

А после всего этого разговора начали обсуждать GAN'ы, то бишь порождающие состязательные сети. Я рассказал общую идею и поставил задачу минимакса, но сильно дальше не продвинулся; разные функции ошибки и вообще прогресс в GAN'ах обсудим в следующий раз.

#spsu #lectures #dl2025
🔥86👍1
Серия докладов про Mamba на семинаре лаборатории Маркова будет продолжаться рассказом про Mamba 2. Смысл этой работы в том, что SSM и механизм внимания — это две стороны одной медали, и можно их объединить так, чтобы сделать гибридную архитектуру ещё более эффективной.

Mamba-2: SSM и механизм внимания
Ссылка на трансляцию (среда 29 октября, 14:00)

Андрей Лаэтин
Лаборатория Маркова, МКН СПбГУ


Мы продолжаем разбор моделей на основе State Space Models и переходим к Mamba-2 — архитектуре, выросшей из идеи Structured State-Space Duality (SSD), которая показывает, что SSM и механизм внимания можно рассматривать как два взгляда на одну и ту же структуру. Этот подход объединяет сильные стороны обоих направлений: эффективность и линейную масштабируемость SSM с выразительностью и гибкостью механизмов внимания.

Мы разберём, как устроен новый слой Mamba-2, чем он отличается от первой версии и как через SSD удаётся свести вычисления к матричным операциям, хорошо оптимизированным под GPU. Именно благодаря этому Mamba-2 работает в несколько раз быстрее Mamba-1 и остаётся конкурентоспособной с трансформерами по качеству на задачах языкового моделирования.

#markovlab #seminar #spsu
🔥143🥰2
А вот пока видео семинара, прошедшего в прошлую среду:

Владислав Ушаков, Максим Романов
Погружение в детали реализации Mamba
(Слайды на странице семинара)

Для доски в этот раз принёс отдельную камеру, а потом её подмонтировал, так что надеюсь, что всё видно хорошо.

А в целом это был доклад во многом вообще о том, как устроены вычисления на GPU. Всем известно, что GPU — это много (тысячи) относительно слабых процессоров, а CPU — мало (десяток) относительно мощных. Но это же значит, что алгоритмы для вычислений на GPU должны быть немного другие, чтобы они смогли использовать этот высокий уровень параллелизма.

Так что мне кажется, что доклад может быть интересен и сам по себе, не только как вторая часть рассказа про современные state space models.

#markovlab #seminar #spsu
🔥163👍1
В популярном, рассчитанном на начинающих курсе "Технологии и фронтиры науки о данных" в ЮФУ прошла третья лекция. Проблемы со звуком, кажется, решились (спасибо комментаторам!), теперь всё звучит так же, как во всех других моих курсах:

ЮФУ — 2025.10.23 — GOFAI, экспертные системы, представление знаний
(слайды и доска на странице курса)

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

Начал с Logic Theorist, внезапно поговорил о том, что такое вообще матлогика и поиск вывода в формальных системах (чуть-чуть), потом Shakey the Robot (это когда нескольким аспирантам дали на лето задание решить компьютерное зрение), ELIZA (которая в 2025 году всё ещё была бейзлайном в статье про тест Тьюринга), SHRDLU и, наконец, машинный перевод в пятидесятые-шестидесятые годы, неизбежный провал которого стал одной из главных причин зимы искусственного интеллекта.

А в семидесятые годы был расцвет экспертных систем: MYCIN и ему подобные жонглировали факторами уверенности (certainty factors), Лотфи Заде разрабатывал нечёткую логику, а потом всё-таки Демпстер и Шейфер сказали, что все эти ваши факторы — это переизобретение обычных вероятностей; о вероятностях, впрочем, будем говорить в следующий раз.

Последний раздел — о представлении знаний. Здесь не знаю, насколько убедительно у меня получилось об этом рассказать, но в любом случае интересно проследить, что представление знаний об окружающем мире эволюционировало от сложного к простому. Были всякие разные идеи, от Квиллиана до Джона Совы, но реально всех победили и дожили до наших дней графы знаний (knowledge graphs), которые во многом являются самым простым из этих формализмов. Графы знаний, на мой взгляд, и прямо сейчас, в 2025 году, недооценённая штука; кстати, в контексте графов знаний я уже смог привести пример из последнего месяца, рассказав о статье, вышедшей 10 октября.

Дальше пойдём в сторону теории вероятностей; постараюсь всё-таки рассказать о главной сути, фундаменте машинного обучения — насколько смогу.

#sfu #lectures #dsfrontiers
13👏5
Семинар сегодня не отличался высокой посещаемостью, что и логично, конечно, для третьей части в серии из четырёх.

Зато из окон лаборатории Маркова виден Исаакиевский собор.

#markovlab #seminar #spsu
🔥269👍2👀1
В курсе "Основы байесовского вывода" сегодня поговорили про байесовский выбор моделей:

СПбГУ — 2025.09.30 — Байесовский выбор моделей
(слайды и доска на странице курса)

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

Как и практически всё в машинном обучении, сравнение моделей тоже происходит из теоремы Байеса: надо сравнивать правдоподобие, да, но после интегрирования по всевозможным параметрам модели, т.е. надо сравнивать знаменатели формулы Байеса, p(D). Так называемые информационные критерии как раз и строят аппроксимации к p(D), и в этой лекции мы рассмотрели байесовский информационный критерий (BIC).

А в последней части лекции начали разговор о так называемом эмпирическом Байесе (empirical Bayes): это та же самая идея, но применённая не к сравнению отдельных моделей, а к выбору гиперпараметров. Здесь всё хорошо видно на примере линейной регрессии; логарифм p(D) для линейной регрессии подсчитали сегодня, до алгоритма доведём в следующий раз.

#spsu #lectures #bayes2025
10🔥2👍1