<font size=8>**数据处理模块**</font>
此模块主要对数据data、data2、msra、人名日报 4份数据进行处理,可直接提供给模型使用。
# 文件构成
- data2_preprocessing.py data2数据预处理文件
- msra_preprocessing.py MSRA数据预处理
- process_data.py 数据处理
- renminribao_preprocessing.py 人民日报数据处理
- vocab.py 词表
- 提供词表 和 tag 标签表格
- 词表采用 BERT 预训练文件中vocab.txt
- tag 采用 O、B-PER、I-PER、B-LOC、I-LOC、B-ORG、I-ORG
# 文件简介
## data2_preprocessing.py
data2 原文件all.txt 文件中的格式,这便是我们预处理的标准格式,所以这里只需要将文件切分成test.txt和train.txt两份数据即可。
```python
中 B-ORG
共 I-ORG
中 I-ORG
央 I-ORG
致 O
中 B-ORG
国 I-ORG
致 I-ORG
公 I-ORG
党 I-ORG
十 I-ORG
一 I-ORG
大 I-ORG
的 O
贺 O
词 O
```
## msra_preprocessing.py MSRA数据预处理
MAST是微软亚洲研究院开源数据
train1.txt 数据格式:
```python
当/o 希望工程/o 救助/o 的/o 百万/o 儿童/o 成长/o 起来/o ,/o 科教/o 兴/o 国/o 蔚然成风/o 时/o ,/o 今天/o 有/o 收藏/o 价值/o 的/o 书/o 你/o 没/o 买/o ,/o 明日/o 就/o 叫/o 你/o 悔不当初/o !/o
```
其中需要做几个映射:
```
人名:
nr -> B-PER、I-PER
地名:
ns -> B-LOC、I-LOC
机构名称:
nt -> B-ORG、I-ORG
```
我们需要处理成以下格式:
```python
当 O
希 O
望 O
工 O
程 O
救 O
助 O
的 O
百 O
万 O
```
并且切分成训练和测试数据集
## process_data.py 数据处理
数据处理直接提供给模型训练使用。
数据处理有两种一种是一般的模型输入只需要一个2维数组
- 一般模型
- inputs = ids(n_sample x max_len) 只需要一个二维输入
- labels = label(n_sample x max_len x one_hot_num) (转化为noe-hot为可选项目) 三维数据
- BERT
- inputs =[ids(n_sample x max_len) , types(n_sample x max_len) ] 只需要2个二维输入
- labels = label(n_sample x max_len x one_hot_num) (转化为noe-hot为可选项目) 三维数据
所以 一般模型的输入和bert数据输入需要进行区分
- 数据处理 (过程)
- data(texts)(一般处理)
- 获取char to index 字典
- 把文本转化为index的形式
- 截取过长的文本、填充长度不够文本
- data(texts)(bert数据处理)
- 获取char to index 字典
- ids把文本转化为index的形式 type 全部填充0 因为只有一个句子
- 截取过长的文本
- 首尾进行填充(开始填充[CLS] 结尾填充 [SEP])
- labels()
- 获取tag to index 字典
- 把label处理成Index的形式
- 截取和填充(bert需要注意填充了[CLS] [SEP])
- 转化成one-hot(如果需要)
- 最终输出(以label为one-hot为例子)
- 一般数据
- datas.shape=(n_sample, max_len)
- labels.shape=(n_sample, max_len, one_hot_len)
- bert数据
- datas = [ ids.shape=(n_sample, max_len), types.shape=(n_sample, max_len) ]
- lables.shape=(n_sample, max_len, one_hot_len)
- bert数据处理
## renminribao_preprocessing.py
人名日报标注数据预处理
原数据格式 (其实这个是别人稍稍处理过的-------------- )
```python
迈/O 向/O 充/O 满/O 希/O 望/O 的/O 新/O 世/O 纪/O —/O —/O 一/O 九/O 九/O 八/O 年/O 新/O 年/O 讲/O 话/O (/O 附/O 图/O 片/O 1/O 张/O )/O
中/B_nt 共/M_nt 中/M_nt 央/E_nt 总/O 书/O 记/O 、/O 国/O 家/O 主/O 席/O 江/B_nr 泽/M_nr 民/E_nr
(/O 一/O 九/O 九/O 七/O 年/O 十/O 二/O 月/O 三/O 十/O 一/O 日/O )/O
1/O 2/O 月/O 3/O 1/O 日/O ,/O 中/B_nt 共/M_nt 中/M_nt 央/E_nt 总/O 书/O 记/O 、/O 国/O 家/O 主/O 席/O 江/B_nr 泽/M_nr 民/E_nr 发/O 表/O 1/O 9/O 9/O 8/O 年/O 新/O 年/O 讲/O 话/O 《/O 迈/O 向/O 充/O 满/O 希/O 望/O 的/O 新/O 世/O 纪/O 》/O 。/O (/O 新/B_nt 华/M_nt 社/E_nt 记/O 者/O 兰/B_nr 红/M_nr 光/E_nr 摄/O )/O
```
需要做的标注映射:
```python
人名:
B_nr -> B-PER
M_nr -> I-PER
E_nr -> I-PER
地名:
B_ns -> B-LOC
M_ns -> I-LOC
E_ns -> I-LOC
机构名称:
B_nt -> B-ORG
M_nt -> I-ORG
E_nt -> I-ORG
```
处理成通用的格式
```python
迈 O
向 O
充 O
满 O
希 O
望 O
的 O
新 O
世 O
纪 O
— O
— O
```
## vocab.py 词表
- 提供词表 和 tag 标签表格
- 词表采用 BERT 预训练文件中vocab.txt
- tag 采用 O、B-PER、I-PER、B-LOC、I-LOC、B-ORG、I-ORG
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip 【资源说明】 1、该资源内项目代码都是经过测试运行成功,功能正常的情况下才上传的,请放心下载使用。 2、适用人群:主要针对计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、数学、电子信息等)的同学或企业员工下载使用,具有较高的学习借鉴价值。 3、不仅适合小白学习实战练习,也可作为大作业、课程设计、毕设项目、初期项目立项演示等,欢迎下载,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
基于BERT+BILSTM+CRF进行中文命名实体识别python源码+项目说明+模型+数据.zip (58个子文件)
projectcode30312
data
chinese_L-12_H-768_A-12
vocab.txt 107KB
data
test.txt 1.34MB
readme.txt 44B
train.txt 5.99MB
vocab
vocab.txt 107KB
data2
all.txt 14.32MB
renMinRiBao
renmin3.txt 11.07MB
MSRA
link.txt 88B
train1.txt 9.99MB
README.md 978B
Model
__init__.py 3B
picture
BILSTM_ATTENTION_CRF.png 73KB
BERT_BILSTM_CRF.png 1.74MB
IDCNN_CRF.png 74KB
BILSTM_CRF.png 61KB
IDCNN_CRF_2.png 93KB
IDCNN_CRF.py 4KB
BILSTM_Attetion_CRF.py 5KB
BERT_BILSTM_CRF.py 3KB
IDCNN5_CRF.py 4KB
BILSTM_CRF.py 3KB
__pycache__
IDCNN_CRF.cpython-36.pyc 3KB
BERT_BILSTM_CRF.cpython-36.pyc 2KB
BILSTM_CRF.cpython-36.pyc 3KB
BILSTM_Attetion_CRF.cpython-36.pyc 4KB
__init__.cpython-36.pyc 168B
IDCNN5_CRF.cpython-36.pyc 3KB
README.md 1KB
.idea
NER_DEMO.iml 446B
workspace.xml 39KB
misc.xml 200B
modules.xml 258B
Public
utils.py 2KB
__init__.py 336B
path.py 705B
__pycache__
path.cpython-37.pyc 483B
path.cpython-36.pyc 605B
__init__.cpython-37.pyc 168B
__init__.cpython-36.pyc 355B
utils.cpython-36.pyc 2KB
DataProcess
msra_preprocessing.py 4KB
data2_preprocessing.py 2KB
renminribao_preprocessing.py 4KB
vocab.py 732B
process_data.py 8KB
__pycache__
process_data.cpython-36.pyc 5KB
vocab.cpython-36.pyc 817B
data2_preprocessing.cpython-36.pyc 2KB
msra_preprocessing.cpython-36.pyc 3KB
renminribao_preprocessing.cpython-36.pyc 3KB
vocab.cpython-37.pyc 785B
__init__.cpython-36.pyc 1KB
data_process_bert.cpython-36.pyc 4KB
README.md 5KB
train.py 4KB
README.md 3KB
log
__init__.py 0B
df_buff.csv 4KB
共 58 条
- 1
资源评论
- qq_226571932024-10-12总算找到了自己想要的资源,对自己的启发很大,感谢分享~
龙年行大运
- 粉丝: 1252
- 资源: 3826
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip
- (源码)基于Java和MySQL的学生信息管理系统.zip
- (源码)基于ASP.NET Core的零售供应链管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功