Наука о данных

Подход первых принципов в науке о данных

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

I. Введение

Подход, основанный на первых принципах, заключается в том, чтобы разбить проблему на фундаментальные части и развить их. Этот метод хорошо известен физикам еще со времен Аристотеля. Метод первых принципов - очень эффективный метод решения проблем. Илон Маск (генеральный директор Tesla и SpaceX) известен тем, что применяет метод первых принципов для решения технологических и инженерных проблем.

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

II. Пример 1: Визуализация данных о погоде

В примере 1 мы проиллюстрируем метод первых принципов, применив его к задаче визуализации данных. Используя набор данных weather_data.csv, цель - написать код для выполнения следующих задач визуализации данных:

  1. Возвращает линейный график рекордно высоких и записывает низкие температуры по дням года за период 2005–2014 гг. Область между рекордно высокими и рекордно низкими температурами для каждого дня года заштрихована.
  2. Накладывает диаграмму разброса данных за 2015 год для любых точек (максимумов и минимумов), для которых десятилетний рекорд (2005–2014 годы) был побит в 2015 году.

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

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

б) Геометрический компонент: здесь вы решаете, какой вид визуализации подходит для ваших данных, например точечная диаграмма, линейные графики, гистограммы, гистограммы, qq-графики, гладкие плотности, прямоугольные диаграммы, парные диаграммы, тепловые карты и т. д. Для набора данных о погоде мы сосредоточены на линейных графиках и диаграммах рассеяния.

c) Компонент сопоставления: здесь вам нужно решить, какую переменную использовать как вашу x -переменную, а что использовать как вашу y -переменную. Это важно, особенно когда ваш набор данных многомерный с несколькими функциями. В этом примере месяц - это переменная x (независимая переменная), а температура - это переменная y (зависимая переменная).

г) Компонент шкалы. Здесь вы решаете, какие шкалы использовать, например линейная шкала, логарифм и т. д. В этом примере мы используем простую линейную шкалу для оси температуры.

д) Компонент меток: сюда входят такие вещи, как метки осей, заголовки, легенды, размер шрифта и т. д. В этом примере наши x и y обозначены месяц и температура соответственно. Наша визуализация также получила название: «Рекордные температуры для разных месяцев с 2005 по 2015 год». Также добавлена ​​легенда, чтобы сделать визуализацию более удобочитаемой.

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

Когда все вышеперечисленные компоненты собраны вместе, конечный продукт показан на Рис. 1 ниже.

Полный код проекта данных о погоде можно загрузить из этого репозитория: https://github.com/bot13956/weather_pattern.

III. Пример 2: Построение модели линейной регрессии

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

а. Постановка проблемы

Определите цели вашего проекта. Что ты хочешь узнать? У вас есть данные для анализа?

Цель :. Цель этого проекта - построить регрессорную модель, которая рекомендует размер команды для потенциальных покупателей круизных лайнеров с использованием набора данных круизного лайнера cruise_ship_info. csv .

б. Анализ данных

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

  • Импортировать необходимые библиотеки
  • Чтение набора данных и отображение столбцов
  • Вычислить ковариационную матрицу
  • Создайте тепловую карту для визуализации ковариационной матрицы
  • Выбор признаков с использованием графика ковариационной матрицы
  • Определите матрицу характеристик и целевую переменную

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

c. Построение модели, тестирование и оценка

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

Поскольку наша цель - использовать регрессию, мы реализуем 3 различных алгоритма регрессии: Линейная регрессия (LR), Регрессия соседей (KNR) и регрессия опорных векторов ( СВР).

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

d. заявка

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

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

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

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

Набор данных и блокнот Jupyter для этого руководства можно скачать здесь: https://github.com/bot13956/Machine_Learning_Process_Tutorial.

IV. Резюме и заключение

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

Дополнительные ресурсы по науке о данных / машинному обучению

Минимум в области науки о данных: 10 основных навыков, которые необходимо знать, чтобы начать заниматься наукой о данных

Учебная программа по науке о данных

Основные математические навыки для машинного обучения

5 лучших степеней для входа в науку о данных

Теоретические основы науки о данных - мне нужно заботиться или просто сосредоточиться на практических навыках?

Планирование проекта машинного обучения

Как организовать свой проект по науке о данных

Инструменты повышения производительности для крупномасштабных проектов в области науки о данных

Портфолио Data Science более ценно, чем резюме

С вопросами и запросами пишите мне: [email protected]