# spo_extraction **Repository Path**: springwing/spo_extraction ## Basic Information - **Project Name**: spo_extraction - **Description**: 信息抽取,得到一句话中的主体、客体以及之间的关系。 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2020-06-28 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # spo_extraction ## 一、 介绍 信息抽取,得到一句话中的主体、客体以及之间的关系。 本项目使用: tensorflow1.8 python3.6 Bilstm_Crf Numpy Panda ## 二、 项目架构 该项目分为两步完成,首先是主客体识别,也就是我们常说的实体识别,第二部是在第一部的基础上完成主客体之间的关系抽取。 链接如下: 1.主客体识别:https://gitee.com/fly97/spo_extraction/tree/master/Obj-Sub 2.关系抽取:https://gitee.com/fly97/spo_extraction/tree/master/Relation ## 三、 数据准备 数据是百度提供的一份三元组的语料,格式如下: { "text": "如何演好自己的角色,请读《演员自我修养》《喜剧之王》周星驰崛起于穷困潦倒之中的独门秘笈", "spo_list": [{ "predicate": "主演", "object_type": "人物", "subject_type": "影视作品", "object": "周星驰", "subject": "喜剧之王" }] } 此类文件都存于./data中,最后百度官网给的测试数据保存于./test_data中。 数据下载地址:http://lic2019.ccf.org.cn/kg ## 四、 使用说明 ### 1.先主客体识别,在关系抽取,详情请进入相关文件 ### 2.在关系抽取之后,需要对得到的文件进行格式的转换,转换成比赛提交的格式。 运行‘chang_type.py’转换数据格式 由 { "text": "和妈妈李丽珍一起生活的许倚榕,如今也有19岁,她长得亭亭玉立,摆脱老爸许愿基因,越来越像蜜桃老妈,果然女大十八变", "spo_list": [{ "subject": "许倚榕", "object": "李丽珍" }] } 转换为 { "text": "和妈妈李丽珍一起生活的许倚榕,如今也有19岁,她长得亭亭玉立,摆脱老爸许愿基因,越来越像蜜桃老妈,果然女大十八变", "spo_list": [{ "subject": "许倚榕", "object": "李丽珍", "predicate": "母亲", "object_type": "人物", "subject_type": "人物" }] } ### 3.评测 评测工具是百度官网给的,环境是python2.7,步骤如下 1.运行‘zip -r ./test_data/test_demo.res.zip ./test_data/test_demo.res’ 2.运行‘python evaluation/calc_pr.py --golden_file=./test_data/test_demo_spo.json --predict_file=./test_data/test_demo.res.zip’