Всероссийский учебный онлайн фестиваль по искусственному интеллекту и алгоритмическому программированию RuCode

31 АВГУСТА – 4 ОКТЯБРЯ 2020

О ФЕСТИВАЛЕ

Всероссийский онлайн фестиваль по алгоритмическому программированию и искусственному интеллекту RuCode Festival — это программа интенсивной подготовки для молодых IT-специалистов, желающих повысить уровень знаний в алгоритмическом программировании и искусственном интеллекте, а также получить опыт участия в соревнованиях.

Этапы программы:

1. Онлайн-курс:
«Быстрый старт в спортивное программирование»
«Быстрый старт в язык программирования С++»
«Быстрый старт в искусственный интеллект»

2. Отборочное тестирование для желающих принять участие в интенсивах

3. Интенсивы по алгоритмическому программированию и искусственному интеллекту

4. Чемпионаты по алгоритмическому программированию и искусственному интеллекту

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

Программа RuCode Festival научит решать алгоритмические задачи быстро и эффективно, а участие в треке по искусственному интеллекту даст возможность поработать с датасетами ведущих IT-компаний, тем самым заявив о себе на соревнованиях. Доступ бесплатный и открыт всем желающим!

Schedule

АЛГОРИТМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ

1
Онлайн-курс
31 августа- 27 сентября
2
Онлайн-отборы
19-22 сентября
3
Онлайн-интенсивы
28 сентября - 2 октября
4
ЧЕМПИОНАТ RUCODE
4октября

ИскусственнЫЙ Интеллект

1
Онлайн-курс
31 августа- 27 сентября
2
Онлайн-отборы
10-13 сентября
3
Онлайн-интенсивы
14-30 сентября
4
ЧЕМПИОНАТ RUCODE
3октября

Для того, чтобы присоединиться к программе фестиваля необходимо

1
Зарегистрироваться на сайте Rucode.net
2
Заполнить анкету в личном кабинете
3
Ждать рассылки о начале нужного этапа

Для того, чтобы присоединиться к программе фестиваля необходимо

1
Зарегистрироваться на сайте Rucode.net
2
Заполнить анкету в личном кабинете
3
Ждать рассылку о начале интересующего этапа
1

ОНЛАЙН КУРС

31 АВГУСТА - 27 сентября
Прокачай свои знания с ведущими тренерами международного образовательного проекта Moscow Workshops!

В рамках фестиваля методисты и ведущие тренеры Moscow Workshops составили программу трёх онлайн-курсов: «Основы C/C++ для спортивного программирования», «Быстрый старт в спортивное программирование» и «Быстрый старт в искусственный интеллект».

«ОСНОВЫ C/C++ ДЛЯ СПОРТИВНОГО ПРОГРАММИРОВАНИЯ»

C и C++ являются наиболее подходящими языками для спортивного программирования. Курс направлен на участников, не имеющих опыта работы с данными языками. Программа курса включает в себя знакомство с базовыми понятиями языка: переменные, типы данных, условные операторы, циклы, функции и многое другое. Советуем пройти этот курс, если вы хотите в будущем пройти другой наш онлайн-курс «Быстрый старт в спортивное программирование», для прохождения которого знание языка С++ не является обязательным — вы можете успешно его пройти, зная какой-нибудь другой язык, однако некоторые задачи курса нельзя сдать на других языках программирования.

Course program

Переменные
  • Первая программа, переменные, считывание
  • Подводные камни
  • Локальный запуск
  • Символьный тип данных
  • Типы данных с плавающей точкой
  • Логический тип данных
Условные операторы и циклы
  • Логические операции
  • Условный оператор
  • Циклы while, do-while
  • Цикл for
Массивы и функции
  • Массивы
  • Многомерные массивы
  • Квадратичные сортировки
  • Квадратичные сортировки, сортировка вставками
  • Функции
  • Рекурсия
Сложные структуры данных
  • Указатели
  • Передача параметров в функцию: указатели и ссылки
  • Структура: определение и поля
  • Структура: конструкторы и деструкторы
  • Перегрузка операторов
  • Vector
  • String
Битовые операции и системы счисления
  • Быстрое считывание
  • Системы счисления
  • Битовые операции
  • Хранение целых чисел в компьютере
  • Хранение добрых чисел в компьютере

«БЫСТРЫЙ СТАРТ В СПОРТИВНОЕ ПРОГРАММИРОВАНИЕ»

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

Course program

Базовые алгоритмы
  • Асимптотика
  • Линейные алгоритмы
  • Бинарный поиск
Теория чисел
  • Целые типы данных, решето Эратосфена
  • Операции по модулю
  • Алгоритм Евклида
  • Бинарное возведение в степень и деление по модулю
Динамическое программирование
  • Определение
  • Линейное динамическое программирование
  • Двумерное динамическое программирование
  • Восстановление ответа
  • Задача о рюкзаке
Теория графов
  • Базовые определения теории графов
  • Обход в глубину
  • Обход в ширину

«БЫСТРЫЙ СТАРТ В ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ»

Искусственный интеллект — один из самых активно растущих секторов IT. Курс поможет войти в мир искусственного интеллекта, станет тем самым «быстрым стартом», который позволит познакомиться со сферой ИИ, а в дальнейшем начать исследования и/или карьеру в этой области.

Course program

Машинное обучние
  • Введение в машинное обучение
  • Линейные алгоритмы
  • Метрики машинного обучения
  • Алгоритмы машинного обучения. Выбор модели
Компьютерное зрение
  • Нейронные сети: основы
  • Сверточные нейронные сети
  • Практика: классификация картинок
  • Задачи компьютерного зрения
  • Популярные архитектуры (ResNet), дообучение
Обработка естественного языка
  • Обработка текста, статистики
  • Эмбеддинги
  • Рекуррентные нейронные сети
  • Машинный перевод
  • Диалоговые системы
Математические идеи в анализе данных и ИИ
  • Жадный алгоритм
  • Вероятностный подход
  • Эмпирические наблюдения
  • Подкрутка простых решений
  • Классификация с помощью подсчета статистик
2

Отборы

Готов погружаться в алгоритмическое программирование еще глубже? Хочешь попробовать свои силы на треке по искусственному интеллекту? Пройди онлайн отборы и прими участие в бесплатных интерактивных интенсивах![:en]Готов погружаться в спортивное программирование еще глубже? Хочешь попробовать свои силы на треке искусственного интеллекта? Пройди онлайн отборы и прими участие в бесплатных интерактивных интенсивах!

Algorithmic programming

19-22 сентября
19-22 сентября

14 задач по программированию

5 часов

Пробный тур

Инстукция к тестирующей системе

Artificial intelligence

10-13 сентября
10-13 сентября

10 задач по математике

3 задачи по программированию

2 задачи по машинному обучению

3

ИНТЕНСИВЫ

Интерактивные занятия с ведущими тренерами по искусственному интеллекту и алгоритмическому программированию

Algorithmic programming

Лучшие участники отбора будут поделены на дивизионы по уровню сложности — С и D. Интенсивы пройдут с 28 сентября по 2 октября в формате онлайн-лекций, контестов и онлайн-разборов. За пять дней предстоит осилить 10 часов лекционных занятий и 15 часов практических. Темы: вычислительная геометрия, динамическое программирование, теория чисел, особенности работы с алгоритмами и другие. Лекторы курса – преподаватели крупнейших вузов России (МФТИ, НГУ, ДВФУ).

28 СЕНТЯБРЯ – 2 ОКТЯБРЯ
28 СЕНТЯБРЯ – 2 ОКТЯБРЯ
5 ДНЕЙ
5 ДНЕЙ
ОНЛАЙН
ОНЛАЙН
ПРИМЕРНАЯ ПРОГРАММА ИНТЕНСИВОВ*
Дивизион D
  • Динамическое программирование
  • Базовые строки: префикс, Z, манакер, хэши
  • Геометрия: точки-прямые-отрезки, скалярные/векторные произведения, расстояния/пересечения
  • Графы
  • Задачи range sum query, range minimum query
  • Префиксные суммы, разреженная таблица, дерево отрезков
Дивизион С
  • Бор, динамическое программирование на боре
  • Алгоритм Ахо-Корасик
  • Выпуклая оболочка: алгоритмы Джарвиса, Грэхема
  • Паросочетания, минимальное вершинное покрытие/максимальное независимое множество
  • Дерево отрезков: присваивание/прибавление на подотрезке, двумерное дерево отрезков, динамическое дерево отрезков

Artificial intelligence

Обучение пройдет в формате онлайн-лекций и работы над своим проектом. С 14 по 30 сентября будет прочитано более 10 лекций. Лекторы курса — преподаватели МФТИ и эксперты крупных IT-компаний. По результатам интенсивов 10 лучших студентов будут представлять свои проекты.

14 - 30 СЕНТЯБРЯ
14 - 30 СЕНТЯБРЯ
> 10 ЛЕКЦИЙ
> 10 ЛЕКЦИЙ
ОНЛАЙН
ОНЛАЙН
РАСПИСАНИЕ ЛЕКЦИЙ
Михаил Григорьев
14.09 18:00 Вводная лекция, история NLP
Мария Тихонова
16.09 18:00 Основы нейронных сетей
Григорий Лелейтнер
17.09 18:00 Методы хранения и сбора, препроцессинг, морфологический анализ, неодназначность
Татьяна Шаврина
18.09 18:00 Сверточные нейронные сети
Татьяна Гайнцева
19.09 11:00 Векторные представления слов
Мария Тихонова
21.09 18:00 Языковые модели. Часть 1 (до трансформеров)
Татьяна Шаврина
22.09 17:00 Рекуррентные нейронные сети
Антон Астахов
22.09 19:00 Как построить лучшую модель машинного обучения?
Аркадий Боков
23.09 18:00 Языковые модели. Часть 2 (эра трансформеров)
Мария Тихонова
24.09 17:00 Эмбеддинги в машинном обучении
Татьяна Гайнцева
25.09 18:00 Case Study: классификация текстов, tf-idf
Татьяна Шаврина
27.09 17:00 Topic Modelling
Мария Тихонова
28.09 18:00 Как смартфон узнает своего владельца: отпечатки пальцев и радужка
Алексей Фартуков
29.09 18:00 Как смартфон узнает своего владельца: распознавание лиц
Алёна Москаленко, Иван Печенко, Иван Соломатин
30.09 18:00 QA + Case Study
Татьяна Шаврина
4

Чемпионат

Всероссийские соревнования по алгоритмическому программированию и искусственному интеллекту

Соревнования – это отличная возможность заявить о себе, попробовать себя в командной работе, порешать задачи на реальных датасетах ведущих IT-компаний на треке по искусственному интеллекту.

Algorithmic programming

Все желающие смогут принять участие в онлайн-чемпионате по олимпиадному программированию RuCode. Задания будут дополнительно переведены на английский для зарубежных участников.

4 октября
4 октября
ОНЛАЙН
ОНЛАЙН

Artificial intelligence

Презентация лучших решений участников интенсивов по искусственному интеллекту.

3 октября
3 октября
ОНЛАЙН
ОНЛАЙН
ОПИСАНИЕ ТРЕКОВ
Anti-fraud: выявление мошенничества в объявлениях о найме
Задача трека: научиться выявлять фейковые объявления о найме на работу. Данные представляют собой csv таблицу с текстами объявлений и мета-информацией. Для постороения хорошего решения придется научиться использовать оба вида информации. Особенность задачи состоит в том, что выборка очень несбалансирована: фейковых объявлений довольно мало.
Верификатор новостей: фейк не пройдет!
Задача трека: научиться предсказывать подлинность новости. В качестве данных вам предстоит работать с текстами новостей с различных информационных порталов. На этих данных вам предстоит обучить модель машинного обучения, предсказывающую является ли новость фейком или нет (fake-not fake).
Обезличивание данных
Задача трека: Разработать алгоритм по консистентному обезличиванию данных, для соблюдения закона о защите персональных данных, а также допуску к структурам данных третьих лиц. Особенность задачи состоит в том, что данные взаимосвязаны между собой, а также используются справочники и существует различная гранулярность внутри и между таблицами. Требования: Сохранение консистентности, невозможность обратного преобразования, сохранение смысловой части доменов и визуально похожее представление данных

Чтобы принять участие в чемпионате необходимо:

1
Собрать команду до трёх человек.
2
Каждому зарегистрироваться на сайте Rucode.net
3
Каждому заполнить анкету в личном кабинете.
4
Присоединиться к чемпионату и решить максимум задач!