知识图谱问答系列文档(五)——从零开始搭建一个通用知识图谱问答【命名实体属性识别】

本文介绍了如何使用BERT4Keras构建一个命名实体属性识别模型,该模型在测试集上实现了99.5%的F1值,能够识别SENT、PROP和OENT。数据标注采用BIO方式,模型训练包括数据标注和模型训练两部分,使用BERT+CRF进行序列标注,并给出了部分数据标注代码。
摘要由CSDN通过智能技术生成

(五)命名实体属性识别

命名实体识别有多种方法,大多数问答系统只识别实体,本文使用bert4keras做实体、属性的识别,使用BIO数据标注方式,识别SENT、PROP、OENT(句子中的主谓宾)的模型,在测试集上达到了的f1值达到了99.5%,能够快速识别问题中的实体和属性。命名实体属性识别模型分为数据标注和训练两个部分,具体如下。

  • 数据标注

    数据标注使用BIO数据标注,标注标签为:[‘O’,‘B-SENT’,‘I-SENT’,‘B-PROP’,‘I-PROP’,‘B-OENT’,‘I-OENT’],B-SENT表示此元素属于SENT类型,且此元素在片段的开头,I-SENT表示此元素属于SENT类型,且此元素在片段的中间位置,O表示不属于任何类型。

    本文的标注样例如下:

    纯 B-SENT
    文 I-SENT
    学 I-SENT
    的 O
    标 B-PROP
    签 I-PROP
    名 O
    是 O
    啥 O
    ? O

    维 B-SENT
    力 I-SENT
    医 I-SENT
    疗 I-SENT
    第 B-PROP
    一 I-PROP
    任 I-PROP
    董 I-PROP
    事 I-PROP
    长 I-PROP
    的 O
    上 B-PROP
    任 I-PROP
    时 I-PROP
    间 I-PROP
    ? O

    数据标注方法:本文未使用他人方法,自行根据数据格式编写程序实现数据标注,在此给出本文数据标注的部分程序(源程序太长,给出SPO类型数据标注代码)

    数据标注代码:

    import os
    import csv
    import re
    import random
    
    
    dir_path = os.getcwd()
    
    # 原数据
    sop_csv = dir_path + '/corpus/genBIOcsv/so_p.csv'
    
    # 要得到的训练集
    test_txt =open(dir_path + '/corpus/genBIOcsv/test_test.txt','w',encoding='utf-8') 
    train_txt = open(dir_path + '/corpus/genBIOcsv/train_test.txt','w',encoding='utf-8') 
    valid_txt = open(dir_path + '/corpus/genBIOcsv/valid_test.txt
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值