评估指标中所有值输出为1的问题

iezvtpos  于 2021-09-08  发布在  Java
关注(0)|答案(0)|浏览(220)
x_test,x_val,y_test,y_val = train_test_split(x_test,y_test,test_size=0.5) 
print(x_train.shape) 

# (1413, 3)   <----Result

print(x_val.shape)   

# (472, 3)    <----Result

print(x_test.shape)  

# (471, 3)    <----Result

我使用机器学习进行数据分割,得到了上述结果。

from sklearn.tree import DecisionTreeClassifier

dTree = DecisionTreeClassifier(max_depth=2,random_state=0).fit(x_train,y_train)
print("train score : {}".format(dTree.score(x_train, y_train)))

# train score : 1.0   <----Result

print("val score : {}".format(dTree.score(x_val, y_val)))

# val score : 1.0     <----Result

然后,我们使用决策树分别打印出train和val的分数,结果均为1。

predict_y = dTree.predict(x_test) 

from sklearn.metrics import classification_report 
print(classification_report(y_test, dTree.predict(x_test))) 
print("test score : {}".format(dTree.score(x_test, y_test)))

               precision    recall  f1-score   support

          A       1.00      1.00      1.00       235
          B       1.00      1.00      1.00       236

      accuracy                        1.00       471
     macro avg    1.00      1.00      1.00       471
  weighted avg    1.00      1.00      1.00       471

 test score : 0.9978768577494692

最后,分类报告也显示了上述结果。我的一些数据拆分错误吗?或者1的值是否意味着所有数据都完全分类?如果我错了,我希望听到正确的解决方案。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题