码迷,mamicode.com
首页 > 其他好文 > 详细

人脸识别---开集测试评价指标ROC曲线

时间:2017-03-13 16:31:04      阅读:801      评论:0      收藏:0      [点我收藏+]

标签:pos   line   .net   sort   ext   parent   数据集   ring   ros   

摘要:本文主要讲开集测试指标ROC曲线。

开集测试更加符合实际的场景。一般要得到ROC曲线需要准备三个数据集,一个是gallery集,称为注册集,第二个是包含gallery集的ID的probe集,和不包含gallery集的ID的probe集,我们只需要计算类类比对分数和类间比对分数,这是一种1:n的比对方式。 代码如下:

function [result,pre_FPR,pre_TPR]=drawROC(scores,labels,axisROC)

[sort_scores,idx]=sortrows([scores labels],[1 2]);
sort_label=sort_scores(:,2)‘;
sort_scores=sort_scores(:,1)‘;
pos=sum(labels(:));
neg=length(labels)-pos;

TPR=fliplr(cumsum(fliplr(sort_label),2));
FPR=fliplr(cumsum(fliplr(1-sort_label),2));

acc=TPR+(neg-FPR);
acc=acc/(neg+pos);

[bestAcc,bestThresh]=max(acc);
TPR_atBestThresh=TPR(bestThresh)/pos;
FPR_atBestThresh=FPR(bestThresh)/neg;
bestThresh=sort_scores(bestThresh);

acc=[acc neg/(neg+pos)];
pre_TPR=[TPR/pos 0];
pre_FPR=[FPR/neg 0];

调用方式

scores = [inter intra]‘;
labels = [zeros(size(inter,2),1);ones(size(intra,2),1)];
[result,pre_FPR,pre_TPR]=drawROC(scores,labels,[0.001;1;0;1]);

可以得到的曲线


技术分享

人脸识别---开集测试评价指标ROC曲线

标签:pos   line   .net   sort   ext   parent   数据集   ring   ros   

原文地址:http://blog.csdn.net/hlx371240/article/details/53482849

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!