分类器 - 测试集中没有类标签的Acurracy

时间:2017-11-02 14:08:09

标签: python classification decision-tree

我想制作一个决策树分类器来预测我的测试集中的“目标”值(“制造”或“遗漏”),然后计算分类器的准确性。

部首: location,w,final_margin,shot_number,period,game_clock,shot_clock,dribbles,touch_time,shot_dist,pts_type,close_def_dist,target

以下是训练集的一部分:

H,W,13,3,1,399,11.1,0,3.7,0.5,2,1,错过 A,L,-12,6,2,369,6.8,0,3.2,16.3,2,5.9,制成 A,L,-4,2,2,449,24,1,1.6,4.9,2,1.5,错过 A,W,12,7,3,436,16.1,0,1.1,20.2,2,5,错过 A,W,4,16,4,253,14,5,5.5,8.1,2,3,错过 A,L,-19,12,3,359,6.6,2,3.6,7.3,2,2.8,制成

测试集的一部分:

H,W,12,16,3,161,11,5,4.6,6.5,2,2.3 H,W,4,3,1,343,15.3,0,0.7,3.1,2,2.7 A,L,-27,2,1,318,15.6,0,1,24.5,3,5 A,L,-6,5,2,253,16.7,7,7.9,3,2,1.1 A,W,2,4,1,365,12.8,1,2.8,4.3,2,2.3

我有这种计算准确度的方法:

def accuracy_metric(actual, predicted):
    correct = 0
    for i in range(len(actual)):
        if actual[i] == predicted[i]:
            correct += 1
    return correct / float(len(actual)) * 100.0

如您所见,我在测试集中没有实际的值/类标签,那么在预测测试集的类标签后如何计算分类器的准确度呢?

1 个答案:

答案 0 :(得分:0)

你不能 - 精确度测试的整个概念是将预测值与实际值进行比较。如果缺少其中一个,那么计算这样的指标本来就是不可能的。

您要做的是将已有标签的数据拆分为培训和测试部分,然后您就可以计算准确度指标。

如果您没有编写自己的拆分器,可能需要查看sklearn.model_selection.train_test_split