专栏首页深度学习自然语言处理【基础】如何理解LSTM后接CRF?

【基础】如何理解LSTM后接CRF?

来自 | 知乎

地址 | https://www.zhihu.com/question/62399257/answer/241969722

编辑 | 机器学习算法与自然语言处理

本文仅作学术分享,若侵权,请联系后台删文处理

如何理解LSTM后接CRF?

学生刚刚做NER方向的研究,看的文章在LSTM后都接CRF,能不能具体解释一下为什么改用CRF而不接分类器。


Scofield

https://www.zhihu.com/question/62399257/answer/241969722

暂且简而言之,日后有时间了写文章详细展开。


1、perspectively

大家都知道,LSTM已经可以胜任序列标注问题了,为每个token预测一个label(LSTM后面接:分类器);而CRF也是一样的,为每个token预测一个label。

但是,他们的预测机理是不同的。CRF是全局范围内统计归一化的条件状态转移概率矩阵,再预测出一条指定的sample的每个token的label;LSTM(RNNs,不区分here)是依靠神经网络的超强非线性拟合能力,在训练时将samples通过复杂到让你窒息的高阶高纬度异度空间的非线性变换,学习出一个模型,然后再预测出一条指定的sample的每个token的label。

2、LSTM+CRF

既然LSTM都OK了,为啥researchers搞一个LSTM+CRF的hybrid model?

哈哈,因为a single LSTM预测出来的标注有问题啊!举个segmentation例子(BES; char level),plain LSTM 会搞出这样的结果:

input: "学习出一个模型,然后再预测出一条指定"

expected output: 学/B 习/E 出/S 一/B 个/E 模/B 型/E ,/S 然/B 后/E 再/E 预/B 测/E ……

real output: 学/B 习/E 出/S 一/B 个/B 模/B 型/E ,/S 然/B 后/B 再/E 预/B 测/E ……

看到不,用LSTM,整体的预测accuracy是不错indeed, 但是会出现上述的错误:在B之后再来一个B。这个错误在CRF中是不存在的,因为CRF的特征函数的存在就是为了对given序列观察学习各种特征(n-gram,窗口),这些特征就是在限定窗口size下的各种词之间的关系。然后一般都会学到这样的一条规律(特征):B后面接E,不会出现E。这个限定特征会使得CRF的预测结果不出现上述例子的错误。当然了,CRF还能学到更多的限定特征,那越多越好啊!

好了,那就把CRF接到LSTM上面,把LSTM在time_step上把每一个hidden_state的tensor输入给CRF,让LSTM负责在CRF的特征限定下,依照新的loss function,学习出一套新的非线性变换空间。

最后,不用说,结果还真是好多了呢。

LSTM+CRF codes, here. Go just take it.

hope this helps.


火华

https://www.zhihu.com/question/62399257/answer/325334144

简单说就是条件随机场可以把label的上下文学出来。lstm加softmax分类的时候只能把特征的上下文关系学出来,label的没学出来。


uuisafresh

https://www.zhihu.com/question/62399257/answer/206903718

我理解B-LSTM+CRF模型,所谓在LSTM上面套CRF其实是不严谨的说法,假如这样说,那实际上是两层sequence model了吗。我认为其实是说把LSTM和CRF融合起来。比如LSTM的产出只有发射概率,尽管这个发射概率考虑到了上下文,因为LSTM有门机制,可以记忆或者遗忘前面内容,然后双向,有前有后这样,但是毕竟没有转移概率,像CRF HMM这种,都是结合发射概率和转移概率的。比如在词性标注,最简单BIO这样,有显而易见的规则,就是B-X后面不会有I-Y。所以干脆搞出B-LSTM+CRF,结合发射概率和转移概率这样。实际上后面接的CRF并不是真的CRF,比如它又没有特征模板,它又不接受离散特征,他只是一次Viterbi推导而已。

本文分享自微信公众号 - 深度学习自然语言处理(zenRRan)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CRF和LSTM 模型在序列标注上的优劣?

    作者:谢志宁 https://www.zhihu.com/question/46688107/answer/117448674

    zenRRan
  • 双向LSTM-CRF模型用于序列标注

    本文是2015年百度的三位作者提出的,主要研究了一系列基于LSTM模型上的序列标注任务的性能。模型包括LSTM,BI-LSTM,LSTM-CRF,BI-LSTM...

    zenRRan
  • NLP硬核入门-条件随机场CRF

    实际上HMM和CRF的学习没有先后顺序。但是两者很相似,在学习了HMM后更容易上手CRF,所以建议先学习HMM后学习CRF。

    zenRRan
  • GitHub 上的这个开源项目也太有创意了吧!

    我们都知道,Git 作为当下最为主流的分布式版本控制系统,已然成为程序员生活中不可或缺的一款开发工具。

    GitHubDaily
  • 业务上云是未来趋势

    大家对电都很清楚,云计算就像用电一样,根据需求调配用量,按需收费,弹性满足。云计算的发展让大数据有了用武之地。没有云计算的大数据就是水中花镜中月。云计算提供了大...

    机器思维研究院
  • dubbo源码之dubbo SPI

    假设我们有一个服务类型是com.example.CodecSet,它有两个abstract方法:

    开发架构二三事
  • 数字孪生赋能工业发展:可视化“智”造航天新里程

    2020 年 6 月 23 日 9 时 43 分,随着北斗三号最后一颗组网卫星成功在西昌卫星发射中心发射,至此,我国北斗卫星导航系统已全面建成。从 2000 年...

    HT for Web
  • 在Debian 7.4上安装和配置ownCloud

    ownCloud是一个开源的私有云平台,访问文件轻松方便,不受位置和平台限制。ownCloud的兼容性也很不错,大多数主流的PC操作系统,还有移动端设备都能很好...

    Techeek
  • Nginx配置与应用详解

    前言 Nginx是由俄罗斯软件工程师Igor Sysoev开发的一个高性能的HTTP和反向代理服务器,具备IMAP/POP3和SMTP服务器功能。Nginx最大...

    小小科
  • php在线PIng接口源码

    Youngxj

扫码关注云+社区

领取腾讯云代金券