"Эй! Какой сериал тебе больше нравится — «Офис» или «ДРУЗЬЯ»?»

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

«Блондинка, брюнетка или рыжая?»

— Ты вообще хочешь читать дальше?

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

Теперь позвольте мне представить вариант использования в бизнесе, постановку задачи науки о данных, предоставленные данные, словарь данных и тип проблемы! — Это ответ, почему я использовал 105 слов, вводящих классификацию.

Случай использования в бизнесе:

*Следующая задача была частью пятидневного фантастического семинара, который я посетил с GreyAtom:

1. Основной целью семинара было дать нам обзор жизни Data Scientist.

2. Кодированию не уделялось особого внимания, но нам предоставили коды, которые мы могли повторно использовать в наших блокнотах. Приведенные ниже фрагменты кода взяты из этих блокнотов с минимальными изменениями. Основная часть семинара состояла из пошагового ознакомления с различными шагами, которые необходимо выполнить для решения базовой задачи Data Science-Machine Learning — Step By Step.

3. Нам был назначен наставник, который казался гораздо большим, чем МСП Sagar Dawda, и был достаточно терпелив, чтобы развеять все наши сомнения. Его история смены карьеры сама по себе была очень мотивирующей. Кроме того, спасибо Рохит Айер, Маюреш Шилотри и Критика Агарвал.

4. Я очень рекомендую этот семинар, по крайней мере, для тех, кто хочет познакомиться с тем, что такое наука о данных и машинное обучение!

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

Зачем решать эту проблему?

1. Определите общие черты подписки клиентов на целевые кампании.

2. Определите правильную целевую аудиторию для эффективного бюджета на маркетинг.

3. Определите правильный частотный интервал для кампании для оптимальной кампании

Постановка задачи науки о данных:

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

Данные:

У нас есть 2 набора данных: «train.csv», которые мы будем использовать для обучения нашей модели прогнозированию: 32950 строк, 16 столбцов. «test.csv» — это набор данных, для которого необходимо сделать прогноз с использованием нашей модели машинного обучения.

Теперь давайте почувствуем данные:

Словарь данных:

Тип проблемы: проблема контролируемой классификации.

Классификация(Вот так): Так как нам нужно спрогнозировать, подпишется ли потенциальный клиент на банковский срочный вклад или нет? - Да или нет.

Под наблюдением: у нас уже есть данные метки (значения целевой переменной) в нашем наборе данных train.csv, которые помогают в обучении модели машинного обучения прогнозировать значения целевой переменной для каждого потенциального клиента в наборе данных test.csv.

Показатель оценки. Показатель оценки для этого проекта — AUC_ROC_score.

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

· False Negative — прогнозируется отсутствие подписки на срочный вклад, но подписка на самом деле.

Исследовательский анализ данных (EDA) и визуализация:

Пакеты, используемые для EDA: numpy, pandas, matplotlib, seaborn.

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

Разделение числовых и категориальных данных:

Одномерный анализ.

Категорический фрейм данных:

Выводы из графиков:

1. Три основные профессии, к которым относятся наши клиенты, — администрация, рабочие и техники.

2. Огромное количество клиентов состоит в браке.

3. У большинства клиентов нет кредита по умолчанию

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

5. Мобильные телефоны, по-видимому, являются наиболее предпочтительным способом связи с клиентами.

6. Со многими клиентами связались в мае месяце.

7. График для целевой переменной показывает сильный дисбаланс в целевой переменной.

8. Отсутствующие значения в некоторых столбцах представлены как неизвестные. Unknown представляет отсутствующие данные. В следующей задаче мы будем обрабатывать эти значения.

Числовой фрейм данных:

Выводы из графиков:

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

2. Глядя на график для pdays, мы можем сделать вывод, что с большинством клиентов связывались впервые, потому что согласно описанию функции для pdays значение 999 указывает на то, что с клиентом ранее не связывались.

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

Отсюда удаление столбцов pdays и предыдущих.

Двумерный анализ:

Категорический фрейм данных:

Выводы из графиков:

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

2. Они женаты

3. У них высшее образование

4. Они не держат кредит в случае дефолта

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

6. Мобильные телефоны должны быть предпочтительным способом связи с клиентами.

Обработка выбросов в числовых столбцах с помощью Winsorization:

Выброс выше 95 % — —› заменить на 95-й процентиль

Выброс ниже 5% — —› заменить на 5-й процентиль.

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

1. Кодировка метки: когда количество уникальных категорий много

2. Одна горячая кодировка: когда количество уникальных категорий ограничено 5–6.

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

Добавление кадра данных в качестве входных данных для приведенных ниже моделей классификации Vanilla (модели с параметрами по умолчанию):

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

2. Классификатор дерева решений

3. Классификатор RandomForest

Подготовка данных поезда, где 80% фрейма данных будет использоваться для обучения модели, а 20% — для тестирования/проверки точности.

Модель логистической регрессии:

Классификатор дерева решений:

Случайный классификатор Forrest:

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

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

Поиск по сетке для классификатора случайного леса: Предоставив параметрам max_features, max_depth и критерию список выбранных значений и среди этих значений, модель определит комбинацию этих параметров с использованием перестановки и комбинации, которая приведет к максимальной точности. В этом случае: Классификатор Random Forest обеспечит оптимальную точность, если значения параметров:

критерий»: «джини»,

макс_глубина: 8,

max_features: «авто»

Теперь примените эти параметры к модели, используя тот же фрейм данных:

AUC изменился с 0,65 до 0,85, что является огромной разницей.

Выбор функций: выбор лучших столбцов из существующего набора столбцов.

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

AUC повышается до 0,87 после выбора признаков.

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

Тестовый кадр данных после прогноза:

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

1. Проводите целевые кампании.

2. Определит правильную целевую аудиторию с эффективным бюджетом на маркетинг.

3. Определите правильный частотный интервал для кампании, который будет представлен в отчете EDA.

Детали проекта вы можете найти в моем github вместе с наборами данных.

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

Привет, и я хотел бы закончить этот блог, ответив: «Офис — ВСЕГДА».

Ваше здоровье,

Сувик Гангулы.