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

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

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

Шесть различных шагов, вовлеченных в машинное обучение

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

Шаг 1: Импорт библиотек

Шаг 2: Импорт данных

Шаг 3: Проверка пропущенных значений

Шаг 4: Проверка на категориальные данные

Шаг 5: Масштабирование функций

Шаг 6: Разделение данных на наборы обучения, валидации и оценки

Давайте разберемся с каждым из этих шагов в деталях:

1. Импорт библиотек

Самый первый шаг - импортировать несколько важных библиотек, необходимых для предварительной обработки данных. Библиотека - это набор модулей, которые можно вызывать и использовать. В Python у нас есть много библиотек, которые помогают в предварительной обработке данных.

Некоторые из следующих важных библиотек в Python:

  • Numpy: В основном используется библиотека для реализации или использования сложных математических вычислений машинного обучения. Это полезно при выполнении операции над многомерными массивами.
  • Pandas : Это библиотека с открытым исходным кодом, которая обеспечивает высокую производительность и простоту использования инструментов структуры данных и анализа данных в Python. Он разработан таким образом, чтобы сделать работу с отношениями и помеченными данными простыми и интуитивно понятными.
  • Matplotlib: это библиотека визуализации, предоставляемая python для 2D графиков или массивов. Он построен на массиве numpy и предназначен для работы с более широким стеком Scipy. Визуализация наборов данных полезна в сценарии, где доступны большие данные. Графики, доступные в matplot lib: линии, столбцы, разброс, гистограмма и т. Д.
  • Seaborn: это также библиотека визуализации, предоставляемая python. Он предоставляет высокоуровневый интерфейс для рисования привлекательных и информативных статистических графиков.

2. Импорт данных

После импорта библиотек наш следующий шаг - загрузка собранных данных. Библиотека Pandas используется для импорта этих наборов данных. В основном наборы данных доступны в форматах CSV, поскольку они имеют небольшой размер, что делает его быстрым для обработки. Итак, чтобы загрузить CSV-файл, используя функцию read_csv библиотеки panda. Различные другие форматы набора данных, которые можно увидеть,

Как только набор данных загружен, мы должны осмотреть его и найти любой шум. Для этого нам нужно создать матрицу объектов X и вектор наблюдения Y относительно X.

3. Проверка на недостающие значения

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

Есть два метода обработки пропущенных значений:

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

4. Проверка для категориальных данных

Данные в наборе данных должны быть в числовой форме, чтобы выполнять вычисления на них. Поскольку модели машинного обучения содержат сложные математические вычисления, мы не можем дать им нечисловое значение. Поэтому важно преобразовать все текстовые значения в числовые значения. Класс LabelEncoder () learn используется для преобразования этих категориальных значений в числовые значения.

5. Масштабирование функций

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

Методы, используемые для масштабирования объектов:

  • Масштабирование (нормализация мин-макс)
  • Средняя нормализация
  • Стандартизация (нормализация Z-показателя)
  • Масштабирование до длины единицы

6. Разделение данных на наборы для обучения, проверки и оценки

Наконец, нам нужно разделить наши данные на три различных набора: обучающий набор для обучения модели, проверочный набор для проверки точности нашей модели и, наконец, тестовый набор для проверки производительности нашей модели на общих данных. Перед разделением набора данных важно перетасовать набор данных, чтобы избежать смещения. Идеальная пропорция для разделения набора данных - 60:20:20, т. Е. 60% в качестве обучающего набора, 20% в качестве набора для тестирования и проверки. Чтобы разделить набор данных, дважды используйте train_test_split из sklearn.model_selection. Один раз разделить набор данных на поезд и набор проверки, а затем разделить оставшийся набор данных на поезд и тестовый набор.

Вывод - предварительная обработка данных в машинном обучении

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

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

Рекомендуемые статьи

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

  1. Важность искусственного интеллекта
  2. Интернет вещей
  3. Типы данных PL / SQL
  4. Типы данных Hive
  5. Типы данных R