本期推荐的 DeepKE是由浙江大学知识图谱团队维护开源知识图谱抽取工具集.
项目介绍
DeepKE 是一个支持低资源和文档级场景的知识提取工具包。它提供了三个基于PyTorch的功能,包括命名实体识别、关系提取和属性提取。DeepKE 实现了各种信息提取任务,包括命名实体识别、关系提取和属性提取。借助统一的框架,DeepKE 允许开发人员和研究人员自定义数据集和模型,以根据他们的要求从非结构化文本中提取信息。具体来说,DeepKE 不仅针对不同的功能和场景提供了各种功能模块和模型实现,而且通过一致的框架组织所有组件,以保持足够的模块化和可扩展性。
支持重量和偏差
为了实现自动超参数微调,DeepKE 采用了 Weight & Biases,这是一种机器学习工具包,供开发人员更快地构建更好的模型。借助此工具包,DeepKE 可以更好地自动可视化结果并调整参数。存储库中所有函数的示例运行文件都支持该工具包,研究人员能够根据需要修改指标和超参数配置。
模型架构
- DeepKE为三个知识抽取功能(命名实体识别、关系抽取和属性抽取)设计了一个统一的框架
- 可以在不同场景下实现不同的功能。比如,可以在标准全监督、低资源少样本和文档级设定下进行关系抽取
- 每一个应用场景由三个部分组成:Data部分包含Tokenizer、Preprocessor和Loader,Model部分包含Module、Encoder和Forwarder,Core部分包含Training、Evaluation和Prediction
快速开始
DeepKE支持pip安装使用,以常规全监督设定关系抽取为例,经过以下6个步骤就可以实现一个常规关系抽取模型
1.下载代码
git clone https://github.com/zjunlp/DeepKE.git
2.使用anaconda创建虚拟环境,进入虚拟环境(提供Dockerfile源码可自行创建镜像,位于docker文件夹中)
conda create -n deepke python=3.8
conda activate deepke
//提供 dockerfile 来创建 docker 镜像
cd docker
docker build -t deepke .
conda activate deepke
1) 基于pip安装,直接使用
pip install deepke
2) 基于源码安装
python setup.py install
python setup.py develop
3.进入任务文件夹,以常规关系抽取为例
cd DeepKE/example/re/standard
4.下载数据集
wget 120.27.214.45/Data/re/standard/data.tar.gz
tar -xzvf data.tar.gz
5.模型训练,训练用到的参数可在conf文件夹内修改
DeepKE使用wandb支持可视化调参
python run.py
6.模型预测。预测用到的参数可在conf文件夹内修改
修改conf/predict.yaml中保存训练好的模型路径。
python predict.py
示例
标准可再生能源
标准模块由常见的深度学习模型实现,包括 CNN、RNN、Capsule、GCN、Transformer 和预训练模型。
步骤1
进入
DeepKE/example/re/standard文件夹。
第2步
获取数据:
wget 120.27.214.45/Data/re/standard/data.tar.gz
tar -xzvf 数据.tar.gz
data可以分别在文件夹和文件夹中自定义数据集和参数conf。
数据集需要作为CSV文件输入。
文件的数据格式需符合以下要求:
句子 |
关系 |
头 |
Head_offset |
尾巴 |
tail_offset |
关系的文件格式需要符合以下要求:
头型 |
尾型 |
关系 |
指数 |
第 3 步
火车:
蟒蛇运行.py
步骤4
预测:
蟒蛇预测.py
cd example/re/standard
wget 120.27.214.45/Data/re/standard/data.tar.gz
tar -xzvf data.tar.gz
python run.py
python predict.py
备注
- 使用 Anaconda 时,建议添加国内镜像,下载速度更快。
- 使用 pip 时,建议使用国内镜像,下载速度更快,如阿里云镜像。
- 安装后提示 ModuleNotFoundError: No module named ‘past’,输入命令 pip install future 即可解决。
- 使用语言预训练模型时,在线安装下载模型比较慢,更建议提前下载好,存放到 pretrained 文件夹内。具体存放文件要求见文件夹内的 README.md。
- DeepKE老版本位于deepke-v1.0分支,用户可切换分支使用老版本,老版本的能力已全部迁移到标准设定关系抽取(example/re/standard)中。