Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 1/10

Кратко:
  • В прошлой теме вы помогали компании «Маршрут Экспресс» предсказывать удовлетворённость поездкой.
  • В этой теме вы подробнее изучите работу с признаками и освоите несколько новых инструментов.
  • Вы научитесь пользоваться кодировщиками OrdinalEncoder и LabelEncoder.
  • Обрабатывать неизвестные значения категорий в тестовых данных.
  • Обнаруживать утечку данных.
  • Удалять признаки и оставлять только самые важные.
  • Создавать новые полезные признаки для задачи.
  • Восемь уроков по 30-40 минут

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 2/10

Кратко:
  • Компания "Маршрут Экспресс" собирает новые данные для улучшения модели классификации.
  • Модель показывает хорошие результаты, но заказчик хочет модель более высокого качества.
  • Новые данные описывают признаки, которые помогут улучшить уровень удовлетворенности клиентов.
  • Данные представлены в виде таблицы с id, оценками комфортности и качества услуг.
  • Необходимо объединить данные по столбцу id для обучения модели.
  • Три основных способа объединения данных: concat(), merge() или join().
  • Метод join() выбран для объединения данных.
  • Объединение данных позволяет разработать модель более высокого качества.

КМ. Задача 1

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 3/10

 

Кратко:

  • В прошлом уроке вы успешно объединили данные "Маршрут Экспресс" с помощью метода join().
  • Задача 1: изучение распределения признака Оценка качества питания на тренировочных данных.
  • Задача 2: инициализация OneHotEncoder с игнорированием неизвестных значений и удалением первого столбца с новым признаком.
  • В этом уроке вы разобрались с одним новым признаком - с остальными вам предстоит поработать в следующих уроках.

КМ. Задача 1

КМ. Задача 2

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 4/10

Кратко:
  • В статье рассматривается кодирование категориальных признаков с использованием OrdinalEncoder и SimpleImputer из библиотеки Scikit-Learn.
  • OrdinalEncoder переводит строковые категории в числа от 0 до n-1, где n - количество уникальных категорий.
  • OrdinalEncoder может обрабатывать неизвестные категории, используя параметры handle_unknown и unknown_value.
  • Для обработки пропусков в данных можно использовать инструмент SimpleImputer, который заменяет недостающие значения на моду, медиану, константу и другие значения.

КМ. Задача 1

КМ. Задача 2

КМ. Задача 3

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 5/10

Кратко:
  • OrdinalEncoder не создает новые признаки, в отличие от OneHotEncoder.
  • Задача: кодирование ранговых переменных (оценка комфортности времени отправления/прибытия и общая оценка качества предоставленной услуги).
  • Изучение распределения ранговых переменных на тренировочных данных.
  • Использование OrdinalEncoder и параметра categories для кодирования ранговых переменных.
  • Создание списков с упорядоченными значениями категорий для каждого признака.
  • Инициализация OrdinalEncoder с вложенным списком категорий.
  • Кодирование ранговых переменных и запись преобразованных значений в новые колонки.
  • Учет параметров handle_unknown и unknown_value при работе с OrdinalEncoder.
  • Кодирование оставшихся ранговых переменных с использованием OrdinalEncoder и упорядоченных списков категорий.
  • OrdinalEncoder работает с ранговыми и номинальными переменными.

КМ. Задача 1

КМ. Задача 2

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 6/10

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

КМ. Задача 1

КМ. Задача 2

КМ. Задача 3

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 7/10

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

КМ. Задача 1

КМ. Задача 2

КМ. Задача 3

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 8/10

Кратко:
  • Мультиклассовая классификация: переход от бинарной к многоклассовой задаче.
  • Изменение запросов бизнеса и усложнение задачи Data Science.
  • Новый признак общей оценки качества услуги вместо удовлетворенности поездкой.
  • Использование кодировщиков для преобразования строковых классов в числа.
  • Применение LabelEncoder для кодирования целевого признака.
  • Подбор гиперпараметров с помощью RandomizedSearchCV и метрики ROC-AUC.
  • Избавление от наименее полезных признаков на основе их важности.
  • Использование автоматизированного поиска гиперпараметров для решения задачи мультиклассовой классификации.

КМ. Задача 1

КМ. Задача 2

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 9/10

Кратко:
  • Feature engineering - процесс создания новых признаков для улучшения качества модели.
  • Алгоритмические способы генерации новых признаков: биннинг, полиномизация, применение функции к признакам.
  • Биннинг: ранжирование числового признака, например, категории возраста.
  • Полиномизация: возведение признака в степень, например, для линейных моделей.
  • Применение функции к признакам: использование математических операций и функций к текущим признакам.
  • Другие способы: бинаризация, способ на основе бизнес-логики.
  • Экспериментирование с разными подходами и обучение моделей на новых признаках для сравнения качества и важности признаков.

КМ. Задача 1

КМ. Задача 2

Спринт 10/24 → Тема 7/11: Работа с признаками → Урок 10/10

Кратко:
  • Умение обращаться с кодировщиками и удалять или добавлять признаки.
  • Преобразование входных и целевых признаков с помощью кодировщиков OrdinalEncoder и LabelEncoder.
  • Обработка неизвестных значений категорий в данных с использованием специальных параметров инициализации кодировщика.
  • Обнаружение утечки данных с помощью корреляции признаков.
  • Удаление наименее полезных признаков из набора данных для повышения метрики качества модели.
  • Создание новых признаков для повышения качества модели.
  • Шпаргалка по теме для закрепления знаний.
  • Изучение инструментов оценки важности признаков и новых подходов для отбора признаков в следующей теме.
Заключение

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

Чему вы научились

  • Преобразовывать входные признаки с помощью кодировщика OrdinalEncoder, а целевые — с помощью LabelEncoder. OrdinalEncoder позволяет указывать порядок кодирования для ранговых переменных и кодировать номинальные признаки в лексикографическом порядке. С помощью LabelEncoder стоит кодировать только целевой признак.
  • Обрабатывать неизвестные значения категорий в новых данных. Чтобы избежать ошибки при обработке неизвестных категорий, можно использовать специальные параметры при инициализации кодировщика. Неизвестные категории можно либо игнорировать, либо заменять на нужные значения.
  • Обнаруживать утечку данных. При утечке данных во время обучения может использоваться информация, которая не будет доступна во время прогнозирования. Из-за этого получается нереалистично высокая метрика. Чтобы найти утечку в данных, можно изучить корреляцию признаков.
  • Удалять признаки и оставлять только самые важные. Анализируя важность признаков в дереве решений, можно удалить наименее полезные признаки из набора данных. Часто это может увеличить метрику качества модели.
  • Создавать новые полезные признаки для задачи. Признаки необязательно только удалять. Создание признаков также может повысить качество модели. Признаки генерируют множеством способов, а выбрать нужные можно путём экспериментов и анализа важности признаков.

Заберите с собой

Чтобы ничего не забыть, скачайте шпаргалку по теме.