logo
Подготовка к вступительным в MADE: что почитать и какие курсы пройти
2 августа 2022



Чтобы успешно пройти отбор в MADE, нужно хорошо знать Python и несколько разделов математики. В этой статье расскажу про подготовку к вступительным в Академию больших данных.

 

Вступительные испытания проходят в несколько этапов:

  • Тест по математике;
  • Тест по программированию;
  • Соревнование по машинному обучению;
  • Анкетирование.
 

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


Проверяем уровень

Для начала попробуй порешать демонстрационный вариант заданий для поступления, чтобы понять свой уровень. Абсолютно нормально, если при первом взгляде становится страшно или текут слёзы. Эта статья тебе поможет подготовиться к поступлению за несколько этапов.


Убиваем страх

Есть мнение, что нужно пройти два курса хорошего технического вуза и только потом врываться в ML. Считаю это заблуждением: такой путь выдержит один человек из ста. Так можно более года учить что-то, не понимая зачем.

Да, чтобы освоить ML, требуется много времени, знаний математики и многого другого, но не всё сразу. Ты можешь начать прямо сегодня и маленькими шагами двигаться к цели. У тебя нет за плечами СУНЦ и мехмата МГУ? Ничего страшного, у меня тоже.


Смотрим заявленные темы

Темы можно найти здесь. На самом деле их не так много, весь курс знать не нужно. Времени до поступления — пара месяцев, поэтому будем переобучаться на заявленные темы. 


Судорожно читаем всю рекомендованную литературу

Шучу, достаточно пройти несколько курсов и порешать задачники. Об этом расскажу ниже, закончив с карьерой кринж-комика.


Линейная алгебра

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

 

Выбираем любой курс на свой вкус, все они взаимозаменяемые:

Если хочется почитать книги, то советую:

  • Александр Курош, «Курс высшей алгебры». В целом книга по алгебре, а не по линалу, но хорошо подойдёт для подготовки. Однажды я слышал, как соседи по общаге читали её вслух в ночь перед экзаменом по алгебре, наверное, учебник очень хороший;
  • Алексей Кострикин, «Введение в алгебру» (2004).

Задачи можно порешать здесь:

  • Виктор Прасолов, «Задачи и теоремы линейной алгебры» (1996);
  • Игорь Проскуряков, «Сборник задач по линейной алгебре» (2010).
 

Математический анализ

Можно упороться Фихтенгольцем и Зоричем, но боюсь, есть риск умереть от духоты. Поэтому снова курсы, которые весело и ненапряжно проходить:

Все остальные темы закрываем на mathprofi, либо читаем вышеупомянутую классику Фихтенгольца или Зорича. Задачник — Демидовича, это база.

Во время изучения советую пропустить доказательства теорем, для экзамена это точно не понадобится.
 

Дифференциальные уравнения

Список тем достаточно мал, в мой год поступления (2021-й) была задача на разделяющиеся переменные. На экзамене не стесняемся пользоваться Wolfram и прочими сервисами (по опыту, они могут неправильно решать, так что только Wolfram). 

Один-единственный задачник, по которому сам лично занимался, со всей необходимой теорией — «Сборник задач по дифференциальным уравнениям» Алексея Филиппова. В интернете к нему даже есть решебник, так что смею сделать вывод, что диффурам стоит уделить меньше всего времени, быстро прорешав пару задач по темам.
 

Теория вероятностей и математическая статистика

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

 

Курсы, которых хватит за глаза:

 

Учебники:

  • Владимир Гмурман, «Теория вероятностей и математическая статистика»; 
  • Уильям Феллер, «Введение в теорию вероятностей и её приложения» — покроет 99,9% материала (советовал блогер Флесс, сам не читал);
  • Альберт Ширяев, «Вероятность», учебное пособие — если хочется упороться углублённой теорией.
 

Задачники:

  • На Stepik из вышеуказанных курсов 1, 2, 3;
  • Методичка с mathprofi, где разобраны типичные задачи, но платно;
  • Задачи по теории вероятностей Альберта Ширяева.
     

Дискретная математика, комбинаторика и теория графов

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

 

Курсы:

 

Учебники:

  • Иосиф Романовский, «Дискретный анализ» — в своё время очень понравился, но к экзамену не особо подходит;
  • Сергей Яблонский, «Введение в дискретную математику» (2010);
  • Наум Виленкин, Александр Виленкин, Павел Виленкин, «Комбинаторика» (1969) — основа, можно начать с него, если не нравятся курсы.
 

Задачники (сложно выделить, обычно это были задачи со Stepik):

  • Гарий Гаврилов и Александр Сапоженко, «Задачи и упражнения по дискретной математике. Учебное пособие» (2009). Физматлит — стоит порешать, если после задач со Stepik чувствуете себя неуверенно.
     

Теория алгоритмов

Тут не стоит волноваться: если что-то не доучите, великолепный Григорий Шовкопляс на курсе по алгоритмам MADE всё разжуёт. Смотрим темы, решаем задачи, в том числе на реализацию для общего развития алгоритмического мышления.

 

Курсы:

  • Очень доступный курс Павла Маврина. Домашки здесь. Отличная замена душным книгам. Будет полезно сразу же решать задачи на тему лекций. Из минусов могу отметить, что 1,5 часа сложно удерживать концентрацию;
  • Базовый курс от CSC. Только основные темы, очень классно смотреть видео и сразу же решать задачи.
 

Книги (фундаментальная подготовка, но не всем подойдёт читать текст, как мне):

  • Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн, «Алгоритмы. Построение и анализ» (2009); 
  • Дональд Кнут, «Искусство программирования» (2008).
 

Полезные ссылки:

  • Великолепный e-maxx.ru — реализации большинства алгоритмов, которые будут нужны на экзамене;
  • Конспекты ИТМО — то же, что и e-maxx, но чуть объёмнее.
 

Решаем здесь:

  • LeetCode — красивый интерфейс, но на английском;
  • Codeforces — на русском, интерфейс из нулевых, но ничуть не уступает LeetCode.
     

Секция по ML

Здесь всё зависит от смекалки и опыта решения задач по ML. В мой год поступления показалось, что было достаточно легко (применил CatBoost и попал в топ-10). Сложно что-то посоветовать, кроме курсов. Главноехотя бы понимать, что и где использовать. Например, если видим табличные данные, то делаем предобработку, какую умеем, возможно, генерим фичи и применяем CatBoost с перебором гиперпараметров — работает безотказно в соревнованиях.

 

Курсы (без них никак):

Книги

  • Крис Элбон, «Машинное обучение с использованием Python» (2019) — по-моему мнению, лютая годнота, это сборник рецептов how-to, всегда держу под рукой.

Практика:

  • Учебные контесты на kaggle.com — обязательно для закрепления теории.
 

Анкетирование

Допустим, ты прошёл тесты. Наступает самый сложный этап — доказать в анкете, что тебе реально интересна тема DS и ML и ты точно справишься с обучением. Здесь подробно расписываем весь свой опыт, все свои заслуги в ML и DS, грамоты с муниципального этапа по борьбе и ОБЖ, рассказываем, как любим маму и папу. Важно показать свою мотивацию, иначе вся подготовка выше пойдёт коту под хвост. Но не переусердствуй, overqualified-абитуриентов тоже иногда не берут.

Если экзамены хорошо написаны, анкета — топ-1 эссе в MIT, то, вероятно, тебя даже не позовут на созвон по зуму и сразу примут. Если будут сомнения, придётся ещё немного потрудиться (что происходит на созвоне, я не знаю, меня сразу взяли). 

 

Итог

Я постарался собрать весь свой бэкграунд, который мне понадобился для поступления. Возможно, где-то много, где-то мало расписал, но я считаю, что эта статья — отличный ориентир для успешной подготовки. На экзамене не стесняемся пользоваться Google и Wolfram (тем более это не возбраняется, главное — никого не просить помочь). Лёгкого поступления никто не обещал, нужно приложить все свои усилия. И всё, что я могу сделать ещё, — это пожелать удачи. Если ты читал теорию и решал задачи, то действительно заслуживаешь место в Академии. Единственная причина переживать после хорошей подготовки — это элементарные арифметические ошибки, так что прошу пользоваться калькуляторами, чтобы не упустить свой шанс из-за какой-то глупости. Ты обязательно справишься!

 

Автор статьи - Кирилл Камаев, можете найти его в чате и расспросить об обучении в MADE.