История о том, как я поменял сферу деятельности, что послужило мотивацией и как мне помогла академия MADE в этой затее.



Мотивация


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

Была еще часть мотивации, связанная с тем, что один из братьев перекатился в ИТ, и после пары месяцев работы на аутсорсинговую компанию устроился фронтенд-разработчиком в крупный российский банк. Зарплата отличалась на порядок от моей в университете. Что вполне логично, ведь платят за ту ценность, которую ты можешь принести, а не за бумажную работу.

От аспирантуры у меня осталось смешанное впечатление. Возможно, я был плохим аспирантом, но как только я осознал, что тема диссера не принесет никому пользы, и диссертация после написания пойдет «в стол», возникло желание уйти из университета и взять академ в аспирантуре. Что я и сделал.

Ушел я в никуда. При этом у меня была отложена сумма, чтобы не отказывать себе в базовых потребностях 3 года (да, на производстве лопаток платили хорошо). Не буду рекомендовать так делать тем, кто только собирается перекатиться.

Первые «успехи»


Еще в аспирантуре меня как-то занесло сначала на курсы на Coursera по машинному обучению, а потом на совместное прохождение курса по DL от Carnegie Mellon University сообщества Open Data Science и на курс Юрия Кашницкого mlcourse.ai. После этого меня ждал «успех» с соревнованием в конце курса на Stepik по компьютерному зрению одной корейской компании. Первые 10 мест с соревнования обещали позвать на собеседование. Я был десятый. Мне пришло письмо с приглашением на собеседование (без назначенного времени, просто приглашение) и просьбой скинуть резюме. Я обрадовался и отправил резюме. Прошла неделя, но ответа так и не было. Я решил пингануть рекрутера и узнать, когда же будет собеседование. Но узнал, что резюме отклонил руководитель и собеседования не будет.

Параллельно с прохождением разных курсов я пробовал подаваться на вакансии, опубликованные в Open Data Science (ODS — крупнейшее русскоязычное сообщество специалистов по машинному обучению и анализу данных). Я проходил фильтры HR. Но потом чаще всего получал ответ, что нужно подучиться или поделать свои проекты / поучаствовать в соревнованиях по машинному обучению.

Я участвовал в соревнованиях на Kaggle и даже получил бронзовую медаль в соревновании Instant Gratification, сделав большой ансамбль из разных моделей. За счет того, что я доверял своей валидации, а не паблик скору на лидерборде, меня не скинуло вниз. Но бронза на Kaggle, как известно, не считается.

Второй успех, или как я попал в MADE


Спустя 3 месяца после увольнения, я увидел где-то упоминание об Академии больших данных MADE от Mail.ru Group. И решил попробовать. Несмотря на предупреждение, что MADE для специалистов с опытом работы в ИТ. Из релевантного опыта работы у меня было только программирование ПЛК на производстве и написание скриптов на Python для того, чтобы сконвертировать данные механических испытаний в нужный вид для статистической обработки. Все остальное — различные курсы.

При поступлении с экзаменом по математике проблем не возникло. С заданиями по алгоритмам были трудности, я решил только 2 задачи из четырёх за отведенное время. С таким результатом не поступить, когда конкурс — 40 человек на место.

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

Обучение в MADE


Поступил я на дистанционное обучение (я не из Москвы) и выбрал специальность Data Scientist. Учитывая, что у меня было много свободного времени (я все еще нигде не работал), от учебы я старался взять все по максимуму. Кроме обязательных курсов по программированию на Python, алгоритмам и структурам данных, машинному обучению, я записывался на интересные мне дополнительные курсы:

  • статистика;
  • дизайн и планирование экспериментов;
  • обработка естественного языка;
  • компьютерное зрение;
  • высокопроизводительные вычисления;
  • машинное обучение на графах и анализ социальных сетей;
  • практический курс по Big Data.

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


Если записаться на 7 курсов одновременно, то на лекции и практические семинары будет уходить примерно 21 час в неделю (7 курсов * 3 часа * 1 лекция в неделю). Это без домашних заданий. На домашние задания чаще всего уходило больше, чем 3 часа на один предмет в неделю. В итоге приходилось расставлять приоритеты.

В домашних заданиях не раз приходилось реализовывать различные алгоритмы машинного обучения с нуля. И поначалу было очень больно. Но теперь я спокойно могу имплементировать статьи с arXiv.org и чаще всего получаю от этого удовольствие.

В Академии MADE есть известные и хорошие преподаватели. Такие, как Сергей Николенко и Дмитрий Ветров. Также много преподавателей из индустрии. Например, преподают команды по распознаванию речи из ЦРТ и по компьютерному зрению из Mail.ru Group (Ивана Карпухина из этой команды я выбрал в качестве ментора для своего выпускного проекта).

Последний семестр получился особенно суровым. Во-первых, выпускные проекты приходилось совмещать с другими предметами. Во-вторых, я нашел первую работу в Data Science (про это отдельный блок в конце поста), и только тогда осознал, что испытывали все мои сокурсники, совмещая работу с учебой.

P.S.: отдельно отмечу, что у выпускников MADE есть возможность пройти собеседования и трудоустроиться в подразделения Mail.ru Group. И если меня не взяли в отдел, который занимается Марусей, то это я сам виноват, что накосячил с тестовым. :)

P.P.S.: сейчас названия курсов и сами курсы могут отличаться. Команда Академии MADE проделывает колоссальную работу: постоянно собирает обратную связь и дорабатывает учебную программу.

Почти успех


После второго семестра была передышка в виде летних каникул. После курса по компьютерному зрению хотелось применить полученные знания и поучаствовать в соревнованиях. Выбор пал на кейс компании ITS в рамках Цифрового прорыва. В нем нужно было классифицировать и сегментировать колонии бактерий. Большинство нестандартных идей не улучшило результаты и в лучшем решении был стандартный U-Net с SE-ResNeXt-50 (32x4d), все возможные TTA и усреднение предсказаний моделей, обученных на 5 фолдах.


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


На паблике у меня было 3-е место. После открытия приватного лидерборда оказалось, что у меня всего лишь 4-е место и 40 тысяч рублей призовых.

Хакатон Роснефти и первая работа


В сентябре 2020 года РН-БашНИПИнефть — крупнейший научно-исследовательский институт Роснефти — проводил «Хакатон трех городов», где нужно было разработать алгоритм для корреляции отражающих горизонтов.

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

В итоге решение состояло из жадного алгоритма в 30 строк кода и было написано в последний час до конца хакатона.


Слайд из презентации решения.

На публичном лидерборде я был четвертым, но после открытия приватного оказался на 3-м месте. На церемонии награждения познакомился с начальником отдела, который занимается Data Science проектами в РН-БашНИПИнефть. К слову, такие мероприятия — это как раз возможность нетворкинга с разработчиками и организаторами. После хакатона, как один из финалистов, я сразу получил оффер. И принял.

Когда я устроился, получил доступ ко всем данным, то и задачу хакатона решил совсем по-другому. Но про это уже не могу рассказывать из-за NDA.

Ну и стоило оно того?


Еще как стоило. Интересная работа и хорошая зарплата. Много интересных знакомств на соревнованиях и за время обучения в MADE. Чувство, что ты приносишь пользу обществу.

Не раз читал в ODS, что проще перекатываться в смежную область, но не внимал этим советам. А в итоге так и получилось. У меня техническое образование, связанное с нефтяной отраслью.

Сейчас идет набор в Академию MADE, и я рекомендую все-таки попробовать свои силы тем, кто сомневается. Будет тяжело поступить, и я уверен, что не все справятся с учебой. Но все равно попробуйте. Заявки принимаются до 31 июля 2021 года на сайте академии больших данных MADE.