Как я могу улучшить свою модель прогнозирования sklearn?Python

Программы на Python
Anonymous
Как я могу улучшить свою модель прогнозирования sklearn?

Сообщение Anonymous »

По сути, у меня есть модель в sklearn, которая предсказывает выживаемость Титаника. его точность составляет около 0,77.
Как я могу сделать его лучше и точнее?

Код: Выделить всё

import pandas as pd
import numpy as np
from sklearn.preprocessing import StandardScaler, LabelEncoder, MinMaxScaler
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.linear_model import LogisticRegression
from sklearn import metrics
from sklearn.tree import DecisionTreeClassifier

Код: Выделить всё

train_df = pd.read_csv("train.csv")
test_df = pd.read_csv("test.csv")

Код: Выделить всё

le = LabelEncoder()
sc = StandardScaler()

train_df['Age'].fillna(train_df['Age'].mean(), inplace=True)
train_df["Embarked"].fillna("N", inplace=True)
train_df['Cabin'] = train_df['Cabin'].str[:1]
train_df['Cabin'].fillna('N', inplace=True)
train_df["Cabin"]

Код: Выделить всё

for col in ["Sex", "Embarked", "Cabin"]:
train_df[col] = LabelEncoder().fit_transform(train_df[col])

x = train_df.drop(["PassengerId","Name","Ticket", "Survived"], axis=1)
y = train_df["Survived"]

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2)

Код: Выделить всё

dt_clf = DecisionTreeClassifier(max_depth= 5, min_samples_leaf= 1,min_samples_split= 2)
dt_clf.fit(x_train, y_train)
pred = dt_clf.predict(x_test)

Код: Выделить всё

print(metrics.accuracy_score(y_test, pred))
Я заполнил значение na средним значением, изменил масштабатор и алгоритм, но ничего не произошло.

Подробнее здесь: https://stackoverflow.com/questions/786 ... del-better

Вернуться в «Python»