Что такое наука о данных, почему она важна и как ей научиться —

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

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

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

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

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

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

Общие библиотеки обработки данных включают Numpy, Pandas, Matplotlib и несколько библиотек машинного обучения, таких как Scikit-learn, Tensorflow, PyTorch, Keras и другие.

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

Это часть более крупной серии, известной как Autodidact Project. Подробнее об этом путешествии и о том, как присоединиться — см. в этой статье:



Общие случаи машинного обучения Realword:

Вот некоторые примеры использования машинного обучения и моделей глубокого обучения:

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

  • Прогнозирование будущих цен на акции на основе прошлых торговых данных (пример задачи регрессии — получение количественного результата [т.е. 723,11 доллара США])
  • Прогнозирование того, не выполнит ли кто-то дефолт по банковскому кредиту или нет (пример задачи классификации - создание двоичного вывода [т.е. Да или Нет])
  • Кластеризация данных в связанные группы. Какие записи данных обладают сходными качествами и что у них общего?
  • Сведение размерности мультиомных медицинских данных к ее важнейшим характеристикам (PCA, анализ главных координат)
  • Определить, является ли событие необычным или нет (обнаружение аномалий)

Алгоритмы глубокого обучения:

  • Понимание человеческого почерка (распознавание изображений)
  • Преобразование текста в речь (аудиораспознавание)
  • Обучение компьютера тому, как играть и побеждать в видеоигре (обучение с подкреплением)

Алгоритмы принятия решений:

  • Рекомендации по поиску на YouTube, Netflix, Amazon на основе ваших просмотров видео или истории покупок. Что пользователь, скорее всего, захочет посмотреть или купить, основываясь на своей прошлой истории просмотров или корзине покупок?
  • Создание дерева решений. Построение визуальной и понятной для человека серии утверждений «если-то».

Обработка естественного языка (NLP):

  • Разговорный агент (т. е. личный помощник Siri на iPhone может понимать некоторые из наших запросов с помощью нашего голоса)
  • Перевод между языками (например, Google Translate)
  • Анализ настроений (например, это счастливый или расстроенный отзыв Yelp?)
  • Создание чат-бота (компьютер слушает и отвечает «на лету» заранее запрограммированными ответами)

Типичные этапы проекта машинного обучения:

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

  1. Получите набор данных. Общие подходы включают в себя: выборку из базы данных с помощью SQL-запроса, импорт компьютерного файла или загрузку данных из Интернета.
  2. Очистите данные. Удалите все пропущенные значения, переформатируйте столбцы, исключите ненужную информацию.
  3. Исследовательский анализ данных. Изучите данные, создайте сводную статистику и предварительные графики, чтобы можно было генерировать идеи.
  4. Решите, какой дизайн модели является лучшим на основе ваших данных.
  5. Создайте версию модели, используя алгоритм из импортированной библиотеки. Например: построение линейной модели или классификатора.
  6. Обучите прогностическую модель на основе ваших данных (обучающий набор).
  7. Проверьте, насколько хорошо он работает на новых данных, которых он никогда не видел (набор тестов).
  8. Настройте гиперпараметры, чтобы повысить производительность модели.
  9. Выполнение сторителлинга данных. Создавайте графики и делитесь результатами своей окончательной модели.

Обзор поля:

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

Я рекомендую прочитать эти статьи и посмотреть эти видео, прежде чем начинать свой собственный план обучения (также известный как проект «Автодидакт»).







Рекомендуемые курсы и проекты(8):

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

(1) Знакомство с Tableau

Цель: изучить, как использовать Tableau, простую программу для создания серии визуальных и интерактивных рабочих книг.

Почему?

Упростите процесс изучения данных (предварительный анализ), а также отчетность о результатах (пост-анализ).

Можно легко экспортировать онлайн и использовать для повествования данных.

Формат: Онлайн-урок, Udacity

Ссылка на сайт:



Продолжительность: 1–2 недели

Сложность: Легко

Стоимость: бесплатно

(2) Практическая статистика для науки о данных

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

Первые 3 главы посвящены статистике. Последние 4 главы посвящены принципам машинного обучения.

Формат: Книга, доступна на Amazon.

Ссылка на сайт:

https://www.amazon.com/Practical-Statistics-Data-Scientists-Essential/dp/1491952962

Продолжительность: 7 глав, 284 страницы (1–2 месяца).

Сложность: средняя

Стоимость: 25 долларов

(3) Python для анализа данных

Это основные библиотеки Python для обработки данных, с которыми вы должны освоить:

  • Numpy — как формировать N-мерные массивы для чрезвычайно быстрой обработки данных
  • Matplotlib — как делать простые графики и графики с помощью Python
  • Pandas — как загружать данные из файлов CSV, Excel и других 2D-данных со строками и столбцами в структуру данных DataFrame.

Формат: Книга, доступна на Amazon.

Ссылка на сайт:

https://www.amazon.com/Python-Data-Analysis-Wrangling-IPython/dp/1491957662/

Объем: 12 глав, 466 страниц.

Сложность: средняя

Стоимость: 29 долларов

(4) Любой семинар по машинному обучению

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

Формат: Онлайн

Продолжительность: 1–2 месяца

Сложность: Тяжело

Стоимость: варьируется

(5) Создайте портфолио проекта по машинному обучению!

Создайте любой интересующий вас проект!

Рассмотрите возможность размещения в учетной записи GitHub и в своем резюме.

Бесплатный курс Udacity по использованию GitHub — Ссылка

Для вдохновения — смотрите проекты на Kaggle.com

(6) Глубокое обучение с помощью Python

Цель:

Глубокое обучение — это подмножество машинного обучения.

Машинное обучение ориентировано на построение одной модели (регрессии, классификации и т. д.) для формирования прогноза.

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

Изучайте искусственные нейронные сети, включая рекуррентные нейронные сети и сверточные нейронные сети.

Формат: Книга, доступна на Amazon.

Ссылка на сайт:

https://www.amazon.com/Deep-Learning-Python-Francois-Chollet/dp/1617294438/

Продолжительность: 2–3 месяца

Сложность: Тяжело

Стоимость: $32

(7) Практический SQL за 10 минут

Цель:

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

Данные часто структурированы в реляционных таблицах. Эти таблицы имеют имена столбцов с установленными типами данных, ограничениями на количество символов и форматированием.

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

Формат: Книга, доступна на Amazon.

Ссылка на сайт:

https://www.amazon.com/Deep-Learning-Python-Francois-Chollet/dp/1617294438/

Продолжительность: 1–2 месяца, 23 коротких главы.

Сложность: средняя

Стоимость: 28 долларов США

(8) Создайте еще один проект глубокого обучения и добавьте его в свое портфолио

Прочее / бонусная подготовка:

Используйте эти дополнительные учебные ресурсы для дальнейшего обучения и карьерного роста.

Проектирование баз данных и хранилищ данных

Изучите, как данные организованы и хранятся.

Kaggle.com — коллекция конкурсов по науке о данных

Как найти интересные практические задачи?

Знаменитый курс Эндрю Нг по машинному обучению — Coursera

Вероятно, самый известный в мире курс по машинному обучению.

Книга по обработке естественного языка (NLP)

Как обрабатывать текстовые данные?

Deeplearning.ai

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

Fast.ai

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

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

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

Это часть более крупной серии, известной как Autodidact Project. Подробнее об этом путешествии и о том, как присоединиться — см. в этой статье: