Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

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

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

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

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

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

Задачи предварительной обработки и очистки данных, например задача изучения данных, могут быть выполнены в самых разнообразных средах, таких как SQL, Hive или Студия машинного обучения Azure (классическая версия), и с помощью различных средств и языков, таких как R или Python, в зависимости от того, где хранятся данные и как они отформатированы. Поскольку по свой природе процесс TDSP является итеративным, эти задачи могут выполняться на различных этапах рабочего процесса.

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

Пример просмотра и предварительной обработки данных в Студии машинного обучения Azure (классическая версия) см. в этом видеоролике.

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

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

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

Какие есть стандартные методы мониторинга работоспособности данных

Вот что нужно оценить, чтобы проверить качество данных:

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

В машинном обучении Azure используются табличные данные правильного формата. Если данные уже представлены в табличной форме, то вы можете провести их предварительную обработку прямо в Студии машинного обучения Azure (классическая версия) при машинном обучении. Если данные находятся не в табличной форме, а, например, в формате XML, для их преобразования в табличную форму может потребоваться синтаксический анализ.

Каковы главные задачи предварительной обработки данных

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

Как обрабатывать пропущенные значения

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

Как нормализовать данные

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

Как дискретизировать данные

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

Как сократить объем данных

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

Как очистить данные

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

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

Ссылки

Интеллектуальный анализ данных: концепции и методы. Издание третье, Morgan Kaufmann Publishers, 2011. Цзявей Хань (Jiawei Han), Мишлин Кэмбер (Micheline Kamber) и Цзянь Пей (Jian Pei)

Источник

Big Data. Machine Learning. Data Science.

Блог компании Даталитика. Интересное об искусственном интеллекте, машинном обучении, больших данных и ИТ-консалтинге

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

Описание стека и некоторые вводные

Первый взгляд на датасет и понимание его специфики

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

Это даст нам первое представление о том, что есть наши данные. Далее посмотрим на размеры наших табличных данных. Выполнив построчно код ниже

Также было бы неплохо увидеть информацию о количестве каждого уникального значения для каждого столбца в наборе данных:

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

Разделение на обучающую выборку и целевую переменную

Обработка пропусков в данных

idweathertemperaturehumidityplay tennis?
1cloudy60NaNyes
2rainy7580%NaN
3cloudyNaN50%no
4sunny6540%yes

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

Scikit-learn предоставляет реализацию для обработки пропусков

Поиск неявных дубликатов

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

Обнаружение выбросов

Как уже упоминалось ранее, оказалось, что для Age существуют значения, которые кажутся ошибочными. Такие как отрицательный возраст или чрезвычайно большие целые числа, могут негативно повлиять на результат работы алгоритма машинного обучения, и нам нужно будет их устранить.
Для этого возьмем нашу эвристическую оценку, в каком возрасте могут работать люди: от 14 до 100 лет. И все величины, не попадающие в этот диапазон, преобразуем в формат Not-a-Number.

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

Кодирование данных

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

Одним из решений этого было бы произвольное присвоение числового значения для каждой категории и отображение набора данных из исходных категорий в каждое соответствующее число. Например, давайте посмотрим на столбец «leave» (как легко вам взять отпуск по болезни для состояния психического здоровья?) В нашем наборе данных

Который возвращает следующие значения

Для кодирования этих данных, сопоставим каждое значение с числом.

Этот процесс известен как Label Encoding и sklearn может сделать это за нас.

Проблема с этим подходом заключается в том, что вы вводите порядок, который может отсутствовать в исходных данных. В нашем случае можно утверждать, что данные являются ранжированными («Very difficult» меньше «Somewhat difficult», который меньше «Very easy», который меньше «Somewhat easy»), но в большинстве своем категориальные данные не имеют порядка. Например, если у вас есть признак обозначающий вид животного, зачастую высказывание кошка больше собаки не имеет смысла. Опасность кодирования меток заключается в том, что ваш алгоритм может научиться отдавать предпочтение собак, кошкам из-за искусственных порядковых значений, введенных вами во время кодирования.

Общим решением для кодирования номинальных данных является one-hot-encoding.

Вместо того, чтобы заменять категориальное значение на числовое значение (кодирование меток), как показано ниже

idtypenumerical
1cat1
2dog2
3snake3
4cat1
5dog2
6turtle4
7dog2

Вместо этого мы создаем столбец для каждого значения и используем 1 и 0 для обозначения выражения каждого значения. Эти новые столбцы часто называются фиктивными переменными.

idtypeis_catis_dogis_snakeis_turtle
1cat1000
2dog0100
3snake0010
4cat1000
5dog0100
6turle0001
7dog0100

Вы можете выполнить one-hot-encoding непосредственно в Pandas или использовать sklearn, хотя sklearn немного более прозрачен, поскольку one-hot-encoding из него работает только для целых значений. В нашем примере (где входные данные представляют собой строки) нам нужно сначала выполнить кодировку меток, а затем one-hot-encoding.

Нормализация тренировочных данных

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

ML алгоритмы, которые требуют нормализации данных:

Примечание: приведенные выше списки ни в коем случае не являются исчерпывающими, а просто служат примером.

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

Когда вы смотрите на эти значения, вы интуитивно нормализуете значения. Например, вы знаете, что увеличение на 0,5 (=50%) для влажности намного более значимо, чем увеличение на 0,5 для температуры. И если мы не будем нормализовать эти данные, наш алгоритм может научиться использовать температуру в качестве основного предиктора просто потому, что масштаб является наибольшим (и, следовательно, изменения в значениях температуры наиболее значительны для алгоритма). Нормализация данных позволяет всем признакам вносить одинаковый вклад (или, что более точно, позволяет добавлять признаки в зависимости от их важности, а не их масштаба).

Алгоритм нормализации

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

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обученииЧто такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Существует несколько различных методов нормализации данных, самые популярные из них:

Нормализация Min-max устанавливает наименьшее наблюдаемое значение равным 0, а наибольшее наблюдаемое значение — 1.

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Для выполнения нормализации мы можем использовать функции в sklearn.

Несколько замечаний по этой реализации:
На практике вы можете выбрать только определенные столбцы. Например, вам не нужно нормализовать фиктивные переменные из one-hot-encoding.

Разделение данных для обучения и тестирования

Разделение данных на две подвыборки

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

Источник

Машинное обучение и анализ данных. Лекция для Малого ШАДа Яндекса

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

Лекция предназначена для старшеклассников — студентов Малого ШАДа, но и взрослые с ее помощью смогут составить представление об основах машинного обучения.

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Метод ближайшего соседа

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Далее попробуем немного изменить алгоритм, и ориентироваться на несколько (k) ближайших соседей. Пускай k будет равно пяти.

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Качество и параметры алгоритмов

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Цикл решения задачи

Примерный цикл решения задачи по машинному обучению выглядит так:

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

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

Источник

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

Дата публикации Dec 25, 2018

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Концепции, которые я расскажу в этой статье:

Вы можете получить полный код (.ipynb)Вот

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

В питоне NULL представлен NaN. Так что не запутайтесь между этими двумя, их можно использовать взаимозаменяемо.

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

Однако это не лучший вариант удаления строк и столбцов из нашего набора данных, так как это может привести к потере ценной информации. Если у вас есть 300K точек данных, то удаление 2–3 строк не сильно повлияет на ваш набор данных, но если у вас есть только 100 точек данных, из которых 20 имеют значения NaN для определенного поля, вы не можете просто отбросить эти строки. В реальных наборах данных может случиться так, что у вас есть большое количество значений NaN для определенного поля.

Здесь у нас есть два столбца с пропущенными значениями: C и D

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

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

Рассмотрим столбец Age from Dataframe 1. Чтобы стандартизировать этот столбец, нам нужно вычислить среднее значение и стандартное отклонение, а затем мы преобразуем каждое значение возраста, используя приведенную выше формулу.

Нам не нужно делать этот процесс вручную, так как sklearn предоставляет функцию под названиемStandardScaler.

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

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

Прежде всего, нам нужно создать информационный кадр.

Здесь столбцы «size» и «classlabel» являются порядковыми категориальными переменными, тогда как «color» является номинальной категориальной переменной.

Есть 2 довольно простых и аккуратных метода для преобразования порядковых резюме.

Здесь M будет заменено на 1, а L на 2.

Здесь class1 будет представлен с 0 и class2 с 1.

самая большая ошибкаБольшинство людей делают то, что они не могут различить порядковые и номинальные CV. Так что, если вы используете одну и ту же функцию map () или LabelEncoder с номинальными переменными, тогда модель будет думать, что между номинальными CV есть какая-то связь.

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

Здесь мы передали «size» и «price» вместе с «color», но функция get_dummies () довольно умная и будет рассматривать только строковые переменные. Так что он просто преобразует переменную «color».

Теперь вы, должно быть, задаетесь вопросом, что, черт возьми, это One-Hot Encoding. Итак, давайте попробуем понять это.

Таким образом, из n столбцов только один столбец может иметь значение = 1, а все остальные будут иметь значение = 0.

color_blue, color_green и color_white, которые все зависят друг от друга, и это может повлиять на нашу модель.

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

Как указано в обзоре урока, мультиколлинеарность существует всякий раз, когда два или более предикторов в регрессионной модели…

newonlinecourses.science.psu.edu

Теперь, когда мы поняли, что такое мультиколлинеарность, давайте теперь попробуем понять, как ее определить

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Здесь (вес, АД) и (БСА, АД) тесно связаны. Вы также можете использовать матрицу корреляции, чтобы проверить, насколько тесно связаны функции.

Что такое обработка данных в машинном обучении. Смотреть фото Что такое обработка данных в машинном обучении. Смотреть картинку Что такое обработка данных в машинном обучении. Картинка про Что такое обработка данных в машинном обучении. Фото Что такое обработка данных в машинном обучении

Мы можем наблюдать, что существует тесная взаимосвязь (0,950) между весом и АД, а также между БСА и АД (0,875).

Простой взлом, чтобы избежать Multicollinearity-

Мы можем использовать drop_first = True, чтобы избежать проблемы мультиколлинеарности.

Здесь drop_first удалит первый столбец цвета. Поэтому здесь color_blue будет удален, и у нас будут только color_green и color_white.

Здесь важно отметить, что мы не теряем никакой информации, потому что если color_green и color_white равны 0, то это означает, что цвет должен быть синим. Таким образом, мы можем вывести всю информацию с помощью только этих 2 столбцов, следовательно, сильная взаимосвязь между этими тремя столбцами нарушена.

И с этим мы подошли к концу этой статьи. Спасибо большое за чтение.

Вы можете получить полный код (.ipynb)Вот

Вы можете хлопать, если хотите. ЭТО БЕСПЛАТНО.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *