Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР / ЛР4 / ВАД ЛР4

.pdf
Скачиваний:
14
Добавлен:
25.06.2023
Размер:
599.49 Кб
Скачать

ГУАП

КАФЕДРА №41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

ассистент

 

 

 

В.В. Боженко

 

 

 

 

 

 

 

 

 

должность, уч. степень, звание

 

подпись, дата

 

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №4

ПРИМЕНЕНИЕ МЕТОДОВ КЛАССИФИКАЦИИ

по курсу: Введение в анализ данных

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

подпись, дата

 

инициалы, фамилия

Санкт-Петербург 2022

Цель работы

Изучение алгоритмы и методы классификации на практике.

Индивидуальный вариант

Индивидуальный вариант номер 10 в соответствии с таблицей 1.

Таблица 1 – Индивидуальный вариант задания

Название

 

Пояснение

датафрейма

 

 

 

5gym_churn.csv

Информация о клиентах фитнес клуба:

 

1.

Пол

 

2.

Близкое расположение

 

3.

Сотрудник компании партнера

 

4.

По промо друзей

 

5.

Указан ли телефон

 

6.

Длительность текущего абонемента

 

7.

Посещение групповых занятий

 

8.

Возраст

 

9.

Средние траты на доп услуги

 

10.

Количество месяцев до окончания абонемента

 

11.

Время с момента первого обращения в фитнес-центр (в месяцах)

 

12.

Средняя частота посещений в неделю за все время с начала

 

 

действия абонемента

 

13.

Средняя частота посещений в неделю за предыдущий месяц

 

14.

Churn – факт ухода из клуба

2

Ход работы

1. Получили у преподавателя набор данных 5gym_churn.csv в соответствии с индивидуальным вариантом №10 для проведения анализа согласно цели выполняемой работы.

Загрузили датасет с помощью библиотеки pandas в Jupyter-ноутбуке в соответствии с рисунком 1.

Рисунок 1 – Загрузка датаcета в Colab из файла 5gym_churn.csv на Google Диске

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

Типы данных также соответствуют.

3

2.Провели предварительную обработку данных.

Устранили небольшую проблему с регистром названий столбцов приведением их к нижнему регистру в соответствии с рисунком 2.

Рисунок 2 – Устранение проблем названий столбцов Проверили данные на наличие пропусков значений в столбцах в соответствии с

рисунком 3.

Рисунок 3 – Проверка дата сета на наличие пропусков значений

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

4

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

Рисунок 4 – Проверка дата сета на наличие явных дубликатов

Вывод: Дубликаты в выборке не обнаружены.

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

Рисунок 5 – Проверка ошибочных значений

5

Рисунок 6 – Проверка ошибочных значений

Вывод: Проверив данные в столбцах на наличие ошибочных значений, не нашли их.

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

Масштабирование данных будем производить с помощью класса MinMaxScaler() из модуля preprocessing библиотеки для машинного обучения sklearn, в результате мы получим значения параметров в диапозоне от 0 до 1. Провели нормализацию данных в соответствии с рисунком 7.

Рисунок 7 – Нормализация данных

6

3.Выявили целевой признак (отклик).

Целевым признаком для нашего набора данных является поле churn – Факт ухода из клуба. Поскольку основная задача бизнеса — это удержать постоянных клиентов, а для этого нужно понимать и прогнозировать, когда? и, почему? клиент может уйти чтобы предпринять какие-то действия по его удержанию.

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

Рисунок 8 – Выделение целевого признака

4.Разбили набор данных на тренировочной и тестовый датасеты с помощью

train_test_split.

Размер тренировочной выборки 2500 записей что составляет 62,5% от общего количества записей 4000, и 1500 тестовая выборка.

Что результат разделения повторялся от запуска к запуску установили значение параметра random_state. Код и результат разделения в соответствии с рисунком 9.

Рисунок 9 – Разбиение дата сета на обучающий и тестовый

7

5.Разработали предсказательные модели качественного отклика методами:

5.1.Метод k- ближайших соседей

Суть метода в отнесении объекта к какому-то классу на основании расстояния от него до центров кластеров, определённых моделью в процессе обучения.

Для классификации методом К-ближайших соседей воспользовались моделью,

предоставляемой модулем KNeighborsClassifier из библиотеки Scikit-learn.

Обучение проводили на специально подготовленных данных X_train (объект-

признаков) и y_train (вектор целевой переменной) в соответствии с рисунком 10.

Задали параметр n_neighbors = 5, который обозначает количество кластеров алгоритма K-ближайших соседей. Занчение было получено в прошлой лабораторной работе при кластеризации агломеративно иерархическим методом.

Рисунок 10 – Обучение модели классификатора методом К-ближайших соседей Сделали предсказание для тестовой части данных (X_test) в соответствии с

рисунком 11.

Рисунок 11 – Предсказание модели классификации К-ближайших соседей

8

5.2.Логистическая регрессия

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

Для классификации методом Логической регрессии воспользовались моделью,

предоставляемой модулем LogisticRegression из библиотеки Scikit-learn.

Обучение проводили на специально подготовленных данных X_train (объект-

признаков) и y_train (вектор целевой переменной) в соответствии с рисунком 12.

Рисунок 12 – Обучение модели классификатора методом Логической регрессии Сделали предсказание для тестовой части данных (X_test) в соответствии с

рисунком 13.

Рисунок 13 – Предсказание модели классификации Логической регрессии

9

5.3.Случайный лес

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

Для классификации методом Случайный лес воспользовались моделью,

предоставляемой модулем RandomForestClassifier из библиотеки Scikit-learn.

Обучение проводили на специально подготовленных данных X_train (объект-

признаков) и y_train (вектор целевой переменной) в соответствии с рисунком 14.

Рисунок 14 – Обучение модели классификатора методом Случайный лес Сделали предсказание для тестовой части данных (X_test) в соответствии с

рисунком 15.

Рисунок 15 – Предсказание модели классификации Случайный лес

10

Соседние файлы в папке ЛР4