用于辅助中医问诊的多轮对话方法和装置制造方法及图纸

技术编号:39401170 阅读:8 留言:0更新日期:2023-11-19 15:53
本发明专利技术公开了一种用于辅助中医问诊的多轮对话方法和装置,属于自然语言处理、人工智能领域,本发明专利技术要解决的技术问题为如何缓解对话历史难以有效融合,提升问答表示的质量以及对话系统的理解能力,从而提高多轮对话系统的预测准确性,采用的技术方案为:S1、获取多轮对话数据集:从网络上爬取公开的中医问诊多轮对话数据并自行构建中医问诊多轮对话数据集;S2、构建多轮对话模型:基于对话记忆融合引擎模块构建多轮对话模型;S3、训练多轮对话模型:在步骤S1所得到多轮对话训练数据集上对步骤S2构建的多轮对话模型进行训练。S2构建的多轮对话模型进行训练。S2构建的多轮对话模型进行训练。

【技术实现步骤摘要】
用于辅助中医问诊的多轮对话方法和装置


[0001]本专利技术涉及人工智能、自然语言处理
,具体涉及一种用于辅助中医问诊的多轮对话方法和装置。

技术介绍

[0002]中医是我国医学科学的特色,也是中华民族优秀文化的重要组成部分,几千年来为中华民族的繁衍昌盛做出了不可磨灭的贡献,并且对世界的文明进步产生了积极影响。但是,相对于西医,中医医生的数量显得十分稀缺。据国家卫健委公开数据显示,2010

2019年中国中医类医疗机构诊疗人次呈现逐年上升趋势,从2010年的6.13亿人次到2019年增长到11.64亿人次,而截至2018年底全国中医医师总数不到60万。由于中医医生数量相对较少,而病人数量庞大,这就导致了患者就医难、排队时间长等问题。为了解决上述问题,可以将多轮对话技术引入中医诊疗服务,用以辅助中医问诊流程。多轮对话技术可以将大量中医知识整合为一个标准化、大规模的中医知识库,然后通过与患者进行自助多轮问答的形式,从而帮助中医医生高效地处理大量的患者咨询和诊断问题。以此为基础,中医医生可以更好地分配就诊资源,缓解现有中医医生数量不足的局面。
[0003]在多轮对话技术中,前后对话之间的上下文信息对于准确理解和回答用户问题至关重要。然而,现有的对话系统往往难以有效融合历史对话信息,这导致对话系统对用户的问题理解不准确,从而导致用户对话体验不佳。这可能是因为现有的方法无法很好地捕捉到复杂的对话上下文关系所致,因此,多轮对话目前仍是一项非常有挑战性的任务。
[0004]针对上述问题,本专利技术提出了一种用于辅助中医问诊的多轮对话方法和装置,其可以缓解对话历史难以有效融合问题,提升问答表示的质量以及对话系统的理解能力,进而提高多轮对话模型的预测准确性。

技术实现思路

[0005]本专利技术要解决的技术问题是提供用于辅助中医问诊的多轮对话方法和装置,来缓解对话历史难以有效融合问题,提升问答表示的质量以及对话系统的理解能力,从而提高多轮对话模型的预测准确性。
[0006]本专利技术采用如下技术手段实现专利技术目的:
[0007]一种用于辅助中医问诊的多轮对话方法,其特征是:该方法包括如下步骤:
[0008]S1、获取多轮对话数据集:从网络上爬取公开的中医问诊多轮对话数据并自行构建中医问诊多轮对话数据集;
[0009]S2、构建多轮对话模型:基于对话记忆融合引擎模块构建多轮对话模型;
[0010]S3、训练多轮对话模型:在步骤S1所得到多轮对话训练数据集上对步骤S2构建的多轮对话模型进行训练。
[0011]作为对本技术方案的进一步限定,所述步骤S2用于构建输入模块、构建预训练嵌入模块、构建对话记忆融合引擎模块、构建问答交互模块和构建标签预测模块,进而构建多
轮对话模型。
[0012]作为对本技术方案的进一步限定,所述构建输入模块针对数据集中的每一条数据,将历史对话中的每个语句按照对话顺序分别记为h1,h2,

,h
n
;在多个回复中选择一个回复作为当前回复,形式化为a;根据该条回复是否为正确回复,确定该条数据的标签,即,若该条回复是正确回复,则记为1;否则,则记为0;h1,h2,

,h
n
、a和标签,共同组成一条输入数据。
[0013]作为对本技术方案的进一步限定,所述预训练嵌入模块使用预训练语言模型BERT对输入数据即h1,h2,

,h
n
和a分别进行编码处理,从而得到历史对话中每个语句的嵌入和候选回复嵌入,记为和具体实施见下述公式:
[0014][0015][0016]其中,h1,h2,

,h
n
‑1,h
n
表示历史对话中的语句1、语句2、

、语句n

1、语句n,a表示候选回复,BERT()表示使用预训练语言模型BERT对括号内的内容进行编码。
[0017]作为对本技术方案的进一步限定,所述对话记忆融合引擎模块接收预训练嵌入模块输出的历史对话中每个语句的嵌入即块输出的历史对话中每个语句的嵌入即和候选回复嵌入即使用自注意力机制对候选回复嵌入进行语义特征筛选从而得到候选回复自注意力嵌入同时通过两个基于不同激活函数的稠密网络层对历史对话中的每个语句的嵌入进行两次映射,然后基于候选回复自注意力嵌入对历史对话中每个语句的两次映射结果通过点积、相乘、联接和自注意力机制编码操作完成对话历史信息的融合和交互;最终通过一个编码网络对融合和交互的结果进行编码得到对话记忆融合嵌入并将其传递给问答交互模块;
[0018]具体而言,该模块的实现流程如下所述:
[0019](1)使用自注意力机制对候选回复嵌入进行语义特征筛选,从而得到候选回复自注意力嵌入,记为具体实施见下述公式:
[0020][0021]其中,表示候选回复嵌入,Self

Attention(;)表示使用自注意力机制对括号内的内容进行语义特征筛选;
[0022](2)使用一个基于TanH激活函数的稠密网络层Dense1和一个基于ReLU激活函数的稠密网络层Dense2对语句1嵌入分别进行一次映射,从而得到T映射1和R映射1,记为和具体实施见下述公式:
[0023][0024][0025]其中,表示语句1嵌入,TanH(Dense1())表示使用基于TanH激活函数的稠密网络层Dense1对括号内的内容进行映射,ReLU(Dense2())表示使用基于ReLU激活函数的稠密网络层Dense2对括号内的内容进行映射;
[0026]然后对T映射1即与候选回复自注意力嵌入执行点积运算,从而得到相关性系数1,记为然后对相关性系数1即与R映射1即执行相乘运算,从而得到语句1表示,记为具体实施见下述公式:
[0027][0028][0029]其中,表示候选回复自注意力嵌入,表示T映射1,表示R映射1,
·
表示点积运算,
×
表示相乘运算;
[0030](3)使用一个基于TanH激活函数的稠密网络层Dense1和一个基于ReLU激活函数的稠密网络层Dense2对语句2嵌入分别进行一次映射,从而得到T映射2和R映射2,记为和具体实施见下述公式:
[0031][0032][0033]其中,表示语句2嵌入,TanH(Dense1())表示使用基于TanH激活函数的稠密网络层Dense1对括号内的内容进行映射,ReLU(Dense2())表示使用基于ReLU激活函数的稠密网络层Dense2对括号内的内容进行映射;
[0034]然后对T映射2即与候选回复自注意力嵌入执行点积运算,从而得到相关性系数2,记为然后对对相关性系数2即与R映射2即执行相乘运算,从而得到语句2表示,记为然后联接语句2表示和语句1表示并使用自注意力机制对联接结果进行编码操作,从而得到联接嵌入1,记为具体实施见下述公式:<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于辅助中医问诊的多轮对话方法,其特征是:该方法包括如下步骤:S1、获取多轮对话数据集:从网络上爬取公开的中医问诊多轮对话数据并自行构建中医问诊多轮对话数据集;S2、构建多轮对话模型:基于对话记忆融合引擎模块构建多轮对话模型;S3、训练多轮对话模型:在步骤S1所得到多轮对话训练数据集上对步骤S2构建的多轮对话模型进行训练。2.根据权利要求1所述的用于辅助中医问诊的多轮对话方法,其特征是:所述步骤S2用于构建输入模块、构建预训练嵌入模块、构建对话记忆融合引擎模块、构建问答交互模块、构建标签预测模块,进而构建多轮对话模型;前述模块分别对应子步骤,记作S201、S202、S203、S204、S205。3.根据权利要求2所述的用于辅助中医问诊的多轮对话方法,其特征是:所述构建输入模块针对数据集中的每一条数据,将历史对话中的每个语句按照对话顺序分别记为h1,h2,

,h
n
;在多个回复中选择一个回复作为当前回复,形式化为a;根据该条回复是否为正确回复,确定该条数据的标签,即,若该条回复是正确回复,则记为1;否则,则记为0;h1,h2,

,h
n
、a和标签,共同组成一条输入数据。4.根据权利要求3所述的用于辅助中医问诊的多轮对话方法,其特征是:所述预训练嵌入模块使用预训练语言模型BERT对输入数据即h1,h2,

,h
n
和a分别进行编码处理,从而得到历史对话中每个语句的嵌入和候选回复嵌入,记为和具体实施见下述公式:其中,h1,h2,

,h
n
‑1,h
n
表示历史对话中的语句1、语句2、

、语句n

1、语句n,a表示候选回复,BERT()表示使用预训练语言模型BERT对括号内的内容进行编码。5.根据权利要求1所述的用于辅助中医问诊的多轮对话方法,其特征是:所述对话记忆融合引擎模块接收预训练嵌入模块输出的历史对话中每个语句的嵌入即融合引擎模块接收预训练嵌入模块输出的历史对话中每个语句的嵌入即和候选回复嵌入即使用自注意力机制对候选回复嵌入进行语义特征筛选从而得到候选回复自注意力嵌入同时通过两个基于不同激活函数的稠密网络层对历史对话中的每个语句的嵌入进行两次映射;基于候选回复自注意力嵌入对历史对话中每个语句的两次映射结果通过点积、相乘、联接和自注意力机制编码操作完成对话历史信息的融合和交互;最终通过一个编码网络对融合和交互的结果进行编码得到对话记忆融合嵌入并将其传递给问答交互模块;具体而言,该模块的实现流程如下所述:S20301使用自注意力机制对候选回复嵌入进行语义特征筛选,从而得到候选回复自注意力嵌入,记为具体实施见下述公式:
其中,表示候选回复嵌入,Self

Attention(;)表示使用自注意力机制对括号内的内容进行语义特征筛选;S20302使用一个基于TanH激活函数的稠密网络层Dense1和一个基于ReLU激活函数的稠密网络层Dense2对语句1嵌入分别进行一次映射,从而得到T映射1和R映射1,记为和具体实施见下述公式:其中,表示语句1嵌入,TanH(Dense1())表示使用基于TanH激活函数的稠密网络层Dense1对括号内的内容进行映射,ReLU(Dense2())表示使用基于ReLU激活函数的稠密网络层Dense2对括号内的内容进行映射;然后对T映射1即与候选回复自注意力嵌入执行点积运算,从而得到相关性系数1,记为然后对相关性系数1即与R映射1即执行相乘运算,从而得到语句1表示,记为具体实施见下述公式:其中,表示候选回复自注意力嵌入,表示T映射1,表示R映射1,
·
表示点积运算,
×
表示相乘运算;S20303使用一个基于TanH激活函数的稠密网络层Dense1和一个基于ReLU激活函数的稠密网络层Dense2对语句2嵌入分别进行一次映射,从而得到T映射2和R映射2,记为和具体实施见下述公式:其中,表示语句2嵌入,TanH(Dense1())表示使用基于TanH激活函数的稠密网络层Dense1对括号内的内容进行映射,ReLU(Dense2())表示使用基于ReLU激活函数的稠密网络层Dense2对括号内的内容进行映射;然后对T映射2即与候选回复自注意力嵌入执行点积运算,从而得到相关性系数2,记为然后对对相关性系数2即与R映射2即执行相乘运算,从而得到语句2表示,记
为然后联接语句2表示和语句1表示并使用自注意力机制对联接结果进行编码操作,从而得到联接嵌入1,记为具体实施见下述公式:具体实施见下述公式:具体实施见下述公式:其中,表示候选回复自注意力嵌入,表示T映射2,表示R映射2,
·
表示点积运算,
×
表示相乘运算,Self

Attention(Concatenate(;))表示使用自注意力机制对括号内的内容的联接结果进行编码操作;S20304使用一个基于TanH激活函数的稠密网络层Dense1和一个基于ReLU激活函数的稠密网络层Dense2对语句3嵌入分别进行一次映射,从而得到T映射3和R映射3,记为和具体实施见下述公式:具体实施见下述公式:其中,表示语句3嵌入,TanH(Dense1())表示使用基于TanH激活函数的稠密网络层Dense1对括号内的内容进行映射,ReLU(Dense2())表示使用基于ReLU激活函数的稠密网络层Dense2对括号内的内容进行映射;然后对T映射3即与候选回复自注意力嵌入执行点积运算,从而得到相关性系数3,记为然后对相关性系数3即与R映射3即执行相乘运算,从而得到语句3表示,记为然后联接语句3表示和联接嵌入1即并使用自注意力机制对联接结果进行编码操作,从而得到联接嵌入2,记为具体实...

【专利技术属性】
技术研发人员:刘毅冯军郝文晖
申请(专利权)人:海南榕树家信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1