Вам нужно знать математику для науки о данных?

Мысли о моем опыте работы в этой области за последние два года, работая среди студентов и опытных профессионалов.

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

(Не отвлекаясь на эту тему, я на самом деле задаюсь вопросом, не стоит ли нам начать преподавать математику для науки о данных в старших классах, чтобы ученики увидели, насколько классной может быть математика!)

Если вы просмотрите доски объявлений о вакансиях специалистов по данным, вы, вероятно, увидите, что требуется некоторый математический опыт, обычно в форме какой-то степени бакалавра или магистра. Конечно, это еще больше усиливает эту потребность в математике, но нужно помнить об одной вещи не только для должностей в области науки о данных: должности часто пишутся не очень хорошо, поскольку они часто пишутся рекрутером, не имеющим непосредственного опыта в этой должности. Опять же, это проблема не только науки о данных. Это часто случается практически с любой технической позицией.

С учетом всего сказанного, я подумал, что поделюсь своими мыслями, поскольку уже более двух лет практикую в этой области. У меня была прекрасная возможность работать не только в моей собственной компании, но и наставником студентов из учебных курсов по науке о данных, наставничеством студентов колледжей, посещающих традиционные четырехлетние университеты, специализирующихся в области науки о данных, и многое другое. Откровенно говоря, у меня нет математического образования. На самом деле, мои единственные формальные степени относятся к области лидерства. Но я полюбил математику и все те крутые вещи, которые мы с ней делали. От превосходных видеороликов, созданных 3Blue1Brown, до замечательных книг, написанных такими людьми, как Стивен Строгац и Бен Орлин, я думаю, что я один из немногих людей в мире, которые любят математику, но не имеют математического образования. 😂

Чтобы напрямую ответить на большой вопрос, который ставит этот пост, ответ - не однозначное «да или нет». На самом деле, я буду очень откровенен прямо здесь: Да, вам действительно нужно знать математику, но степень, в которой вам нужно знать определенные математические концепции, будет зависеть от ваших конкретных интересов. Чтобы прояснить, что именно это означает, я разделю оставшуюся часть этого поста на два основных раздела. В первом основном разделе я разделю уровни необходимых математических знаний на три разных уровня: уровень 1 - это самый низкий требуемый уровень математики, а уровень 3 - самый высокий требуемый уровень математики. Затем, во втором основном разделе, я приведу ряд примеров, в которых мы применяем науку о данных во всех отраслях, и поделюсь своими мыслями о том, какой математический уровень я бы связал с этой работой.

Хорошо, давайте перейдем к трем разным уровням!

Три уровня математического образования

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

Уровень 1: концептуальное понимание математики

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

В то же время, есть еще некоторый уровень математических знаний даже при выполнении тех более тривиальных задач, о которых говорилось выше. Я могу набирать числа в своем калькуляторе чаевых только потому, что понимаю, как работает простое умножение с десятичными знаками. То же самое можно сказать и о науке о данных. У нас есть много замечательных библиотек кодирования, таких как Numpy и Scikit-Learn, которые сделают все эти вычисления за нас, без необходимости вычислять математику самостоятельно. Фактически, причина, по которой сейчас глубокое обучение, заключается в том, что для человека было практически невозможно создать что-то вроде нейронной сети из-за огромного количества вычислений, которые компьютер выполняет при выполнении алгоритма глубокого обучения.

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

Но современное образование прошло долгий путь к обучению этим концепциям, при этом учащемуся не обязательно изучать лежащие в основе математические вычисления. Например, вышеупомянутый 3Blue1Brown имеет феноменальную серию YouTube по линейной алгебре, которая обучает студентов этим концепциям с помощью анимации и в значительной степени избегает тратить слишком много времени на сами вычисления. Поэтому, хотя я знаю, что такое стохастический градиентный спуск (SGD) и как он применяется в нейронных сетях с глубоким обучением, я, честно говоря, не смог бы записать математическую формулу, если бы вы меня об этом попросили.

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

Уровень 2: умеренное знание математических расчетов

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

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

Я изо всех сил пытаюсь сформулировать, в чем заключалась эта проблема, поскольку прошло уже несколько лет, но я еще не нашел более чистого способа выполнять такую ​​работу, не имея более глубокого понимания этих концепций линейной алгебры. Другими словами, я до сих пор не нашел волшебной библиотеки программного обеспечения, которая бы абстрагировала все эти вычисления. Точно так же я уверен, что есть вещи, в которых я, вероятно, был бы лучше, если бы я лучше понимал эти математические концепции. Лучшие кандидаты уровня Tier 2, вероятно, будут иметь степень бакалавра в какой-то области математики, если не по крайней мере в какой-то области математики.

Уровень 3: Специальное образование по математике

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

Примеры того, как эти уровни применяются в разных пространствах

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

Инженеры по машинному обучению: уровень 1

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

Младшие специалисты по данным: уровень 1

Как я уже говорил выше, вы можете пройти долгий путь с библиотеками Python, такими как Numpy и Scikit-Learn, поскольку они абстрагируются от лежащих в основе математических концепций. Несмотря на то, что я занимаюсь MLE в своей повседневной работе, мне нравится создавать свои собственные прогностические модели для развлечения вне работы, и я могу полностью обойтись на уровне знаний Tier 1. Опять же, я не думаю, что даже младший специалист по данным может справиться со средним школьным уровнем математических знаний, поэтому в моем понимании минимум всегда будет Уровнем 1.

Специалисты по глубокому обучению: уровень 1

Некоторых это может удивить, но, как я отмечал выше, глубокое обучение практически невозможно вычислить вручную, потому что компьютер выполняет миллиарды небольших вычислений для выполнения алгоритма глубокого обучения. Независимо от того, интересуетесь ли вы обработкой естественного языка (NLP) или классификацией изображений, нельзя избежать того факта, что вам понадобится компьютерная помощь для выполнения этих сложных алгоритмов. Конечно, среднему практикующему специалисту по глубокому обучению все еще необходимо понимать, как такие вещи, как функции активации, используются между уровнями нейронной сети, но я бы сказал, что не так уж важно понимать, как работает этот фактический расчет. (Конечно, если вы хотите внести свой вклад в крупную библиотеку глубокого обучения, именно здесь вам понадобится нечто большее, например уровень знаний 3-го уровня.)

Ведущие специалисты по данным: уровень 2

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

Актуарные аналитики: уровень 3

Когда я писал описание уровня 3, я думал именно об этом, в основном потому, что сам работаю в страховой отрасли. Я бы полностью считал актуарную науку одной из форм науки о данных, но я бы ни за что не доверил создание актуарных моделей кому-либо с уровнем знаний 1 или 2. Этим людям требуется уровень знаний Уровня 3, и, если я правильно помню, я думаю, что вам действительно нужно сдать ряд актуарных экзаменов, чтобы стать практикующим актуарным аналитиком.

Инженеры по аппаратному обеспечению: уровень 3

Это, наверное, очевидно, но я все равно накинул его сюда. Если вы тот, кто хочет создать что-то вроде графических процессоров, используемых для глубокого обучения, не избежать того факта, что вам понадобится очень узкоспециализированный математический фон. Когда дело доходит до аппаратного обеспечения, в наши дни игра называется «оптимизация», и, учитывая, что инженеры по аппаратному обеспечению работают непосредственно с кремнием, лежащим в основе этих специальных вычислительных компьютерных чипов, этим людям приходится использовать все свои математические навыки, чтобы получить максимальную отдачу. этого кремния!

На этом этот пост завершен! Я надеюсь, что это будет полезно особенно для вас, ребята, которые только сейчас начинают заниматься наукой о данных. Очевидно, что наиболее эффективными специалистами по обработке данных будут те, кто обладает высочайшим уровнем знаний, но я надеюсь, что отрадно отметить, что вам не обязательно иметь самое серьезное математическое образование, чтобы проникнуть в сферу науки о данных. Спасибо за чтение, до встречи в следующем посте!