1. 前言

在NLP中有几个经典的序列标注问题,词性标注(POS),chunking和命名实体识别(NER)。序列标注器的输出可用于另外的应用程序。例如,可以利用在用户搜索查询上训练的命名实体识别器来识别关键词,从而触发某些产品广告。另一个例子是搜索引擎可以使用这种标签信息来查找相关的网页。

2. BI-LSTM-CRF原理

在本文中,我们提出了各种基于长短期记忆(LSTM)的序列标注模型。这些模型包括LSTM网络,双向LSTM网络(BI-LSTM),带条件随机场的LSTM(LSTM-CRF)和具有CRF的双向LSTM(BI-LSTM-CRF)。

论文的工作是将BI-LSTM-CRF模型应用于NLP基准序列标注记数据集。实验表明,由于双向LSTM组件,BI-LSTM-CRF模型可以有效地使用过去和未来输入特征。

BI-LSTM-CRF模型可以在POS、chunking、NER数据集达到SOTA的水平。并且,与先前的结果相比,它更具有鲁棒性和对word embbding的依赖性较小。

3. BI-LSTM-CRF模型

BI-LSTM-CRF的结构是由word embedding、双向LSTM层、CRF层构成。

  1. word embedding:使用 unigram,bi-gram,tri-gram的特征,使用了50维的词向量。
  2. BI-LSTM层,是充分提取词过去和未来的特征,这种特征能够提升标签的准确度。
  3. CRF层是连接LSTM输出的线性表示,CRF层具有状态转移矩阵作为参数。

BI-LSTM-CRF的算法过程:

3.1 Feature Trick

我们可以将拼写和上下文特征都看作单词的特征。也就是说,神经网络的输入包括单词,拼写和上下文特征。论文指出,我们发现加入拼写能够加速训练,并且它们得到非常相似的标注准确性。

如下图所示:

4. 总结

序列标注是基础性的NLP研究课题,是许多NLP任务的基础。比如搜索引擎使用命名实体识别查询语句中的产品类实体,继而推荐广告。经典的序列标注有HMM、MEMMs和CRFs三种,其中CRFs的效果最好,可以解决HMM和MEMMs的标签偏置(label bias)问题。后来词向量的研究兴起,Collobert(Collobert et al.201) 的C&W词向量也在序列标注一展身手。Collobert 用的是卷积神经网络+CRF。LSTM在语音识别等领域已经有了成功的应用,引文若干。在之后的实验中对比了这些模型和自己模型(BI-LSTM-CRF, state of the art)的结果。

BI-LSTM-CRF在序列标注中的应用的更多相关文章

  1. LSTM+CRF进行序列标注

    为什么使用LSTM+CRF进行序列标注 直接使用LSTM进行序列标注时只考虑了输入序列的信息,即单词信息,没有考虑输出信息,即标签信息,这样无法对标签信息进行建模,所以在LSTM的基础上引入一个标签转 ...

  2. TensorFlow教程——Bi-LSTM+CRF进行序列标注(代码浅析)

    https://blog.csdn.net/guolindonggld/article/details/79044574 Bi-LSTM 使用TensorFlow构建Bi-LSTM时经常是下面的代码: ...

  3. Bi-LSTM+CRF在文本序列标注中的应用

    传统 CRF 中的输入 X 向量一般是 word 的 one-hot 形式,前面提到这种形式的输入损失了很多词语的语义信息.有了词嵌入方法之后,词向量形式的词表征一般效果比 one-hot 表示的特征 ...

  4. ALBERT+BiLSTM+CRF实现序列标注

    一.模型框架图 二.分层介绍 1)ALBERT层 albert是以单个汉字作为输入的(本次配置最大为128个,短句做padding),两边分别加上开始标识CLS和结束标识SEP,输出的是每个输入wor ...

  5. TensorFlow (RNN)深度学习 双向LSTM(BiLSTM)+CRF 实现 sequence labeling 序列标注问题 源码下载

    http://blog.csdn.net/scotfield_msn/article/details/60339415 在TensorFlow (RNN)深度学习下 双向LSTM(BiLSTM)+CR ...

  6. 序列标注(BiLSTM-CRF/Lattice LSTM)

    前言 在三大特征提取器中,我们已经接触了LSTM/CNN/Transormer三种特征提取器,这一节我们将介绍如何使用BiLSTM实现序列标注中的命名实体识别任务,以及Lattice-LSTM的模型原 ...

  7. 基于CRF序列标注的中文依存句法分析器的Java实现

    这是一个基于CRF的中文依存句法分析器,内部CRF模型的特征函数采用 双数组Trie树(DoubleArrayTrie)储存,解码采用特化的维特比后向算法.相较于<最大熵依存句法分析器的实现&g ...

  8. 用CRF++开源工具做文本序列标注教程

    本文只介绍如何快速的使用CRF++做序列标注,对其中的原理和训练测试参数不做介绍. 官网地址:CRF++: Yet Another CRF toolkit 主要完成如下功能: 输入 -> &qu ...

  9. 【中文分词系列】 4. 基于双向LSTM的seq2seq字标注

    http://spaces.ac.cn/archives/3924/ 关于字标注法 上一篇文章谈到了分词的字标注法.要注意字标注法是很有潜力的,要不然它也不会在公开测试中取得最优的成绩了.在我看来,字 ...

随机推荐

  1. SQL数据缓存依赖总结

    以前只听过SQL server数据缓存依赖,但一直没使用,由于项目需要,才研究了一番,发现了一个很诡异的问题,竟然是一个操作顺序问题导致的. SQL server数据缓存依赖有两种实现模式,轮询模式, ...

  2. Xcode 各版本简介

    1.Xcode 验证 在终端输入 spctl 命令,并带上安装的 Xcode 的路径 $ spctl --assess --verbose /Applications/Xcode.app 之后会看到类 ...

  3. Kibana访问权限控制

    ELK平台搭建完成后,由于Kibana的服务也是暴露在外网,且默认是没有访问限制的(外部所有人都可以访问到),这明显不是我们想要的,所以我们需要利用Nginx接管所有Kibana请求,通过Nginx配 ...

  4. Android的 EditText的inputType类型

    android开发过程中突然发现的warning EditText 报出 “This text field does not specify an inputType or a hint”   原因: ...

  5. jQuery -&gt; 删除/替换DOM元素

    删除 删除操作很easy,直接在结果集后链式调用remove()方法就可以. 比如.要删除下面html脚本中全部的a元素.直接通过 $('a'.remove(); 就能够做到了. <h3> ...

  6. javascript控件(二):一个好用的表格(分页实例)

    一.官网 https://datatables.net/ 二.引用 <script src="bower_components/datatables.net/js/jquery.dat ...

  7. [转]如何在Windows 10中更改文件夹背景颜色

    ini文件.我们甚至可以使用相同的技术将图片设置为文件夹背景. 已有工具可以更改Windows 7中Windows资源管理器背景的颜色,并将图像设置为Windows 7中的文件夹背景,但这些工具与Wi ...

  8. Eclipse_Configure

    原文链接:http://android.eoe.cn/topic/android_sdk 1. 下载Eclipse 在前面我们配置好了JDK环境后,就可以开始配置Android的集成开发环境了,官方G ...

  9. Python 父目录获取

    # coding=utf-8import os currentPath = os.getcwd() # 当前目录parent_path = os.path.dirname(currentPath) # ...

  10. Eclipse 不能build, pom文件上面有叉叉 解决办法

    Error message:   [html] view plaincopy execution not covered by lifecycle configuration: org.apache. ...