自己也是一个初学者,主要是总结一下最近的学习,大佬见笑。
中文分词
说到命名实体抽取,先要了解一下基于字标注的中文分词。
比如一句话
"我爱北京天安门”。
分词的结果可以是
“我/爱/北京/天安门”。
那什么是基于字标注呢?
“我/O 爱/O 北/B 京/E 天/B 安/M 门/E”。
就是这样,给每个字都进行一个标注。我们可以发现这句话中字的标注一共有四种。他们分别代表的意义如下。
B | 词首
M | 词中
E | 词尾
O | 单字
B表示一个词的开始,E表示一个词的结尾,M表示词中间的字。如果这个词只有一个字的话,用O表示。
命名实体识别
数据处理
了解了中文分词,那么实体识别也差不多。就是把不属于实体的字用O标注,把实体用BME规则标注,最后按照BME规则把实体提取出来就ok了。
数据可以自己标注,也可以找个公开的数据集先练练手。我是用的是玻森数据提供的命名实体识别数据,https://bosonnlp.com 这是官网,在数据下载里面有一个命名实体识别数据集,或者在我的github里下载。
这个数据集一个包含了6个实体类别:
time: 时间