CN117235240B - 一种基于异步消费队列的多模型结果融合问答方法及系统 - Google Patents
一种基于异步消费队列的多模型结果融合问答方法及系统 Download PDFInfo
- Publication number
- CN117235240B CN117235240B CN202311507853.XA CN202311507853A CN117235240B CN 117235240 B CN117235240 B CN 117235240B CN 202311507853 A CN202311507853 A CN 202311507853A CN 117235240 B CN117235240 B CN 117235240B
- Authority
- CN
- China
- Prior art keywords
- model
- layer
- data
- question
- answering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000004927 fusion Effects 0.000 title claims abstract description 14
- 238000012549 training Methods 0.000 claims description 76
- 238000012545 processing Methods 0.000 claims description 39
- 238000004364 calculation method Methods 0.000 claims description 32
- 238000012790 confirmation Methods 0.000 claims description 15
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000002790 cross-validation Methods 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000009825 accumulation Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- OFHCOWSQAMBJIW-AVJTYSNKSA-N alfacalcidol Chemical compound C1(/[C@@H]2CC[C@@H]([C@]2(CCC1)C)[C@H](C)CCCC(C)C)=C\C=C1\C[C@@H](O)C[C@H](O)C1=C OFHCOWSQAMBJIW-AVJTYSNKSA-N 0.000 description 7
- 229960002535 alfacalcidol Drugs 0.000 description 7
- 239000002775 capsule Substances 0.000 description 7
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 208000001132 Osteoporosis Diseases 0.000 description 2
- 230000037396 body weight Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 208000035475 disorder Diseases 0.000 description 2
- 239000003814 drug Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 208000020084 Bone disease Diseases 0.000 description 1
- 206010031299 Osteosis Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种基于异步消费队列的多模型结果融合问答方法及系统,本方案通过模型融合训练使得模型的输出更加合理,降低了标注数据量,提高了标注速度,同时通过异步的调用方式,我们可以实现和用户端进行联动操作,通过本发明可以快速完成医患之间的交流,帮助医护人员及时预测分析出与患者健康状况,以便于医护人员做出相应的健康护理决策。
Description
技术领域
本发明属于大模型技术领域,具体涉及一种基于异步消费队列的多模型结果融合问答方法及系统。
背景技术
随着大模型技术的发展,在各个场景中应用越来越广泛,目前问答模型有着独特的标注方式统一和标注相对简单的优势;
当前,问答系统在各个领域越来越引起人们的重视,深度学习技术的不断进步极大地推动了问答系统的发展。对于问答系统,深度学习技术可以利用大量的数据来学习特征表示和回复生成策略,这其中仅需要少量的手工操作。
但是,现有问答系统大多采用fintune模式,有标注数据量大,标注速度慢的缺点,并且现有的问答系统一般采用的模型较为单一,常通过模板推理得到单一的模型输出,少数问答系统虽采用了多模型的问答系统,但未采用合理的融合方式,使得模型的输出不合理,并且现有的调用方式单一,无法实现和用户端的联动操作。
发明内容
针对上述现有技术的不足,本申请提供了一种基于异步消费队列的多模型结果融合问答方法及系统。
第一方面本申请提出了一种基于异步消费队列的多模型结果融合问答方法,包括模型训练步骤和异步联动步骤;
所述模型训练步骤包括:
获取原始训练文本;
将所述原始训练文本处理为嵌套列表数据;
按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;
所述异步联动步骤包括:
为所述多元组问答模型赋予模型状态码;
用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本。
在一种可能的实施方式中,所述嵌套列表数据包括三元组嵌套列表数据和四元组嵌套列表数据;
所述三元组嵌套列表数据包括:由头实体、关系以及尾实体形成的三元组嵌套列表格式;
所述四元组嵌套列表数据包括:由头实体、关系、关系属性值和关系属性形成的四元组嵌套列表格式。
在一种可能的实施方式中,所述按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集,包括:
步骤1:设所述嵌套列表数据的总数据量为D条,需要划分的组数为K组,将总数据量按照K组划分为K等份,每组按顺序标号为D1、D2、D3……DK;
步骤2:从Dz开始按编号顺序获取K次数据,得到D1组的K份模型数据集,其中,z的初始值为1,所述模型数据集中前K-1份作为训练集,最后的第K份作为验证集;
步骤3:令z=z+1且z≤K,循环执行K次所述步骤2,直到获取D1、D2、D3……DK组不同的训练集和对应的验证集;其中,当获取到第K份数据但获取次数不足K次时,循环到第1份数据继续进行数据获取,直到获取次数达到K次为止。
在一种可能的实施方式中,所述构建与所述模型数据集的组数对应数量的bloom模型,包括:构建由embedding层、LN层、DecoderBlock层和softmax层组成的bloom模型;
所述embedding层的输入端接入所述训练数据,所述embedding层的输出端与所述LN层的输入端连接,所述LN层的输出端与所述DecoderBlock层的输入端连接,所述DecoderBlock层的输出端与所述softmax层的输入端连接,所述softmax层的输入端输出所述模型训练结果。
在一种可能的实施方式中,所述embedding层表示将输入字符转为embedding向量表示的计算网络,所述embedding层的计算为:
其中,x代表输入字符的字符信息的数字id表示,W代表embedding层的权重矩阵,T代表进行矩阵转置,b代表embedding层的偏置权重矩阵;
所述LN层代表经过embedding转化后进行的层归一化操作,所述LN层的计算为:
其中,代表当前输入的数据,/>代表当前输入数据的均值,/>代表输入x的方差,/>为超参数,防止分母为0,数值为0.0001,/>代表LN层的权重矩阵,/>代表LN层的偏置权重;
所述DecoderBlock层中封装了多维矩阵计算,所述DecoderBlock层的计算为:
其中,表示经过LN层的输出结果,q表示query层、k表示key层,v表示value层,、/>、/>分别对应表示query层、key层、value层的权重矩阵,b1,b2,b3分别对应表示query层,key层,value层的偏置矩阵,/>表示DecoderBlock层中最后得到的输出;
所述softmax层的计算为:
其中,代表进行softmax层的最终输出,/>代表 />以自然常数e为底的指数函数,i和j分别代表第i和第j个输入,∑代表进行累加。
在一种可能的实施方式中,所述异步请求信息包括消息确认步骤和模型调用步骤;
所述消息确认步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,返回给用户端前端确认预测消息;
所述模型调用步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,调用所述多元组问答模型进行预测处理;
所述消息确认步骤和所述模型调用步骤同步进行。
在一种可能的实施方式中,所述用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型,包括:
模型根据所述异步请求信息开始预测任务处理,模型在最开始收到异步请求信息并开始响应后首先判断模型状态码,判断结果包括:
如果模型状态码为1,表示多元组问答模型已经进行重新训练,则重新加载多元组问答模型,加载完毕后把状态码重置为0。
如果判断状态码为0,表示此次使用时的多元组问答模型并未进行重新训练,则直接使用已经加载完毕到内存中的多元组问答模型。
在一种可能的实施方式中,所述根据预测条件对所述logits值进行预测计算,包括:
设置预设阈值并对所述logits值对应的字符进行词频统计,当所有所述logits值对应的字符没有重复且所述logits值的最大值小于所述预设阈值时,则认为预测计算的结果符合所述预测条件,否则认为预测计算的结果不符合所述预测条件。
第二方面本申请提出一种基于异步消费队列的多模型结果融合问答系统,包括模型训练模块、异步联动模块、用户端前端和数据处理后端,所述模型训练模块用于执行模型训练步骤,获取多元组问答模型;所述异步联动模块用于为所述用户端前端、数据处理后端和多元组问答模型建立连接,保证端口和模型之间的数据传输和调用。
在一种可能的实施方式中,所述模型训练模块包括训练文本获取单元、嵌套数据构建单元、数据划分单元和多模型训练单元;
所述训练文本获取单元,用于获取原始训练文本;
所述嵌套数据构建单元,用于将所述原始训练文本处理为嵌套列表数据;
所述数据划分单元,用于按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
所述多模型训练单元,用于构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;
所述异步联动模块包括状态码输入单元、联动反馈单元、模型加载单元和文本预测单元;
所述状态码输入单元,用于为所述多元组问答模型赋予模型状态码;
所述联动反馈单元,用于用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
所述模型加载单元,用于用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
所述文本预测单元,用于加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本。
本发明的有益效果:
通过这种融合方式,本方案使得模型的输出更加合理,降低了标注数据量,提高了标注速度,同时通过异步的调用方式,我们可以实现和用户端进行联动操作,通过本发明可以快速完成医患之间的交流,帮助医护人员及时预测分析出与患者健康状况,以便于医护人员做出相应的健康护理决策。
附图说明
图1为本发明的总体流程图。
图2为bloom模型的数据传输图。
图3为本发明的系统原理框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制;相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
第一方面本申请提出了一种基于异步消费队列的多模型结果融合问答方法,包括模型训练步骤和异步联动步骤;
所述模型训练步骤包括:
S100:获取原始训练文本;
其中原始训练文本可以是患者的电子病历文本、药品说明书以及医嘱文本等;
S200:将所述原始训练文本处理为嵌套列表数据;
在一种可能的实施方式中,所述嵌套列表数据包括三元组嵌套列表数据和四元组嵌套列表数据;
所述三元组嵌套列表数据包括:由头实体、关系以及尾实体形成的三元组嵌套列表格式;
所述四元组嵌套列表数据包括:由头实体、关系、关系属性值和关系属性形成的四元组嵌套列表格式。
其中,输出的格式为嵌套列表形式,列表内为三元组[头实体,关系,尾实体]的格式,如果关系有属性的话,需要把关系属性和属性值同时写在三元组中,这样情况,需要标注为四元组[头实体,关系,关系属性值,关系属性]的格式。
三元组[头实体,关系,尾实体]分别为:
从原始训练文本中获取每句话的核心词,将核心词作为头实体;
尾实体为每句话中围绕着核心词的介绍词汇;
关系为每句话中的核心词和介绍词汇之间存在的关系。
四元组[头实体,关系,关系属性值,关系属性]分别为:
从原始训练文本中获取每句话的核心词,将核心词作为头实体;
关系属性值为每句话中围绕着核心词的介绍词汇,
关系为每句话中的核心词和介绍词汇之间存在的关系,
关系属性为当前关系对应的属性。
其中,关系属性采用字典存储,字典的键为属性类型,字典的值为属性的具体内容,字典是一种存储格式,当关系有属性和属性值时,以字典保存对应的属性和属性值;
比如,对于以下原始训练文本:
“【用法用量】
阿法骨化醇胶丸口服用法和用量说明;
骨质疏松症患者首剂量为:0.5μg/天;
其它所有指征的首剂量为:0.2μg/天;
成人:1μg/天;
老年病人:0.5μg/天;
体重 20 kg 以上的儿童无肾性骨病者:1μg/天”;
其中,“用法”和“用量”作为药品“阿法骨化醇胶丸”的一个关系类型,该关系还有属性为“疾病”,“年龄”,“体重”三个属性,则对于这里的内容,需要同时标注;
[“阿法骨化醇胶丸”,“用法”,“口服”],
[“阿法骨化醇胶丸”,“用量”,“0.5μg/天”,{“病症”:“骨质疏松症”}],
[“阿法骨化醇胶丸”,“用量”,“1μg/天”, {“年龄”:“成人”}],
[“阿法骨化醇胶丸”,“用量”,“0.5μg/天”,{“年龄”:“老年”}],
[“阿法骨化醇胶丸”,“用量”,“1μg/天”,{“年龄”:“儿童”,“体重”:“20kg以上”,“病症”:“无肾性骨病”}]
其中,关系“用量”的每个属性需要存储在字典中,字典的键为属性类型,字典的值为属性的具体内容。
S300:按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
在一种可能的实施方式中,所述按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集,包括:
步骤1:设所述嵌套列表数据的总数据量为D条,需要划分的组数为K组,将总数据量按照K组划分为K等份,每组按顺序标号为D1、D2、D3……DK;
步骤2:从Dz开始按编号顺序获取K次数据,得到D1组的K份模型数据集,其中,z的初始值为1,所述模型数据集中前K-1份作为训练集,最后的第K份作为验证集;
步骤3:令z=z+1且z≤K,循环执行K次所述步骤2,直到获取D1、D2、D3……DK组不同的训练集和对应的验证集;其中,当获取到第K份数据但获取次数不足K次时,循环到第1份数据继续进行数据获取,直到获取次数达到K次为止。
例如,获取的嵌套列表数据的总数据量有D=10000条,我们划分K=10组数据集,那么我们首先把数据集划分为10等份,标号为1,2,3,4,5,6,7,8,9,10,接下来我们分别从1号开始往后循环取总数为10份数据,其中的前9份作为训练集,最后的1分作为验证集,依次往后取10次,第2次从2号开始往后取10份,以此类推,经过10次后,我们得到了10个不同的训练集和对应的验证集。
S400:构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;转入步骤T100;
在一种可能的实施方式中,所述构建与所述模型数据集的组数对应数量的bloom模型,包括:构建由embedding层、LN层、DecoderBlock层和softmax层组成的bloom模型,如图2所示,
所述embedding层的输入端接入所述训练数据,所述embedding层的输出端与所述LN层的输入端连接,所述LN层的输出端与所述DecoderBlock层的输入端连接,所述DecoderBlock层的输出端与所述softmax层的输入端连接,所述softmax层的输入端输出所述模型训练结果,其中,Token1,Token2,Token3分别代表输入模型的字符信息,字符信息的数据来源指步骤S300中划分后的多组模型数据集;
embedding层表示嵌入层,DecoderBlock层表示解码器层,LN层表示正则化层;
在一种可能的实施方式中,所述embedding层表示将输入字符转为embedding向量表示的计算网络,所述embedding层的计算为:
其中,x代表输入字符的字符信息的数字id表示,W代表embedding层的权重矩阵,T代表进行矩阵转置,b代表embedding层的偏置权重矩阵;
所述LN层代表经过embedding转化后进行的层归一化操作,所述LN层的计算为:
其中,代表当前输入的数据,/>代表当前输入数据的均值,/>代表输入x的方差,/>为超参数,防止分母为0,数值为0.0001,/>代表LN层的权重矩阵,/>代表LN层的偏置权重;
所述DecoderBlock(x70)层中封装了多维矩阵计算,DecoderBlock(x70)表示解码块,所述DecoderBlock(x70)层的计算为:
其中,表示经过LN层的输出结果,q表示query层、k表示key层,v表示value层,、/>、/>分别对应表示query层、key层、value层的权重矩阵,b1,b2,b3分别对应表示query层,key层,value层的偏置矩阵,/>表示DecoderBlock层中最后得到的输出,query表示检索,key表示键值,value表示数值;
所述softmax层的计算为:
其中,代表进行softmax层的最终输出,/>代表 />以自然常数e为底的指数函数,i和j分别代表第i和第j个输入,∑代表进行累加。
本实施例中,我们构造10个结构为上述的bloom模型,对应前面构造的10份训练集和验证集,我们分别用不同的数据集输入10个bloom模型,训练得到对应数量的多元组问答模型;
所述异步联动步骤包括:
T100:为所述多元组问答模型赋予模型状态码;
训练完毕后,我们把这10个多元组问答模型分别加载到内存中,同时我们赋予模型状态码为1;
T200:用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
在一种可能的实施方式中,所述异步请求信息包括消息确认步骤和模型调用步骤;
所述消息确认步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,返回给用户端前端确认预测消息;
所述模型调用步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,调用所述多元组问答模型进行预测处理;
其中,在用户端前端发起异步请求信息,模型首先返回给用户端前端一个确认信息,确认已经收到用户端前端的请求;
异步请求信息的流程为:用户端发送消息给后端进行处理,在后端接收到消息的同时,进行两个步骤,一个是返回给用户端一个确认消息,确认后端接收到了用户端发送过来的消息,另一个是同时调用模型进行预测处理,这两个步骤是同步进行的。
T300:用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
所述消息确认步骤和所述模型调用步骤同步进行。
在一种可能的实施方式中,所述用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型,包括:
模型根据所述异步请求信息开始预测任务处理,模型在最开始收到异步请求信息并开始响应后首先判断模型状态码,判断结果包括:
如果模型状态码为1,表示多元组问答模型已经进行重新训练,则重新加载多元组问答模型,加载完毕后把状态码重置为0。
如果判断状态码为0,表示此次使用时的多元组问答模型并未进行重新训练,则直接使用已经加载完毕到内存中的多元组问答模型。
进一步的,同时模型开始预测任务处理,在预测出结果后把信息返回。模型在最开始收到异步请求信息并开始响应后首先判断模型状态码,此时分为两种情况:
1)模型状态码如果为1,代表模型有进行了重新训练,此时模型需要重新加载,加载完毕后把状态码重置为0。
2)如果一开始判断状态码为0,代表此次使用时模型并未进行重新训练,可以直接使用之前已经加载到内存中的模型;
通过这样的方式,我们可以在模型没有更新时不用重新加载,可以取消等待模型加载的耗时,缩短模型响应时间。
T400:加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本。
在一种可能的实施方式中,所述根据预测条件对所述logits值进行预测计算,包括:
设置预设阈值并对所述logits值对应的字符进行词频统计,当所有所述logits值对应的字符没有重复且所述logits值的最大值小于所述预设阈值时,则认为预测计算的结果符合所述预测条件,否则认为预测计算的结果不符合所述预测条件。
其中,在判断完毕后,我们分别把每个用户提问发送到这10个模型,每个模型计算的逻辑和训练过程中计算的逻辑一致,计算完毕后模型输出在预设的所有中英文词表中的每个单词的logits值,这里的logits值代表模型此时在每个中英文字符上输出的概率值,之后,我们对这10个logits值进行两种策略计算:
对这10个logits对应的具体字符进行词频统计,对于出现次数最多的字符,我们作为模型预测的当前字符输出;
如果这10个logits对应的字符都是唯一的,没有重复出现的,那么我们进行选择logits最大的对应的字符作为模型预测的当前字符输出;
我们提前预设阈值0.5,当这10个logits对应的字符都是唯一的,没有重复出现的,且logits最大的值依然小于0.5时,我们终止模型的预测输出,模型回答结束,之前输出的所有字符作为最终回答返回给用户。
通过这种融合方式,我们使得模型的输出更加合理,同时通过异步的调用方式,我们可以实现和用户端进行联动操作。
第二方面本申请提出一种基于异步消费队列的多模型结果融合问答系统,包括模型训练模块、异步联动模块、用户端前端和数据处理后端,所述模型训练模块用于执行模型训练步骤,获取多元组问答模型;所述异步联动模块用于为所述用户端前端、数据处理后端和多元组问答模型建立连接,保证端口和模型之间的数据传输和调用。
在一种可能的实施方式中,所述模型训练模块包括训练文本获取单元、嵌套数据构建单元、数据划分单元和多模型训练单元;
所述训练文本获取单元,用于获取原始训练文本;
所述嵌套数据构建单元,用于将所述原始训练文本处理为嵌套列表数据;
所述数据划分单元,用于按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
所述多模型训练单元,用于构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;
所述异步联动模块包括状态码输入单元、联动反馈单元、模型加载单元和文本预测单元;
所述状态码输入单元,用于为所述多元组问答模型赋予模型状态码;
所述联动反馈单元,用于用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
所述模型加载单元,用于用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
所述文本预测单元,用于加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本。
以上仅是本发明优选的实施方式,需指出的是,对于本领域技术人员在不脱离本技术方案的前提下,作出的若干变形和改进的技术方案应同样视为落入本权利要求书要求保护的范围。
Claims (9)
1.一种基于异步消费队列的多模型结果融合问答方法,其特征在于:包括模型训练步骤和异步联动步骤;
所述模型训练步骤包括:
获取原始训练文本;
将所述原始训练文本处理为嵌套列表数据;
按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;
所述异步联动步骤包括:
为所述多元组问答模型赋予模型状态码;
用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本。
2.根据权利要求1所述的方法,其特征在于:所述嵌套列表数据包括三元组嵌套列表数据和四元组嵌套列表数据;
所述三元组嵌套列表数据包括:由头实体、关系以及尾实体形成的三元组嵌套列表格式;
所述四元组嵌套列表数据包括:由头实体、关系、关系属性值和关系属性形成的四元组嵌套列表格式。
3.根据权利要求1所述的方法,其特征在于:所述按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集,包括:
步骤1:设所述嵌套列表数据的总数据量为D条,需要划分的组数为K组,将总数据量按照K组划分为K等份,每组按顺序标号为D1、D2、D3……DK;
步骤2:从Dz开始按编号顺序获取K次数据,得到D1组的K份模型数据集,其中,z的初始值为1,所述模型数据集中前K-1份作为训练集,最后的第K份作为验证集;
步骤3:令z=z+1且z≤K,循环执行K次所述步骤2,直到获取D1、D2、D3……DK组不同的训练集和对应的验证集;其中,当获取到第K份数据但获取次数不足K次时,循环到第1份数据继续进行数据获取,直到获取次数达到K次为止。
4.根据权利要求1所述的方法,其特征在于:所述构建与所述模型数据集的组数对应数量的bloom模型,包括:构建由embedding层、LN层、DecoderBlock层和softmax层组成的bloom模型;
所述embedding层的输入端接入所述训练数据,所述embedding层的输出端与所述LN层的输入端连接,所述LN层的输出端与所述DecoderBlock层的输入端连接,所述DecoderBlock层的输出端与所述softmax层的输入端连接,所述softmax层的输入端输出所述模型训练结果。
5.根据权利要求4所述的方法,其特征在于:所述embedding层表示将输入字符转为embedding向量表示的计算网络,所述embedding层的计算为:
其中,x代表输入字符的字符信息的数字id表示,W代表embedding层的权重矩阵,T代表进行矩阵转置,b代表embedding层的偏置权重矩阵;
所述LN层代表经过embedding转化后进行的层归一化操作,所述LN层的计算为:
其中,/>代表当前输入的数据,/>代表当前输入数据的均值,/>代表输入x的方差,/>为超参数,防止分母为0,数值为0.0001,/>代表LN层的权重矩阵,/>代表LN层的偏置权重;
所述DecoderBlock层中封装了多维矩阵计算,所述DecoderBlock层的计算为:
其中,/>表示经过LN层的输出结果,q表示query层、k表示key层,v表示value层,/>、/>、/>分别对应表示query层、key层、value层的权重矩阵,b1,b2,b3分别对应表示query层,key层,value层的偏置矩阵,/>表示DecoderBlock层中最后得到的输出;
所述softmax层的计算为:
其中,/>代表进行softmax层的最终输出,代表/>以自然常数e为底的指数函数,i和j分别代表第i和第j个输入,∑代表进行累加。
6.根据权利要求5所述的方法,其特征在于:所述异步请求信息包括消息确认步骤和模型调用步骤;
所述消息确认步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,返回给用户端前端确认预测消息;
所述模型调用步骤为:用户端前端发送预测消息给数据处理后端进行处理,当数据处理后端接收到所述预测消息时,调用所述多元组问答模型进行预测处理;
所述消息确认步骤和所述模型调用步骤同步进行。
7.根据权利要求6所述的方法,其特征在于:所述用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型,包括:
模型根据所述异步请求信息开始预测任务处理,模型在最开始收到异步请求信息并开始响应后首先判断模型状态码,判断结果包括:
如果模型状态码为1,表示多元组问答模型已经进行重新训练,则重新加载多元组问答模型,加载完毕后把状态码重置为0;
如果判断状态码为0,表示此次使用时的多元组问答模型并未进行重新训练,则直接使用已经加载完毕到内存中的多元组问答模型。
8.根据权利要求7所述的方法,其特征在于:所述根据预测条件对所述logits值进行预测计算,包括:
设置预设阈值并对所述logits值对应的字符进行词频统计,当所有所述logits值对应的字符没有重复且所述logits值的最大值小于所述预设阈值时,则认为预测计算的结果符合所述预测条件,否则认为预测计算的结果不符合所述预测条件。
9.一种基于异步消费队列的多模型结果融合问答系统,其特征在于:包括模型训练模块、异步联动模块、用户端前端和数据处理后端,所述模型训练模块用于执行模型训练步骤,获取多元组问答模型;
所述模型训练模块包括训练文本获取单元、嵌套数据构建单元、数据划分单元和多模型训练单元;
所述训练文本获取单元,用于获取原始训练文本;
所述嵌套数据构建单元,用于将所述原始训练文本处理为嵌套列表数据;
所述数据划分单元,用于按照交叉验证的格式将所述嵌套列表数据划分为多组模型数据集;
所述多模型训练单元,用于构建与所述模型数据集的组数对应数量的bloom模型,将所述模型数据集中的训练数据输入到所述bloom模型进行训练,得到对应数量的多元组问答模型;
所述异步联动模块包括状态码输入单元、联动反馈单元、模型加载单元和文本预测单元;
所述状态码输入单元,用于为所述多元组问答模型赋予模型状态码;
所述联动反馈单元,用于用户端前端发起异步请求信息,所述多元组问答模型响应所述异步请求信息并判断所述模型状态码,将判断结果反馈给用户端前端;
所述模型加载单元,用于用户端前端根据所述模型状态码的判断结果决定重新加载/直接加载所述多元组问答模型;
所述文本预测单元,用于加载完毕后,用户端前端将用户提问文本发送给所述多元组问答模型,获取多元组问答模型输出的logits值,根据预测条件对所述logits值进行预测计算,如果预测计算的结果符合所述预测条件,则输出当前回答文本并返回到用户端前端;如果预测计算的结果不满足所述预测条件,则通过所述多元组问答模型继续更新回答文本;
所述异步联动模块用于为所述用户端前端、数据处理后端和多元组问答模型建立连接,保证端口和模型之间的数据传输和调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311507853.XA CN117235240B (zh) | 2023-11-14 | 2023-11-14 | 一种基于异步消费队列的多模型结果融合问答方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311507853.XA CN117235240B (zh) | 2023-11-14 | 2023-11-14 | 一种基于异步消费队列的多模型结果融合问答方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117235240A CN117235240A (zh) | 2023-12-15 |
CN117235240B true CN117235240B (zh) | 2024-02-20 |
Family
ID=89086458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311507853.XA Active CN117235240B (zh) | 2023-11-14 | 2023-11-14 | 一种基于异步消费队列的多模型结果融合问答方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117235240B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107844560A (zh) * | 2017-10-30 | 2018-03-27 | 北京锐安科技有限公司 | 一种数据接入的方法、装置、计算机设备和可读存储介质 |
WO2021151271A1 (zh) * | 2020-05-20 | 2021-08-05 | 平安科技(深圳)有限公司 | 基于命名实体的文本问答的方法、装置、设备及存储介质 |
CN113569050A (zh) * | 2021-09-24 | 2021-10-29 | 湖南大学 | 基于深度学习的政务领域知识图谱自动化构建方法和装置 |
WO2021217935A1 (zh) * | 2020-04-29 | 2021-11-04 | 深圳壹账通智能科技有限公司 | 问题生成模型的训练方法、问题生成方法及其相关设备 |
CN113743095A (zh) * | 2021-07-19 | 2021-12-03 | 西安理工大学 | 基于词格和相对位置嵌入的中文问题生成统一预训练方法 |
KR20220013108A (ko) * | 2020-07-24 | 2022-02-04 | 주식회사 레드우드케이 | 빅데이터의 수집, 처리 및 적재를 위한 통합 플랫폼 서비스 제공 시스템 |
CN116450796A (zh) * | 2023-05-17 | 2023-07-18 | 中国兵器工业计算机应用技术研究所 | 一种智能问答模型构建方法及设备 |
CN116719913A (zh) * | 2023-04-27 | 2023-09-08 | 江苏师范大学 | 一种基于改进命名实体识别的医疗问答系统及其构建方法 |
CN117033608A (zh) * | 2023-09-28 | 2023-11-10 | 中国电子科技集团公司第十研究所 | 一种基于大语言模型的知识图谱生成式问答方法及系统 |
-
2023
- 2023-11-14 CN CN202311507853.XA patent/CN117235240B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107844560A (zh) * | 2017-10-30 | 2018-03-27 | 北京锐安科技有限公司 | 一种数据接入的方法、装置、计算机设备和可读存储介质 |
WO2021217935A1 (zh) * | 2020-04-29 | 2021-11-04 | 深圳壹账通智能科技有限公司 | 问题生成模型的训练方法、问题生成方法及其相关设备 |
WO2021151271A1 (zh) * | 2020-05-20 | 2021-08-05 | 平安科技(深圳)有限公司 | 基于命名实体的文本问答的方法、装置、设备及存储介质 |
KR20220013108A (ko) * | 2020-07-24 | 2022-02-04 | 주식회사 레드우드케이 | 빅데이터의 수집, 처리 및 적재를 위한 통합 플랫폼 서비스 제공 시스템 |
CN113743095A (zh) * | 2021-07-19 | 2021-12-03 | 西安理工大学 | 基于词格和相对位置嵌入的中文问题生成统一预训练方法 |
CN113569050A (zh) * | 2021-09-24 | 2021-10-29 | 湖南大学 | 基于深度学习的政务领域知识图谱自动化构建方法和装置 |
CN116719913A (zh) * | 2023-04-27 | 2023-09-08 | 江苏师范大学 | 一种基于改进命名实体识别的医疗问答系统及其构建方法 |
CN116450796A (zh) * | 2023-05-17 | 2023-07-18 | 中国兵器工业计算机应用技术研究所 | 一种智能问答模型构建方法及设备 |
CN117033608A (zh) * | 2023-09-28 | 2023-11-10 | 中国电子科技集团公司第十研究所 | 一种基于大语言模型的知识图谱生成式问答方法及系统 |
Non-Patent Citations (4)
Title |
---|
基于Hadoop平台的内容相似度与PageRank的垃圾短信识别融合模型;叶志雄;朱丽芳;刘钢庭;李启文;王丹弘;;广东通信技术(09);全文 * |
基于多模态知识感知注意力机制的问答方法;张莹莹;钱胜胜;方全;徐常胜;;计算机研究与发展;20200515(05);全文 * |
基于特定领域知识的医疗问答系统信息质量预测;胡泽;张展;左德承;;智能计算机与应用(06);全文 * |
融合对抗训练的端到端知识三元组联合抽取;黄培馨;赵翔;方阳;朱慧明;肖卫东;;计算机研究与发展(12);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117235240A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109192300A (zh) | 智能问诊方法、系统、计算机设备和存储介质 | |
JP2659867B2 (ja) | 神経網を構築する方法及び神経網モデルを定義する方法 | |
CN114386528B (zh) | 模型的训练方法和装置、计算机设备、存储介质 | |
JP7457125B2 (ja) | 翻訳方法、装置、電子機器及びコンピュータプログラム | |
CN111243699A (zh) | 基于字词信息融合的中文电子病历实体抽取方法 | |
CN115331769B (zh) | 基于多模态融合的医学影像报告生成方法及装置 | |
CN111667917A (zh) | 一种基于神经网络实现中医诊疗的方法、系统及设备 | |
CN113724359A (zh) | 一种基于Transformer的CT报告生成方法 | |
CN115221271A (zh) | 一种对话回复方法及装置、语言模型训练方法及装置 | |
CN109919078A (zh) | 一种视频序列选择的方法、模型训练的方法及装置 | |
CN112069827B (zh) | 一种基于细粒度主题建模的数据到文本生成方法 | |
CN114783571A (zh) | 基于深度强化学习的中医动态诊疗方案优化方法及系统 | |
AU2021225262A1 (en) | Scene graph modification based on natural language commands | |
CN111881292A (zh) | 一种文本分类方法及装置 | |
CN116932722A (zh) | 一种基于跨模态数据融合的医学视觉问答方法及系统 | |
CN116975218A (zh) | 文本处理方法、装置、计算机设备和存储介质 | |
CN115631825A (zh) | 利用自然语言模型自动生成结构化报告的方法及相关设备 | |
CN117235240B (zh) | 一种基于异步消费队列的多模型结果融合问答方法及系统 | |
CN114757188A (zh) | 一种基于生成对抗网络的规范医疗文本改写方法 | |
CN108256030B (zh) | 一种基于本体的密度自适应概念语义相似度计算方法 | |
CN113657086A (zh) | 词语处理方法、装置、设备及存储介质 | |
CN116072308A (zh) | 基于图路径搜索和语义索引的医疗问答方法及相关设备 | |
CN112800032B (zh) | 基于表格数据的faq知识库自动构建方法和装置 | |
CN116029261A (zh) | 中文文本语法纠错方法及相关设备 | |
CN114520053A (zh) | 一种医疗信息的处理方法、系统、终端和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |