英语 | 简体中文
基于深度学习的知识提取工具包
用于知识图谱构建
DeepKE是一个用于知识图谱构建的知识提取工具包,支持cnSchema 、低资源、文档级和多模态场景的实体、关系和属性提取。我们为初学者提供文档、在线演示、论文、幻灯片和海报。
\
;wisemodel
或modescape
。如果您在安装DeepKE和DeepKE-LLM过程中遇到任何问题,请查看提示或及时提交问题,我们将协助您解决问题!
April, 2024
我们基于Chinese-Alpaca-2-13B发布了一个新的双语(中文和英文)基于模式的信息提取模型OneKE。Feb, 2024
我们发布了一个名为IEPile的大规模(0.32B tokens)高质量双语(中文和英文)信息提取(IE)指令数据集,以及使用IEPile
训练的两个模型:baichuan2-13b-iepile-lora和llama2 -13b-iepile-lora。Sep 2023
针对基于指令的知识图构建任务(基于指令的 KGC)发布了名为InstructIE
双语中英文信息提取 (IE) 指令数据集,详细信息请参见此处。June, 2023
我们更新DeepKE-LLM以支持KnowLM、ChatGLM、LLaMA系列、GPT系列等知识提取。Apr, 2023
我们增加了新模型,包括CP-NER(IJCAI'23)、ASP(EMNLP'22)、PRGC(ACL'21)、PURE(NAACL'21),提供事件提取功能(中文和英文),并提供与更高版本的 Python 包(例如 Transformers)的兼容性。Feb, 2023
我们支持使用 LLM (GPT-3) 进行上下文学习(基于 EasyInstruct)和数据生成,添加了 NER 模型 W2NER(AAAI'22)。Nov, 2022
添加实体识别和关系提取的数据标注指令,弱监督数据(实体提取和关系提取)的自动标记,并优化多 GPU 训练。
Sept, 2022
论文 DeepKE: A Deep Learning Based Knowledge Extraction Toolkit for Knowledge Base Population 已被 EMNLP 2022 System Demonstration Track 接收。
Aug, 2022
我们添加了对低资源关系提取的数据增强(中文、英文)支持。
June, 2022
我们添加了对实体和关系提取的多模式支持。
May, 2022
我们发布了 DeepKE-cnschema 和现成的知识提取模型。
Jan, 2022
我们发布了论文DeepKE: A Deep Learning Based Knowledge Extraction Toolkit for Knowledge Base Population
Dec, 2021
我们添加了dockerfile
来自动创建环境。
Nov, 2021
DeepKE Demo发布,支持实时提取,无需部署和训练。
DeepKE的文档已经发布,包含DeepKE的源代码和数据集等详细信息。
Oct, 2021
pip install deepke
Deepke-v2.0代码已发布。
Aug, 2019
Deepke-v1.0代码已发布。
Aug, 2018
DeepKE项目启动,deepke-v0.1代码已发布。
有预测演示。 GIF 文件是由 Terminalizer 创建的。获取代码。
在大模型时代,DeepKE-LLM利用了全新的环境依赖。
conda create -n deepke-llm python=3.9
conda activate deepke-llm
cd example/llm
pip install -r requirements.txt
请注意, requirements.txt
文件位于example/llm
文件夹中。
pip install deepke
。Step1下载基础代码
git clone --depth 1 https://github.com/zjunlp/DeepKE.git
Step2使用Anaconda
创建虚拟环境并进入。
conda create -n deepke python=3.8
conda activate deepke
使用源码安装DeepKE
pip install -r requirements.txt
python setup.py install
python setup.py develop
使用pip
安装DeepKE (不推荐! )
pip install deepke
Step3进入任务目录
cd DeepKE/example/re/standard
Step4下载数据集,或按照标注说明获取数据
wget 120.27.214.45/Data/re/standard/data.tar.gz
tar -xzvf data.tar.gz
支持多种数据格式,各部分有详细说明。
Step5训练(训练参数可在conf
文件夹中更改)
我们支持使用wandb进行视觉参数调整。
python run.py
Step6预测(预测参数可以在conf
文件夹中更改)
修改predict.yaml
中训练模型的路径,需要使用模型的绝对路径,如xxx/checkpoints/2019-12-03_ 17-35-30/cnn_ epoch21.pth
。
python predict.py
Step1安装Docker客户端
安装 Docker 并启动 Docker 服务。
Step2拉取docker镜像并运行容器
docker pull zjunlp/deepke:latest
docker run -it zjunlp/deepke:latest /bin/bash
其余步骤与手动环境配置中的步骤3及以后的步骤相同。
蟒蛇==3.8
命名实体识别旨在定位非结构化文本中提到的命名实体并将其分类为预定义的类别,例如人名、组织、位置、组织等。
数据存储在.txt
文件中。部分实例如下(用户可以基于Doccano、MarkTool工具对数据进行标注,也可以使用DeepKE的弱监督自动获取数据):
句子 | 人 | 地点 | 组织 |
---|---|---|---|
本报北京9月4日讯记者杨涌报道:部分省区人民日报宣传动员工作座谈会9月3日于4日在京举行。 | 杨涌 | 北京 | 人民日报 |
《红楼梦》由王扶林导演,周汝昌、王蒙、周岭等多位专家参与制作。 | 王扶林,周汝昌,王蒙,周岭 | ||
秦始皇兵马俑位于陕西省西安市,是世界八大奇迹之一。 | 秦始皇 | 陕西省,西安市 |
详细流程请阅读具体README
标准(全程监督)
我们支持LLM并提供现成的模型DeepKE-cnSchema-NER,该模型无需训练即可提取cnSchema中的实体。
步骤1输入DeepKE/example/ner/standard
。下载数据集。
wget 120.27.214.45/Data/ner/standard/data.tar.gz
tar -xzvf data.tar.gz
Step2训练
数据集和参数可以分别在data
文件夹和conf
文件夹中自定义。
python run.py
Step3预测
python predict.py
少射
步骤1输入DeepKE/example/ner/few-shot
。下载数据集。
wget 120.27.214.45/Data/ner/few_shot/data.tar.gz
tar -xzvf data.tar.gz
Step2低资源环境下的训练
conf
文件夹中可以自定义模型加载和保存的目录以及配置参数。
python run.py +train=few_shot
用户可以修改conf/train/few_shot.yaml
中的load_path
来使用现有的加载模型。
Step3在conf/config.yaml
中添加- predict
,修改loda_path
为模型路径, write_path
为conf/predict.yaml
中保存预测结果的路径,然后运行python predict.py
python predict.py
多式联运
步骤1输入DeepKE/example/ner/multimodal
。下载数据集。
wget 120.27.214.45/Data/ner/multimodal/data.tar.gz
tar -xzvf data.tar.gz
我们使用 RCNN 检测到的对象和来自原始图像的视觉接地对象作为视觉局部信息,其中 RCNN 通过 fast_rcnn 和通过 onestage_grounding 进行视觉接地。
Step2多模式环境下的训练
data
文件夹和conf
文件夹中自定义。conf/train.yaml
中的load_path
为上次训练的模型保存路径。并且可以通过log_dir
自定义训练中生成的日志保存路径。 python run.py
Step3预测
python predict.py
关系提取是从非结构化文本中提取实体之间的语义关系的任务。
数据存储在.csv
文件中。部分实例如下(用户可以基于Doccano、MarkTool工具对数据进行标注,也可以使用DeepKE的弱监督自动获取数据):
句子 | 关系 | 头 | 头部偏移量 | 尾巴 | 尾部偏移量 |
---|---|---|---|---|---|
《岳父也是爹》是王军执导的电视剧,由马恩然、范明主演。 | 导演 | 岳父亦爹 | 1 | 王军 | 8 |
《九玄珠》是在纵横中文网连载的一部小说,作者是龙马。 | 连载网站 | 九玄珠 | 1 | 纵横中文网 | 7 |
提起杭州的美景,西湖总是第一个映入脑海的词语。 | 所在城市 | 西湖 | 8 | 杭州 | 2 |
!注意:如果一个关系有多个实体类型,则实体类型可以使用该关系作为输入前缀。
详细流程请阅读具体README
标准(全程监督)
我们支持LLM并提供现成的模型DeepKE-cnSchema-RE,无需训练即可提取cnSchema中的关系。
步骤1进入DeepKE/example/re/standard
文件夹。下载数据集。
wget 120.27.214.45/Data/re/standard/data.tar.gz
tar -xzvf data.tar.gz
Step2训练
数据集和参数可以分别在data
文件夹和conf
文件夹中自定义。
python run.py
Step3预测
python predict.py
少射
步骤1输入DeepKE/example/re/few-shot
。下载数据集。
wget 120.27.214.45/Data/re/few_shot/data.tar.gz
tar -xzvf data.tar.gz
步骤 2训练
data
文件夹和conf
文件夹中自定义。conf/train.yaml
中的train_from_saved_model
为上次训练的模型保存路径。并且可以通过log_dir
自定义训练中生成的日志保存路径。 python run.py
Step3预测
python predict.py
文档
步骤1输入DeepKE/example/re/document
。下载数据集。
wget 120.27.214.45/Data/re/document/data.tar.gz
tar -xzvf data.tar.gz
Step2训练
data
文件夹和conf
文件夹中自定义。conf/train.yaml
中的train_from_saved_model
为上次训练的模型保存路径。并且可以通过log_dir
自定义训练中生成的日志保存路径。 python run.py
Step3预测
python predict.py
多式联运
步骤1输入DeepKE/example/re/multimodal
。下载数据集。
wget 120.27.214.45/Data/re/multimodal/data.tar.gz
tar -xzvf data.tar.gz
我们使用 RCNN 检测到的对象和来自原始图像的视觉接地对象作为视觉局部信息,其中 RCNN 通过 fast_rcnn 和通过 onestage_grounding 进行视觉接地。
Step2训练
data
文件夹和conf
文件夹中自定义。conf/train.yaml
中的load_path
为上次训练的模型保存路径。并且可以通过log_dir
自定义训练中生成的日志保存路径。 python run.py
Step3预测
python predict.py
属性提取是在非结构化文本中提取实体的属性。
数据存储在.csv
文件中。部分事例如下:
句子 | 阿特 | 耳鼻喉科 | ent_offset | 瓦尔 | 值偏移量 |
---|---|---|---|---|---|
张冬梅,女,汉族,1968年2月生,河南奶油县人 | 民族 | 张冬梅 | 0 | 汉族 | 6 |
诸葛亮,字孔明,三国时期杰出的军事家、文学家、发明家。 | 朝代 | 诸葛亮 | 0 | 三国时期 | 8 |
2014年10月1日许鞍华执导的电影《黄金时代》上映 | 上映时间 | 黄金时代 | 19 | 2014年10月1日 | 0 |
详细流程请阅读具体README
标准(全程监督)
步骤1进入DeepKE/example/ae/standard
文件夹。下载数据集。
wget 120.27.214.45/Data/ae/standard/data.tar.gz
tar -xzvf data.tar.gz
Step2训练
数据集和参数可以分别在data
文件夹和conf
文件夹中自定义。
python run.py
Step3预测
python predict.py
.tsv
文件中,部分实例如下:句子 | 事件类型 | 扳机 | 角色 | 争论 | |
---|---|---|---|---|---|
据《欧洲时报》报道,当地时间27日,法国巴黎卢浮宫博物馆员工因不满工作状况恶化而罢工,导致博物馆也因此闭门谢客一天。 | 组织行为-罢工 | 罢工者 | 罢工人员 | 法国巴黎卢浮宫博物馆员工 | |
时间 | 昨天27日 | ||||
所属组织 | 法国巴黎卢浮宫博物馆 | ||||
中国外运2019年归母增长17%:收购了少数股东股权 | 财经/交易-出售/收购 | 收购 | 销售方 | 少数股东 | |
收购方 | 中国外运 | ||||
交易物 | 股权 | ||||
美国亚特兰大航展13日一起表演机坠机事故,飞行员弹射出舱并安全着陆,事故没有造成人员伤亡。 | 灾难/意外-坠机 | 坠机 | 时间 | 13日 | |
地点 | 美国亚特兰 |
详细流程请阅读具体README
标准(全程监督)
步骤1进入DeepKE/example/ee/standard
文件夹。下载数据集。
wget 120.27.214.45/Data/ee/DuEE.zip
unzip DuEE.zip
步骤 2训练
数据集和参数可以分别在data
文件夹和conf
文件夹中自定义。
python run.py
步骤 3预测
python predict.py
1. Using nearest mirror
,中国的THU,将加快Anaconda的安装速度;中国阿里云,将加快pip install XXX
速度。
2.遇到ModuleNotFoundError: No module named 'past'
,运行pip install future
。
3.在线安装预训练语言模型速度慢。建议在使用前下载预训练模型并将其保存在pretrained
文件夹中。阅读每个任务目录中的README.md
以检查保存预训练模型的具体要求。
4.旧版本DeepKE位于deepke-v1.0分支。用户可以更改分支以使用旧版本。旧版本已完全转移到标准关系提取(example/re/standard)。
5.如果要修改源码,建议使用源码安装DeepKE 。如果没有,修改将不起作用。查看问题
6.更多相关的低资源知识抽取工作可以参见《低资源场景下的知识抽取:调查与展望》。
7.确保requirements.txt
中需求的确切版本。
在下一个版本中,我们计划为 KE 发布更强大的 LLM。
同时,我们将提供长期维护来修复错误、解决问题并满足新的要求。因此,如果您有任何问题,请向我们提出问题。
数据高效的知识图谱构建,知识图谱构建(CCKS 2022 上的高效教程)[幻灯片]
高效、稳健的知识图谱构建(AACL-IJCNLP 2022 教程)[幻灯片]
PromptKG 系列:即时学习和 KG 相关研究作品、工具包和论文列表的画廊 [资源]
低资源场景中的知识提取:调查与展望 [调查][论文列表]
Doccano、MarkTool、LabelStudio:数据标注工具包
LambdaKG:基于 PLM 的 KG 嵌入的库和基准
EasyInstruct:一个易于使用的框架来指导大型语言模型
阅读材料:
数据高效的知识图谱构建,知识图谱构建(CCKS 2022 上的高效教程)[幻灯片]
高效、稳健的知识图谱构建(AACL-IJCNLP 2022 教程)[幻灯片]
PromptKG 系列:即时学习和 KG 相关研究作品、工具包和论文列表的画廊 [资源]
低资源场景中的知识提取:调查与展望 [调查][论文列表]
相关工具包:
Doccano、MarkTool、LabelStudio:数据标注工具包
LambdaKG:基于 PLM 的 KG 嵌入的库和基准
EasyInstruct:一个易于使用的框架来指导大型语言模型
如果您在工作中使用 DeepKE,请引用我们的论文
@inproceedings { EMNLP2022_Demo_DeepKE ,
author = { Ningyu Zhang and
Xin Xu and
Liankuan Tao and
Haiyang Yu and
Hongbin Ye and
Shuofei Qiao and
Xin Xie and
Xiang Chen and
Zhoubo Li and
Lei Li } ,
editor = { Wanxiang Che and
Ekaterina Shutova } ,
title = { DeepKE: {A} Deep Learning Based Knowledge Extraction Toolkit for Knowledge Base Population } ,
booktitle = { {EMNLP} (Demos) } ,
pages = { 98--108 } ,
publisher = { Association for Computational Linguistics } ,
year = { 2022 } ,
url = { https://aclanthology.org/2022.emnlp-demos.10 }
}
张宁宇、王浩芬、黄飞、熊飞宇、陶连宽、徐鑫、桂洪浩、张真如、谭传奇、陈强、王晓涵、奚泽坤、李新荣、于海洋、叶洪斌、乔硕飞、王鹏, 朱雨琪, 谢欣, 陈翔, 李周波, 李雷, 梁小专, 姚云智, 陈静, 朱雨琪, 邓淑敏, 张文,郑国洲、陈华军
社区贡献者:thredreams、eltociear、Ziwen Xu、Rui Huang、Xiaolong Weng