Истории

«Мой проект сочинял рэп на основе стихотворений Пушкина». Как я увлёкся машинным обучением и поработал в двух крупных компаниях

Истории
Александр Мамаев
Александр Мамаев

Студент Университета ИТМО

Анна Меликян

В седьмом классе Александр увлёкся радиоэлектроникой. Затем он понял, что можно не только паять, но и программировать микроконтроллеры. Начал писать игры, изучил промышленное программирование и занялся машинным обучением. После победы в хакатоне он поступил в Физтех-лицей, сейчас учится на первом курсе в Университете ИТМО. К 18 годам Саша успел поработать в «Тинькофф» и «ВКонтакте». Он рассказал, как поступил в лицей, какие проекты уже создал и какие у него планы на будущее. 

«Мой проект сочинял рэп на основе стихотворений Пушкина». Как я увлёкся машинным обучением и поработал в двух крупных компаниях

Как я увлекся программированием 

Я учился в самой обычной школе в Челябинске. У нас не было никаких особенных курсов, мне просто нравилось программирование и я занимался самообучением. Я сменил школу, и в ней уже преподавали курсы по олимпиадному программированию. Олимпиадное программирование похоже на олимпиады по математике. Но в математике тебе нужно найти решение для конкретной задачи, а в олимпиадном программировании – написать общее решение для любых подобных задач с разными вводными данными. 

Постепенно я перешел в область машинного обучения, которое стало моей профессиональной деятельностью. В прошлом году я переехал из Челябинска в Долгопрудный и  поступил в Физтех-лицей при МФТИ. 

О своих проектах

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

Сначала я делал разные штуки для себя. Например, у меня был проект, который позволял сочинять рэп на основе текстов Пушкина. Алгоритм автоматически подбирал рифмы. Тексты были не особо связные, но забавные. И даже получались какие-то треки. Помимо этого, я участвовал в хакатонах с товарищами, и мы периодически делали что-то интересное. Например, в прошлом году мы участвовали в хакатоне от «Вконтакте», и сделали приложение для интерактивных экскурсий по Эрмитажу. Мы были на первом месте, но забыли вовремя отправить презентацию, и за это были дисквалифицированы. Если бы мы не оплошали, мы бы взяли приз в полмиллиона рублей. 

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

О Физтех-лицее

Я поступил в него благодаря хакатону Сбербанка AI-Академия. Это первая, наверное, олимпиада для школьников, профессионально направленная на машинное обучение и искусственный интеллект. Надо было по состоянию текущей игры Дота 2 определить, кто в конце матча победит. В онлайн и оффлайн этапах я занял первое место по качеству решения задачи. Нам выдали денежные призы, ноутбуки и дали возможность поучаствовать во вступительных испытаниях в Физтех-лицей. 

Надо было сдать информатику, математику и, как ни странно, русский язык. Я сдал математику хорошо, информатику на отлично, а русский язык завалил. Но меня все равно взяли.

Обучение там, конечно, сильно отличалось от моего школьного. Надо понимать, что это не Челябинск, это Долгопрудный, который находится очень близко к Москве. И это дает нереальный буст. В Москве происходит буквально всё и, если у тебя есть достаточное желание что-то делать, ты сможешь всего достичь. Я смог работать, ездить в офис, знакомиться с людьми, общаться. 

У нас  очень хорошо преподавали математику и информатику, не только для уровня ЕГЭ. ЕГЭ – очень ограниченная область с базовыми вещами. Нам же читали по сути первый курс ВМК МГУ: введение в различные алгоритмы, структуры данных и многое-многое другое. Мне потом легче было учиться в вузе.

О работе в «Тинькофф» и во «ВКонтакте»    

Да, я работал в «Тинькофф». Туда я попал по какой-то странной случайности. Я выступал на конференции Backend про машинное обучение и искусственный интеллект с двумя докладами. И в какой-то момент мне написал HR из «Тинькофф» с предложением пройти собеседование. Я прошел два собеседования, и меня взяли на позицию младшего аналитика. По факту мы занимались разработкой голосового ассистента и всем, что связано с обработкой текста. 

Мне тогда не было 18, но это никого не смутило. Когда я заполнял анкету, форма не давала мне пройти валидацию из-за возраста. Я забил, но через неделю мне позвонил HR, чтобы узнать, почему я не отправил анкету. Я всё объяснил, и они мне прислали форму в виде документа – и все сложилось. 

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

О машинном обучении и соревнованиях

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

В России рабочих позиций в этой области огромное количество. Правда, в основном, в Москве и немного в Санкт-Петербурге. 

Хакатоны проходят регулярно. Но некоторые из них неинтересные, их организуют люди, которые не совсем понимают, что делать. Есть хакатоны, которые организует Data Science – одно из самых главных русскоязычных сообществ по машинному обучению. И одно из самых больших в мире. Есть хакатоны от «ВКонтакте», зарубежные (один из самых популярных – Junction), на который мы с командой в этом году поедем. Он проходит в Финляндии. На всех этих хакатонах можно показать свои скилы и это достаточно интересно. 

Помимо хакатонов есть большое количество соревнований, которые направлены профильно на машинное обучение. Если на хакатонах нужно создавать какие-то проекты, придумать идею, понять его уникальность, суть и так далее, то есть такую менеджерскую задачу выполнить, то на соревнованиях по машинному обучению вам дается строгая задача: у нас есть вот такие данные, такая задача, её необходимо как-то решить. Соответственно, люди уже соревнуются не за качество идеи и не за качество её исполнения, а за то, насколько качественный алгоритм предсказания они смогут разработать. Например, такие соревнования ежегодно проводит Сбербанк, в прошлом году я в одном из таких участвовал. Надо было разработать систему AutoML. У нас есть условный набор данных, нам про него ничего не известно, мы не хотим погружаться в его структуру, у нас есть просто формальное описание этих данных и мы хотим на любом таком формальном наборе данных получать автоматические апдейты. Система сможет на них обучаться и тут же что-то выдать. Условно говоря, мы хотим заменить механическую работу data-scientist на что-то удобное. И вот у меня получилось в том году занять пятое место. 

Об образовании и планах на будущее 

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

Мне нравится, что в ИТМО у нас в основном только профильные предметы, и ты изучаешь только то, что нужно для профессии. 

Из планов у меня, во-первых, запустить новый проект, в во-вторых – сдать сессию. Это два главных поинта на этот год.

Фото на обложке: Shutterstock

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 Как я уехал из Новосибирска на учебу в Москву, а потом нашел работу в Чикаго
  2. 2 «Я помогаю разработчикам помнить о целях бизнеса». Как участвовать в хакатоне, если ты не программист
  3. 3 «Мы сделали AR-навигацию, которая доведет вас от метро до кабинета». Проект школьника на дополненной реальности

Актуальные материалы —
в Telegram-канале @Rusbase