Выбор темы

🗓 11 апреля 2025. 🦄 4 балла

Выбрать команду для проекта. Размер команды - 4-5 человек.

К этому моменту необходимо согласовать с семинаристом/лектором тему проекта и высокоуровневое описание процесса работы над ним. Шаблон \LaTeX для работы представлен здесь, выполнять этапы проекта надо в нём. Рекомендуется использовать VSCode/Cursor с расширением LaTeX Workshop. Так же доступна версия в overleaf. Допускается выполнение проекта в Typst, если вы умеете, но требования ниже будут предъявляться точно такие же (например, корректное цитирование). В дальнейшем необходимо использовать данный шаблон, дополняя его по мере продвижения в проекте. Все материалы и ссылки по теме удобно собирать в notion, чтобы при нашем обсуждении они были под рукой.

Возможные темы

Главное требование к теме проекта - вам должно быть прикольно его делать, тема должна вас живо интересовать. Второе требование - он должен быть связан с теорией или методами оптимизации (хотя бы как-то 🙂). Тему проекта необходимо придумать/ найти/ выбрать самостоятельно.

  • Взять недавно (можно смело смотреть по keywords SVD, Schur decomposition, low-rank и т.д. за последние несколько лет) опубликованную статью на конференции NeurIPS, ICML, ICLR. Детально разобраться. Воспроизвести. Попробовать на других данных/моделях/методах. Возможно, предложить посмотреть/протестировать что-нибудь новое.

  • Прекрасным примером проекта может быть экстремальное выполнение классической задачи. Например,

    • Обучение огромной модели на огромном датасете
    • Минимизация очень сложной функции
    • Исследование свойств оптимизаторов с бесконечной дисперсией стох.градиента

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

  • В статье Old Optimizer, New Norm: An Anthology авторы делают упор на построение разных методов оптимизации для современных задач машинного обучения с помощью решения специальной задачи оптимизации. Важно, что авторы предлагают единый взгляд на построение разных методов с помощью использования разных операторных норм. В рамках предлагается исследовать другие операторные нормы (например, ядерную), которые можно использовать для построения методов оптимизации и сравнить методы теоретически или численно. Можно вот изучить пост автора по теме вывода одного из популярных сегодня оптимизаторов для LLM.

  • В нашей статье мы рассматриваем метод квантизации больших языковых моделей с помощью разложения матрицы весов на два фактора, формирующих представление Кашина. Однако, некоторые унитарные матрицы плохо подходят для построения таких разложений. В рамках проекта предлагается исследовать возможные объяснения этого феномена.Можно посмотреть наш недавний доклад.

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

  • Создание питон библиотеки - черного ящика для бенчмаркинга методов оптимизации с разными запусками, единым интерфейсом, построением графиков.

  • Изучение методов оптимизации в непрерывном времени

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

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

  • В статье Dataset distillation авторы показывают, что можно сделать 10 изображений похожих на MNIST так, что точность моделей на MNIST будет 94% после обучения только на этих 10 изображениях. В рамках проекта предлагается исследовать возможность применения этого подхода для для текстовых датасетов (Tiny Stories).

  • Взять несколько современных оптимизаторв и построить для нескольких практических задач оптимизации карты loss surface в зависимости от гиперпараметров оптимизатора.

  • В недавней статье авторы исследуют как надо изменять гиперпараметры обучения (batch size, learning rate, etc). Можно изучить и попробовать воспроизвести результаты на других/маленьких моделях.

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

  • На этой странице чуть позже появятся возможные интересные статьи, которые можно взять в качестве темы проекта.

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

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

Формат сдачи

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

Example of this stage of the project

Критерии оценивания

  • 0 баллов - файл не загружен вовремя/ файл загружен в другом формате
  • 1-2 балла - файл загружен вовремя, тема не согласована или решаемая задача сформулирована не чётко
  • 3-4 балла - файл загружен вовремя, тема согласована, решаемая проблема ясна и сформулирована чётко

Project proposal

🗓 26 апреля 2025. 🦄 16 баллов

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

  • Какие результаты были достигнуты в похожих формулировках?
  • Есть ли более простые формулировки и результаты в схожей тематике?
  • На какие результаты необходимо существенно опираться?
  • Какие исследования обуславливают актуальность рассматриваемой задачи?
  • С какими источниками необходимо ознакомиться для существенного понимания задачи?
  • Есть ли в открытом доступе код для воспроизведение экспериментов для рассматриваемой задачи?

Можно использовать поиск в интернете, поиск по google scholar, поиск по perplexity.ai, поиск по ссылкам в статье. В идеале ссылаться на рецензируемые опубликованные статьи монографии. Однако, при необходимости, можно ссылаться на статьи на arxiv, блогпосты и другие источники, существенные и авторитетные для задачи. Цитирование необходимо делать с помощью bibtex. Пример откуда его брать приведён ниже:

Здесь показан один из способов найти bibtex для цитирования

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

  • Название проекта.
  • Abstract (краткое описание проекта в один абзац).
  • Описание проекта (обратите внимание на конкретность постановки задачи и её реалистичность).
  • Outcomes - опишите, что конкретно будет выходом Вашего проекта (код, теорема, численные эксперименты, телеграм бот, веб сайт, приложение, рассказ).
  • Литературный обзор.
  • Детальный план работ. Ясно, что в процессе выполнения проекта он будет меняться, однако наличие плана здесь лучше его отсутствия.
  • Метрики качества. По возможности, приведите формальные и измеряемые показатели, по которым можно оценивать Ваше решение проект - это могут быть конкретные метрики качества алгоритмов, соц. опрос, логическое доказательство и т.д. Основная задача этого пункта - договориться на берегу о том, как мы сможем объективно оценить работу, проведенную в проекте. Обратите внимание, что результат проекта может быть “отрицательным” в том смысле, что мы собрались исследовать применение метода к какому-то классу задач и у нас не получилось. Это абсолютно нормально, тогда нужно будет просто описать этот процесс (мы попробовали и не вышло, но зато вот такое вот интересное наблюдали).
  • Отчёт о фазе прототипирования. На этом этапе необходимо максимально широкими мазками приступить к работе над проектом. Если есть существующий код - нужно его запустить, представить результаты ваших экспериментов, показать проблемы, с которыми вы столкнулись. Попытаться предпринять первые шаги к решению проекта. Сделать что-нибудь с наскока. Совсем идеально показать какой-нибудь прототип (если это применимо к проекту).

Формат сдачи

Загрузить в таблицу в соответствующее поле ссылку на обновленный pdf с добавленным литературным обзором и project proposal с учётом фидбека по предыдущему этапу.

Критерии оценивания

Баллы будут сниматься в следующих случаях (список не полный):

  • Менее 5 релевантных источников по теме.
  • Работа с источниками была проведена поверхностно, ссылки добавлены ради ссылок, а не ради сути.
  • В результате литературного обзора совершенно не понятно, какое место занимает проект на научном ландшафте.
  • Не учтены комментарии по предыдущему этапу, если они были.
  • План работ не реалистичный, очень поверхностный. Обратите внимание, что тяжело уверенно планировать творческие задачи (доказать теорему). Здесь лучше писать чуть более специфично (например, попробовать доказать/ обобщить доказательство из другого источника).
  • Нет метрик качества.
  • Нет литературного обзора.
  • Не написан чёткий выход (outcomes) проекта.
  • Нет отчёта о фазе прототипирования.
  • Изображения в proposal низкого качества плохо подписаны.

Первый черновик постера

🗓 6 мая 2025. 🦄 10 баллов

На этом этапе необходимо подготовить черновик постера в латехе с разделением на разделы, объяснением - что в каком разделе где будет. Для удобства приведен 📝 \LaTeX шаблон с 📜 примером.

На основании результатов проделанной работы также необходимо определить план публикации вашего проекта. Это может быть:

  • статья в журнале
  • статья на конференции
  • статья для летней школы
  • доклад на конференции
  • публикация на вашем сайте
  • статья в блоге
  • видео на YouTubeканале и т.д.

В частности, этот план содержит конкретные даты, выбранный журнал, куда это будет подаваться.

Формат сдачи

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

Критерии оценивания

Баллы будут сниматься в следующих случаях (список не полный):

  • Черновик постера отсутствует или выполнен не в латехе
  • Структура постера нелогична или отсутствует четкое разделение на разделы
  • Не представлен план публикации проекта
  • Не учтены комментарии по предыдущим этапам, если они были

Постер

🗓 13 мая 2025. 🦄 20 баллов

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

Формат сдачи

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

Критерии оценивания

Баллы будут сниматься в следующих случаях (список не полный): * Финальный постер не соответствует требованиям или отсутствует * Выступление неструктурировано, непонятно или неинтересно * Результаты проекта представлены некачественно или неполно * Не учтены комментарии по предыдущим этапам

Все дедлайны понимаются как 23:59:59 по Московскому времени.