博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
COLING 2018 最佳论文解读:序列标注经典模型复现
阅读量:5820 次
发布时间:2019-06-18

本文共 1486 字,大约阅读时间需要 4 分钟。

本期推荐的论文笔记来自 PaperWeekly 社区用户 @handsome。这篇论文是 COLING 2018 的 Most reproducible Paper。作者用 PyTorch 实现了一个统一的序列标注框架,重现了 CoNLL 2003 English NER、CoNLL 2000 Chunking 和 PTB POS tagging 这三个数据集上不同模型的的表现。值得一提的是,基于这个统一的框架,作者对一些已有工作的一些不一致的结论进行了反驳,提出了一些新的看法。对于实践者而言,这篇论文还是很有借鉴意义的。

如果你对本文工作感兴趣,点击底部阅读原文即可查看原论文。

关于作者:梁帅龙,新加坡科技设计大学博士生,研究方向为自然语言处理。

■ 论文 | Design Challenges and Misconceptions in Neural Sequence Labeling

■ 链接 |

■ 源码 |

引言

这篇论文是 COLING 2018 的 Best Paper 之一 “Most Reproducible Paper”,论文基于的 PyTorch 代码框架 NCRF++ 也收录于 ACL 2018 的 Demo Paper。

作者用一个统一的序列标注框架实现了不同模型架构在 NER, Chunking, POS Tagging 数据集上的表现,并对已有工作的一些不一致的结论进行了检验,发现了新的结论。代码在 Github 上已经开源,使用文档也非常详尽,做序列标注的童鞋们又多了一把利器可以使用。

任务

CoNLL 2003 英文的命名实体识别 (NER)

CoNLL 2000 Chunking

PTB POS Tagging

模型

字符序列表示

在词的表示方面,本文摒弃了基于传统的特征的方法,直接使用词本身的信息进行编码。除了词向量以外,为了更好地对那些不常见的词编码,文章使用 LSTM 或者 CNN 对构成词语的字符进行编码。

image

词序列表示

在整个句子级别,文章同样使用 LSTM / CNN 对构成句子的词语的表示进行上下文的编码。

image

预测层

获取了每个词的上下文表示之后,在最后的预测层,文章使用了基于 Softmax 的和基于 CRF 的结构。和 Softmax 相比, CRF 往往更能有效地结合上下文的标签的依赖关系进行预测。

实验结果

NER的实验结果

image

Chunking的实验结果

image

POS Tagging的实验结果

image

从以上结果来看,字符序列的表示方面,CNN 和 LSTM 的结果差别不大;词序列的表示方面,LSTM 的结果比 CNN 的稍好一些,说明全局信息的有效性;预测层方面,POS Tagging 任务的 CRF 和 Softmax 表现相当,但是 NER、Chunking 的 CRF 的结果要比 Softmax 好一些。相比 POS 的tags,BIE 标签之间的依赖关系可能更容易被 CRF 所建模。

其他

这篇文章也检验了预训练的词向量的不同(GloVe/SENNA),标注体系的不同 (BIO/BIOES),运行环境的不同(CPU/GPU),以及优化器的不同 (SGD/Adagrad/Adadelta/RMSProp/Adam)对结果的影响。感兴趣的同学可以查看论文原文。

最后

本文代码已开源,使用非常方便,也可以加自定义的 feature,几乎不用自己写代码就可以使用了。

原文发布时间为:2018-07-02

本文作者:梁帅龙
本文来自云栖社区合作伙伴“”,了解相关信息可以关注“ ”。

转载地址:http://gizdx.baihongyu.com/

你可能感兴趣的文章
剑指Google
查看>>
社区系统:如何搭建旅游攻略社区
查看>>
CentOS7网络设置
查看>>
centos6.5配置本地yum源
查看>>
html中onclick属性问题
查看>>
我的友情链接
查看>>
PHP+MYSQL分页原理
查看>>
linux下用户与组
查看>>
distribute-list
查看>>
视频播放
查看>>
纸上谈兵的JAVA中间件之weblogic(安装篇)
查看>>
EBS 11i PO Status PO状态详细说明
查看>>
平台数据库导入导出快捷工具说明
查看>>
jdk6 HttpServer的使用
查看>>
基于zookeeper配置docker overlay network,实现多主机互联
查看>>
mybatis config
查看>>
jetty 手动 加载spring mvc demo
查看>>
生产环境常见的HTTP状态码列表-转自(老男孩)
查看>>
Java: Queue 各种方法的细小区别
查看>>
解决Nginx的connect() to 127.0.0.1:8080,selinux
查看>>