Рендзю (проект) — различия между версиями
(→Критерии оценки) |
|||
(не показаны 2 промежуточные версии ещё одного участника) | |||
Строка 1: | Строка 1: | ||
+ | Семинар проекта можно найти [[Рендзю_(семинар)|здесь]]. | ||
+ | |||
{{Карточка_проекта | {{Карточка_проекта | ||
|name=Рендзю | |name=Рендзю | ||
Строка 8: | Строка 10: | ||
|number_of_students=4-5 | |number_of_students=4-5 | ||
|categorize=yes | |categorize=yes | ||
+ | |is_archived=yes | ||
}} | }} | ||
Текущая версия на 19:19, 18 октября 2017
Семинар проекта можно найти здесь.
Ментор | Симагин Денис |
Учебный семестр | Осень 2016 |
Учебный курс | 2-й курс |
Проект можно развивать на летней практике | |
Максимальное количество студентов, выбравших проект: 4-5 | |
Внимание! Данный проект находится в архиве и реализован не будет. |
Что это за проект?
Cочетание reinforcement learning и deep learning является "горячей" темой на сегодняшний день. К примеру, изучите статью Playing atari with deep reinforcement learning. Также вы, наверняка, слышали о AlpaGo, программе, которая впервые победила человека, профессионально играющего в Go. Подробнее об этом здесь. Данный проект заключается в изучении подходов, использующихся в AlphaGo, и их реализации при создание собственного алгоритма для игры в рендзю.
Проект будет устроен следующим образом:
- Будут еженедельные семинары, на которых мы разберем всю необходимую теорию.
- На одном из семинаров вы проведете разбор статьи (англ.), которую изучили самостоятельно.
- Будет набор упражнений для закрепления материала.
- Ревью кода коллег по проекту.
- Между вашими моделями будет устроено соревнование.
Важно. Проект требует много времени. Подразумевается большое количество вычислений и самостоятельные исследования.
Чему вы научитесь?
- Основы машинного обучения
- Альфа-бета отсечения
- Метод Монте-Карло для поиска в дереве
- Глубинные нейронные сети
В дополнение к этому:
- Поучаствуете в процессе ревью по обе стороны баррикад
- Научитесь читать английские статьи
Какие начальные требования?
- Наличие машины с UNIX-подобной ОС, владение командной оболочкой
- Вы должны писать на Python 3
- Необходимы знания Git, однако я всегда помогу в сложной ситуации
- Желательны базовые знания о машинном обучении
Какие будут использоваться технологии?
- В качестве основного языка будет Python 3.
- Нейронные сети мы будем обучать скорее всего с помощью Theano.
- Так же вы можете проводить вычисления на ресурсах aws или воспользоваться google cloud.
Темы вводных занятий
Будем планомерно погружаться в тему, весь 2-й модуль. Также желательно, чтобы каждый сделал доклад по статье из списка.
Направления развития
- Совершенствование модели
- Масштабирование модели на большие вычислительные мощности
Критерии оценки
Оценка складывается из пунктов:
- 3 балла - регулярное посещение занятий, есть некоторая реализация идей, рассказанных на семинаре
- 1 балл - вы пишете качественный код
- 1 балл - разбор статьи на семинаре
- 2 балла - ваш алгоритм играет конкурентно с человеком
Остается еще 3 балла, эта часть оценки будет определена тем, на сколько силен ваш алгоритм по сравнению с решениями коллег. Необходимо понимать, что для получения "зачета" вы должны предоставить работающую программу, пусть и не играющую феерично.
Ориентировочное расписание занятий
Семинары будут проходить в стенах Яндекса каждую неделю в фиксированный день (вторник, среда или четверг). Если будет желание, то можно несколько раз в выходные провести своеобразные хакатоны: собираемся вместе на целый день, работаем, общаемся и трескаем пиццу.