Как бы я изучал Data Science, если бы начал пару лет назад, или Руководство по эффективному изучению науки о данных

Original author: Terence S
  • Translation
Когда я только начал своё путешествие к науке о данных, я потратил много времени на то, чтобы понять, с чего начать, что я должен узнать в первую очередь и какие ресурсы должен использовать. За последние два года я узнал несколько вещей, о которых хотел знать раньше, например о том, стоит ли сначала сосредоточиться на программировании или статистике, какие ресурсы я должен использовать для изучения новых навыков, как я должен подходить к изучению этих навыков и так далее. Таким образом, эта статья написана, чтобы дать направления и идеи для тех, кто изучает Data Science.




Оглавление:


Введение
1. Математика и статистика
2. Основы программирования
3. Алгоритмы и понятия машинного обучения
4. Проекты в области дата-сайнс

Введение


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

  1. Математика и статистика.
  2. Основы программирования.
  3. Алгоритмы и понятия машинного обучения.



1. Математика и статистика


Как и во всём остальном, вы должны изучить основы, прежде чем приступать к интересным вещам. Поверьте, мне было бы гораздо легче, если бы я начал с изучения математики и статистики, прежде чем приступать к каким-то алгоритмам машинного обучения. Три общие темы, которые я рекомендую посмотреть, — это математический анализ/интегралы, статистика и линейная алгебра (без какого-то порядка).

Интегралы


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


Статистика


Если и есть какая-то тема, на которой вы должны сосредоточиться, то это статистика. В конце концов, дата-сайентист — это действительно современный статистик, а машинное обучение — это современный термин для статистики. Если у вас есть время, я рекомендую вам пройти курс Джорджии Тек под названием «Статистические методы», который охватывает основы вероятности, случайные величины, распределение вероятностей, тестирование гипотез и многое другое. Если у вас нет времени посвятить себя этому курсу, я настоятельно рекомендую посмотреть видео Академии Хана по статистике.

Линейная алгебра


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


2. Основы программирования


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

SQL


Не важно, с чего начинать, но я начал бы с SQL. Почему? Его легче изучить и полезно знать, если вы заняты в компании, которая работает с данными, даже если вы не дата-сайентист.

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

Ниже приведены несколько ресурсов, которые вы можете использовать для практики SQL:


Python


Я начинал с Python и, вероятно, останусь с этим языком до конца жизни. Он далеко впереди, с точки зрения вкладов в Open Source, и его легко изучить. Не стесняйтесь обращаться к R, если захотите, но у меня нет никаких мнений или советов относительно R. Я обнаружил, что изучение Python с помощью практики гораздо полезнее. Тем не менее, пройдя несколько краш-курсов Python, я пришёл к выводу, что этот курс наиболее полный (и при этом бесплатный!).


Pandas


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




3. Алгоритмы и понятия машинного обучения


Если вы дошли до этой части статьи, это означает, что вы построили свой фундамент и готовы изучать интересные вещи. Эта часть разделена на две другие: алгоритмы машинного обучения и понятия машинного обучения.

Алгоритмы машинного обучения


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


Понятия машинного обучения


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




4. Проекты в области дата-сайнс


К этому моменту вы не только построите прочный фундамент, но и обретёте твёрдое понимание основ машинного обучения. Теперь пришло время поработать над личными сайд-проектами. Если вы хотите ознакомиться с некоторыми простыми примерами проектов дата-сайнс, посмотрите некоторые из моих проектов:

  • Прогнозирование качества вина с помощью методов классификации (статья, Github).
  • Визуализация данных о коронавирусе с помощью Plotly (статья, Github).
  • Система рекомендаций фильмов с совместной работой фильтров (Github).

Вот список проектов в области Data Science, которые вы можете посмотреть, чтобы придумать интересный сторонний проект.

Я надеюсь, что этот пост даст вам направление и поможет в вашей карьере в области Data Science. Нет никакой серебряной пули, так что не стесняйтесь относиться к этому посту скептически, но я действительно верю, что изучение основ принесёт свои плоды в будущем. А промокод HABR — добавит 10% к скидке на обучение, отраженной на баннере.

image



SkillFactory
Школа Computer Science. Скидка 10% по коду HABR

Comments 3

    +4
    за ссылки в статье спасибо, но фраза
    Я начинал с Python и, вероятно, останусь с этим языком до конца жизни.
    кажется слегка наивной ) я так 20 лет назад про С++ думал
      0
      А по времени сколько месяцев на все это?
        0
        С моей колокольни:
        — Хорошо, что SQL стоит на первом месте
        — Хорошо, что рекомендуют много читать код чужих проектов
        — Слишком много математики. Если Вы не изобретаете новый алгоритм, то интегралы и матрицы зашиты за абстракцией. Статистика, регуляризация, всякие стекинги и бустинги — это да, нужно понимать.
        — Слишком много конкретных методов ML. Обзорно почитать — ну да. Многие из них уже не в моде. Другие используются в одной конкретной области. Лучше больше кода и живых проектов посмотреть.
        — Совсем ничего нет про процесс. Каждый проект, да даже каждый дешборд аналитический (уж не говоря про всякий ML) — это целый продукт. Кто юзер, зачем это ему надо вообще, будет он доверять этому алгоритму, какие проблемы возникнут при первом ложно-пложительном результате — тут куча вопросов, которые погубили не один проект как в стартапах, так и в больших компаниях.

        Only users with full accounts can post comments. Log in, please.