用CRF做命名实体识别(一)

摘要

本文主要讲述了关于人民日报标注语料的预处理,利用CRF++工具包对模型进行训练以及测试

目录

  • 明确我们的标注任务
  • 语料和工具
  • 数据预处理
    1.数据说明
    2.数据预处理
  • 模型训练及测试
    1.流程
    2.标注集
    3.特征模板
    4.CRF++包的使用说明
  • 总结与展望

正文

1.明确我们的标注任务

这篇文章主要是介绍用CRF模型去提取人民日报语料的时间、人物、地点及组织机构名,也就是提取TIME、PERSON、LOCATION、ORGANIZATION四种实体。训练我们直接使用CRF++工具包。

2.语料和工具

人民日报1998中文标注语料库
CRF++安装包

3.数据预处理

3.1 数据说明

  • 首先打开下载的人民日报标注语料的文件,要转为utf-8格式。我们需要提取的实体是时间、人名、地名、组织机构名,根据语料库的词性标记说明,对应的词性分别为/t、/nr、/ns、/nt。

3.2 数据预处理

  • 语料库里的姓名标注是将姓和名分开标注的,因此需要合并姓名
合并姓名前:
'19980101-01-001-002/m中共中央/nt总书记/n、/w国家/n主席/n江/nr泽民/nr'
合并姓名后:
'19980101-01-001-002/m中共中央/nt总书记/n、/w国家/n主席/n江泽民/nr'
  • 需要将中括号里的内容合并
合并中括号前:
'[中国/ns  政府/n]nt  顺利/ad  恢复/v  对/p  香港/ns  行使/v  主权/n  ,/w '
合并中括号后:
'中国政府nt顺利/ad恢复/v对/p香港/ns行使/v主权/n,/w'

**4.1- 时间合并

合并时间前:
'1999年/t  12月/t  澳门/ns  的/u  回归/vn  一定/d  能够/v  顺利/ad  实现/v  。/w'
合并时间后:
'1999年12月/t澳门/ns的/u回归/vn一定/d能够/v顺利/ad实现/v。/w'
  • 全角字符统一转为半角字符
  • 人民日报语料有些地方不是两个空格的,例如11042行 '副教授/n 叹/Vg 道/v ,/w 成/v', 中的“叹/Vg” 和“道/v”之间是单空格,需要变成双空格。否则代码运行会报错

4.模型训练及测试

流程**

image.png

4.2 标注集
用的是BMEWO做标注体系
B代表实体的首部,M代表实体的中部,E代表实体的尾部,W代表单个的实体,O代表非实体

新   O
世   O
纪   O
—   O
—   O
一   B_TIME
九   M_TIME
九   M_TIME
八   M_TIME
年   E_TIME
新   B_TIME
年   E_TIME
讲   O
话   O
(   O
附   O
图   O
片   O
1   O
张   O
)   O

中   B_ORGANIZATION
共   M_ORGANIZATION
中   M_ORGANIZATION
央   E_ORGANIZATION
总   O
书   O
记   O

CRF++训练的数据格式如上图所示

4.3 特征模板
特征模板template如下

# Unigram
U00:%x[-2,0]
U01:%x[-1,0]
U02:%x[0,0]
U03:%x[1,0]
U04:%x[2,0]
U05:%x[-2,0]/%x[-1,0]/%x[0,0]
U06:%x[-1,0]/%x[0,0]/%x[1,0]
U07:%x[0,0]/%x[1,0]/%x[2,0]
U08:%x[-1,0]/%x[0,0]
U09:%x[0,0]/%x[1,0]

# Bigram
B

4.4 CRF++包的使用说明
下载工具包之后,打开文件夹

image.png

1.在此处新建一个文件夹chinese

2.我们复制crf_learn.exe,crf_test.exe和libcrfpp.dll这三个文件到我们新建的chinese文件夹里面,然后再把之前生成的CRF++数据格式的数据文件train.data放到chinese里面,再把我们自己定义的特征模板文件放到chinese文件夹里面(一共五个文件)

3.在chinese里面打开cmd
敲入以下代码,这便是开始训练模型

crf_learn -a MIRA template train.data model

template就是我们上面定义的特征模板
训练好之后会产生一个model文件

4.自己写几个测试文本,并将其转为CRF++的数据格式,注意标签要全部一样,如下图所示

扬   B
帆   B
远   B
东   B
做   B
与   B
中   B
国   B
合   B
作   B
的   B
先   B
行   B

希   B
腊   B
的   B
经   B
济   B
结   B
构   B
较   B
特   B
殊   B
。   B

同样把这个测试数据的文件test.data放到chinese文件夹里面

5.在chinese里面打开cmd
敲入以下代码,这便是开始模型预测

crf_test -m model test.data >> output.txt

打开output.txt文件你就会看到预测的结果

扬   B   O
帆   B   O
远   B   O
东   B   O
做   B   O
与   B   O
中   B   B_LOCATION
国   B   E_LOCATION
合   B   O
作   B   O
的   B   O
先   B   O
行   B   O

希   B   B_LOCATION
腊   B   E_LOCATION
的   B   O
经   B   O
济   B   O
结   B   O
构   B   O
较   B   O
特   B   O
殊   B   O
。   B   O

5.总结与展望

现在仅仅只是粗暴的把这个流程实现了一遍,测试的效果并不是很好,有部分的人名没有识别出来,还需要再添加特征,以及更改template特征模板,这些还在学习。CRF的原理也不是很懂,也需要去完整的学习一下。后续还会更新


以下是我所有文章的目录,大家如果感兴趣,也可以前往查看
👉戳右边:打开它,也许会看到很多对你有帮助的文章

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,602评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,442评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,878评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,306评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,330评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,071评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,382评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,006评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,512评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,965评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,094评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,732评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,283评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,286评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,512评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,536评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,828评论 2 345

推荐阅读更多精彩内容