9个人,判对6个,准确率66.67%。这不是哪家公司的模型评测报告,而是一个2x2混淆矩阵演示程序跑出来的结果。四个滑块,四个数字,实时算出五项指标。
![]()
这个脚本用四个实时滑块(TTrackBar)分别控制真正例(TP)、假负例(FN)、假正例(FP)、真负例(TN),每个值可以在0到20之间独立调整。拖动任意一个滑块,日志窗口里的准确率、精确率、召回率、特异度和F1分数立刻重算。
初始场景设定为9个人的判断结果:TP=3,FN=2,FP=1,TN=3。总样本9,判对的是TP加TN共6个,准确率66.67%。两个类别分别叫“Known”和“Don't Know”。
指标全部以“Known”为正类计算。精确率是TP除以TP加FP,3/4,75.0%;召回率是TP除以TP加FN,3/5,60.0%;特异度是TN除以TN加FP,3/4,75.0%;F1分数由精确率和召回率合成,66.67%。代码里每个除法都先判断分母是否大于0,避免除零。
画布部分用TImage.Canvas重绘2x2网格。单元格底色深浅与计数成正比,颜色值按计数除以最大值3再乘160从255里减。对角线上的TP和TN走绿色系,非对角线的FN和FP走橙色系,边框统一深蓝色、线宽2。网格上方标“Predicted Status”,左侧标“Actual”,列头是两个类别名,底部注明样本量为9。
每个格子里先写计数,字号16加粗,下面再用字号8标注该格含义:True Pos、False Neg、False Pos、True Neg。日志窗口同时输出一张文本版矩阵表,行是实际类别,列是预测类别,最后一行是各列预测总数,再往下是五项指标的百分比和对应分数。
整个程序的结构很直白:一个2x2整型数组存计数,一个字符串数组存类别名,一个计算并绘制的函数把统计和渲染串起来。滑块一动,函数重跑一遍,数字和颜色一起变。想验证某个指标怎么被拉高或拉低,把对应格子的计数调大调小就行。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.