🎓 Как я перешел из математиков в аналитики данных

Во вступительных публикациях серии мы писали о том, как можно изучить Data Science онлайн с нуля, а также о навыках, необходимых в профессии Data Scientist. В этом материале, подготовленном при поддержке Факультета Искусственного интеллекта онлайн-университета GeekBrains, мы перевели рассказ Тима Хоппера специалиста по анализу данных, разработчика программного обеспечения в области кибербезопасности и инженера машинного обучения. Тим изучал математику в колледже, а затем провел год в аспирантуре Университета Вирджинии. Сейчас он работает архитектором Data Science в DNT и ведет блог.

Перевод оригинального текста выполнен с сокращениями.

***

Во время моей учебы в колледже Business Week опубликовал статью, в которой говорилось: «не было еще лучшего времени, чтобы стать математиком». Тогда я видел огромное несоответствие между этим материалом и тем, чему меня учили на занятиях (а, значит, и теми, кого я считал математиками). Сталкиваясь с другими статьями, восхваляющими «век математиков», я все чаще задавался вопросом, знают ли их авторы, что на самом деле изучают студенты математических факультетов.

<a href="https://press.princeton.edu/sites/default/files/styles/hero_background/public/2019-09/SUB_Math_01_0.jpg?itok=dmWvu8Xm" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Небольшая предыстория обо мне

Пройденные мною в колледже курсы:

  • линейная алгебра;
  • дискретная математика;
  • дифференциальные уравнения (ОДУ и численные методы решения);
  • математическая статистика;
  • численные методы (линейное и квадратичное программирование);
  • общая алгебра;
  • теория чисел;
  • теория функций действительной переменной;
  • теория функций комплексной переменной;
  • общая топология.

Программа обучения также включала один семестр вводного курса по C++ и двух семестров физики для первокурсников. На протяжении года в аспирантуре я изучал анализ, алгебру и топологию. Моя курсовая работа была из области чистой математики, а домашние задания состояли из доказательств, выполненных ручкой на бумаге или оформленных в LaTeX.

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

Программирование и инжиниринг

Программирование является ключевым навыком в Data Science. Как утверждал Дрю Конвей, «специалисту по обработке данных необязательно иметь ученую степень в области информатики, но он должен уметь манипулировать текстовыми файлами в командной строке, понимать векторизованные операции и думать алгоритмически. Эти навыки сделают из вас эксперта в вопросах работы с данными». Многие из моих однокурсников, кратко ознакомившиеся с C++ и время от времени использующие Mathematica для решения дифференциальных уравнений, не знали ничего о работе с файлами из командной строки, не говоря уже о том, чтобы написать простой скрипт для sed (потоковый текстовый редактор прим. переводчика).

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

🎓 Как я перешел из математиков в аналитики данных

Прикладная статистика

Мое краткое знакомство с математической статистикой было полезным для освоения машинного обучения, но в моей математической подготовке отсутствовали курсы, связанные с постановкой статистического эксперимента. При этом многие команды Data Science занимаются причинно-следственным выводом, проектированием экспериментов и их анализом. Об этих необходимых для Data Scientist навыках на математическом факультете я ничего не узнал. Более того, до написания курсовой работы, я бы даже не смог дать определение машинному обучению, которое является краеугольным камнем науки о данных. Я бы сказал, что искусственный интеллект – это системы исполнения бизнес-правил на Lisp и Prolog.

Прикладная математика

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

Подозреваю, что многие люди, даже технические специалисты, не уверены в том, что академическая математика выходит за рамки студенческих вычислений. Математики в основном работают с абстрактными структурами, которые редко имеют какое-либо отношение к наборам данных. Джон Д. Кук сделал аналогичные наблюдения об ограничениях дисциплин чистой и прикладной математики, назвав себя «очень прикладным математиком». Под очень прикладной математикой он понимает «готовность к “грязной” работе, необходимой, чтобы увидеть, как математика используется на практике. Это касается не только самой математики, но и консалтинга, менеджмента, маркетинга и т. д.» Эти навыки явно отсутствуют в большинстве учебных программ, с которыми я знаком.

Математическое образование оставило меня совершенно неподготовленным к карьере в области Data Science. Поэтому вы могли бы спросить, как я получил работу аналитиком данных. Могу назвать несколько причин.

<a href="https://digitalsocietyschool.org/wp/wp-content/uploads/2018/09/data_track_banner.png" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Первая причина

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

Вторая причина

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

Третья причина

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

Четвертая причина

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

Пятая причина

Ненасытный интерес к компьютерам и решению задач сыграл ключевую роль в моем карьерном успехе. Страстно желая освоить программирование, я изучил PHP и SQL еще в средней школе (кстати, чтобы сделать фан-сайт Толкиена). Получив небольшие домашние задания по решению дифференциальных уравнений в Mathematica, я купил и прочитал книгу по программированию в Mathematica. В колледже и аспирантуре я часто пытался (иногда это удавалось) писать программы для решения домашних заданий, которые, как ожидали профессора, должны были решаться вручную. Эта любознательность снова и снова доказывала свою ценность: мне приходилось осваивать новые навыки и решать технические проблемы всех видов. Я с удовольствием принимаюсь за решение новых задач как на работе, так и в свободное время, вот уже пятнадцать лет.

Шестая причина

Мне посчастливилось найти работодателей, которые терпеливо обучали меня и давали свободу учиться самостоятельно. За два с половиной года профессиональной карьеры я изучил много нового и не думаю, что в ближайшее время остановлюсь. Как сказал Мэт Келси: «всегда будь уверен, что ты не самый умный человек в этой комнате». Я очень благодарен трем местам работы, где был окружен умными людьми, которые передали мне многие знания, и руководителям, которые доверяли мне достаточно, чтобы позволять разбираться во всем самостоятельно.

И наконец

Благодаря четырем с половиной годам участия в сообществе Data Science в Twitter, у меня была возможность общаться с одними из самых ярких умов в сфере Data Science (большинство этих людей я никогда не встречал лично), и построить социальную сеть, которая помогла мне найти текущую работу. Однако я больше всего хочу подчеркнуть педагогическую ценность твиттера. Каждый день я узнаю о выпуске новых программных инструментов, новых постах в блогах и размышлениях моих героев Data Science. Твиттер помогает понять, какие посты стоят времени, и благодаря ему я знаю о Theano, Scalding и dplyr.

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

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

***

Желающим освоить профессию аналитика данных мы рекомендуем курс Data Science Факультета Искусственного интеллекта. Программа включает основательную математическую подготовку: введение в математический анализ, теорию вероятностей и математическую статистику, линейную алгебру и алгоритмы анализа данных. А также программирование и навыки практической работы в команде. Кроме того, онлайн-университет GeekBrains позволяет не только получить студентам необходимые знания, но и устроиться на работу.

proglib.io

Добавить комментарий

Ваш e-mail не будет опубликован.

19 + 8 =