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

Однако многие до сих пор не понимают, что такое наука о данных. Технологическая индустрия делает упор на такие модные словечки, как «машинное обучение» и «большие данные» (что заставляет многих полагать, что наука о данных — это единственное, чем занимается наука о данных). Хотя работа с большими данными и машинное обучение важны, они являются лишь компонентами более крупного процесс, из которого состоит наука о данных.

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

Итак, что такое машинное обучение?

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

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

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

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

Как начать заниматься машинным обучением

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

Подготовка данных

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

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

Извлечение признаков

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

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

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

Выбор и обучение модели

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

После того, как модель выбрана, пришло время ее обучить. Обучение — это то, где выполняется тяжелая работа, интенсивная математика, «обучение»; каждая модель определяет свой метод обучения. Целью обучения является использование входных данных для разработки математических отношений между переменными. Рисунок 2 представляет собой пример модели логистической регрессии, обученной на выживании (1 = выжил, 0 = погиб) на Титанике по полу. Обратите внимание, что в зависимости от данных обучения, мужчин и женщин, модель выдает разные логистические кривые.

Прогноз

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

Заворачивать

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

Этот пост был простым обзором концепций машинного обучения. Если вы тот, кто хочет получить опыт работы с наукой о данных из первых рук, я бы порекомендовал эту книгу О’Рейли. В книге рассматривается множество приложений и моделей машинного обучения, от регрессии до нейронных сетей. Он написан для python, но опыт не требуется. Удачного сбора данных!