转自:http://www.coderjie.com/blog/43b3601e0a2411e7841d00163e0c0e36
1.块在内存中以树的形式存储,分好块的文本在文件中用IOB标记存储:
I(inside,内部),O(outside,外部),B(begn,开始)。
如果一个单词被标记为B,则表示一个块的开始,块内的单词被标记为I,其他单词被标记为O。B和I标记后需要加块类型的后缀,如B-NP,I-NP。如下图所示:
文本方式的IOB格式存储如下:
We PRP B-NP saw VBD O the DT B-NP yellow JJ I-NP dog NN I-NP
conll2000语料库
NLTK中包含一个已经分好块的语料库conll2000,该语料库的部分内容如下:
http://nathanlvzs.github.io/Several-Tagging-Schemes-for-Sequential-Tagging.html
- IOB1: 标签I用于文本块中的字符,标签O用于文本块之外的字符,标签B用于在该文本块前面接续则一个同类型的文本块情况下的第一个字符。
- IOB2: 每个文本块都以标签B开始,除此之外,跟IOB1一样。
BIOES:
- START/END (也叫SBEIO、IOBES): 包含了全部的5种标签,文本块由单个字符组成的时候,使用S标签来表示,由一个以上的字符组成时,首字符总是使用B标签,尾字符总是使用E标签,中间的字符使用I标签。