孤问尘
孤问尘
Published on 2025-01-13 / 0 Visits
0
0

准确率的计算

什么是混淆矩阵?

混淆矩阵式一个表格,用于描述分类模型的表现,具体是将实际类别与预测类别进行比较。对于二元分类问题,它由以下四个部分组成:

真正例(TP):模型正确预测了正类。

假正例(FP):模型错误地预测为正类。

真负例(TN):模型正确预测了负类。

假负例(FN):模型错误地预测为负类。

# 准确率的计算


import random

def correct_rate(predict, target):
# 计算正确率
# :param predict: list
# :param target: list:
# return: float, correct rate4
    assert len(predict) == len(target)  # 保证预测和实际结果列表长度相等
    total_num =len(predict)             # 总样本数量
    correct_num=0                       # 统计预测正确的数量
    
    # 遍历预测列表,计算正确预测的数量
    for i in range(total_num):          
        if predict[i] == target[i]:
            correct_num +=1             # 如果预测值与实际值相同,则计数加1
    return correct_num/total_num


if __name__ =='__main__':
    random.seed(1)
    # 生成10个0或1的随机预测列表
    predict_list = [random.randint(0,1) for i in range(10)]
    # 生成10个0或1的随机目标列表
    target_list = [random.randint(0,1) for i in range(10)]
    
    # 打印生成的预测和目标列表
    print('predict:', predict_list)
    print('target:', target_list)
    # 计算正确率
    correct= correct_rate(predict_list, target_list)
    # 打印正确率,保留三位小数
    print('correct rate:{:.3f}%'.format(correct*100))


Comment