我是靠谱客的博主 花痴冰棍,最近开发中收集的这篇文章主要介绍序列标注中的几种标签方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

标签说明

标签方案中通常都使用一些简短的英文字符[串]来编码。

标签是打在token上的。

对于英文,token可以是一个单词(e.g. awesome),也可以是一个字符(e.g. a)。

对于中文,token可以是一个词语(分词后的结果),也可以是单个汉字字符。

为便于说明,以下都将token试作等同于字符。

标签列表如下:

  • B,即Begin,表示开始
  • I,即Intermediate,表示中间
  • E,即End,表示结尾
  • S,即Single,表示单个字符
  • O,即Other,表示其他,用于标记无关字符

常见标签方案

基于上面的标签列表,通过选择该列表的子集,可以得到不同的标签方案。同样的标签列表,不同的使用方法,也可以得到不同的标签方案。

常用的较为流行的标签方案有如下几种:

  • IOB1: 标签I用于文本块中的字符,标签O用于文本块之外的字符,标签B用于在该文本块前面接续则一个同类型的文本块情况下的第一个字符。
  • IOB2: 每个文本块都以标签B开始,除此之外,跟IOB1一样。
  • IOE1: 标签I用于独立文本块中,标签E仅用于同类型文本块连续的情况,假如有两个同类型的文本块,那么标签E会被打在第一个文本块的最后一个字符。
  • IOE2: 每个文本块都以标签E结尾,无论该文本块有多少个字符,除此之外,跟IOE1一样。
  • START/END (也叫SBEIO、IOBES): 包含了全部的5种标签,文本块由单个字符组成的时候,使用S标签来表示,由一个以上的字符组成时,首字符总是使用B标签,尾字符总是使用E标签,中间的字符使用I标签。
  • IO: 只使用I和O标签,显然,如果文本中有连续的同种类型实体的文本块,使用该标签方案不能够区分这种情况。

其中最常用的是IOB2、IOBS、IOBES。

最后

以上就是花痴冰棍为你收集整理的序列标注中的几种标签方案的全部内容,希望文章能够帮你解决序列标注中的几种标签方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部