Зачем нужна предварительная обработка?

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

Машинное обучение и данные

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

Методы предварительной обработки

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

1. StandardScalling

Почему мы это используем? Он преобразует непрерывные данные в нормально распределенные данные. Просто беглый взгляд на данные !! В основном есть два типа данных

  1. Качественный / описательный
  2. Количественный

Количественные данные также делятся на два типа

  1. Дискретные данные
  2. Непрерывные данные

Таким образом, когда у нас есть данные в непрерывной форме (2.4, 5.3, 6.1, 6,3) и они имеют высокую дисперсию, это означает, что данные сильно разбросаны, а данные не распределены нормально, мы используем StandardScaler для преобразования всех данных в нормальное распределение, чтобы среднее значение набора данных равно нулю, а стандартное - 1 или прибл.

ИМЕТЬ В ВИДУ:

Среднее - это среднее значение данных, чтобы узнать среднее значение данных, нам нужно сложить все числа и разделить сумму на общее количество точек данных. Например: 6 + 3 + 100 + 3 + 13 = 125 ÷ 5 = 25. Среднее значение 25.

Стандартное отклонение (STD)

Это измерение того, насколько разбросаны точки данных. Чтобы найти std, мы должны сначала найти среднее значение. Например: 6 + 4 = 10/2 = 5. Среднее значение 25. Затем вычислите дисперсию, возьмите каждую разницу в квадрат, а затем усредните результат:
Дисперсия
σ2 = 62–2 + 42–2 / 2
= 36 + 4/2
= 40/2
= 20

Среднеквадратичное отклонение

σ = √20
= 4.472135955

= 4 (с точностью до миллиметра)

Пример StandardScalling:

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

Затем создал DataFrame с использованием pandas и NumPy, это случайно сгенерированный набор данных.

Затем визуализировал это с помощью matplotlib

Этот набор данных не является реальными данными, он просто генерируется случайным образом, каждая строка имеет почти 500000 значений, и данные распределяются по заданным различным диапазонам. Диапазон значений от 0 до 10.

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

StandardScaling не только помогает снизить временную сложность за счет обычного распределения данных и преобразования среднего значения набора данных в 0, а стандартное значение в 1 или приблизительно, но также не нарушает функции данных и сохраняет данные в формате, понятном ML.

Scikit-learn

Scikit-learn - самая полезная библиотека для машинного обучения на Python. Библиотека sklearn содержит ряд эффективных инструментов для машинного обучения и статистического моделирования, включая классификацию, регрессию, кластеризацию и уменьшение размерности. Sklearn - это сердце ML, импортировав пакет sklearn. Здесь я только что импортировал функцию StandardScaler. Функция StandardScaler дополнительно определяется в переменной ss, эту переменную можно использовать всякий раз, когда требуется функция StandardScaler ().

Функция StandardScaler () имеет метод «.fit_transform ()», этот метод используется для подгонки и преобразования всего широко распространенного набора данных, это означает выполнение некоторых вычислений на обучающих данных и отображение преобразованных данных. Ранее я создал DataFrame с именем «df», проверьте изображение «случайно сгенерированные данные». Создается новая переменная data_tf, DataFrame преобразуется с помощью метода fit_transform StandardScaler. Чтобы подогнать и преобразовать данные, используется следующая LOC (строка кода).

Чтобы получить доступ к преобразованным данным, хранящимся в переменной «data_tf», с помощью библиотеки pandas и упомянув столбцы в наборе данных, просто построили столбцы (x1, x2, x3, x4), все данные по оси x обычно распределены и среднее значение всех данных равно нулю (0), а стандартное - (1). После применения StandardScaling значения также уменьшаются.

Следующий рассказ будет о другом методе предварительной обработки - «MinMaxScaler».