Весенний семестр 2019 года для некоторых студентов третьего курса ФУПМ закончился сдачей проектов по курсу “Методы Оптимизации”. Суть проектов заключается в том, чтобы прокачать свои знания и навыки в любой приятной студенту области - будь то программирование на Python или какой - либо конкретный численный метод решения задач оптимизации. В отличие от прошлого года, система дедлайнов была размазана тонким слоем по всему весеннему семестру, тему нужно было утвердить примерно через месяц после начала, затем abstract, лит. обзор, черновик постера, предзащита, защита - короче очень лайтовая репетиция научной работы.

Methods of Alternative Projections and ”Barycentric method”
Ринат Камалов
Ринат довольно глубоко ушел в выпуклый анализ вместе с Максимом Балашовым. Ринат меня научил что такое псевдо проекция. Приходиться как-то извращаться, когда множество, на которое ты проектируешься - невыпуклое. Ринат говорил, что для довольно простого случая они доказали сходимость метода поиска псевдопроекции, однако на практике метод работал куда лучше.

Gradient Methods for Inexact Strongly Convex Model
Артем Агафонов
Артем начал работать еще с осени, что позволило ему глубоко погрузиться сначала в метод зеркального спуска, а затем и далее. В работе изучалась концепция модели функции (в частности, $(\delta, L, \mu)$ модель функции). Идея состояла в том, чтобы применять методы оптимизации не непосредственно к самой функции, а к её (возможно, более простой) модели, в работе проделана эмпирическая часть на наборе синтетических тестов. Уже на третьем курсе он познал дзен рестартов и быстрого градиентного метода - 👍

Minimax Interpolation
Матвей Морозов
Матвей взял и разобрался с Гауссовскими процессами. Нагенерил разных процессов, проаппроксимировал, сравнил ошибки интерполяции. Один из эмпирических результатов - минимаксная интерполяция работает чуть хуже аналогов в очень гладких задачах и эффективнее в менее гладких процессах. Хочется отметить, что Матвей прямо горел идеей работы и стабильно с большим энтузиазмом рассказывал о ходе проекта.

Homotopy choice in homotopy optimization framework
Григорий Степанов
Методы гомотопической оптимизации классные! Григорий исследовал как разные гомотопии (линейная, квадратичная, кубическая и т.д.) в деформации минимизируемой функции влияют на итоговую сходимость алгоритма оптимизации к глобальному минимуму. В работе рассмотрен набор синтетических тестов на модельных функциях. Гриша вел проект очень самостоятельно, изучая литературу и пробуя новые идеи по своей инициативе.

Gradient Methods with Inexact Model in Clustering Problem
Олеся Кузнецова
Олеся в работе исследовала концепцию модели функции и применение градиентного метода к такой модели. Для конкретного класса моделей и метода доказана скорость сходимости. В качестве практической задачи рассматривалась задача нечеткой кластеризации на $K$ классов в контексте электорального процесса 😱 на выборах.

The error accumulation in the conjugate gradient method for degenerate problem
Антон Рябцев
Антон рассмотрел детально метод сопряженных градиентов в постановке, когда левая и правая части известны лишь с шумом. Эмпирически исследовалось влияние размера этого шума на сходимость плгоритма, а так же гипотеза о том, что при конечном сэмплировании такой шум по граденту будет аддитивным. Хорошая практическая работа по методам опимизации.

Optimizing NN with Kronecker-factored Approximate Curvature
Павел Бурнышев
Павел в работе исследовал метод натурального градиента и свойства эмпирической матрицы Фишера. В частности, был рассмотрен метод аппроксимации матрицы Фишера с помощью её Кронекеровской факторизации Проект закреплен экспериментами с AlexNet на FashionMNIST в сравнении с традиционными алгоритмами стох. оптимизации.

Stochastic Universal Gradient
Евгений Лагутин
Известно, что оптимальный шаг градиентного спуска обратно пропорционален константе Липшица градиента, проблема лишь в том, что, вообще говоря, она неизвестна 🌝. В работе Женя тестировал идеи В.Г. Спокойного насчет адаптивного подбора этой константы с помощью проверки выполнения определенных неравенств. Женя написал свой optimizer на PyTorch и провел тесты на всех моднейших датасетах: MNIST, CIFAR10, IMDb. Короче, в кратчайшие сроки освоил море теории и практики.

Empirical robustness study of state of the art seq2seq neural network for machine translation
Раффаеле Делла Пиетра
Раф решил пройтись по одной из самых хайповых тем современности - машинному переводу с помощью нейросетей и выяснить её эмпирическую устойчивость к ошибкам в корпусе. Seq2seq - SoTA модель на тот момент. Результат - почти линейное падение точности (BLEU) с ростом процента опечаток в корпусе для смешанных ошибок. В то же время, модель показала заметную устойчивость к посимвольным ошибкам.

Q-Learning: randomized rewards
Валентин Самохин
Reinforcement learning в лучших проектах по оптимизации становится уже доброй традицией. Валентин провел эксперименты с классическим $Q$ - learning при условии, что награда агенту поступает с шумом. Он запустил OpenAI gym (еще раз, это третий курс👮♂️) на примере двух задач: Taxi-v2 и CartPole. Агенты учатся, все работает, код прилагается.

Eye-tracking mouse control project
Михаил Чеканов
Проект начался с довольно простой идеи: можно ли управлять курсором на экране комьютера, используя только веб камеру, которая наблюдает за движениями ващих зрачков. У Михаила получилось сделать прототип, который он продемонстрировал на защите проекта, который работал на очень хиленькой веб камере ноутбука (правда, только при хорошем освещении). Классный проект - много творческой свободы, довольно трудный и с практической и с теоретической точек зрения 👁.
Меня очень радует новое поколение бойцов - они хотят учиться и работать руками. Из выводов, которые стоит сделать по итогам года: лучше проводить больше итераций по мере приближения к финальной стадии проекта, т.е. больше дедлайном с почти готовым постером, с выступлениями. Так же стоит сделать упор на нужды community, например, разработку клевых статей и туториалов для fmin.xyz. Кажется, что абстракт с очень формальными полями так же способствует качеству процесса.