В этой статье я хотел бы поделиться своим опытом научной карьеры в области Data Science, накопленным за последние полтора года.
Это мой первый пост на Medium, поэтому я хотел бы рассказать о себе и о своем предыдущем опыте. Я аспирант Гарвардского университета по специальности Экологическая инженерия и вычислительная техника, а также подрабатываю консультантом по машинному обучению и блокчейну в британской консалтинговой фирме Critical Future, специализирующейся на искусственном интеллекте. Мои исследования сосредоточены на внедрении машинного обучения и искусственного интеллекта в науку об окружающей среде с использованием сенсорных систем, основанных на дронах, способных самостоятельно перемещаться для составления картины химического состава нижних слоев атмосферы, преимущественно в тропических лесах Амазонки (для тех, кто интересуется этим проектом, я опубликую отдельные статьи по этой теме в ближайшем будущем).
Я начал свой путь к PhD в Гарвардском университете осенью 2017 года, получив степень бакалавра и магистра в области машиностроения в Имперском колледже Лондона, а последний год обучения я закончил за границей в Национальном университете Сингапура. Во время учебы в бакалавриате я был мало знаком с Data Science и статистикой в целом, но при этом я много знал о программировании на Matlab, C и Visual Basic, а также имел сильную математическую базу.
До того, как я начал учиться в Гарварде, я никогда не программировал на Python, и даже не слышал об R. Я никогда не занимался параллельными вычислениями, не создавал кластеров, а машинное обучение и искусственный интеллект были вещами, о которых я обычно слышал только из антиутопических романов и фильмов.
Участие в программе Гарварда с акцентом на информатике и машинном обучении с таким скромным бекграундом было похоже на восхождение по отвесной скале (изнурительно и шатко). Впрочем, это Гарвард, так что вряд ли можно ожидать чего-то меньшего. Гарвардская программа PhD требует от прохождения 10 курсов, из которых обычно 8 магистерского уровня. Их можно проходить в своем темпе, но вы должны закончить их до выпуска, что в среднем занимает 5 лет. Студентам рекомендуется заканчивать все курсы в течение первых двух лет, после чего они могут получить свою (формально бесплатно) магистерскую степень. В конце весеннего семестра 2019 года я выполню эти требования и получу диплом, после чего сосредоточусь исключительно на исследованиях.
Осенью 2018 года в Гарварде была создана первая в истории группа слушателей магистерской программы по Data Science. Это двухгодичная программа, состоящая из основных курсов по Data Science, этики, а также прикладной математики, Computer Science и факультативов по статистике/экономике. Приехав за год до всех этих студентов, я буду одним из первых, кто выполнил основные предварительные требования для этой программы, что дает мне уникальный опыт в плане эффективности получения степени в области Data Science.
За последние 18 месяцев я прошел целый ряд курсов. Одним из первых был CS205: Параллельные вычисления, где я впервые научился программировать под Linux и создал вычислительные кластеры, способные обеспечивать линейное ускорение матричных вычислений, и кульминацией этого курса стал финальный проект, включавший параллельные вычисления на Python с Dask на кластере Kubernetes.
Также я взял AM207: Продвинутые научные вычисления, который предлагает Гарвардская Extension School (а это значит, что этот курс может пройти любой желающий). Этот курс был посвящен байесовской статистике и ее внедрению в машинное обучение, и он включал в себя бесчисленные часы симуляций на основе методов Монте-Карло с цепями Маркова (MCMC), работу с теоремой Байеса и даже просмотр короткого видео о Супермене, который заставил время повернуться вспять, (чтобы продемонстрировать концепцию реверсивности времени в машинном обучении)
Также одним из основных курсов является AC209a, в котором основное внимание уделяется основам машинного обучения и Data Science. Я бы сказал, что этот курс включает в себя то, о чем большинство людей думают, когда кто-то произносит слова Data Science или машинное обучение. Речь идёт о том, чтобы научиться проводить исследовательский анализ данных и запускать регрессоры и классификаторы с использованием sklearn. Большая часть занятий сосредоточена на понимании этих методов и на том, как лучше всего оптимизировать их для заданного набора данных (для этого нужно немного больше, чем просто использовать model.fit(X_train, y_train)...). Еще один курс AC209b: Дополнительные разделы Data Science, который является расширением первого класса. По сути, это курс по Data Science на стероидах, в котором первые несколько лекций начинаются с обобщенных аддитивных моделей и создания красивых сплайнов для описания наборов данных. Тем не менее, все быстро перерастает в параллельный запуск 2500 моделей, использующих Dask на кластере Kubernetes, в попытке провести гиперпараметрическую оптимизацию на 100-слойной искусственной нейронной сети. При этом, на самом деле, это было даже не самое сложное из того, что мы делали все это происходило всего лишь на третьей недели лекций, если говорить о курсе в целом.
Также я прошел и другие курсы, включая CS181: Машинное обучение, который охватывает математические основы регрессии, классификации, обучения с подкреплением и другие области с использованием как частотных, так и байесовских методов; AM205: Научные методы решения дифференциальных уравнений, а также AM225: Усовершенствованные методы решения дифференциальных уравнений в частных производных. Есть множество других курсов, которые я также мог бы пройти в течение оставшегося времени в Гарварде, чтобы углубить свои знания, такие как CS207: Разработка систем для вычислительных наук, AM231: Теория принятия решений, или AM221: Продвинутая оптимизация. Я также должен уточнить, что каждый из этих курсов имел финальный проект, который я смог добавить в свое портфолио.
Теперь перейдем к теме статьи после всего этого времени, которое я потратил на обучение тому, как быть хорошим специалистом в Data Science, стоило ли оно того? Или я мог сделать все это сам? Точнее, стоит ли кому-то, кто хочет заниматься этим в качестве карьеры, инвестировать 1-2 года и более 100 000 долларов в получение степени в области Data Science?
Я не думаю, что всему, чему я научился за эти 18 месяцев курсов по Data Science, я мог бы научиться, читая книги, просматривая онлайн-видео и изучая документацию различных пакетов программного обеспечения. Тем не менее, я не сомневаюсь, что получение степени в Data Science может ускорить чью-либо карьеру, а также может дать ценный опыт работы с реальными проектами, которые можно было бы обсудить в ходе интервью и использовать в портфолио. Лично мне потребовались бы годы, чтобы понять, как оптимизировать 100-слойную нейронную сеть, работающую на параллельном кластере в Google Cloud, если бы я просто сидел дома и смотрел видео на Youtube я даже представить себе не мог, как это сделать.
Любопытство к Data Science это замечательно, и я хотел бы, чтобы больше людей интересовались этой темой. С момента информационного взрыва кажется, что в ближайшее десятилетие данные станут новой мировой религией, и поэтому неизбежно, что миру понадобится гораздо больше специалистов в Data Science. Тем не менее, любопытство может завести вас очень далеко, и наличие клочка бумаги, который показывает, что вы потратили время, инвестировали в приобретение навыков и хороших привычек и стали по-настоящему опытным ученым, занимающимся данными, выделит вас среди остальных. Data Science существует не только в виде соревнований от Kaggle, как некоторые, кажется, думают.
Мой совет для тех, кто хочет заниматься Data Science, заключается в том, чтобы получить хорошую основу базу в статистике и математике, также я советую приобрести некоторый опыт в программировании на таких языках, как Python и R, а также освоить разработку под Linux. Большинство студентов на занятиях по информатике, которых я видел, похоже, борются с такими аспектами, связанными с информатикой, как работа с контейнерами Docker и создание и управление распределенными кластерами, работающими на некоторой облачной инфраструктуре. Для того, чтобы стать опытным специалистом в области Data Science необходимо овладеть многими сложными навыками, и я уж точно я не могу назвать себя экспертом. Однако, накопив некоторый опыт, я чувствую себя достаточно уверенным в том, что смогу продолжать развивать свои собственные навыки в области Data Science и машинного обучения, а также применять их в проектах и исследованиях, связанных с промышленностью, не опасаясь заниматься плохой наукой.
Если вы хотите узнать что из себя представляет курс по Data Science, я рекомендую взглянуть на онлайн-курсы, предлагаемые университетами, за прохождение которых можно часто получить зачетные единицы, необходимые для получения степени. Сейчас в Гарварде есть студент, который прошел 3 курса по информатике в Extension School, и теперь он имеет степень в области вычислительной техники и инженерии и является одним из ассистентов преподавателя в продвинутом курсе по Data Science. Все возможно!
Онлайн-курсы по Data Science с гос.дипломом МИСиС
НИТУ МИСиС и SkillFactory (онлайн-школа по Data Science), заключили соглашение о создании совместной онлайн-магистратуры Наука о данных, где будут стажировки в реальных проектах, чатики с менторами, индивидуальный план обучения. Занятия будут вести профессора НИТУ МИСиС и практикующие специалисты из Mail.ru Group, Яндекса, банков Тинькофф и ВТБ, компаний Lamoda, BIOCAD, АльфаСтрахование и др.
Это первый в России случай партнерства частной образовательной компании с государственным вузом по модели OPM (Online Program Management). Индустриальным партнером программы будет Mail.ru Group. Программу также поддерживают NVidia, Ростелеком и Университет НТИ 20.35.
Поступить в магистратуру смогут выпускники бакалавриата любого направления по результатам онлайн-экзамена. Подать заявку можно прямо сейчас и до 10 августа.
Полезные материалы
- Не становитесь Data Scientist
- 450 бесплатных курсов от Лиги Плюща
- Бесплатные курсы по Data Science от Harvard University
- 109 бесплатных курсов по Data Science
- 65 бесплатных курсов по Machine Learning от ведущих университетов мира
- Извините, но онлайн-курсы не сделают вас Data Scientist
- Как выучиться на Data Scientist: наиболее востребованные технические навыки
- Философия преподавания Data Science и Deep Learning от fast.ai
- Как я (PhD нейробиологии) стала Data Scientist за 6 месяцев
- Самый успешный и самый скандальный Data Science проект: Cambridge Analytica
- Python.org рекомендует: Программирование для НЕпрограммистов