В этой статье я должен рассказать, как обучать и оценивать модель для титанических наборов данных.
прежде чем приступить к делу, оформите заказ, часть 3
X : Матрица признаков, содержащая все входные признаки для модели машинного обучения.
В данные о поезде включены различные характеристики, относящиеся к пассажирам «Титаника», такие как возраст, пол, класс билета, количество братьев и сестер/супругов, количество родителей/детей, стоимость проезда и пункт посадки. Кроме того, он включает в себя целевую переменную «Выжил», которая указывает, выжил ли каждый пассажир (1) или нет (0).
В этом случае мы хотим удалить столбец «Выживший» из набора данных, поскольку мы используем все остальные столбцы в качестве признаков для обучения модели машинного обучения.
мы используем метод drop() для удаления уцелевшего столбца, а параметр axis=1 указывает, что мы удаляем столбцы
y : Целевой вектор, содержащий соответствующие метки (в данном случае, выжил ли каждый пассажир или нет)
Далее нам нужно разделить набор данных на обучение и тестирование, поэтому импортируйте необходимую библиотеку.
from sklearn.model_selection import train_test_split
Функция train_test_split для разделения ваших данных на наборы для обучения и тестирования.
X_train и y_train используются для обучения модели машинного обучения и X_test и оценки ее производительности на данных X_test и y_test.
train_size=0.8: указывает, что 80 % данных будут использоваться для обучения модели.
test_size=0.2 : указывает, что 20 % данных будут использоваться для тестирования производительности модели на невидимых данных.
Здесь мы используем классификатор случайного леса, это метод ансамблевого обучения, основанный на множественном дереве решений.
from sklearn.ensemble import RandomForestClassifier
Здесь я обучил RandomForestClassifier со 150 оценщиками, которые представляют собой деревья решений и случайное состояние = 0.
Затем подгоните RandomForestClassifier к обучающим данным (X_train и y_train).
Затем обученный RandomForestClassifier делает прогнозы на тестовых данных (X_test).
y_pred : прогнозируемая метка
y_test : истинная метка
После этого рассчитайте показатели модели, сравнив предсказанные метки (y_pred) с истинными метками (y_test).
Импортировать необходимые библиотеки
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score
Здесь я использовал четыре разных показателя: оценка точности, оценка точности, оценка отзыва, оценка f1.
Здесь я объясняю метрики,
Истинный положительный результат (TP):
Модель правильно предсказывает положительный экземпляр (принадлежащий положительному классу) как положительный. В этом примере настоящим положительным будет случай, когда модель правильно идентифицирует человека как выжившего.
Истинно отрицательный (TN):
Истинный отрицательный результат возникает, когда модель правильно предсказывает отрицательный экземпляр как отрицательный.
Ложное срабатывание (FP):
Ложное срабатывание происходит, когда модель неправильно предсказывает отрицательный случай как положительный.
Ложноотрицательный (FN):
Ложный отрицательный результат возникает, когда модель неправильно предсказывает положительный экземпляр как отрицательный.
Точность:
Точность = истинные положительные результаты / (истинные положительные результаты + ложные положительные результаты)
Напомнить:
Отзыв = истинные положительные результаты / (истинные положительные результаты + ложноотрицательные результаты)
Оценка F1:
Оценка F1 = 2 * ((Точность * Отзыв) / (Точность + Отзыв))
Матрица путаницы:
Попробуйте наборы данных с другой моделью для лучшего понимания
следуйте за мной на среду, чтобы узнать больше контента AI / ML