这一节基本是讲的这样一个问题:
譬如有这样一句话:邓紫棋这人,真庸俗。
然后你的NER系统在进行命名实体识别的时候把“邓紫”认成了一个实体,而把“棋”漏掉了,当然这样讲得通,从人名的统计规律上看,棋字作为人名的确少见。
后续对系统准确率的评判标准也因此展开。
在NLP中,我们每一个字称为一个token,譬如邓紫棋这个实体,一个实体拥有三个token,在标准的评判中,根据实体的准确率来看,而不根据token的准确率来看。
举个例子:约翰列侬和保罗麦科特尼在音乐理念上大有不合。
你的NER系统识别的结果是:约翰列侬
假设这句话包含的实体有三个:约翰列侬、保罗麦科特尼、音乐理念
那你这个系统的准确率就是100%,召回率:1/3,F1值:(2*1/3)/(1+1/3)
如果设别成了约翰列侬、保罗
那准确率就是50%,召回率:1/3。保罗那部分虽然对了一半,但也算你没识别出来。
通过这个例子可以看出,如果以F1值为评价标准的话,一个错误的识别比null要来的糟糕,因为召回率都一样,但是降低了准确率。用教授的话说就是,一个错误的识别相当于错了两次:少了一个positive、多了一个negative,而nothing的话只是少了一个positive
所以自然有其他的标准来改变这个问题,给予错误识别更公正的分数,譬如MUC score,但是缺点在于评判标准变得很复杂。实践中采用的往往还是F1标准。