基于Pytorch的BERT-IDCNN-BILSTM-CRF中文实体识别实现
向AI转型的程序员都关注了这个号👇👇👇
机器学习AI算法工程 公众号:datayx
文件描述
model/: 模型代码
bert_lstm_crf.py
cnn.py
crf.py
data/: 数据集存放
train.txt: 训练集
test.txt: 测试集
data/bert/: bert模型存放
bert_config.json: bert配置文件
pytorch_model.bin: bert中文预训练模型pytorch版(详情参考:https://github.com/maknotavailable/pytorch-pretrained-BERT)
vocab.txt: 词表文件
constants.py: 模型配置:标注,数据集,最大长度,batch_size, epoch等
train.py: 训练模型
SaveModel.py: 从模型参数保存完整模型
Wrapper.py: 执行单次NER
utils.py: 数据处理相关
constants.py
bert_model_dir: bert目录,例如
data/bert
vocab_file: bert词表文件,例如
data/bert/vocab.txt
train_file: 训练集,例如
data/train.txt
dev_file: 测试集,例如
data/test.txt
model_path: 载入已有模型参数文件,指定文件名,例如
data/model/idcnn_lstm_1.pkl
save_model_dir: 模型保存文件路径及文件名前缀,例如
data/model/idcnn_lstm_
max_length: 最大句子长度
batch_size: batch大小
epochs: 训练轮数
tagset_size: 标签数目
use_cuda: 是否使用cuda
资源地址
数据集、训练好的BERT_IDCNN_LSTM_CRF模型文件以及中文版BERT预训练模型下载
关注微信公众号 datayx 然后回复 实体识别 即可获取。
AI项目体验地址 https://loveai.tech
模型训练(可选)
下载pytorch_model.bin到data/bert
下载训练集和测试集到data/
检查配置constants.py
执行train.py,命令为
python train.py
中文命名实体识别系统运行步骤
已训练好的BERT_IDCNN_LSTM_CRF模型(如果有),下载到data/model
检查配置constants.py
单次运行系统,执行Wrapper.py,命令为
Wrapper.py "新华网1950年10月1日电(中央人民广播电台记者刘振英、新华社记者张宿堂)中国科学院成立了。"
若想多次运行系统,则执行ChineseNer.sh,命令为
./ChineseNer.sh
依赖
python >= 3.5
torch = 0.4.0
pytorch-pretrained-bert
tqdm
numpy
...
数据集示例
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx