Модели прогнозного машинного обучения (ML) стали важным инструментом для принятия бизнес-решений на основе данных. Они являются важным арсеналом для предприятий, которые хотят оставаться конкурентоспособными в мире, который все больше зависит от данных. Используя возможности машинного обучения, предприятия могут принимать более обоснованные решения, повышать свою эффективность, сокращать расходы и улучшать качество обслуживания клиентов.
В этой статье мы рассмотрим, как создать прогнозную модель машинного обучения с использованием набора данных «Титаник», а позже рассмотрим, как ее контейнеризировать и развернуть.
Набор данных «Титаник», доступный на Kaggle, представляет собой набор данных, содержащий информацию о пассажирах, которые находились на борту «Титаника», когда он затонул. Набор данных включает такие функции, как возраст пассажира, пол, класс билета, номер салона и статус выживания.
Цель этого проекта — использовать набор данных для создания прогностической модели, которая может точно определить, выжил ли данный пассажир или погиб при затоплении корабля.
В этой статье мы рассмотрим, как анализировать набор данных «Титаника», использовать набор данных для создания модели, которая может точно предсказать исход выживания пассажиров, и сделать прогнозы, чтобы увидеть, какие пассажиры на борту корабля выжили.
Мы изучим процессы достижения этой цели, используя следующую методологию CRISP-DM.
· Выполнение ЭДА
· Ответьте на несколько вопросов
· Проверить какую-либо гипотезу
· Создайте 2 разные модели и сравните их результаты и матрицы путаницы
Блокнот проекта, доступный на GitHub, содержит подробные пояснения и код для этого проекта.
Исследование данных
Набор данных Титаник содержит информацию о пассажирах на корабле, включая их демографические данные, класс билета, каюту, стоимость проезда и статус выживания. Изучение набора данных показало, что набор данных состоит как из категориальных, так и из числовых столбцов. Целевой или прогнозный столбец «Выживший» является числовым с бинарными классами 0 и 1. Набор данных содержит следующие столбцы:
Анализ и визуализация
Возрастное распределение в наборе данных показывает, что большинство пассажиров были в возрасте от 20 до 40 лет, при этом средний возраст составлял 28 лет. На борту также было значительное количество детей, особенно младенцев и малышей. Самому пожилому пассажиру было 80 лет.
Из анализа 342 человек, примерно 38% пассажиров выжили, а остальные 549 человек - примерно 62% не выжили. Среди женщин и детей показатели выживаемости были значительно выше. Дети (в возрасте 0–14 лет) имели более высокую выживаемость 59,0% по сравнению со взрослыми (в возрасте 15–64 лет) с выживаемостью 37,4% и пожилыми пассажирами (в возрасте 65 лет и старше) с выживаемостью 18,2%. .
Из 891 пассажира 577 мужчин и 314 женщин. Таким образом, в гендерном распределении пассажиров преобладали мужчины: мужчины составляли 64,8% от общего числа пассажиров.
Из 314 пассажиров-женщин в катастрофе выжили 233 (74,2%), а из 577 пассажиров-мужчин выжили только 109 (18,9%). Таким образом, выживаемость самок была намного выше, чем у самцов.
В первом классе было 216 пассажиров, что составляет 24,2% от общего числа пассажиров. Во втором классе было 184 пассажира, что составляет 20,7% от общего числа пассажиров. В третьем классе находился 491 пассажир, что составляет 55,1% от общего числа пассажиров. Согласно анализу, пассажирский класс был основным фактором выживаемости пассажиров. У пассажиров первого класса была самая высокая выживаемость 63,0%, за ними следовали пассажиры второго класса с выживаемостью 47,3%. Пассажиры третьего класса имели самую низкую выживаемость - 24,2%.
Тремя пунктами посадки были Саутгемптон (S), Шербур (C) и Квинстаун (Q). Из 891 пассажира в наборе данных 644 (72,3%) отправились из Саутгемптона, что делает его наиболее распространенным пунктом посадки. Всего 168 (18,9%) пассажиров высадились из Шербура и 77, или 8,6% пассажиров, высадились из Квинстауна.
Из 644 пассажиров, высадившихся из Саутгемптона, 217 (33,7%) выжили, а 427 (66,3%) — нет. Из 168 пассажиров, высадившихся из Шербура, 93 (55,4%) выжили, а 75 (44,6%) — нет. Из 77 пассажиров, высадившихся из Квинстауна, выжили 30 (38,9%), а 47 (61,1%) — нет.
Моделирование и прогнозирование
Мы построили 2 модели и сравнили их точность, точность, полноту и оценки F1 и F2. В таблице ниже показаны результаты.
Из приведенной выше таблицы видно, что в целом все наши модели работали довольно хорошо с оценками F1 74% и 75% соответственно. Между другими матрицами производительности не было большой разницы. Результаты матрицы путаницы модели логистической регрессии показывают, что модель предсказала 88 истинно положительных результатов (TP), 54 истинно отрицательных результата (TN), 17 ложноположительных результатов (FP) и 20 ложноотрицательных результатов (FN).
Другими словами, модель верно предсказала, кто выживет 88 раз, а кто нет — 54 раза. Он неверно предсказал тех, кто сбросил 17 раз, и тех, кто не сбросил 20 раз.
Сохранение модели (сериализация)
Сериализация модели — это процесс преобразования обученной модели в формат, который можно сохранить в файле или базе данных, а затем загрузить обратно в память для прогнозирования. Процесс сериализации обычно включает преобразование параметров, архитектуры и/или весов модели в двоичное представление, которое можно записать на диск или передать по сети. Мы использовали pickle для сохранения моделей и энкодеров.
Основные результаты нашего анализа
Выживаемость женщин и детей выше, чем у мужчин.
Пассажиры, путешествующие первым классом, выживали чаще, чем пассажиры второго или третьего класса.
У пассажиров, путешествующих в одиночку, процент выживаемости ниже, чем у пассажиров с членами семьи.
Пассажиры с более высокими тарифами имели более высокий коэффициент выживаемости.
Порт посадки мог иметь некоторое влияние на коэффициент выживаемости: пассажиры, отправляющиеся из Шербура, имели более высокий коэффициент выживания.
Блокнот проекта, доступный на GitHub, содержит подробные пояснения и код для этого проекта.