Наука о данных теперь другая

Содержание: [Показать]

Что вы думаете, когда читаете фразу «наука о данных»? Вероятно, это комбинация таких ключевых слов, как статистика, машинное обучение, глубокое обучение и «самая сексуальная работа 21 века». Или, может быть, это изображение специалиста по данным, сидящего за своим компьютером и создающего потрясающие визуальные эффекты из хорошо проведенных A / B-тестов. В любом случае, это гламурно, умно и изысканно. Это нарратив, который продает наука о данных с тех пор, как я начал работать в этой области почти десять лет назад.

Я начинал как аналитик данных.

Я уже упоминал, насколько я ненавижу стандартные значения форматирования числовой строки в Excel?

- Вики Бойкис (@vboykis) 18 мая 2012 г.

В то время как я все еще в основном ждал завершения SQL-запросов и очистки чрезвычайно грязных и грустных файлов Excel, я читал сообщения Hacker News о добыче массивных наборов данных, новой горячей команде Facebook по науке о данных, Хэле Вариане и сновидениях.

В 2012 году мне повезло: я попал в команду аналитиков / инженеров, которая переводила некоторые из своих процессов ETL с Oracle на Hadoop, чтобы не отставать от пропускной способности данных.

Есть ли «Hadoop для полных дебилов»? Hadoop для идиотов просто не подходит мне.

- Вики Бойкис (@vboykis) 16 августа 2012 г.

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

Я хотел быть одним из таких людей! Итак, я изучил Python онлайн, освежил всю статистику, полученную мной в бакалавриате, и сделал множество ошибок командной строки при работе с HDFS. В те ранние годы не существовало реального формализованного способа изучить «науку о данных», кроме как посмотреть, что делают все остальные, пойти на встречи и попытаться прочитать отрывки из описаний должностей HR.

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

С 2012 года отрасль науки о данных развивалась очень быстро. Он прошел почти все стадии ажиотажа Gartner.

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

Многое изменилось. Большие данные (помните, Hadoop? И Pig?) Отсутствуют. R пережил стремительный рост популярности. О Python написали в Economist. Затем облако снова все изменило.

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

Избыток новых ученых данных

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

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

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

Очень и очень сложно оценить истинный разрыв между рыночным спросом и предложением, но вот отправная точка.

Апрельское исследование объявлений о вакансиях выявило в США более 10 000 вакансий для людей с искусственным интеллектом или навыками машинного обучения.

Далее в статье отмечается,

Более 100000 человек начали курс глубокого обучения, предлагаемый Fast.ai, стартапом, ориентированным на расширение использования ИИ.

Если предположить, что средний процент завершения MOOC составляет около 7%, это будет означать, что 7000 человек могут заполнить эти 10000 рабочих мест. На один год. Но как насчет следующего года. Предполагаем ли мы стабильные темпы создания рабочих мест в области науки о данных? Во всяком случае, рынок труда в области обработки данных как таковой, похоже, сократится, что соответствует моим личным ожиданиям.

В более крупном исследовании LinkedIn сообщает, что на рынке отсутствуют 151 717 человек с навыками работы с данными. Хотя неясно, означает ли это напрямую специалистов по данным или просто людей с некоторой подгруппой этих навыков, давайте предположим, что это первое. Итак, в стране 150 000 вакансий для дата-сайентистов.

Учитывая, что 100 000 человек начали курс по науке о данных, давайте снова предположим, что 7 000 из них закончили.

Но ни одно из этих чисел не учитывает все программы и возможности для создания новых кандидатов в науку о данных: МООК за пределами Fast.ai, такие как Coursera, более 10 общенациональных буткемпов, таких как Metis и General Assembly, которые собирают когорты из 25 человек каждые 12 недель. , удаленные степени из таких мест, как UCLA, степени бакалавра в области аналитики и данных, YouTube и многое другое. Также есть большое количество докторов наук, которые, не имея возможности найти работу на чрезвычайно узком рынке труда, переходят из академических кругов в науку о данных.

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

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

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

Вводный курс по науке о данных на @Cal - это Data 8. Курс настолько популярен, что он проходит в Целлербах-холле. Осенний семестр 2018, день 1. pic.twitter.com/VbHtPnikmw

- Майк Олсон (@mikeolson) 4 октября 2018 г.

и UVA открывают школу данных.

UVA с гордостью объявляет о планируемой Школе науки о данных, которая будет служить одной из самых быстрорастущих потребностей общества. https://t.co/QlP4OUrTrO

- UVA (@UVA) 18 января 2019 г.

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

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

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

Хинтон об исследованиях машинного обучения:

«Мы должны искать радикально новые идеи. Мы знаем, что радикально новая идея в конечном итоге будет иметь гораздо большее влияние, чем крошечное улучшение. Это обратная сторона, когда у нас всего несколько старших ребят и миллиард юниоров ». https://t.co/AvtxiK8QsZ

- hardmaru (@hardmaru) 15 декабря 2018 г.

Наука о данных как вводящая в заблуждение работа

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

Это не их вина; это то, что подчеркивают учебные программы по науке о данных и технические СМИ. Немногое изменилось с тех пор, как я впервые взглянул звездными глазами на сообщения о логистической регрессии Hacker News много-много месяцев назад.

Реальность такова, что «наука о данных» никогда не была настолько связана с машинным обучением, как с очисткой, формированием данных и перемещением их с места на место.

Недавний, крайне ненаучный опрос, который я провел, подтверждает это:

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

«Как человек, получивший звание« специалист по данным »в 2019 году, я трачу большую часть (60% +) своего времени:»

(«Другое») тоже приветствую, - добавьте это в ответы.

- Вики Бойкис (@vboykis) 28 января 2019 г.

как и многие, многие твиты от отраслевых экспертов:

для моих последних нескольких проектов машинного обучения сложность заключалась не в моделировании или обучении; это было в предварительной обработке ввода. обнаружил, что у меня не хватает процессора больше, чем графического процессора, и в одном проекте я на самом деле не уверен, как оптимизировать питон дальше (и я рассматриваю С ++ для одной части)

- mat kelcey (@mat_kelcey) 11 февраля 2019 г.

Одна из самых больших неудач, которые я вижу у младших инженеров ML / CV, - это полное отсутствие интереса к построению наборов данных. Хотя это скучная тяжелая работа, я думаю, что нужно многому научиться, собирая набор данных. Это как половина проблемы.

- Кэтрин Скотт (@kscottz) 1 февраля 2019 г.

Роли и обязанности:

- Автоматизация ужасных бизнес-практик

- Написание специального SQL по мере необходимости.

НЕОБХОДИМЫЙ ОПЫТ:

- 15 лет опыта глубокого обучения Python

- докторская диссертация по байесовскому моделированию

- Опыт НЛП на 7 языках

- 10 лет создания кластеров Hadoop с нуля

- Nick Heitzman 📊📈 (@NickDoesData) 12 февраля 2019 г.

Просто личный анекдот, но за последние 2 года% любого данного проекта:

+, который включает ML: 15%

+, который включает перемещение, мониторинг и подсчет данных для подачи ML: 85%

- Вики Бойкис (@vboykis) 15 января 2019 г.

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

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

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

Это привело к нескольким причинам, включая, во-первых, повышение статуса должности «инженер по машинному обучению» как должности, которая несет в себе больший престиж и более высокий потенциал заработка за последние 3-4 года,

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

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

Совет новым специалистам по данным

Итак, продолжая давать советы новичкам, вот письмо, которое я бы отправил всем, кто спрашивал меня, как попасть в науку о данных в 2019 году.

Это двухэтапный план:

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

Не увлекайтесь наукой о данных

Учитывая, что на каждую младшую роль приходится 50, иногда 100, иногда 200 человек, не соревнуйтесь с этими людьми. Не получайте ученую степень в области науки о данных, не проводите учебные курсы (кстати, большинство учебных курсов, которые я видел, были неэффективными и за короткое время собрали слишком много информации, чтобы кандидаты могли эффективно ее получить). чувство науки о данных, но это другой, отдельный пост в блоге).

Не делайте того, что делают все остальные, потому что это не выделит вас. Вы соревнуетесь с разветвленной, перенасыщенной отраслью и только усложняете себе задачу. В том же отчете PWC, на который я ссылался ранее, количество должностей в области науки о данных оценивается в 50 тысяч. Количество публикаций по инжинирингу данных - 500 тыс. Количество аналитиков - 125 тыс.

Гораздо легче начать карьеру в области науки о данных и технологий через «черный ход», то есть начав в качестве младшего разработчика или в DevOps, в управлении проектами и, что, возможно, наиболее актуально, в качестве аналитика данных, информационного менеджера и т. Д. , чем заявить в упор на те же 5 позиций, на которые претендуют все остальные. Это займет больше времени, но в то же время, когда вы работаете над этой работой в области обработки данных, вы приобретаете важные ИТ-навыки, которые будут важны для вас на протяжении всей вашей карьеры.

Что, например?

Изучите навыки, необходимые для науки о данных сегодня

Вот некоторые проблемы, с которыми вам придется столкнуться в пространстве данных:

3) Оптимизация заданий Spark для повышения их эффективности

7) Создание и поддержание чистых данных в озерах данных

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

Что общего у всех этих сообщений в блогах? Хорошие универсальные инженерные навыки с опытом работы с данными.

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

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

1. Изучите SQL.

От HN: «Есть ли какая-нибудь небольшая и простая программа на JS и / или PHP, позволяющая легко работать с базой данных?» Ага, братан. Это называется SQL.

- Вики Бойкис (@vboykis) 25 ноября 2013 г.

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

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

SQL настолько велик и настолько популярен, что даже NoSQL и решения для хранилищ ключ-значение реализуют его заново. Просто проверьте Presto, Athena, который основан на Presto, BigQuery, KSQL, Pandas, Spark и многих, многих других. Если вас ошеломило огромное количество инструментов для работы с данными, скорее всего, для вас найдется SQL. И, как только вы поймете парадигму SQL, скорее всего, вам будет легче понять другие языки запросов, что откроет совершенно новую вселенную.

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

2. Очень хорошо выучите язык программирования и изучите концепции программирования.

Разве SQL не является языком программирования? Есть, но декларативно. Вы указываете желаемые выходные данные (то есть, какие столбцы из вашей таблицы вы хотите извлечь), но не то, как эти столбцы фактически возвращаются вам. SQL абстрагирует многое из того, что происходит под покровом базы данных.

Вам нужен процедурный язык, на котором вы должны указать, как и откуда выбираются данные. Большинство современных языков являются процедурными: Java, Python, Scala, R, Go и т. Д.

Существует много споров о том, какой язык выбрать для науки о данных, и я не буду рекомендовать его для каких-либо конкретных обстоятельств, за исключением того, что скажу, что в моей карьере Python мне очень хорошо послужил. Начать работу новичку достаточно просто, это (возможно) самый популярный язык программирования в сфере данных прямо сейчас, и его можно использовать для множества разных вещей, от создания модели в scikit learn до доступа к AWS API для создания веб-приложений, очистки данных и создания моделей глубокого обучения. Что касается статистической глубины, R наверняка превосходит Python.

Но опять же, мой совет - не стремиться к статистической глубине, а к общей широте программирования.

Есть некоторые задачи, для которых Python не подходит: крупномасштабные приложения, зависимости упаковки и некоторые конкретные численные задачи, особенно временные ряды и множество функций, которые входят в R из коробки, аналогично тому, что предлагает statsmodels, но на гораздо более детальный уровень.

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

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

Как вы используете ООП на своем языке? Что вообще означает ООП? Как вы оптимизируете свой код? Как работают зависимости вашего языка? Как вы упаковываете свой код на выбранном вами языке, как вы осуществляете контроль версий, непрерывную интеграцию, как развертываете артефакты модели? Где ваше языковое сообщество, где его встречи?

Выучите свой язык хорошо. Познакомьтесь с его бородавками и лучшими частями. Создайте что-нибудь веселое на своем языке.

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

3. Узнайте, как работать в облаке.

Теперь, когда вы знаете, как программировать, пора применить эти навыки и теорию в облаке.

В наши дни облако повсюду, и, скорее всего, вам придется работать в облаке на одной из ваших следующих должностей. Гораздо проще начать работу, особенно с учетом того, что в наши дни все больше и больше парадигм машинного обучения переходит к поставщикам облачных услуг (SageMaker, Cloud AI и Azure Machine Learning), есть готовые шаблоны для реализации алгоритмов и многое другое. данных вашей компании начинает храниться там.

Скорее всего, вы будете работать с AWS, лидером отрасли, но все больше и больше мест внедряют Google Cloud, и многие более консервативные, традиционные компании, которые уже работают с Microsoft, будут иметь Azure. Я рекомендую провести опрос по всем трем параметрам, а затем выбрать тот, который вам больше всего интересен. Парадигмы облачного дизайна схожи в том, что вы должны понимать, как склеивать сервисы вместе, как логически отделить свою часть облака от других серверов в облаке и как работать с большим количеством JSON.

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

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

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

Последние шаги

Теперь, глубокий вдох, я думаю, ты готов.

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

Помните, что конечная цель следования этому совету - победить толпу, получая научные степени, обучающие семинары и работая с учебными пособиями.

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

Мой последний общий совет - небольшой напутственный разговор:

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

«Если вы новичок в этой области и боретесь с частью (или со всем), помните, что никому не было легко», -

вдохновляющий пост от @GuggerSylvain о его путешествии от того, что никогда не использовал терминал, до того, чтобы стать основным разработчиком библиотека fastai! https://t.co/IXscShNs8X pic.twitter.com/uNGwFAurHm

- Рэйчел Томас (@math_rachel) 3 января 2019 г.

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

Одна из моих любимых книг - «Птица за птицей» Анны Ламотт. Это о том, как писать. История, которую она рассказывает в книге, о том, как книга получила свое название, - это книжный отчет, который должен был написать ее брат.

«Тридцать лет назад мой старший брат, которому в то время было десять лет, пытался получить отчет о птицах, на составление которого у него было три месяца. [Это] должно было быть произведено на следующий день. Мы были в нашей семейной хижине в Болинасе, а он сидел за кухонным столом почти до слез, окруженный бумагой, карандашами и неоткрытыми книгами о птицах, обездвиженный масштабностью предстоящей задачи. Тогда мой отец сел рядом с ним, обнял моего брата за плечо и сказал. «Птичка за птицей, приятель. Просто возьми птицу за птичкой ».

И он это сделал.

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