Для этого проекта записной книжки я использовал наборы данных Титаник — машинное обучение после катастрофы, которые включают информацию о пассажирах Титаника, такую ​​как имя, возраст, пол, социально-экономический класс и т. д. Основная цель моей работы заключалась в том, чтобы следовать пошаговый рабочий процесс, объясняющий каждый шаг и причину каждого решения, принятого во время разработки решения. Я решил сделать это, чтобы попрактиковаться в использовании EDA и различных моделей машинного обучения, одновременно объясняя свою работу, чтобы я или кто-либо другой мог вернуться и воссоздать мою работу, если это необходимо.

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

Определение вопроса и проблемы

Зная из обучающего набора образцов, в котором перечислены пассажиры, которые выжили или не пережили катастрофу Титаника, может ли наша модель определить на основе заданного набора тестовых данных, не содержащего информации о выживании, выжили ли эти пассажиры в наборе тестовых данных? Вот некоторые важные моменты:
* 15 апреля 1912 года во время своего первого рейса «Титаник» затонул после столкновения с айсбергом, в результате чего погибли 1502 из 2224 пассажиров и членов экипажа. В переводе коэффициент выживаемости 32%.
* Одна из причин, по которой кораблекрушение привело к таким человеческим жертвам, заключалась в том, что не хватило спасательных шлюпок для пассажиров и экипажа.
* Хотя некоторый элемент удачи был причастен к пережив затопление, некоторые группы людей имели больше шансов выжить, чем другие, например женщины, дети и высший класс.

Цели рабочего процесса

  • Классификация. Мы можем захотеть классифицировать или классифицировать наши образцы. Мы также можем захотеть понять последствия или корреляцию различных классов с нашей целью решения.
  • Корреляция. Можно подойти к проблеме на основе доступных функций в наборе обучающих данных. Какие функции в наборе данных вносят значительный вклад в достижение цели нашего решения? С точки зрения статистики существует ли корреляция между функцией и целью решения? При изменении значений признаков меняется ли и состояние решения, и наоборот? Это можно проверить как для числовых, так и для категориальных признаков в данном наборе данных. Мы также можем захотеть определить корреляцию между функциями, отличными от выживания, для последующих целей и этапов рабочего процесса. Сопоставление определенных функций может помочь в создании, дополнении или исправлении функций.
  • Преобразование. Для этапа моделирования необходимо подготовить данные. В зависимости от выбора алгоритма модели может потребоваться преобразование всех признаков в числовые эквивалентные значения. Так, например, преобразование текстовых категориальных значений в числовые значения.
  • Завершение. Подготовка данных также может потребовать от нас оценки любых отсутствующих значений в пределах признака. Алгоритмы модели могут работать лучше всего, когда нет пропущенных значений.
  • Исправление. Мы также можем проанализировать данный набор обучающих данных на наличие ошибок или, возможно, неточных значений в функциях и попытаться исправить эти значения или исключить выборки, содержащие ошибки. Один из способов сделать это — обнаружить любые выбросы среди наших выборок или признаков. Мы также можем полностью исключить функцию, если она не способствует анализу или может значительно исказить результаты.
  • Создание. Можем ли мы создать новые функции на основе существующей функции или набора функций, чтобы новая функция соответствовала целям корреляции, конверсии и полноты?
  • Графики. Как правильно выбрать графики и диаграммы визуализации в зависимости от характера данных и целей решения?

После EDA и процесса разработки признаков пришло время смоделировать наши результаты, предсказать и решить для наших данных. Существует более 60 алгоритмов прогнозного моделирования на выбор, но мы должны понимать тип проблемы и требования к решению, чтобы сузить выбор до нескольких моделей, которые мы можем оценить. Мы хотим определить взаимосвязь между выходом (выжил или нет) с другими переменными или функциями (пол, возраст, порт…). Мы также выполняем категорию машинного обучения, которая называется обучением с учителем, поскольку мы обучаем нашу модель с заданным набором данных. С помощью этих двух критериев — контролируемого обучения плюс классификации и регрессии — мы можем сузить выбор моделей до нескольких. К ним относятся:

  • Логистическая регрессия
  • k-ближайшие соседи
  • Опорные векторные машины
  • Наивный байесовский классификатор
  • Древо решений
  • Рэндом Форрест
  • Персептрон
  • Искусственная нейронная сеть
  • Векторная машина релевантности

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

Чтобы просмотреть полный проект и код блокнота Jupyter, посетите:

https://github.com/jj862/Titanic_Model_Score/blob/main/Titanic_notebook.ipynb