CN117033565A - 人机对话的方法、装置、电子设备及存储介质 - Google Patents

人机对话的方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117033565A
CN117033565A CN202210693162.2A CN202210693162A CN117033565A CN 117033565 A CN117033565 A CN 117033565A CN 202210693162 A CN202210693162 A CN 202210693162A CN 117033565 A CN117033565 A CN 117033565A
Authority
CN
China
Prior art keywords
user
psychological
word
vector
sentence
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.)
Pending
Application number
CN202210693162.2A
Other languages
English (en)
Inventor
徐博
郝德志
宗林林
林鸿飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210693162.2A priority Critical patent/CN117033565A/zh
Publication of CN117033565A publication Critical patent/CN117033565A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Probability & Statistics with Applications (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)

Abstract

本申请实施例提供了一种人机对话的方法、装置、设备以及存储介质,涉及人工智能技术领域。该人机对话的方法包括:根据用户相关的文本内容,提取该用户的心理特征向量;对该用户输入的语句进行处理,获取该语句的词嵌入向量;将该心理特征向量和词嵌入向量输入训练好的第一神经网络模型中,得到针对该语句的第一候选答复;根据该第一候选答复,确定针对该语句的最终答复。由于该第一候选答复融合了用户的心理特征,因此本申请实施例得到的针对用户输入语句的答复具有较好的共情能力,并且能够满足用户的心理需求,从而有助于提高人机对话的人性化程度。

Description

人机对话的方法、装置、电子设备及存储介质
技术领域
本申请涉及人工智能领域,并且更具体地,涉及人机对话的方法、装置、设备以及存储介质。
背景技术
人机对话是实现人类与计算机之间顺畅沟通的核心技术,也是人工智能发展的终极目标之一。近年随着对话技术研究的持续深入,人机对话逐渐走入大众视野,为人们日常生活带来了极大便利。从智能客服到个性化聊天,从情感陪护到社交机器人,人机对话为信息获取带来了全新的智能化变革,也极大地促进了自然语言处理技术的研究和应用。
但是,当前的人机对话往往生成过于官方或刻板的对话答复,导致人机对话的人性化程度较低。
发明内容
本申请实施例提供了一种人机对话的方法、装置、设备以及存储介质,能够基于用户的心理特征对用户的提问进行答复,有助于切身地为用户提供满足用户心理需求的答复,进而提高人机对话的人性化程度。
第一方面,本申请实施例提供了一种人机对话的方法,包括:
根据用户相关的文本内容,提取所述用户的心理特征向量;
对所述用户输入的语句进行处理,获取所述语句的词嵌入向量;
将所述心理特征向量和所述词嵌入向量输入训练好的第一神经网络模型中,得到针对所述语句的第一候选答复;其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的;
根据所述第一候选答复,确定针对所述语句的最终答复。
第二方面,本申请实施例提供了一种人机对话的装置,其特征在于,包括:
提取单元,用于根据用户相关的文本内容,提取所述用户的心理特征向量;
获取单元,用于对所述用户输入的语句进行处理,获取所述语句的词嵌入向量;
第一神经网络模型,用于将所述心理特征向量和所述词嵌入向量输入训练好的第一神经网络模型中,得到针对所述语句的第一候选答复;其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的;
确定单元,用于根据所述第一候选答复,确定针对所述语句的最终答复。
第三方面,本申请实施例提供了一种电子设备,包括:
处理器,适于实现计算机指令;以及,
存储器,存储有计算机指令,计算机指令适于由处理器加载并执行上述第一方面的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被计算机设备的处理器读取并执行时,使得计算机设备执行上述第一方面的方法。
第五方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面的方法。
基于以上技术方案,本申请实施例通过将用户的心理特征向量和输入语句的词嵌入向量输入至训练好的第一神经网络模型模型中,能够得到融合了用户的心理特征的第一候选答复,进而根据该第一候选答复得到针对用户输入语句的最终答复。由于该第一候选答复融合了用户的心理特征,因此根据该第一候选答复得到的最终答复具有较好的共情能力,并且能够满足用户的心理需求,从而有助于提高人机对话的人性化程度。
附图说明
图1为本申请实施例涉及的一种系统架构的示意图;
图2为本申请实施例提供的一种人机对话的方法的示意流程图;
图3为本申请实施例提供的一种可适用的网络架构的示意图;
图4为本申请实施例提供的另一种人机对话的方法的示意流程图;
图5为本申请实施例提供的另一种可适用的网络架构的示意图;
图6为本申请实施例提供的另一种人机对话的方法的示意流程图;
图7为本申请实施例提供的另一种可适用的网络架构的示意图;
图8为本申请实施例提供的另一种人机对话的方法的示意流程图;
图9为本申请实施例提供的另一种可适用的网络架构的示意图;
图10为本申请实施例提供的融合注意力机制的Seq2Seq模型的一个示意图;
图11为本申请实施例提供的另一种人机对话的方法的示意流程图;
图12为本申请实施例提供的另一种人机对话的方法的示意流程图;
图13为本申请实施例提供的一种人机对话的装置的示意性框图;
图14为本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应理解,在本申请实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
还应理解,本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
还应理解,说明书中与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例应用于人工智能技术领域。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例可涉及人工智能技术中的自然语言处理(Nature Languageprocessing,NLP)技术。NLP是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
本申请实施例也可以涉及人工智能技术中的机器学习(Machine Learning,ML),ML是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
此外,本申请实施例提供的方案还可以涉及模型预训练技术。预训练(pre-training)通过大量无标注或者弱标注的样本进行模型的训练,得到一套模型参数;利用这套参数对模型进行初始化,实现模型“热启动”,再根据具体任务在现有模型的架构上对参数进行微调来拟合任务提供的标签数据。
图1为本申请实施例涉及的一种系统架构示意图,如图1所示,系统架构可以包括用户设备101、数据采集设备102、训练设备103、执行设备104、数据库105和内容库106。
其中,数据采集设备102用于从内容库106中读取训练数据,并将读取的训练数据存储至数据库105中。本申请实施例涉及的训练数据包括用户样本的心理特征、用户样本的人机对话数据样本。
训练设备103基于数据库105中维护的训练数据,对机器学习模型进行训练,使得训练后的机器学习模型可以有效地对用户的提问进行答复。训练设备103得到的机器学习模型可以应用到不同的系统或设备中。
另外,参考图1,执行设备104配置有I/O接口107,与外部设备进行数据交互。比如通过I/O接口接收用户设备101发送的提问语句,以及用户相关的文本内容。执行设备104中的计算模块109根据用户相关的文本内容,提取用户的心理特征向量,以及获取用户提问语句的词嵌入向量,并对该心理特征向量和词嵌入向量进行拼接,得到基于心理特征的输入向量,然后使用训练好的人机对话模型,输入该基于心理特征的输入向量,输出针对该提问语句的答复。人机对话模型可以通过I/O接口将相应的结果发送至用户设备101。
其中,用户设备101可以包括手机、平板电脑、笔记本电脑、掌上电脑、车载终端、移动互联网设备(mobile internet device,MID)或其他终端设备。
执行设备104可以为服务器。
示例性的,服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备。该服务器可以是独立的测试服务器,也可以是多个测试服务器所组成的测试服务器集群。
服务器可以是一台或多台。服务器是多台时,存在至少两台服务器用于提供不同的服务,和/或,存在至少两台服务器用于提供相同的服务,比如以负载均衡方式提供同一种服务,本申请实施例对此不加以限定。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器也可以成为区块链的节点。
本实施例中,执行设备104通过网络与用户设备101连接。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobilecommunication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
需要说明的是,图1仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。在一些实施例中,上述数据采集设备102与用户设备101、训练设备103和执行设备104可以为同一个设备。上述数据库105可以分布在一个服务器上也可以分布在多个服务器上,上述的内容库106可以分布在一个服务器上也可以分布在多个服务器上。
图1中的网络架构可以应用于人机对话模型,能够通过融合用户的心理特征,为用于提供满足其心理需求的人性化答复。
本申请实施例可以应用于人工智能的智能医疗领域。具体的,本申请实施例可以用于智能医疗领域中的人机对话系统。
医疗对话作为人机对话领域的重要研究方向,旨在让人们更加便捷地获取医疗健康类信息,广泛应用于心理咨询、养老陪护、医疗问答和疾病预诊断等领域。例如,在当前突如其来的疫情面前,在线医疗咨询变得日趋频繁,也促使医疗对话技术研究变得更为迫切,相关研究在加速医疗信息传播的同时,让人们更便捷地掌握个人健康状况,为改善人类健康水平和提高全民生活质量提供重要的保障,具有重要的理论意义和实用价值。医疗对话中通过识别用户意图,实现识别用户提问中所涉及的疾病名称、症状和身体部位等信息,这些信息能够辅助人机对话系统生成有效而专业的医疗答复,提高医疗对话系统的整体性能。
同时,心理健康日益受到大众的关注和重视。如何在保持身体健康的同时,保持健康的心理状态是提高生活质量的重要保障。但是,当前的人机对话往往忽略用户的心理状态,难以准确而切身的为用户提供符合其心理状态的具有共情能力的答复,例如生成过于官方或刻板的对话答复,导致人机对话的人性化程度较低。例如,在目前的医疗对话中往往忽略用户的心理状态,难以准确而切身的为用户提供符合其心理状态的答复,导致不能切身地为用户提供具有共情能力的答复,甚至对用户的心理健康问题造成误诊或漏诊。
有鉴于此,本申请实施例提供了一种人机对话的方法、装置、电子设备及存储介质,能够基于用户的心理特征对用户的提问进行答复,有助于切身地为用户提供满足用户心理需求的答复,进而提高人机对话的人性化程度。
具体而言,本申请实施例通过用户相关的文本内容,提取用户的心理特征向量,以及对用户输入的语句进行处理,获取该语句的词嵌入向量,然后将该心理特征向量和所述词嵌入向量输入训练好的第一神经网络模型中,得到针对用户输入的语句的第一候选答复;最后,根据该第一候选答复,确定针对用户输入语句的最终答复。
其中,该第一神经网络模型是根据用户样本的心理特征、该用户样本的人机对话数据样本训练得到的。该人机对话数据可以包括的用户提问文本和对应于该提问的答复文本。
在一些实施例中,当该人机对话的方法应用于医疗对话系统时,用于训练该第一神经网络模型的人机对话数据样本可以包括与医生与患者的人机对话数据,该人机对话数据可以与医疗咨询或心理咨询相关,本申请对此不做限定。
因此,本申请实施例通过将用户的心理特征向量和输入语句的词嵌入向量输入至训练好的第一神经网络模型模型中,能够得到融合了用户的心理特征的第一候选答复,进而根据该第一候选答复得到针对用户输入语句的最终答复。由于该第一候选答复融合了用户的心理特征,因此根据该第一候选答复得到的最终答复具有较好的共情能力,并且能够满足用户的心理需求,从而有助于提高人机对话的人性化程度。
示例性的,心理特征可以指基于用户相关的文本内容所挖掘的用户人格特征、抑郁倾向性特征和自杀倾向性特征等中的至少一种,本申请对此不做限定。
作为一个实例,本申请实施例的应用场景之一可以为对话机器人,本申请实施例能够增强对话机器人对话服务的人性化程度。具体的,在对话机器人上可以应用本申请实施例提供的人机对话方法,基于用户的心理特征对用户的提问进行个性化的答复,及时疏导减轻用户的心理负担。例如对话机器人可以根据与用户的历史聊天数据,提取用户的心理特征向量,以及获取用户提问的词嵌入向量,并将用户的心理特征向量和用户提问的词嵌入向量输入神经网络模型,得到候选答复,最后基于该候选答复,确定针对用户提问的最终答复。在该场景中,基于用户心理特征的答复能够及时疏导减轻用户的心理负担,有助于用户在交流的过程中完全的畅心交谈,进而缓解用户的心理健康问题,使得对话机器人提供更加人性化的对话服务。
作为另一个实例,本申请实施例的应用场景之一可以为微医平台,本申请实施例能够在微医平台提供医生对用户的一对一健康答疑服务。具体的,在微医平台可以应用本申请实施例提供的人机对话方法,基于用户的心理特征对用户的提问进行专业性的答复,实现对用户的心理健康支援和答疑。例如微医平台可以在用户反馈自己的心理健康状态时,提取用户的心理特征向量,以及获取用户的提问的词嵌入向量,并将用户的心理特征向量和用户提问的词嵌入向量输入神经网络模型中,得到候选答复,最后基于该候选答复,确定针对用户提问的最终医疗答复,实现自动生成相关心理问题的指导意见或解决方案,降低医生一对一答疑的人力成本和工作量,提高医疗咨询问题的解决效率。
以下,结合附图对本申请实施例提供的人机对话方法进行详细描述。
图2为本申请实施例提供的一种人机对话的方法200的示意流程图。方法200可以由任何具有数据处理能力的电子设备执行。例如,该电子设备可实施为服务器或终端设备,又例如,该电子设备可实施为图1中的计算模块109,本申请对此不做限定。
一些实施例中,电子设备中可以包括(比如部署)机器学习模型,该机器学习模型可以为深度学习模型,神经网络模型,或者其他模型,不作限定。在一些实施例中,该机器学习模型可以为人机对话模型或医疗对话模型等,可以基于用户的心理特征对用户的提问进行答复。
图3是适用本申请实施例的网络架构300的示意图,其中包括心理特征抽取模块301、对话上下文获取模块302、第一神经网络模型303、第二神经网络模型304、选择模块305、人机对话数据源获取模块306和检索模型307。该网络架构300可以称为人机对话系统架构。以下,将结合图3中的网络架构对人机对话的方法200进行描述。
如图2所示,该人机对话的方法200可以包括步骤210至240。
210,根据用户相关的文本内容,提取所述用户的心理特征向量。
这里,用户相关的文本内容,可以包括用户的人机交互的历史对话上下文和用户在社交媒体网络上关联的文本内容中的至少一种。用户在社交媒体网络上关联的文本内容,可以是该用户的社交媒体网络上发布的文本内容,或者可以是该用户阅读或评论的文本内容,或者其他更加多元的用户相关的文本内容,本申请对此不做限定。通过多元化的用户相关的文本内容,可以有助于更加全面的提取用户长期的心理特征,从而更加准确的提取用户的心理特征向量。
在一些实施例中,心理特征可以指基于用户相关的文本内容所挖掘的用户人格特征、抑郁倾向性特征和自杀倾向性特征等中的至少一种,本申请对此不做限定。相应的,心理特征向量包括用户的人格特征向量、抑郁倾向性特征向量和自杀倾向性特征向量中的至少一种。
具体而言,用户的心理状态可以从两个方面刻画,一是相对稳定的用户人格特征,二是持续变化的用户的心理健康状态,比如用户的抑郁倾向性特征和自杀倾向性特征等。因此通过用户人格特征、抑郁倾向性特征或自杀倾向性特征,能够对用户的心理健康状态进行更加丰富和全面的表征。
参见图3,可以通过心理特征抽取模块301,根据用户相关的文本内容提取用户的心理特征向量。
在一些实施例中,在上述心理特征向量包括人格特征向量时,参见图4,具体可以通过以下流程2101至2103获取该人格特征向量。
2101,对于所述文本内容中的第i条消息中的每一个单词,通过第一GRU单元获取所述每个单词的隐藏状态。其中,i为正整数,i小于或等于文本内容中的消息的总数量。
参见图5,示出了心理特征抽取模块301的网络架构的一个具体示例,此时该心理特征抽取模块301可以用于抽取用户的人格特征向量。在图5中以用户相关的文本内容为用户历史对话上下文为例。对于用户历史对话上下文中的第i条消息,可以通过词嵌入层自杀501提取每个单词的词嵌入向量。然后,将提取的每个单词的词嵌入向量输入第一门控循环单元(Gated Recurrent Unit,GRU),如GRU单元502、503和504,获取每个单词的隐藏状态。
示例性的,对于第i条消息中的第j个单词,通过GRU单元获取的对应的隐藏状态可以表示为具体的,GRU单元可以采用如下的编码方式:
其中,rt表示GRU单元的重置门,用于捕捉时间序列里短期的依赖关系,可以从上一个时刻中通过计算筛选出与当前输入有关联的内容;zt表示GRU单元的重置门,用于捕捉时间序列里长期的依赖关系,从当前时刻计算筛选出要保留的内容;ht-1表示上一时刻的隐藏状态,表示当前时刻的记忆状态;{Wz,Wr,W}表示权重矩阵;σ表示激活函数,其激活结果是-1~1之间的数值。
在一些实施例中,词嵌入层501可以为BERT(Bidirectional EncoderRepresentations from Transformers),长短期记忆模型(long-short term memory,LSTM)、卷积神经网络(Convolutional Neural Networks,CNN)或者其他的模型,不作限定。示例性的,通过词嵌入层501提取到的文本向量表示可以为嵌入向量(embedding),本申请对此不做限定。词嵌入层还可以称为词表示层。
示例性的,词嵌入层501可以基于用户相关的文本内容,采用预训练语言模型(如BERT、LSTM、CNN等)将单词的独热编码向量转换成单词的稠密向量。
需要说明的是,在图5中以第一GRU单元为单向GRU单元为例进行描述,但本申请实施例并不限制与此。例如,第一GRU单元还可以为双向GRU单元,或其他GRU单元。
2102,利用第一注意力机制对所述每个单词的隐藏状态进行加权求和,并通过第二GRU单元,得到所述第i条消息的隐藏状态。
继续参见图5,可以在第i条消息的每一个单词通过第一GRU单元(如GRU单元502、503和504)得到的隐藏状态上使用第一注意力机制,如词注意力机制505,得到每一个单词的隐藏状态的权重,并根据该权重对每个单词的隐藏状态进行加权求和。
示例性的,第一注意力机制具体可以进行如下的计算:
其中,表示单词隐藏状态的注意力权重,/>表示单词隐藏状态的归一化权重分数,si表示第i条消息的单词序列/>对应的隐藏状态的加权组合,l表示第i条消息的单词数量,dword表示用于学习词级注意力的词向量,bword为偏置项,Wword表示单词的随机初始化权重矩阵。
对于第i个消息的si,可以通过第二GRU单元(如GRU单元506)获得该第i个消息的隐藏状态。示例性的,第i个消息的隐藏状态hi可以表示为如下公式:
hi=GRU(si) (3)
可以理解的是,对于用户相关的内容文本中的每一条消息,可以基于上述方式,确定每一条消息的隐藏状态。
示例性的,该第二GRU单元可以为单向GRU单元,或双向GRU单元,本申请对此不作限定。
2103,利用第二注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,并通过全连接层得到所述用户的人格特征向量。
继续参见图5,对于用户历史对话上下文中每一条消息的隐藏状态,可以应用第二注意力机制,如消息注意力机制507,得到每一条消息的隐藏状态的权重,并根据该权重对每条消息的隐藏状态进行加权求和。
示例性的,第二注意力机制具体可以进行如下计算:
其中,ei表示消息隐藏状态的注意力权重,βi表示消息隐藏状态的归一化权重分数,u′表示消息{s1,s2,…,sn}对应的隐藏状态的加权组合,n表示用户相关的文本内容的消息数量,emessage表示用于学习消息级注意力的消息向量,bmessage为偏置项,Wmessage表示消息的随机初始化权重矩阵。
继续参见图5,在对每条消息的隐藏状态进行加权求和之后,还可以将加权求和的结果输入全连接层,如全连接层508,得到所述用户的人格特征向量。
示例性的,全连接层的计算公式为u″=W*u′+b,具体展开为如下公式(5):
其中,u′是{u′1,u′2,…,u′n}的集合,为全连接层的输入;u″是{u″1,u″2,…,u″n}的集合,为全连接层的输出;为权重矩阵,/>为偏置项,/>为b的集合形式。此时,全连接层508的输出即为最终获得的人格特征向量,可以表示为U1
在一些实施例中,在上述心理特征向量包括抑郁倾向性特征向量时,参见图6,具体可以通过以下流程2104至2106获取该抑郁倾向性特征向量。
2104,从所述文本内容中提取抑郁倾向性的特征词语。
在一些实施例中,抑郁倾向性的特征词语可以包括社交网络特征词语、用户情绪特征词语、用户抑郁领域特征词语和用户话题选择特征词语中的至少一种。这里,用户的社交网络特征词语、用户情绪特征词语、用户抑郁领域特征词语或用户话题选择特征词语,能够反映用户是否抑郁,或者抑郁程度。
示例性的,用户社交网络特征词语,例如可以包括用户社交网站的粉丝数量、用户发布的微博数量等;用户情绪特征词语,例如可以包括用户发布的文本中所包含的情感词;用户抑郁领域特征词语,例如可以包括用户发布文本中含有抑郁倾向性的词语;用户话题选择特征词语,例如包括用户经常选择参与的话题词。
参见图7,示出了心理特征抽取模块301的网络架构的一个具体示例,此时该心理特征抽取模块301可以用于抽取用户的抑郁倾向性特征向量。在图7中以用户相关的文本内容为用户历史对话上下文为例。对于用户历史对话上下文,可以通过特征词提取单元701提取抑郁倾向性的特征词语,得到社交网络特征、情绪特征、抑郁领域特征、主题特征等相关词。然后,对于社交网络特征、情绪特征、抑郁领域特征、主题特征等相关词,分别可以通过词嵌入层702提取每个单词的词嵌入向量。
2105,通过第三GRU单元获取所述抑郁倾向性的特征词语中每个特征词语的隐藏状态。
继续参见图7,可以将词嵌入层702提取的每个单词的词嵌入向量输入第三GRU单元,如GRU单元703、704、705和706,获取每个单词的隐藏状态。如图7所示,该第三GRU单元,如GRU单元703、704、705和706,可以分别为双向GRU单元,本申请对此不做限定。
示例性的,当第三GRU单元为双向GRU单元时,在t时刻第三GRU单元的输入可以表示为xt,相应的,该第三GRU单元可以输出两个表示向量,分别如下公式(6)所示:
其中,表示当前时刻的前向隐藏状态,/>表示当前时刻的反向隐藏状态。
之后,可以通过拼接层707对和/>进行拼接,得到当前时刻的隐藏状态,如下所示:
在一些实施例中,词嵌入层701可以为BERT、LSTM、CNN或者其他的模型。示例性的,通过词嵌入层701提取到的文本向量表示可以为嵌入向量(embedding),本申请对此不做限定。
需要说明的是,在图7中以第三GRU单元为双向GRU单元为例进行描述,但本申请实施例并不限制与此。例如,第三GRU单元还可以为单向GRU单元,或其他GRU单元。
2106,利用第三注意力机制对所述每个特征词语的隐藏状态进行加权求和,并通过全连接层得到所述用户的抑郁倾向性特征向量。
继续参见图7,可以对每个抑郁倾向性的特征词语的隐藏状态使用第三注意力机制,如注意力机制708,得到每个特征词语的隐藏状态的权重,并根据该权重对每个特征词语的隐藏状态进行加权求和。
示例性的,第三注意力机制具体可以进行如下的计算:
其中,mt表示抑郁倾向性的特征词语的隐藏状态的注意力权重,αt表示抑郁倾向性的特征词语的隐藏状态的归一化权重分数,u′i表示抑郁倾向性的特征词语的隐藏状态的加权组合,n表示特征词语的数量。
继续参见图7,在对抑郁倾向性的特征词语的隐藏状态加权求和后,还可以将加权求和的结果输入全连接层,如全连接层709,得到用户的抑郁倾向性特征向量。
示例性的,全连接层的计算方式可以参见上述公式(5)的描述,这里不再赘述。此时,全连接层709的输出即为最终获得的抑郁倾向性特征向量,可以表示为U2
在一些实施例中,在上述心理特征向量包括自杀倾向性特征向量时,参见图8,具体可以通过以下流程2107至2110获取该自杀倾向性特征向量。
2107,根据所述文本内容中各消息的自杀倾向性的特征词语的词频,对所述文本内容中的消息进行排序。
示例性的,可以根据用户相关的文本内容中各消息中的自杀倾向性的特征词语的词频,按照词频由高至低的顺序,对文本内容中的各消息进行排序。这样,自杀倾向性风险较高的消息排序在靠前位置,从而可以有助于提高发现有自杀倾向性的用户的概率。
参见图9,示出了心理特征抽取模块301的网络架构的另一个具体示例,此时该心理特征抽取模块301可以用于抽取用户的自杀倾向性特征向量。在图9中以用户相关的文本内容为用户历史对话上下文为例,并且排序模块901可以对该用户历史对话上下文中消息按照自杀倾向性的特征词语的词频由高至低排序。例如,排序后的用户历史对话上下文中的第1条消息中包含的自杀倾向性的特征词语的词频最高,第2条消息中包含的自杀倾向性的特征词语的词频次之,以此类推。
2108,对于所述文本内容中的第i条消息中的每一个单词,通过第四GRU单元得到所述每个单词的隐藏状态。其中,i为正整数,且小于或等于文本内容中的消息的总数量。
继续参见图9,对于排序后的用户历史对话上下文中的第i条消息,可以通过词嵌入层902提取每个单词的词嵌入向量。然后,将提取的每个单词的词嵌入向量输入第四GRU单元,如GRU单元903、904和905,获取每个单词的隐藏状态。示例性的,每个单词的隐藏状态可以表示为如下:
其中,表示第i条消息中的第j个单词;/>表示第i条消息中第j个单词的隐藏状态;GRU单元可以用于捕获序列信息和句子的长期依赖性来提取上下文特征。
示例性的,该第四GRU单元可以为单向GRU单元,或双向GRU单元,本申请对此不作限定。
2109,利用第四注意力机制对所述每个单词的隐藏状态进行加权求和,通过第五GRU单元得到所述第i条消息的隐藏状态。
继续参见图9,可以在第i条消息的每一个单词的隐藏状态上使用第四注意力机制,如词注意力机制906,得到每一个单词的隐藏状态的权重,并根据该权重对每个单词的隐藏状态进行加权求和。
示例性的,第四注意力机制具体可以进行如下的计算:
表示单词隐藏状态的注意力权重,/>表示单词隐藏状态的归一化权重分数,si表示第i条消息的单词序列/>对应的隐藏状态的加权组合,m表示第i条消息的单词数量,dword表示用于学习词级注意力的词向量,b为偏置项,Wword表示单词的随机初始化权重矩阵。
对于第i个消息的si,可以通过第五GRU单元(如GRU单元907)获得该第i个消息的隐藏状态。示例性的,第i个消息的隐藏状态hi可以表示为如下公式:
ri=GRU(si) (11)
可以理解的是,对于排序后的用户相关的内容文本中的每一条消息,可以基于上述方式,确定每一条消息的隐藏状态。
示例性的,该第五GRU单元可以为单向GRU单元,或双向GRU单元,本申请对此不作限定。
2110,利用第五注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,通过全连接层得到所述用户的自杀倾向性特征向量。
继续参见图9,对于排序后的用户历史对话上下文中每一条消息的隐藏状态,可以应用第五注意力机制,如消息注意力机制908,得到每一条消息的隐藏状态的权重,并根据该权重对每条消息的隐藏状态进行加权求和。
示例性的,第五注意力机制具体可以进行如下计算:
其中,qi表示消息隐藏状态的注意力权重,αj表示消息隐藏状态的归一化权重分数,u′表示消息{s1,s2,…,sn}对应的隐藏状态的加权组合,m表示用户相关的文本内容的消息数量,vattention表示用于学习消息级注意力的消息向量,b为偏置项,W表示消息的随机初始化权重矩阵。
继续参见图9,在对每条消息的隐藏状态进行加权求和之后,还可以将加权求和的结果输入全连接层,如全连接层509,得到所述用户的自杀倾向性特征向量。
示例性的,全连接层的计算方式可以参见上述公式(5)的描述,这里不再赘述。此时,全连接层909的输出即为最终获得的自杀倾向性特征向量,可以表示为U3
在一些实施例中,当获取了用户的人格特征向量U1、抑郁倾向性特征向量U2和自杀倾向性特征向量U3之后,可以通过对人格特征向量U1、抑郁倾向性特征向量U2和自杀倾向性特征向量U3进行拼接,拼接后的向量可以作为用户的心理特征向量,表示为[U1,U2,U3]T
220,对所述用户输入的语句进行处理,获取所述语句的词嵌入向量。
示例性的,参见图3,可以通过对话上下文获取模型302,对用户输入的语句进行特征提取,得到用户输入语句的词嵌入向量。作为示例,示例性的,对话上下文获取模型302可以包括BERT,LSTM、CNN或者其他的模型,本申请对此不做限定。
230,将所述心理特征向量和所述词嵌入向量输入训练好的第一神经网络模型中,得到针对所述语句的第一候选答复。其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的。
继续参见图3,第一神经网络模型303可以根据输入的心理特征向量和词嵌入向量,得到候选答复#1。
在一些实施例中,第一神经网络模型的训练样本集包括用户样本的心理特征,用户样本的人机对话数据样本。其中,人机对话数据样本包括用户样本的输入语句,以及该输入语句对应的真实标签。其中,输入语句对应的真实标签可以为用户与医生的历史对话上下文中用户输入语句对应的答复语句。
示例性的,用户样本的心理特征,以及获取用户样本的心理特征向量的过程可以参见上文中的描述,这里不再赘述。
示例性的,用户样本的人机对话数据样本可以包括医疗健康问答社区网站上,用户与医生的历史对话上下文。例如,可以通过爬虫技术爬取相关网站上的医患问答数据,得到用户样本的人机对话数据样本。
作为具体的例子,可以对科室中含有“精神”或“心理”字样的对话内容进行数据筛选,保留医患对话轮次不小于2次的对话,以使训练数据的质量尽可能较优。另外,最终得到筛选处理后的数据样本可以保存为json格式,存储的数据样本字段可以包括对话编号、医生科室、疾病描述、对话内容和对话轮次中的至少一种,本申请对此不做限定。
在一些实施例中,第一神经网络模型可以包括编码器-解码器(encoder-decoder)结构,例如Seq2Seq模型,本申请对此不作限定。示例性的,该编码器可以为循环神经网络(Recurrent Neural Network,RNN)编码器,该解码器可以为RNN解码器。
在一些实施例中,可以将用户样本的心理特征向量和输入语句的词嵌入向量输入第一神经网络模型中的编码器,以对用户样本的心理特征向量和输入语句的词嵌入向量进行编码。然后,第一神经网络模型中的解码器可以根据编码器得到的隐藏状态和上一时刻目标单词的词嵌入向量进行解码,得到当前时刻的隐藏状态。
作为一种可能的实现方式,可以对用户样本的心理特征向量和输入语句的词嵌入向量进行拼接,得到用户样本的基于心理特征的输入向量,并将该用户样本的基于心理特征的输入向量作为第一神经网络模型中的编码器的输入部分。
参见图10,示出了融合注意力机制的Seq2Seq模型的一个示意图,该Seq2Seq模型包括RNN编码器和RNN解码器。如图10所示,可以将对用户样本的心理特征向量和输入语句的词嵌入向量进行拼接得到的输入词嵌入向量,输入RRN编码器,通过该RNN编码器生成一个隐藏状态ht。生成该隐藏状态ht的计算如下:
ht=RNNencoder(ui,ht-1) (13)
其中,ht表示编码器在时间点t的隐藏状态,ui表示用户样本的基于心理特征的输入向量的编码信息,ht-1表示编码器在时间点t-1的隐藏状态。
继续参见图10,对于RNN解码器中的第一个时间点,RNN解码器接收目标句子单词(即目标语句对应的真实标签)的词嵌入向量和编码器在上一个时间节点的隐藏状态,并产生一个当前的隐藏状态。
对于RNN解码器中的第二个以及之后的时间点,RNN解码器接收目标句子单词的词嵌入商量和解码器上一个时间节点的上下文向量,并产生一个当前的隐藏状态,计算公式如下:
st=RNNdecoder(yi,ct-1) (14)
其中,st表示解码器在时间t的隐藏状态,yi表示目标句子单词的词嵌入向量,ct-1表示解码器上一个时间节点t-1的上下文向量。
然后,继续参见图10,注意力机制可以将RNN编码器得到的隐藏状态和RNN解码器得到的隐藏状态,通过如下公式计算得到一个分数eij
eij=score(si,hj) (15)
其中,si表示解码器获得的隐藏状态,hj表示编码器得到的隐藏状态。
示例性的,score函数可以使用点积的形式计算eij,即:
score(si,hj)=si T·hj
之后,可以根据上述公式(15)中的分数,继续利用注意力机制得到对应的上下文向量ci,计算公式如下:
其中,αij表示编码器中对每一个隐藏状态的加权平均。
继续参见图10,在下一个时间点,将得到的编码器的上下文向量ci作为RNN解码器的输入,应用上文中的公式(14),得到解码器的下一个隐藏状态。可以依次重复上述过程,直至解码完成得到解码器的每一个时刻的隐藏状态。
然后,可以将上下文向量ci和解码器的隐藏状态st进行拼接,计算得到注意力隐藏状态
其中,ct表示t时刻的上下文向量,st表示解码器在t时刻的隐藏状态,W表示权重矩阵。
最后,可以将注意力隐藏状态输入到全连层,之后经过激活函数softmax,归一化得到预测概率p,如下公式所示:
在训练第一神经网络模型的过程中,可以根据该预测概率p与目标语句的真实标签,对第一神经网络模型的参数进行更新,得到已训练的第一神经网络模型。
在第一神经网络模型训练完成之后,可以将用户的心理特征向量和用户输入语句的词嵌入向量输入已训练的第一神经网络模型,得到针对该用户输入语句的第一候选答复,例如可以记为R1。这里,第一候选答复是基于用户的心理特征向量生成的,融合了用户的心理状态,以及用户的心理活动变化。
240,根据所述第一候选答复,确定针对所述语句的最终答复。
在一些实施例中,可以将该第一候选答复,作为针对用户输入语句的最终答复。继续参见图3,选择模块305可以将候选答复#1作为针对用户输入语句的最终答复。
因此,本申请实施例通过将用户的心理特征向量和输入语句的词嵌入向量输入至训练好的第一神经网络模型模型中,能够得到融合了用户的心理特征的第一候选答复,进而根据该第一候选答复得到针对用户输入语句的最终答复。由于该第一候选答复融合了用户的心理特征,因此根据该第一候选答复得到的最终答复具有较好的共情能力,并且能够满足用户的心理需求,从而有助于提高人机对话的人性化程度。
在一些可选的实施例中,参见图11,还可以执行以下步骤231和241,得到针对用户输入语句的最终答复。
231,将用户输入语句的词嵌入向量输入训练好的第二神经网络模型中,得到针对该语句的第二候选答复,其中,所述第二神经网络模型使用与教师模型相同的温度参数,并根据所述用户样本的人机对话数据样本、所述用户样本在教师模型输出的软目标进行训练得到的,所述教师模型是根据所述用户样本的人机对话数据样本训练得到的。
继续参见图3,第二神经网络模型304可以根据输入的用户输入语句的词嵌入向量,得到候选答复#2。
具体而言,第二神经网络模型可以基于知识蒸馏的方式,对用户输入语句生成答复。具有编码器-解码器架构的神经网络模型,比如Seq2Seq模型,是单向生成模型,受限于单向生成能力的约束。然而,BERT具有双向编码能力,能够很好的解决受限于单向生成能力的问题。但是,单纯的BERT模型不利于执行生成任务,于是知识蒸馏的方法被提出来。
知识蒸馏的目的是强迫学生模型(比如Seq2Seq模型)的某些中间层的网络响应逼近教师模型(比如BERT模型)对应的中间层的响应,即教师模型将特征知识转移给学生模型。教师模型经过预训练之后,输出的是经过softmax的归一化的软目标。使用教师模型的目的是为了使得学生模型的经过softmax归一化后的输出与教师模型的输出充分接近。
示例性的,教师模型可以对具有双向编码能力的BERT进行微调得到,学生模型可以为Seq2Seq模型。
在对BERT进行微调的过程中,可以将源语句和目标语句的序列对连接起来,得到(X,Y),其中,X表示源语句,Y表示目标语句。然后,随机掩盖Y中一部分(比如15%)的词组或单词Ym,通过训练实现目标概率其中,ym为掩码词,属于Ym,Yu为未掩盖的词组集。
在知识蒸馏的过程中,首先对教师模型进行训练,然后使用训练好的教师模型对学生模型进行训练。其中,训练教师模型和学习模型时所采用的人机对话数据样本可以参见上文中的描述,这里不再赘述。
在对教师模型训练的过程中,可以使用序列集和/>来估计掩码词ym的概率。其中/>表示当前时刻t之前的时间点的未掩盖的词组或单词,/>表示当前时刻t之后的时间点的未掩盖的词组或单词,/>和/>属于Yu,N表示目标语句中的单词数量。教师模型的ym的预测概率为/>教师模型输出的预测结果即为对预测概率进行softmaxsoftmax的归一化计算得到的软目标(logits)。
对学生模型进行训练的过程中,可以使用与教师模型相同的温度(temperature)参数,使其输出与教师模型输出的软目标比较,不断的逼近教师模型输出的软目标。在学习模型的输出与教师模型输出的软目标逼近的过程中,可以采用反向梯度下降算法,不断地对学生模型的参数进行更新。
以教师模型为BERT,学生模型为Seq2Seq模型为例,为了使得Seq2Seq模型提供的单词概率与BERT模型提供的单词概率相匹配,Seq2Seq模型在知识蒸馏的过程中可以按照以下损失函数进行训练:
lbidi(θ)=-∑ω∈V[Pφ(yt=ω|Yu,X)·logPθ(yt=ω|y1:t-1,X)] (19)
其中,Pφ(yt)是由BERT模型估计的软目标,其学习参数为φ,φ是固定的;V表示输出词汇。
进一步的,为了提高模型预测的准确程度,学生模型,即Seq2Seq模型可以按照以下复合目标函数l(θ)进行训练:
l(θ)=αlbidi(θ)+(1-α)lxe(θ) (20)
其中,α为超参数,lxe(θ)为原始的Seq2Seq模型的损失函数。示例性的,lxe(θ)可以如下公式所示:
在第二神经网络模型训练完成之后,可以将用户输入语句的词嵌入向量输入已训练的第二神经网络模型,得到针对该用户输入语句的第二候选答复,例如可以记为R2
241,根据第一候选答复和第二候选答复,确定针对用户输入语句的最终答复。
继续参见图3,选择模块305可以根据候选答复#1和候选答复#2,确定针对用户输入语句的最终答复。示例性的,可以确定第一候选答复和第二候选答复的选择指标分数,并将选择指标分数较高的候选答复作为最终的答复。选择指标分数,例如可以为Distinct评分,本申请对此不做限定。
在一些实施例中,可以根据第二候选答复,确定针对用户输入的语句的最终答复。可选的,此时可以不执行确定第一候选答复的步骤或流程。
因此,本申请实施例可以通过知识蒸馏,将教师模型学习到的指示融入到针对用户输入语句的对话生成模型(即学生模型)中,使得对话生成模型能够更好的训练数据,提高针对用户输入语句生成答复文本的准确率,因此本申请实施例基于知识蒸馏训练得到的对话生成模型相比于直接训练单个模型而言泛化效果更佳。
在一些可选的实施例中,参见图12,还可以执行以下步骤232、233、234和242,得到针对用户输入语句的最终答复。
232,获取人机对话数据集。
示例性的,人机对话数据集可以包括医疗健康问答社区网站上,用户与医生的历史对话上下文。参见图3,医疗对话数据源获取模型306可以获取该人机对话数据集。
233,根据用户输入的语句,获取用户的心理词条。
这里,用户的心理词条,即能够反映用户的心理状态的词组或单词,如难受、不开心、郁闷等词条。示例性的,可以对用户输入的语句的文本内容进行特征词提取,得到用户的心理词条。
234,基于该心理词条在该人机对话数据集中的频率,确定用户输入的语句与人机对话数据集中备选答复的相似度,进一步根据该相似度在备选答复中确定针对用户输入语句的第三候选答复。
具体的,可以采用经典检索模型,根据用户的心理词条,从人机对话数据集中检索得到针对用户输入语句的第三候选答复。继续参见图3,检索模型307可以根据用户输入的语句中的心理词条,从人机对话数据集中检索得到候选答复#3。
具体的,可以基于上述人机对话数据集,从该数据集中计算用户提问中该心理词条的频率,记为TFq,计算公式可以如下:
以及基于人机对话数据集,从该数据集中计算相关回答中该心理词条的频率,记为TFa,计算公式可以如下:
同时,可以确定包含心理词条的问题在该人机对话数据集的所有问答对中的出现频率的倒数,记为IDFq,计算公式可以如下:
以及还可以确定包含心理词条的问题在该人机对话数据集的所有问答对中的出现频率的倒数,记为IDFa,计算公式可以如下:
然后,可以计算TFq与IDFq的乘积,作为用户提问的表示向量,计算TFa与IDFa的乘积,作为回答的表示向量。用户提问的表示向量和回答的表示向量可以作为用户提问和回答的表示向量组,用于计算用户提问和回答的相似度。其中,用户提问的表示向量和回答的表示向量越接近则表明用户提问和回答的相似度越高。例如,可以通过用户提问的表示向量和回答的表示向量的差值作为相似度判断的标准,即二者的差值越小则二者的相似度越高。
在得到用户提问和回答的相似度后,可以基于该相似度,对人机对话数据集中与用户提问匹配的所有问答对进行排序。这里,该排序的问答对中的回答可以作为备选答复。对于用户的提问,可以计算得到一个关于该提问的表示向量,即该提问的心理词条的TFq与IDFq的乘积,此时可以在已经排序的问答对中选择一个与该提问的表示向量相似度最高的备选答复,作为针对用户输入语句的第三候选答复,例如可以记为R3,即R3={Q,A}={(Q1,A1),(Q2,A2),…,(Qm,Am)},其中(Qm,Am)表示匹配的问答对。
242,根据第一候选答复、第二候选答复和第三候选答复,确定所述最终答复。
继续参见图3,选择模块305可以根据候选答复#1、候选答复#2和候选答复#3,作为针对用户输入语句的最终答复。示例性的,可以确定第一候选答复、第二候选答复和第三候选答复的选择指标分数,并将选择指标分数较高的候选答复作为最终的答复。选择指标分数,例如可以为Distinct评分,本申请对此不做限定。
在一些实施例中,可以根据第三候选答复,确定针对用户输入的语句的最终答复。可选的,此时可以不执行确定第一候选答复或第二候选答复的步骤或流程。
在一些实施例中,可以根据第一候选答复和第三候选答复,确定针对用户输入的语句的最终答复。可选的,此时可以不执行确定第二候选答复的步骤或流程。
因此,本申请实施例通过在对话生成模型中融合检索式对话生成模型,能够有助于提升对话系统的整体性能,在辅助提高人机对话的准确性的同时,还能够辅助提高人机对话的人性化程度,从而有助于提高人机对话模型的答复质量。
另外,本申请实施例的硬件可以采用具有图形处理器(Graphics ProcessingUnit,GPU)的电子计算机,该计算机可以包含一个或多个中央处理器(Central ProcessingUnit,CPU)、一个或多个GPU、随机存取存储器(random access memory,RAM)或高斯缓存存储器(cache),以及必要的输入输出设备等。
以上结合附图详细描述了本申请的具体实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。应理解这些序号在适当情况下可以互换,以便描述的本申请的实施例能够以除了在图示或描述的那些以外的顺序实施。
上文详细描述了本申请的方法实施例,下文结合图13至图14,详细描述本申请的装置实施例。
图13是本申请实施例提供的人机对话的装置1000的示意性框图。如图13所示,该人机对话的装置1000可包括提取单元1010、获取单元1020、第一神经网络模型1030和确定单元1040。
提取单元1010,用于根据用户相关的文本内容,提取所述用户的心理特征向量;
获取单元1020,用于对所述用户输入的语句进行处理,获取所述语句的词嵌入向量;
第一神经网络模型1030,用于输入所述心理特征向量和所述词嵌入向量,得到针对所述语句的第一候选答复;其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的;
确定单元1040,用于根据所述第一候选答复,确定针对所述语句的最终答复。
在一些实施例中,装置1000还包括第二神经网络模型,用于输入所述词嵌入向量,得到针对所述语句的第二候选答复;其中,所述第二神经网络模型使用与教师模型相同的温度参数,并根据所述用户样本的人机对话数据样本、所述用户样本在教师模型输出的软目标进行训练得到的,所述教师模型是根据所述用户样本的人机对话数据样本训练得到的;
其中,所述确定单元1040具体用于:
根据所述第一候选答复和所述第二候选答复,确定所述最终答复。
在一些实施例中,还包括检索模型,用于:
获取人机对话数据集;
根据所述用户输入的语句,获取心理词条;
基于所述心理词条在所述人机对话数据集中的频率,确定所述语句与所述人机对话数据集中备选答复的相似度,并根据所述相似度在所述备选答复中确定针对所述语句的第三候选答复;
其中,所述确定单元1040具体用于:
根据所述第一候选答复、所述第二候选答复和所述第三候选答复,确定所述最终答复。
在一些实施例中,所述心理特征向量包括所述用户的人格特征向量、抑郁倾向性特征向量和自杀倾向特征向量中的至少一种。
在一些实施例中,在所述心理特征向量包括所述人格特征向量时,所述提取单元1010具体用于:
对于所述文本内容中的第i条消息中的每一个单词,通过第一GRU单元获取所述每个单词的隐藏状态,其中i为正整数;
利用第一注意力机制对所述每个单词的隐藏状态进行加权求和,并通过第二GRU单元得到所述第i条消息的隐藏状态;
利用第二注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,并通过全连接层得到所述用户的人格特征向量。
在一些实施例中,在所述心理特征向量包括所述抑郁倾向性特征向量时,所述提取单元1010具体用于:
从所述文本内容中提取抑郁倾向性的特征词语;
通过第三GRU单元获取所述抑郁倾向性的特征词语中每个特征词语的隐藏状态;
利用第三注意力机制对所述每个特征词语的隐藏状态进行加权求和,并通过全连接层得到所述用户的抑郁倾向性特征向量。
在一些实施例中,所述抑郁倾向性的特征词语包括以下至少一种:
社交网络特征词语、用户情绪特征词语、用户抑郁领域特征词语和用户话题选择特征词语。
在一些实施例中,在所述心理特征向量包括所述自杀倾向特征向量时,所述提取单元1010具体用于:
根据所述文本内容中各消息的自杀倾向性的特征词语的词频,对所述文本内容中的消息进行排序;
对于所述文本内容中的第i条消息中的每一个单词,通过第四GRU单元得到所述每个单词的隐藏状态;
利用第四注意力机制对所述每个单词的隐藏状态进行加权求和,通过第五GRU单元得到所述第i条消息的隐藏状态;
利用第五注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,通过全连接层得到所述用户的自杀倾向性特征向量。
在一些实施例中,所述第一神经网络模型包括编码器-解码器结构。
在一些实施例中,所述人机对话数据样本包括医生和患者的人机对话数据。
在一些实施例中,所述用户相关的文本内容包括所述用户的人机交互的历史对话上下文和所述用户在社交媒体网络上关联的文本内容中的至少一种。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,在该实施例中人机对话的装置1000可以对应于执行本申请实施例的方法200的相应主体,并且装置1000中的各个模块的前述和其它操作和/或功能分别为了实现上文中的方法200中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置和系统。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
如图14是本申请实施例提供的电子设备1100的示意性框图。
如图14所示,该电子设备1100可包括:
存储器1110和处理器1120,该存储器1110用于存储计算机程序,并将该程序代码传输给该处理器1120。换言之,该处理器1120可以从存储器1110中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器1120可用于根据该计算机程序中的指令执行上述方法200中的步骤。
在本申请的一些实施例中,该处理器1120可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器1110包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1110中,并由该处理器1120执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备1100中的执行过程。
可选的,如图14所示,该电子设备1100还可包括:收发器1130,该收发器1130可连接至该处理器1120或存储器1110。其中,处理器1120可以控制该收发器1130与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器1130可以包括发射机和接收机。收发器1130还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备1100中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
根据本申请的一个方面,提供了一种通信装置,包括处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行所述存储器中存储的计算机程序,使得所述编码器执行上述方法实施例的方法。
根据本申请的一个方面,提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
根据本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例的方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的具体实施方式中,可能涉及到用户信息等相关的数据。当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。

Claims (15)

1.一种人机对话的方法,其特征在于,包括:
根据用户相关的文本内容,提取所述用户的心理特征向量;
对所述用户输入的语句进行处理,获取所述语句的词嵌入向量;
将所述心理特征向量和所述词嵌入向量输入训练好的第一神经网络模型中,得到针对所述语句的第一候选答复;其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的;
根据所述第一候选答复,确定针对所述语句的最终答复。
2.根据权利要求1所述的方法,其特征在于,还包括:
将所述词嵌入向量输入训练好的第二神经网络模型中,得到针对所述语句的第二候选答复;其中,所述第二神经网络模型使用与教师模型相同的温度参数,并根据所述用户样本的人机对话数据样本、所述用户样本在教师模型输出的软目标进行训练得到的,所述教师模型是根据所述用户样本的人机对话数据样本训练得到的;
其中,所述根据所述第一候选答复,确定针对所述语句的最终答复,包括:
根据所述第一候选答复和所述第二候选答复,确定所述最终答复。
3.根据权利要求2所述的方法,其特征在于,还包括:
获取人机对话数据集;
根据所述用户输入的语句,获取心理词条;
基于所述心理词条在所述人机对话数据集中的频率,确定所述语句与所述人机对话数据集中备选答复的相似度,并根据所述相似度在所述备选答复中确定针对所述语句的第三候选答复;
其中,根据所述第一候选答复和所述第二候选答复,确定所述最终答复,包括:
根据所述第一候选答复、所述第二候选答复和所述第三候选答复,确定所述最终答复。
4.根据权利要求1所述的方法,其特征在于,所述心理特征向量包括所述用户的人格特征向量、抑郁倾向性特征向量和自杀倾向特征向量中的至少一种。
5.根据权利要求4所述的方法,在所述心理特征向量包括所述人格特征向量时,所述根据用户相关的文本内容,提取所述用户的心理特征向量,包括:
对于所述文本内容中的第i条消息中的每一个单词,通过第一GRU单元获取所述每个单词的隐藏状态,其中i为正整数;
利用第一注意力机制对所述每个单词的隐藏状态进行加权求和,并通过第二GRU单元得到所述第i条消息的隐藏状态;
利用第二注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,并通过全连接层得到所述用户的人格特征向量。
6.根据权利要求4所述的方法,其特征在于,在所述心理特征向量包括所述抑郁倾向性特征向量时,所述根据用户相关的文本内容,提取所述用户的心理特征向量,包括:
从所述文本内容中提取抑郁倾向性的特征词语;
通过第三GRU单元获取所述抑郁倾向性的特征词语中每个特征词语的隐藏状态;
利用第三注意力机制对所述每个特征词语的隐藏状态进行加权求和,并通过全连接层得到所述用户的抑郁倾向性特征向量。
7.根据权利要求6所述的方法,其特征在于,所述抑郁倾向性的特征词语包括以下至少一种:
社交网络特征词语、用户情绪特征词语、用户抑郁领域特征词语和用户话题选择特征词语。
8.根据权利要求4所述的方法,其特征在于,在所述心理特征向量包括所述自杀倾向特征向量时,所述根据用户相关的文本内容,提取所述用户的心理特征向量,包括:
根据所述文本内容中各消息的自杀倾向性的特征词语的词频,对所述文本内容中的消息进行排序;
对于所述文本内容中的第i条消息中的每一个单词,通过第四GRU单元得到所述每个单词的隐藏状态,其中i为正整数;
利用第四注意力机制对所述每个单词的隐藏状态进行加权求和,通过第五GRU单元得到所述第i条消息的隐藏状态;
利用第五注意力机制对所述文本内容的每条消息的隐藏状态进行加权求和,通过全连接层得到所述用户的自杀倾向性特征向量。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述第一神经网络模型包括编码器-解码器结构。
10.根据权利要求1-8任一项所述的方法,其特征在于,所述人机对话数据样本包括医生和患者的人机对话数据。
11.根据权利要求1-8任一项所述的方法,其特征在于,所述用户相关的文本内容包括所述用户的人机交互的历史对话上下文和所述用户在社交媒体网络上关联的文本内容中的至少一种。
12.一种人机对话的装置,其特征在于,包括:
提取单元,用于根据用户相关的文本内容,提取所述用户的心理特征向量;
获取单元,用于对所述用户输入的语句进行处理,获取所述语句的词嵌入向量;
第一神经网络模型,用于输入所述心理特征向量和所述词嵌入向量,得到针对所述语句的第一候选答复;其中,所述第一神经网络模型是根据用户样本的心理特征、所述用户样本的人机对话数据样本训练得到的;
确定单元,用于根据所述第一候选答复,确定针对所述语句的最终答复。
13.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有指令,所述处理器执行所述指令时,使得所述处理器执行权利要求1-11任一项所述的方法。
14.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于执行权利要求1-11中任一项所述的方法。
15.一种计算机程序产品,其特征在于,包括计算机程序代码,当所述计算机程序代码被电子设备运行时,使得所述电子设备执行权利要求1-11中任一项所述的方法。
CN202210693162.2A 2022-06-17 2022-06-17 人机对话的方法、装置、电子设备及存储介质 Pending CN117033565A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210693162.2A CN117033565A (zh) 2022-06-17 2022-06-17 人机对话的方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210693162.2A CN117033565A (zh) 2022-06-17 2022-06-17 人机对话的方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117033565A true CN117033565A (zh) 2023-11-10

Family

ID=88637803

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210693162.2A Pending CN117033565A (zh) 2022-06-17 2022-06-17 人机对话的方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117033565A (zh)

Similar Documents

Publication Publication Date Title
CN112131366B (zh) 训练文本分类模型及文本分类的方法、装置及存储介质
Luo et al. A critical review of state‐of‐the‐art chatbot designs and applications
Ayanouz et al. A smart chatbot architecture based NLP and machine learning for health care assistance
CN112487182B (zh) 文本处理模型的训练方法、文本处理方法及装置
CN111897941B (zh) 对话生成方法、网络训练方法、装置、存储介质及设备
CN110364251B (zh) 一种基于机器阅读理解的智能交互导诊咨询系统
CN112069302B (zh) 会话意图识别模型的训练方法、会话意图识别方法及装置
CN112214591B (zh) 一种对话预测的方法及装置
KR101971582B1 (ko) 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치
US20200183928A1 (en) System and Method for Rule-Based Conversational User Interface
CN113672708A (zh) 语言模型训练方法、问答对生成方法、装置及设备
CN110597968A (zh) 一种回复选择方法及装置
CN114648032B (zh) 语义理解模型的训练方法、装置和计算机设备
CN113705191A (zh) 样本语句的生成方法、装置、设备及存储介质
CN111145914B (zh) 一种确定肺癌临床病种库文本实体的方法及装置
CN114168707A (zh) 一种面向推荐的情绪型对话方法
CN114118451A (zh) 智能交互模型的训练方法、交互方法、装置及设备
CN113761156A (zh) 人机交互对话的数据处理方法、装置、介质及电子设备
Yadav et al. A novel automated depression detection technique using text transcript
Kim et al. Constructing novel datasets for intent detection and ner in a korean healthcare advice system: guidelines and empirical results
CN110781666A (zh) 基于生成式对抗网络的自然语言处理文本建模
CN116662522B (zh) 问题答案推荐方法、存储介质和电子设备
CN111046157B (zh) 一种基于平衡分布的通用英文人机对话生成方法和系统
CN117438047A (zh) 心理咨询模型训练和心理咨询处理方法、装置及电子设备
CN117009456A (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