什么是混淆矩阵?
混淆矩阵式一个表格,用于描述分类模型的表现,具体是将实际类别与预测类别进行比较。对于二元分类问题,它由以下四个部分组成:
真正例(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))