def learn_decision_tree(data):
DT = tree.DecisionTreeClassifier(max_depth=7)
scorer = make_scorer(matthews_corrcoef)
for i in range(5):
scores = cross_val_score(DT, data.X_train, data.y_train, cv=10, scoring=scorer)
print("iteration",i, "dt mean:", scores.mean())
scores = list(scores)
print("Decision Tree train scores:\n", scores)
return DT
# DT = DT.fit(train_data[:, :-1], train_data[:, -1])
# predictionsDT = DT.predict(validation_data[:, :-1])
# validating predicions
# dtError = 0
# for i in range(0, len(validation_data)):
# if(validation_data[i][20] != predictionsDT[i]):
# dtError = dtError + 1
# print("DT Error : ", float(dtError)/len(validation_data)*100.0)
评论列表
文章目录