【NLP】蓦然回首:谈谈学习模型的评估系列文章(三)

基于NLP角度的模型评价方法

作者:白宁超

2016年7月19日19:04:51

摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量。于是,就产生了对这一专题进度学习总结,这样也便于其他人参考,节约大家的时间。本文依旧旨在简明扼要梳理出模型评估核心指标,重点达到实用。本文布局如下:第一章采用统计学习角度介绍什么是学习模型以及如何选择,因为现今的自然语言处理方面大都采用概率统计完成的,事实证明这也比规则的方法好。第二章采用基于数据挖掘的角度探讨模型评估指标和选择。第三章采用统计自然语言处理的方法看看模型评价方法。第四章以R语言为实例,进行实战操作,更深入了解模型的相关问题。(本文原创,转载请注明出处基于NLP角度的模型评价方法。)

目录



【自然语言处理:谈谈学习模型的评估(一)】:统计角度窥视模型概念

【自然语言处理:谈谈学习模型的评估(二)】:基于Data Mining角度的模型评估与选择

【自然语言处理:谈谈学习模型的评估(三)】:基于NLP角度的模型评价方法

【自然语言处理:谈谈学习模型的评估(四)】:基于R语言的模型案例实战

1 信息检索中的模型评价?



信息检索中的评价经常使用:精确率(precision)和召回率(recall)的概念,而且在自然语言处理模型评价中取得良好的效果。

信息检索中的精确度和召回率度量分析

实例:在信息检索中,我们去百度或者google一个词条,通过搜索算法返回网页信息。这个搜索算法模型如何去度量呢?如图:其中tn表示真的不相关的搜索(一般数目非常大),tp表示就是要搜索的目标网页;fp表示非目标网页,但是错误的标记成目标网页;fn表示搜索目标网页但是错误标记成不相关的网页了;selected表示选择反馈搜索者的数据集条目,系统认为相关的搜索文档(含有标记错误的页面);target是目标集,目标相关的文档(可能没有被现实出来)。

如上信息检索的文档,其混淆矩阵如下:target是检索目标,-target是非检索目标

精确率

召回率

在信息抽取中,精确率和召回率是相逆的(可以选择文档集合中的所有文档,得到100%的召回率,但是精确率却非常低),正是由于这样的原因,将精确率和召回率得到一个全面的度量中,一种方法是使用F度量,公式如下:

其中P是精确度,R是召回率。α表示确定精确率和召回率的权重因子。α=0.5对应着P和R相同的权重;对应α这个值,F度量简化:

总结:在信息检索结果矩阵中,TP+TN是检索的正确数目,FP+FN是检索的错误信息数目,为何不采用准确率和错误率作为性能度量的指标?实际中不采用准确率和错误率去作为指标度量是有道理的,因为大部分实际问题中,TN的值(非目标网页的数目很大,数以亿计。)都非常大,从而使得其他数据显得微不足道。针对该情况,一般采用精确率和召回率作为度量的方法。

2 采用精确率和召回率评估检索模型的优点:



①    准确率数值对于比较小但是我们感兴趣的数值TP、FP和FN不是特别敏感,而精确率和召回率对于这样数据比较敏感。(其实就是避免FN这样庞大的数据的原因)

②    在其他条件相等情况下,F度量和TP的数量成正比,而准确率只是针对错误的数量很敏感。F度量这种倾向和我们直观感觉是一致的,我们对目标事件很敏感,甚至返回一些垃圾数据也在所不惜。

③    遗漏的目标事件和所谓的垃圾事件对系统的影响其实并不相同,而利用精确率和召回率可以衡量其中差异。

3 准确率和F度量评价结果比较



表中显示的精确率、召回率、F度量(α=0.5)和准确率对于一个100 0000项数据集进行选择的结果,这个数据集中150项数据是目标数据。

(a)表显示随着F度量值的增加准确率在下降。

(b)表显示有同样大小的准确率,但是F度量值仍在增加。F度量倾向最大化真正确TP,而准确率仅仅针对错误的数值敏感。

漏识率:一个不太常用的指标,表示被错误选择的非目标项在非目标集中所占的百分比,也就是错误出现,却被系统判断为正确的。公式表示如下:

当系统很少假正确FP情况下,漏识率可以评价系统构建困难程度。如果非目标项数目非常大,那么FP较大而产生较低的精确率就有可能无法避免,因为非目标数目非常大,那么由于FP较大产生的精确率就可能无法避免。

4 参考文献



【1】 数据挖掘概念与技术(364--386) 韩家炜

【2】 数据挖掘:R语言实战(274--292) 黄文、王正林

【3】 统计自然语言处理基础 (166—169) 宛春法等译

【4】 统计学习方法(10---13) 李航

5 自然语言相关系列文章



【自然语言处理:马尔可夫模型(一)】:初识马尔可夫和马尔可夫链

【自然语言处理:马尔可夫模型(二)】:马尔可夫模型与隐马尔可夫模型

【自然语言处理:马尔可夫模型(三)】:向前算法解决隐马尔可夫模型似然度问题

【自然语言处理:马尔可夫模型(四)】:维特比算法解决隐马尔可夫模型解码问题(中文句法标注)

【自然语言处理:马尔可夫模型(五)】:向前向后算法解决隐马尔可夫模型机器学习问题

声明:关于此文各个篇章,本人采取梳理扼要,顺畅通明的写作手法。系统阅读相关书目和资料总结梳理而成,旨在技术分享,知识沉淀。在此感谢原著无私的将其汇聚成书,才得以引荐学习之用。其次,本人水平有限,权作知识理解积累之用,难免主观理解不当,造成读者不便,基于此类情况,望读者留言反馈,便于及时更正。本文原创,转载请注明出处基于NLP角度的模型评价方法。

时间: 2024-10-23 14:33:24

【NLP】蓦然回首:谈谈学习模型的评估系列文章(三)的相关文章

学习Hadoop不错的系列文章

1)Hadoop学习总结 (1)HDFS简介 (2)HDFS读写过程解析 (3)Map-Reduce入门 (4)Map-Reduce的过程解析 (5)Hadoop的运行痕迹 (6)Apache Hadoop 版本 2)Hadoop-0.20.0源代码分析 (1)Hadoop-0.20.0源代码分析(01) 地址:http://blog.csdn.net/shirdrn/article/details/4569702 (2)Hadoop-0.20.0源代码分析(02) 地址:http://blog

在NLP中深度学习模型何时需要树形结构?

前段时间阅读了Jiwei Li等人[1]在EMNLP2015上发表的论文<When Are Tree Structures Necessary for Deep Learning of Representations?>,该文主要对比了基于树形结构的递归神经网络(Recursive neural network)和基于序列结构的循环神经网络(Recurrent neural network),在4类NLP任务上进行实验,来讨论深度学习模型何时需要树形结构.下面我将通过分享这篇论文以及查看的一些

JVM系列文章(三):Class文件内容解析

作为一个程序员,仅仅知道怎么用是远远不够的.起码,你需要知道为什么可以这么用,即我们所谓底层的东西. 那到底什么是底层呢?我觉得这不能一概而论.以我现在的知识水平而言:对于Web开发者,TCP/IP.HTTP等等协议可能就是底层:对于C.C++程序员,内存.指针等等可能就是底层的东西.那对于Java开发者,你的Java代码运行所在的JVM可能就是你所需要去了解.理解的东西. 我会在接下来的一段时间,和读者您一起去学习JVM,所有内容均参考自<深入理解Java虚拟机:JVM高级特性与最佳实践>(

【NLP】揭秘马尔可夫模型神秘面纱系列文章(三)

向前算法解决隐马尔可夫模型似然度问题 作者:白宁超 2016年7月11日22:54:57 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处理时,才真正使用到隐马尔可夫模型,并体会到此模型的妙用之处.马尔可夫模型在处理序列分类时具体强大的功能,诸如解决:词类标注.语音识别.句子切分.字素音位转换.局部句法剖析.语块分析.命名实体识别.信息抽取等.另外广泛应用于自然科学.工程技术.生物科技.公用事业.信道编码等多个领域.本文写作思路如下

【NLP】揭秘马尔可夫模型神秘面纱系列文章(五)

向前向后算法解决隐马尔可夫模型机器学习问题 作者:白宁超 2016年7月12日14:28:10 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处理时,才真正使用到隐马尔可夫模型,并体会到此模型的妙用之处.马尔可夫模型在处理序列分类时具体强大的功能,诸如解决:词类标注.语音识别.句子切分.字素音位转换.局部句法剖析.语块分析.命名实体识别.信息抽取等.另外广泛应用于自然科学.工程技术.生物科技.公用事业.信道编码等多个领域.本文写作思

回归模型效果评估系列1-QQ图

(erbqi)导语 QQ图全称 Quantile-Quantile图,也就是分位数-分位数图,简单理解就是把两个分布相同分位数的值,构成点(x,y)绘图:如果两个分布很接近,那个点(x,y)会分布在y=x直线附近:反之则不:可以通过QQ图从整体评估回归模型的预测效果 QQ图一般有两种,正态QQ图和普通QQ图,区别在于正态QQ图中其中有一个分布是正态分布,下面来看下这两种分布 正态QQ图 下图来自这里                                                 

回归模型效果评估系列2-MAE、MSE、RMSE、MAPE(MAPD)

MAE.MSE.RMSE.MAPE(MAPD)这些都是常见的回归预测评估指标,重温下它们的定义和区别以及优缺点吧 MAE(Mean Absolute Error) 平均绝对误差                                                  是基础的评估方法,后面的方法一般以此为参考对比优劣. MSE(Mean Square Error) 平均平方差                                                   对比MAE,

《神经网络和深度学习》系列文章三:sigmoid神经元

出处: Michael Nielsen的<Neural Network and Deep Leraning>,点击末尾“阅读原文”即可查看英文原文. 本节译者:哈工大SCIR硕士生 徐伟 (https://github.com/memeda) 声明:我们将在每周一,周四,周日定期连载该书的中文翻译,如需转载请联系[email protected],未经授权不得转载. “本文转载自[哈工大SCIR]微信公众号,转载已征得同意.” 使用神经网络识别手写数字 感知机 sigmoid神经元 神经网络的

AngularJs学习笔记--Guide教程系列文章索引

在很久很久以前,一位前辈向我推荐AngularJs.但当时我没有好好学习,仅仅是讲文档浏览了一次.后来觉醒了……于是下定决心好好理解这系列的文档,并意译出来(英文水平不足……不能说是翻译,有些实在是看不懂,希望大家在参观的过程中指出其中的错误).经过1个多月断断续续的努力,终于把Guide里面的文章基本上都弄出来.Guide中的部分章节,由于重复的部分似乎有点多,而且篇幅较短,这里就没有列出来. 文章列表如下: AngularJs学习笔记--bootstrap AngularJs学习笔记--ht