该模型是一个基于字符的BiLSTM-CRF序列标注模型。
运行代码环境:Python 3 和TensorFlow 1.2
### 模型介绍
整个模型共分三层:
第一层:向量查找层。目的是将输入的字符汉字转化为对应的字符向量(采用的是one-hot方法)
第二层:双向LSTM。目的是有效地自动提取输入信息的特征。
第三层:CRF层。顶层使用CRF对句子中的字符打标签,完成标注。
![Network](./pic/network.png)
### 训练方法
输入如下命令,开始训练模型
`python main.py --mode train --dataset_name MSRA`
语料库选择,修改`--dataset_name`参数(MSRA, ResumeNER, WeiboNER,人民日报)
使用预训练的字向量,设置参数`--use_pre_emb true`,默认为false
备注:(增加了自动选择对应数据集tag的功能)
~~训练其他语料库的话,由于不同语料库的**实体类别**可能存在差异,需要修改`data.py`代码中的tag2label~~,
如果需要运行demo,还需要修改`utils.py`里的`get_entity()`系列方法
| MSRA实体类别 | 标签(BIO标记法) |
| ------ | ------ |
| 人名 | B-PER I-PER |
| 地名 | B-LOC I-LOC |
| 机构名 | B-ORG I-ORG|
| 人民日报实体类别 | 标签(BIO标记法) |
| ------ | ------ |
| 人名 | B-PERSON I-PERSON |
| 普通地名 | B-LOC I-LOC |
| 行政区划地名 | B-GPE I-GPE |
| 机构名 | B-ORG I-ORG|
| 其他 | B-MISC I-MISC|
| WeiboNER实体类别 | 标签(BIO标记法) |
| ------ | ------ |
| 人名 | B-PER.NAM I-PER.NAM |
| 地名 | B-LOC.NAM I-LOC.NAM |
| 机构名 | B-ORG.NAM I-ORG.NAM|
| GPE-political | B-GPE.NAM I-GPE.NAM|
| 人名(nominal) | B-PER.NOM I-PER.NOM |
| 地名(nominal) | B-LOC.NOM I-LOC.NOM |
| 机构名(nominal) | B-ORG.NOM I-ORG.NOM|
| ResumeNER实体类别 | 标签(IOBES标记法) |
| ------ | ------ |
| 人名 | B-NAME M-NAME E-NAME、S-NAME |
| 民族/种族 | B-RACE M-RACE E-RACE、S-RACE |
| 国家 | B-CONT M-CONT E-CONT、S-CONT |
| 地名 | B-LOC M-LOC E-LOC、S-LOC|
| 专业 | B-PRO M-PRO E-PRO、S-PRO|
| 学历 | B-EDU M-EDU E-EDU、S-EDU|
| 职位 | B-TITLE M-TITLE E-TITLE、E-TITLE|
| 组织机构 | B-ORG M-ORG E-ORG 、S-ORG|
### 测试方法
输入如下命令完成测试集测试
`python main.py --mode test --dataset_name MSRA --demo_model 1522858865`
备注:训练过程中,每开始一次都会在“data_path_save/”目录下产生一个文件夹(以时间转换为整数来命名的),将训练的参数保存。
当测试的时候,想用哪次训练的参数进行测试,就将该次训练的文件名赋值给“--demo_model",即替换上面命令中的"1522858865"。
”1522858865“是我在训练时的最后参数。
### 演示
在这里可以输入一段文本,查看识别结果。
运行命令如下;
`python main.py --mode demo --dataset_name MSRA --demo_model 1522858865`
运行程序后,会提示输入一段文本,输入后就可以看到通过该代码识别的结果。
![demo](./pic/demo.PNG)
### 参考
\[1\] [Determined22/zh-NER-TF](https://github.com/Determined22/zh-NER-TF)
土豆片片
- 粉丝: 1856
- 资源: 5869
最新资源
- 某永磁同步电机motorcad仿真流程,很详细 录制video+文档
- 2000-2020年各省规模以上工业企业利润总额数据.xlsx
- JAVA源码+SpringBoot+vue+mysql 洗衣店订单管理系统 +数据库+文档
- SVG转QPainterPath
- 虛拟同步发电机SG离并网(预同步)切与自适应 转动惯量控制策略
- 三相PWM整流器双闭环仿真模型 模型中包含:主电路,坐标变,电压电流双环PI控制器,SVPWM控制 1.功率因数1,THD仅1.2% 2.模型闭环输出电压200VDC 3.输出功率调节输出电阻阻值计算
- JAVA源码+SpringBoot+vue+mysql 车辆管理系统 +数据库+文档
- 基于Opencv C# 开发的直线卡尺工具源码,可以求直线交点,代码运行正常,由实际运行项目中剥离,含测试图片,包含一个强大的视觉控件源码,控件仿halcon,支持平移,无损缩放,显示各种自定义图形工
- comsol模型,变压器匝间短路5%,电磁场,二维模型,瞬态 包括电流变化曲线,正常与匝短后的绕组上的轴向磁密和辐向磁密波形与分布,铁心的磁密变化
- JAVA源码+SpringBoot+vue+mysql 智能物流管理系统 +数据库+文档
- 基于java的校园新W网站设计新版源码+数据库+说明
- 按照\r\n解析一维数组的数据,并将结果存入到二维数组中
- cc2530无线升级程序 全套(上位机+下位机),可提供上位机exe程序下位机hex文件,或上下位机整套源码
- 源码-karate-master 基于java的API测试框架
- JAVA源码+SpringBoot+vue+mysql 智慧社区 +数据库+文档
- LLC谐振变器变频移相(PFM+PSM)混合控制仿真 该方法可以拓宽输入电压范围 并且可以保证mos管的ZVS零电压开通和二极管的ZCS零电流关断 展示图中展示了PFM与PSM相互切时的波形图
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈