我是机器学习的初学者,我正在通过从事Kaggle比赛来学习。我从一个著名的泰坦尼克号生存问题开始,通过试错/从他人那里得到帮助,我可以训练我的数据,但我的问题是:我如何理解输出并进入下一阶段? / p>
这是我的代码:
import pandas as pd
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import train_test_split
train_path = "C:\\Users\\Omar\\Downloads\\Titanic Data\\train.csv"
train_data = pd.read_csv(train_path)
train_data['Sex'] = pd.factorize(train_data.Sex)[0]
columns_of_interest = ['Survived','Pclass', 'Sex', 'Age']
filtered_titanic_data = train_data.dropna(axis=0)
x = filtered_titanic_data[columns_of_interest]
y = filtered_titanic_data.Survived
train_x, val_x, train_y, val_y = train_test_split(x, y, random_state=0)
titanic_model = DecisionTreeRegressor()
titanic_model.fit(train_x, train_y)
val_predictions = titanic_model.predict(val_x)
print(val_predictions)
这是我得到的输出(1个幸存者-0个死亡):
1. 0. 1. 0. 1. 0. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
1. 0. 1. 1. 0. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 0. 1.
但是我不知道如何使用此输出进行下一步。
答案 0 :(得分:2)
您现在将val_predictions
与val_y
进行比较,看看有多少对的!
您使用train_x, train_y
来找到模式,将其拟合到val_x
上,现在您想看看您的模型有多好!
有多种解决方法!您可以选择评估指标!
from sklearn.metrics import accuracy_score
accuracy_score(val_predictions, val_y)
这里是accuracy_score
所代表的链接! http://scikit-learn.org/stable/modules/model_evaluation.html#accuracy-score
准确度分数是评估指标!展望未来,您也可以GridSearchCV
自动搜索最佳参数以最大化或最小化评估指标。
您可以在此处阅读有关内容: