• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

deepke: DeepKE是由浙江大学知识图谱团队维护开源知识图谱抽取工具集。 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

deepke

开源软件地址:

https://gitee.com/openkg/deepke

开源软件介绍:

Documentation PyPI GitHub Documentation Open In Colab

基于深度学习的开源中文知识图谱抽取框架

DeepKE 是一个支持低资源、长篇章的知识抽取工具,可以基于PyTorch实现命名实体识别关系抽取属性抽取功能。
同时为初学者提供了详尽的文档Google Colab教程在线演示


目录


新版特性

2021年1月

2021年12月

  • 加入dockerfile以便自动创建环境

2021年11月

  • 发布DeepKE demo页面,支持实时抽取,无需部署和训练模型
  • 发布DeepKE文档,包含DeepKE源码和数据集等详细信息

2021年10月

  • pip install deepke
  • deepke-v2.0发布

2021年5月

  • pip install deepke
  • deepke-v1.0发布

预测演示

下面使用一个demo展示预测过程


模型架构

Deepke的架构图如下所示

  • DeepKE为三个知识抽取功能(命名实体识别、关系抽取和属性抽取)设计了一个统一的框架
  • 可以在不同场景下实现不同功能。比如,可以在标准全监督、低资源少样本和文档级设定下进行关系抽取
  • 每一个应用场景由三个部分组成:Data部分包含Tokenizer、Preprocessor和Loader,Model部分包含Module、Encoder和Forwarder,Core部分包含Training、Evaluation和Prediction

快速上手

DeepKE支持pip安装使用,以常规全监督设定关系抽取为例,经过以下6个步骤就可以实现一个常规关系抽取模型

Step 1:下载代码 git clone https://github.com/zjunlp/DeepKE.git(别忘记star和fork哈!!!)

Step 2:使用anaconda创建虚拟环境,进入虚拟环境(提供Dockerfile源码可自行创建镜像,位于docker文件夹中)

conda create -n deepke python=3.8conda activate deepke

1) 基于pip安装,直接使用

pip install deepke

2) 基于源码安装

python setup.py installpython setup.py develop

Step 3 :进入任务文件夹,以常规关系抽取为例

cd DeepKE/example/re/standard

Step 4:下载数据集

wget 120.27.214.45/Data/re/standard/data.tar.gztar -xzvf data.tar.gz

Step 5 :模型训练,训练用到的参数可在conf文件夹内修改

DeepKE使用wandb支持可视化调参

python run.py

Step 6 :模型预测。预测用到的参数可在conf文件夹内修改

修改conf/predict.yaml中保存训练好的模型路径。

python predict.py

环境依赖

python == 3.8

  • torch == 1.5
  • hydra-core == 1.0.6
  • tensorboard == 2.4.1
  • matplotlib == 3.4.1
  • transformers == 3.4.0
  • jieba == 0.42.1
  • scikit-learn == 0.24.1
  • pytorch-transformers == 1.2.0
  • seqeval == 1.2.2
  • tqdm == 4.60.0
  • opt-einsum==3.3.0
  • ujson

具体功能介绍

1. 命名实体识别NER

  • 命名实体识别是从非结构化的文本中识别出实体和其类型。数据为txt文件,样式范例为:

    SentencePersonLocationOrganization
    本报北京9月4日讯记者杨涌报道:部分省区人民日报宣传发行工作座谈会9月3日在4日在京举行。杨涌北京人民日报
    《红楼梦》是中央电视台和中国电视剧制作中心根据中国古典文学名著《红楼梦》摄制于1987年的一部古装连续剧,由王扶林导演,周汝昌、王蒙、周岭等多位红学家参与制作。王扶林,周汝昌,王蒙,周岭中国中央电视台,中国电视剧制作中心
    秦始皇兵马俑位于陕西省西安市,1961年被国务院公布为第一批全国重点文物保护单位,是世界八大奇迹之一。秦始皇陕西省,西安市国务院
  • 具体流程请进入详细的README中

    • 常规全监督STANDARD

      Step1: 进入DeepKE/example/ner/standard,下载数据集

      wget 120.27.214.45/Data/ner/standard/data.tar.gztar -xzvf data.tar.gz

      Step2: 模型训练

      数据集和参数配置可以分别在dataconf文件夹中修改

      python run.py

      Step3: 模型预测

      python predict.py
    • 少样本FEW-SHOT

      Step1: 进入DeepKE/example/ner/few-shot,下载数据集

      wget 120.27.214.45/Data/ner/few_shot/data.tar.gztar -xzvf data.tar.gz

      Step2:低资源场景下训练模型

      模型加载和保存位置以及参数配置可以在conf文件夹中修改

      python run.py +train=few_shot

      若要加载模型,修改few_shot.yaml中的load_path

      Step3:在config.yaml中追加- predictpredict.yaml中修改load_path为模型路径以及write_path为预测结果的保存路径,完成修改后使用

      python predict.py

2. 关系抽取RE

  • 关系抽取是从非结构化的文本中抽取出实体之间的关系,以下为几个样式范例,数据为csv文件:

    SentenceRelationHeadHead_offsetTailTail_offset
    《岳父也是爹》是王军执导的电视剧,由马恩然、范明主演。导演岳父也是爹1王军8
    《九玄珠》是在纵横中文网连载的一部小说,作者是龙马。连载网站九玄珠1纵横中文网7
    提起杭州的美景,西湖总是第一个映入脑海的词语。所在城市西湖8杭州2
  • 具体流程请进入详细的README中,RE包括了以下三个子功能

    • 常规全监督STANDARD

      Step1:进入DeepKE/example/re/standard,下载数据集

      wget 120.27.214.45/Data/re/standard/data.tar.gztar -xzvf data.tar.gz

      Step2:模型训练

      数据集和参数配置可以分别进入dataconf文件夹中修改

      python run.py

      Step3:模型预测

      python predict.py
    • 少样本FEW-SHOT

      Step1:进入DeepKE/example/re/few-shot,下载数据集

      wget 120.27.214.45/Data/re/few_shot/data.tar.gztar -xzvf data.tar.gz

      Step2:模型训练

      • 数据集和参数配置可以分别进入dataconf文件夹中修改

      • 如需从上次训练的模型开始训练:设置conf/train.yaml中的train_from_saved_model为上次保存模型的路径,每次训练的日志默认保存在根目录,可用log_dir来配置

      python run.py

      Step3:模型预测

      python predict.py
    • 文档级DOCUMENT

      Step1:进入DeepKE/example/re/document,下载数据集

      wget 120.27.214.45/Data/re/document/data.tar.gztar -xzvf data.tar.gz

      Step2:模型训练

      • 数据集和参数配置可以分别进入dataconf文件夹中修改
      • 如需从上次训练的模型开始训练:设置conf/train.yaml中的train_from_saved_model为上次保存模型的路径,每次训练的日志默认保存在根目录,可用log_dir来配置;
      python run.py

      Step3:模型预测

      python predict.py

3. 属性抽取AE

  • 数据为csv文件,样式范例为:

    SentenceAttEntEnt_offsetValVal_offset
    张冬梅,女,汉族,1968年2月生,河南淇县人民族张冬梅0汉族6
    诸葛亮,字孔明,三国时期杰出的军事家、文学家、发明家。朝代诸葛亮0三国时期8
    2014年10月1日许鞍华执导的电影《黄金时代》上映上映时间黄金时代192014年10月1日0
  • 具体流程请进入详细的README中

    • 常规全监督STANDARD

      Step1:进入DeepKE/example/ae/standard,下载数据集

      wget 120.27.214.45/Data/ae/standard/data.tar.gztar -xzvf data.tar.gz

      Step2:模型训练

      数据集和参数配置可以分别进入dataconf文件夹中修改

      python run.py

      Step3:模型预测

      python predict.py

Notebook教程

本工具提供了若干Notebook和Google Colab教程,用户可针对性调试学习。


备注(常见问题)

  1. 使用 Anaconda 时,建议添加国内镜像,下载速度更快。如镜像
  2. 使用 pip 时,建议使用国内镜像,下载速度更快,如阿里云镜像。
  3. 安装后提示 ModuleNotFoundError: No module named 'past',输入命令 pip install future 即可解决。
  4. 使用语言预训练模型时,在线安装下载模型比较慢,更建议提前下载好,存放到 pretrained 文件夹内。具体存放文件要求见文件夹内的 README.md
  5. DeepKE老版本位于deepke-v1.0分支,用户可切换分支使用老版本,老版本的能力已全部迁移到标准设定关系抽取(example/re/standard)中。

未来计划

  • 在DeepKE的下一个版本中加入多模态知识抽取
  • 我们提供长期技术维护和答疑解惑。如有疑问,请提交issues

引用

如果使用DeepKE,请按以下格式引用

@article{Zhang_DeepKE_A_Deep_2022,author = {Zhang, Ningyu and Xu, Xin and Tao, Liankuan and Yu, Haiyang and Ye, Hongbin and Xie, Xin and Chen, Xiang and Li, Zhoubo and Li, Lei and Liang, Xiaozhuan and Yao, Yunzhi and Deng, Shumin and Zhang, Zhenru and Tan, Chuanqi and Huang, Fei and Zheng, Guozhou and Chen, Huajun},journal = {http://arxiv.org/abs/2201.03335},title = {{DeepKE: A Deep Learning Based Knowledge Extraction Toolkit for Knowledge Base Population}},year = {2022}}

项目成员

浙江大学:张宁豫、陶联宽、徐欣、余海洋、叶宏彬、谢辛、陈想、黎洲波、李磊、梁孝转、姚云志、乔硕斐、邓淑敏、张文、郑国轴、陈华钧

达摩院:张珍茹、谭传奇、黄非


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap