Я изучаю машинное обучение уже около полугода и чем больше узнаю, тем больше понимаю, как многого я не знаю.

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

  • Визуализация данных
  • Информатика
  • Математика
  • Статистика
  • Машинное обучение
  • Экспертиза домена
  • Коммуникация

Что вообще такое наука о данных?

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

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

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

Я также хотел бы упомянуть, что многие из этих идей взяты из книги Кэти О’Нил и Рэйчел Шутт «Doing Data Science» (я очень рекомендую эту книгу).

Визуализация данных

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

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

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

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

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

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

Информатика

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

Информатика — очень широкая тема, и, к счастью, не вся она нужна для науки о данных.

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

Для новичка, я думаю, очень важно получить МНОГО практики в программировании. Я бы рекомендовал python для основного процесса машинного обучения (создание моделей), а затем R для EDA и другой визуализации данных.

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

Ниже я перечислю некоторые очень полезные статьи, веб-сайты и книги, которые помогут вам начать знакомство с информатикой:

Математика

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

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

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

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

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

Статистика

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

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

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

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

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

  • Вероятность — пожалуй, самая важная тема статистики. Понять основы не составит труда, поэтому я настоятельно рекомендую вам сразу же приступить к делу (хорошее место для начала)
  • Распределения вероятностей. Прежде чем перейти к этому, освежите в памяти вероятность, здесь — отличная статья, чтобы изложить основные концепции.
  • Проверка гипотез. Как только вы хорошо разберетесь с распределениями вероятностей, вы сможете ознакомиться с основами проверки гипотез здесь.

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

Машинное обучение

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

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

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

  1. Во-первых, прочитайте краткое описание каждого шага в этом процессе. (хороший ресурс можно найти здесь)
  2. Получите базовое представление о типах машинного обучения. (описание найдено здесь)
  3. Следуйте инструкциям от начала до конца по базовому набору данных. (здесь отличный туториал по питону)
  4. Примите участие в вводных соревнованиях Kaggle, в любое время, когда вы застряли, вы можете просмотреть чью-то записную книжку или получить помощь от сообщества. (рекомендую начать с конкурса Титаник)

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

  • Предварительная обработка данных — очистка и подготовка данных к использованию. ("ресурс")
  • Разработка функций — большая и важная тема, но не торопитесь, и вы справитесь с ней без проблем. ("ресурс")
  • Обучение / выбор модели — здесь вы найдете лучший алгоритм для использования. ("ресурс")
  • Оценка — тема выяснения, хороша ли ваша модель. ("ресурс")

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

Чтобы закончить этот раздел, вот две замечательные книги, которые помогут вам начать:

  • Основы машинного обучения, Мехриар Мори, Афшин Ростамизаде и Амит Талвалкар.
  • Введение в машинное обучение (адаптивные вычисления и машинное обучение) Этема Алпайдина

Экспертиза домена и общение

Я объединил эти две темы, поскольку они говорят сами за себя.

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

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

Вывод

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

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

Здесь используется шкала от 0 до 10, а цели устанавливаются на год вперед.

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