1.一种基于BERT的医疗文本关系抽取的方法,其特征在于,所述方法包括以下步骤:步骤1:收集医疗文本,构建文本数据集;
步骤2:对数据集进行预处理;
步骤3:构建医疗文本关系抽取模型;
步骤4:将抽取结果进行结构化存储。
2.如权利要求1所述的一种基于BERT的医疗文本关系抽取的方法,其特征在于:所述步骤1中,收集医疗文本,所述行为数据每一条须包括两个实体,实体之间须有相应的关系,即构成三元组,每条数据至少要包含1个三元组。
3.如权利要求1或2所述的一种基于BERT的医疗文本关系抽取的方法,其特征在于:所述步骤2中,根据步骤1中的收集的医疗文本数据集,进行实体抽取,抽取出实体后将其按照实体之间的关系进行整合,按照句号进行分句操作,送入医疗文本关系抽取模型中。
4.如权利要求3所述的一种基于BERT的医疗文本关系抽取的方法,其特征在于:所述步骤3中,构建医疗文本关系抽取模型包括以下过程:
3.1)对训练集中每句话按照字进行划分,假设句子为x,则划分后得到序列表示x=[x0…xn],其中令x0=[CLS],xn=[SEP],x0,xn为字向量表征,用token表示;a1=(i,j),a2=(k,l)为两个实体的token范围,其中0
3.2)将两个实体前后添加标识符,则x的序列表示如下所示:
x=[x0…[E1start]xi…xj-1[E1end]…[E2start]xk…xl-1[E2end]] (1)其中[E1start]、[E2start]分别为两个实体的开始标识符,[E1end]、[E2end]为结束标识符;
3.3)将上一步的tokens送入BERT模型,分别输出句子中各个汉字的字向量,其中xi所对应的生成向量为Vi,xj-1所对应的生成向量为Vj-1,则第一个实体所对应的向量为Vi到Vj-1;相应的,第二个实体所对应的向量为Vk到Vl-1,将BERT的[CLS]表征(V0)及两个实体(V1、V2)所对应的输出向量分别设为V′0,V′1,V′2,则V′0,V′1,V′2所对应的生成公式如下所示:V′0=W0[tanh V0]+b0 (2)其中W0、W1、W2为权重系数,拥有着相同的维度,b0、b1、b2为偏置项,也拥有着相同的维度;
3.4)将所求V′0、V′1、V′2进行拼接并送入全连接层中,最后进行分类,输出最终结果,全连接层及分类公式如下:c=W3[concat(V′0,V′1,V′2)]+b3 (5)q=softmax(c) (6)其中W3为权重系数,与W0、W1、W2拥有着相同的维度;b3为偏置项,与b0、b1、b2拥有着相同的维度;concat表示拼接操作,softmax为softmax函数。
5.如权利要求4所述的一种基于BERT模型的医疗文本关系抽取的方法,其特征在于:所述步骤4中,将抽取结果进行结构化存储包括以下过程:
4.1)训练好模型后将经过预处理的医疗文本送入模型中;
4.2)将模型输出结果按照对应关系送入MySQL数据库中,进行结构化存储。