#рабочее_местоВообще даже дома постоянного рабочего места у меня нет. Обычно в течение дня перемещаюсь между письменным столом, кроватью и кухней. В Вышке иногда появляюсь в этом маленьком кабинете. Вот как раз фотка, которую я сделал, когда в нем возникло несколько лишних мониторов)Раз уж это мой последний пост о себе, то готов ответить на какие-нибудь вопросы в комментариях). Ну и еще раз спасибо Кириллу за приглашение! ☺️👉👈
#свободнаяХочется немного рассказать о том, как я пришел в преподавание. Когда меня в первый раз спросили, почему я решил вести пары, я почти не задумываясь ответил, что это похоже на дневник Принца-полукровки. Когда я учился сам, мне очень нравилось возиться с нейронками, что-то крутить в пайплайнах, запускать всякие эксперименты, и хотелось поделиться натренированной интуицией с «новыми поколениями».Начинал я с семинаров по курсам «Машинное обучение» и «Введение в глубинное обучение», спустя год появилось много идей, как можно улучшить курс по intro-to-dl под студентов, которые становятся все жестче с каждым годом, и я решился читать лекции сам. Вот, на следующей неделе нас ждёт первая лекция.Также мы с коллегой взялись разрабатывать полноценный курс про self-supervision, который должен увидеть свет после Нового года. Аналогичных курсов я не встречал больше нигде (по крайней мере на русском языке). Вообще мне очень нравится идея авторских курсов, когда можно рассказать что-то более оригинальное, чем дефолтные матан и линал. Очень рад, что на ФКНе есть возможность организовывать подобное.
#топ_проектПоследний год моих рисерческих потуг едва ли можно назвать удачным, поскольку ничего хоть немного публикабельного сгенерировать не получилось. Поэтому немножко расскажу о том, как мне удалось загнать дипломную работу из бакалавриата на воркшоп ICML. Сама статья, в строгом смысле, публикацией считаться не может, поскольку относится к воркшопу, а не к конференции, но оставшаяся на память пдфка на архиве и опыт участия в постерной сессии — это то, что приятно греет душу. Вот она, кстати (минутка самопиара): https://arxiv.org/abs/2107.10143На самом деле надеяться на какие-либо цитирования с самого начала было очень наивной затеей, потому что исследование отличается большой специфичностью и, будем откровенны, имеет весьма сомнительную полезность, но зато предлагает несколько выводов, на которые смотришь и думаешь: “о, прикольно”. Некоторое время назад были популярны исследования меморизации нейронок, которые пытались пролить свет на вопрос “а как же все-таки нейронные сети запоминают обучающую выборку?”. Распространненым сетапом в этих работах является обучение модели на датасеты с перемешенными метками: таким образом, от нейронки требуется выучить какую-то несуществующую зависимость. Если модель достаточно большая, то через некоторое время обучения она справляется с этим заданием. Оказывается, что в такой постановке модели плюс-минус все равно, в каком порядке запоминать картинки из обучающей выборки, что сильно расходится с происходящим при обучении на нормальные датасеты, когда легко выделяются простые и сложные для выучивания картинки. Главным выводом нашего исследования стало то, что при обучении в self-supervised режиме (то есть не на разметку, а на некоторую вспомогательную задачу) наблюдается картина, схожая с обучением на перемешанные метки: обучающие объекты имеют примерно одинаковые сложности.О том, что будет проводится воркшоп по сходной теме (он носил название OPPO — Over-Parametrization: Pitfails and Opportunities), мы узнали примерно за неделю д
#мой_деньКак я говорил выше, мое расписание очень непостоянно, но вот один конкретный семпл с этой недели:8:30-10:00Проснулся, улыбнулся, выпил утренний кофе, немного позалипал в ютуб.10:00-11:00Проверил, как поживают мои эксперименты, запустил несколько новых.11:00-11:30Написал пост в этот канал. Решил привести как пример социального взаимодействия, все равно почти каждый день есть какое-то общение с менеджерами, студентами и/или созвоны по научке.11:30-12:00Наконец позавтракал.12:00-16:00Забронировал лекционные аудитории для занятий. Процесс выдался сложным, в этом году катастрофическая проблема с большими аудиториями. Общался с менеджером по расписанию и провел небольшой созвон с коллегами, преподающими на других курсах, чтобы все могли уместить свои пары.Параллельно занимался разработкой домашек для курса по глубинному обучению, на котором буду читать лекции.16:00-16:30Решил, что можно и пообедать.16:30-18:30Подробно разбирал статью, которую буду рассказывать через неделю на студенческой ридинг-группе. Статья вот: https://arxiv.org/pdf/2202.10054.pdf. Редко читаю статьи настолько дотошно, но тут довольно много теории, поэтому решил хорошенько переварить ее. Планирую объяснить основную интуицию, но не лезть в слишком глубокие дебри.18:30-20:00Поботал домашку по курсу случайных матриц, который прохожу в вышке. Занятие приятное, но скилл решения математических задач очень быстро выветривается, если несколько месяцев его не практиковать.20:00-0:00Ужин, вечерний чилл
#о_себеМеня зовут Ильдус; почти везде, где нужно, меня можно найти как isadrtdinov. Мне 22 года, живу и работаю в Москве. Я закончил бакалавриат ПМИ ФКН ВШЭ (2017-2021), сейчас учусь на совместной программе магистратуры ВШЭ и Сколтеха с кликбейтным названием “Math of Machine Learning”. Кроме того, преподаю на разных курсах по машинному обучению на ФКНе и занимаюсь исследованиями в Центре глубинного обучения и байесовских методов (a.k.a bayesgroup). Так уж вышло, что Кирилл доверил мне быть первым университетским рисерчером, который расскажет о себе, поэтому вместо стека и задач мне видится разумным рассказать о своих исследовательских интересах (так что дальше идут несколько абзацев духоты, я предупредил).Те недолгие два года, что я варюсь в рисерческой тусовке, я занимаюсь темой self-supervised learning. Это направление исследований изучает различные алгоритмы, позволяющие предобучать нейронки на больших массивах неразмеченных данных, что особенно актуально, принимая во внимание бюджеты выплат ассесорам и иные проблемы типа шумной разметки. Предобучение без разметки давно доминирует в области NLP (вспоминаем огромное множество моделей типа *BERT). Последние пару лет self-supervision завоевывает и сферу зрения, где достойно конкурирует с предобучением на имадженете. И даже новомодный DALLE-2 базируется на CLIP, который проецирует картинки и тексты в одно векторное пространство, являясь логическим продолжением разработанных ранее self-supervised методов. У нас в лаборатории, конечно, нет таких бюджетов и мощностей, как у OpenAI/DeepMind, поэтому мы не занимаемся выбиванием сот. Нас больше интересуют фундаментальные свойства нейронок и процесса их обучения. Пожалуй, нас можно сравнить с естествоиспытателем, который препарирует лягушку: инструментарий ограничивается запуском огромного числа экспериментов, поскольку любые попытки что-то объяснить теоретически сильно остают от того, что используется на практике. Поподробнее, наверное, расскажу в теме о топ проекте. В дан
Появляются вопросы по поводу темпа ведения канала. Отвечаю: гость может в течение недели писать посты в любом темпе, затем недельный перерыв, после чего следующий гость. Так что на следующей неделе постов не будет, но с 12 сентября ждите следующего гостя,…Что-то мне не понравилось как канал простаивал целую неделю, так что дальше попробуем несколько недель подряд приглашать по новому гостю.
Появляются вопросы по поводу темпа ведения канала. Отвечаю: гость может в течение недели писать посты в любом темпе, затем недельный перерыв, после чего следующий гость.Так что на следующей неделе постов не будет, но с 12 сентября ждите следующего гостя, он уже найден =) ps добавил в закреп
#свободнаяРасскажу об а-ля пет-проекте боте - Кратко бот (@summarization_bot). Это телеграм бот для суммаризации диалогов. Он работает на русском языке и его реально используют в более чем сотне чатов. Да, ни о каком факт-чекинге речи не идет (он может немного врать), но лично у меня всегда возникало желание сжать 50-100-500 сообщений из какой-то флудилки в телеграме в некоторый краткий пересказ.Дело было в начале 2022 в Сириусе. Смена длилась 10 дней, но благодаря современным инструментам (в первую очередь huggingface) три парня без опыта работы с глубинным обучением под моим руководством и с небольшой помощью сделали реально рабочий, смешной и, наверное, потенциально полезный продукт. С тех пор про него написали в паре каналов в телеграмме, а также люди просто сами добавляли его во все новые и новые чаты. Проект явно имеет проблемы как с железом, так и с инфрой (там вообще нет датабазы например), но дорабатывать его пока ни у кого сил нет. В планах, если все участники придут к такому решению, открыть код на гитхабе и дать возможность широкому кругу знакомых разработчиков контрибьютить и таким образом доработать проект. В открытом доступе лежит моделька на HuggingFace с инструкциями по запуску. Под капотом решается задача абстрактивной суммаризации, а именно там лежит модель mBart дообученная на суммаризацию диалогов из чатов (датасет SamSum, который мы перевели на русский язык при помощи GoogleTranslateAPI)Дальше отправлю видео-демо работы, посмотрите, по-моему оно бомбезное! Для интересующихся еще есть презентация с ~идеями и метриками.
#топ_проект Расскажу о том, как занимался генератором вопросов по диалогуОткуда взялась задача и мотивация: У бота-ботлатки долгосрочной памяти или нет, или очень мало. В нашем случае ее по сути нет. Да, можно изобретать ретриверы, QA-модели и много чего другого, но в то время требовалось быстрое решение для создания ощущения длинной памяти. Решили попробовать так: после сессии общения с ботом генерировать вопрос по самой важной из обсужденных тем.Кратко: сделал в 2 этапа (2 модели) - сжатие диалога и генерация вопроса по тексту. Пример: *длинный диалог, где-то речь зашла о китах* —суммаризация—> … . Паша и Маша говорили о китах. Паше нравятся синие киты, а Мага их боится. —генерация_вопроса—> Маш, а почему ты боишься китов?По срокам: По сути заняло пару недель (на написание контентом датасета, дообучение, эксперименты и тд)Для суммаризации диалога на английском языке уже существуют неплохие предобученные модели на основе моделей BART и T5. Это по сути достаточно нынче стандартная задача text-to-text, но в данном случае слева диалог, а справа - сжатое описание. Примеры таких моделей: huggingface-1, huggingface-2. Пример: *длинный диалог, где-то речь зашла о машинах* —суммаризация—> … . У Андрея есть синяя BMW, а у Паши - серая хонда.Часть именно с генерацией вопроса достаточно специфичная и для этого было решено дообучить модель T5 на небольшом датасете. Взяли диалоги пользователей, суммаризовали, контентная команда написала желаемые вопросы - файнтьюн Т5. Взяли ее как одну из лучших моделей text-to-text для файнтьюна. В целом эта задача тоже похожа на суммаризацию, но по сути надо зацепиться за один из обсужденных фактов и что-то дополнительно спросить по этому поводу. Пример: … . У Андрея есть синяя BMW, а у Паши - серая хонда. —генерация_вопароса—> Есть ли у тебя еще машины кроме хонды? / Хочешь ли ты купить еще одну машину?Для неплохого дообучения генерации вопросов хватило буквально несколько сотен вопросов в датасете. По оценке качества тут конечно только р
#мой_день9:30-10:30Проснулся, потянулся, завтрак10:30-11:30 Сажусь за стол, работаю. Провожу эксперименты с классификатором секстинга и эмоций по диалогу11:30-12:00Дейли. Делимся на встрече с коллегами кто что делал и будет делать12:30-13:40Заканчиваю где-то недельную работу с классификатором, пишу код для запуска в продакшене (на пользователей) 14:20-15:30Еду на скейте на набережную и обедаю15:30-16:20 По результатам классификатора пишу тред про итоговое качество и скорость работы17:00-19:00 Заворачиваю классификатор в сервис, интегрирую с основным кодом, обсуждаю с коллегами из бекенда контракт взаимодействия19:20-19:50 Пишу в jira про то что сегодня сделал и придумываю себе несколько задач на завтра19:50-20:00 Медитирую чтобы переключиться с рабочих задач 20:00-... Грею пиццу на ужин, играю в vr, смотрю нетфликс и так далееВ дырках по времени - перерывы. Строго не заставляю себя работать каждый день сколько-то часов, сегодня получилось 6, вчера - 9.5
#о_себеМеня зовут Кирилл, а в интернете - Kirili4ik😎 Мне 22, я из Москвы, но уже полгода живу в Стамбуле🇹🇷 Я учился на ПМИ ФКН в высшей школе экономики (2017-2021), затем немного занимался обработкой естественного язка (NLP) в Сбере, а теперь разрабатываю iFriend.ai - виртуального друга на основе ИИ.Я бы назвал себя ML NLP Engineer, по зп во втором уровне. Стек: Python, Pytorch, Huggingface, git. Примеры задач такие: обучить и внедрить классификатор секстинга, обучить модель генерации вопросов по диалогу, оформить на fastapi/в телеграм боте сервис для тестирования моделей.Задачи где-то 50/50 - часть придумываем мы сами внутри ML команды в соответствии с новыми технологиями и статьями, часть нам сверху придумывает бизнес (а мы уже ищем решение).Мне интересны примерно в равном отношении как продукт, так и моя роль. Слежу за процессами, стараюсь участвовать в планированиях и принимать решения не только исходя из технологий, но и из бизнес задач. Работаю по факту 6-8 часов в день удаленно.