• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Проектная работа на первом курсе ПМИ — как это было

10 июня прошел конкурс лучших проектов первокурсников. Студенты "Прикладной математики и информатики" представили итоги своей работы за 2 модуля.



Проектная работа у студентов первого курса Прикладной математики и информатики началась с 3-го  модуля, после сдачи курсов по программированию на Python и С++. За каждым студентом был закреплен ментор-наставник из индустрии или научной среды, который ставил задачи и курировал процесс их выполнения. Каждый студент должен был выбрать один из 53 возможных проектов. Менторы предложили самые разные проекты — от биоинформатики до компьютерной лингвистики, машинного обучения и разработки игр, веб-сервисы, архивацию, задачу коммивояжера, проекты про финансы и др.

В течение всей весны студенты упорно работали: предполагалось еженедельное общение с ментором. По итогам двух модулей менторы выдвинули лучших студентов на конкурс проектов, а кураторы проектного семинара отобрали 12 финалистов.


В результате презентации проект “Распознавание рукописных цифр при помощи многослойной нейронной сети” занял первое место, “Игра Rally для Oculus Rift”  и “Задача коммивояжера” — второе место, а “Утилита для очистки текстов от обсценной лексики” и “Web-сайт на клиентских технологиях” — третье. Призом зрительских симпатий были отмечены проекты “Социальный портрет по профилю в Instagram” и “Игра с драконом для Oculus Rift”.

Топовые проекты получились очень хорошими, мы были приятно удивлены. Реализовать за выделенные на проектную работу 87 часов многослойную нейронную сеть и успешно применить ее к распознаванию цифр - это очень круто для первокурсника. Решать задачу коммивояжера на графе из 100 вершин за секунды или сделать игру для Oculus - тоже очень серьезно. Знакомые и коллеги, которым я про это рассказывал, все прониклись: мы в свое время на первом курсе и близко такого не делали.

Левин Михаил Владимирович
Куратор проектной работы на первом курсе ПМИ

 

 

Распознавание рукописных цифр при помощи нейронной сети

Ментор: Иван Лисенков, МИФИ, Murex Software

Полученные навыки за время проектной работы:
  • Формулировка постановки задачи
  • Написание надежного и понятного кода
  • Основы теории нейронных сетей на примере классической модели Перспетрона Розенблатта
  • Многослойные нейронные сети



Глеб Пособин, студент первого курса ПМИ, победитель конкурса проектов


Нейронная сеть — это взвешенный ацикличный ориентированный граф, у которого в каждой вершине стоит функция от одного аргумента. Есть такое утверждение, что для любой непрерывной функции найдется нейронная сеть, приближающая эту функцию сколь угодно хорошо. Это один из аргументов в пользу использования нейронных сетей в машинном обучении, в частности в распознавании картинок. Как обучать сеть? Например, подаем на вход вектор, “проталкиваем” его по сети,  меняем коэффициенты в каждой вершине так, чтобы приблизиться к правильному ответу на этом векторе. В проекте у нас была задача: даны изображения рукописных цифр, нужно распознать что за цифры указаны. Данный модуль протестирован на известной обучающей выборке MNIST из десяти тысяч картинок
За основу я взял многослойную нейронную сеть, после 20 минут обучения она ошиблась на 4,5% картинках. Сверточная нейронная сеть достигла ошибки 2,2%  за те же 20 минут обучения.

Социальный портрет по профилю в Instagram

Ментор: Андрей Казаринов, студент 4-го курса образовательной программы Программная инженерия, Яндекс


Полученные навыки за время проектной работы:

  • Написание надежного и понятного кода
  • Проектирование и разработка веб-приложений
  • Использование реляционных или NoSQL баз данных
  • Использование систем контроля версий
  • Взаимодействие со сторонними сервисам через API

Александр Пушин, студент первого курса ПМИ, получил приз зрительских симпатий

 Ментором решил стать в момент неофициального анонса ФКН в Яндексе. Так как я сам уже работал в Яндексе и в то же время был студентом программной инженерии, я очень хорошо понимал "внутреннюю кухню" и проблемы студентов и преподавателей.

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

Для реализации проекта были предложены популярные и "свежие" технологии и инструменты. Я пытался создать максимально легкие и быстрые каналы коммуникации: общение велось в группе ВКонтакте и чате. Студенты часто задавали вопросы в личных сообщениях, на которые я мог оперативно отвечать, что сильно ускоряло решение их проблем. Также была возможность пообщаться по видео и аудиосвязи, чем мы иногда пользовались. В итоге я был в курсе состояния дел каждого студента и мог корректировать курс "на лету", а они в свою очередь получали быструю помощь.

Казаринов Андрей
Ментор проекта, сотрудник Яндекса и студент 4-го курса ПИ

 

Задача коммивояжера

Ментор: Алексей Гусаков, Яндекс
Задача коммивояжера –— одна из самых известных и важных задач транспортной логистики и комбинаторной оптимизации. Ее суть сводится к поиску оптимального, то есть кратчайшего пути проходящего через некие пункты по одному разу. Для нее нет (и скорее всего не будет) решения, правильно работающего за полиномиальное время. Однако, существуют подходы, дающие неплохие практические результаты.

Полученные навыки за время проектной работы:
  • Основы теории графов
  • Основы приближённых алгоритмов
  • Использование линейного программирования для оптимизации перебора
  • Визуализация решения

Павел Поляков, студент первого курса ПМИ, 2-е место на конкурсе проектов


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

 

Проект “Oculus VR Variations”

Ментор: Олег Чумаков, Nival


Полученные навыки за время проектной работы:

  •  Работа с Unity 3D/UE4
  • Особенности оптимизаций для Oculus Rift (стереорендеринг)
  • Особенности технологий Low Persistence и Time Warp



Денис Деркач, студент первого курса ПМИ, 2-е место на конкурсе проектов

Мой проект — это 3D игра на Oculus Rift. В начале работы я поставил себе цель сделать гонку, в которой реалистичное управление, есть соперник и трасса для соревнования. Мне было очень интересно работать над проектом,  я хотел создать что-то похожее на настоящую игру, научиться работать с игровыми движками и графикой, а также с очками виртуальной реальности. Когда я начинал создавать проект, магазин Oculus состоял примерно из 20 приложений, причем гонок в них не было. Неделю назад, когда я снова заходил в Oculus магазин, там появились гонки, но их тоже было мало, но ралли среди них не было.

В моей игре два режима: вы можете соревноваться с соперниками или включить автопилот и наслаждаться поездкой по лесу.

Финальную версию моего проекта можно уже сейчас опробовать, скачав по ссылке.


Проектная работа студентов продолжится в следующем году, с третьего курса проекты станут командными, а некоторые студенты смогут зачесть стажировки в топовых компаниях за проектную работу.