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

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

Данные

Как правило, наш набор данных предоставляется в виде CSV (файл с разделителями-запятыми) или файла Excel, или текстового файла, или изображений и голосов,

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

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

Шаг 1: Постановка проблемы

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

После прочтения задайте себе эти основные вопросы

  1. В чем проблема?
  2. Почему нужно решать проблему
  3. Как мы можем решить эту проблему?

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

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

Шаг 2: Генерация гипотезы

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

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

Шаг 3: Чтение и понимание

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

Шаг 4: Исследовательский анализ данных (EDA)

Существует два типа анализа визуализации, а именно. Одномерный анализ и двумерный анализ,

Одномерный анализ:

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

Двумерный анализ:

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

Шаг 5: Разработка функций

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

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

После всех вышеперечисленных процессов наш набор данных готов для построения модели, но проблема в том, что большинство алгоритмов машинного обучения не могут считывать категориальные значения, такие как «Мужской», «Женский», «Нет», «Да» и т. д. Мы используем методы кодирования для преобразования их в числовые значения. ценности. Это в основном включает кодирование меток, однократное кодирование, кодирование подсчета и т. Д.

Шаг 6: Моделирование и оценка

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

Линейные алгоритмы:

Градиентный спуск, линейная регрессия, логистическая регрессия, линейный дискриминантный анализ

Нелинейные алгоритмы:

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

Алгоритмы ансамбля:

Бэггинг и случайный лес, бустинг и AdaBoost

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

Можно было бы предсказать ряд алгоритмов, но возникает вопрос, какой из них лучше? Следовательно, нам нужно оценить нашу модель. В настоящее время существуют различные методы оценки наших моделей, такие как MSE, MAE, roc-curve, f1-score, log loss и многие другие.

Шпаргалка Scikit Learn

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

Подводя итог:

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

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