ROC曲线和EER

ROC曲线和EER_第1张图片

因为FRR和FAR互相矛盾,所以当两者相等时的概率就是等错误率。当阈值为TH时,此时对应的FRR有个数值、FAR有个数值。这样得到一组对应的FRR和FAR,以FAR为横坐标,FRR为纵坐标画曲线,就是ROC曲线。再画y=x的曲线,两个曲线相交时对应的横坐标或纵坐标就是等错误率,这个时候对应的阈值就是最优的。

典型的ROC曲线示意图:

ROC曲线和EER_第2张图片

核心代码如下:

function out = YanEER(leinei, leijian)
NGRA = length(leinei); %类内测试的次数 对应误据率 FRR
NIRA = length(leijian); %类间测试的次数 对应误识率, FAR
FRR = [];
FAR = [];
th = 0.1:0.02:0.55; %阈值,一共xxx个
for i=1:length(th)
frr = sum(leinei>th(i))/NGRA; %大于预设阈值的 就错误的拒绝了
FRR=[FRR frr];
far = sum(leijian FAR = [FAR far];
end





你可能感兴趣的:(MATLAB)