一种自然语义理解的方法、装置、计算设备
技术领域
本发明实施例涉及人工智能领域,特别是涉及一种自然语义理解的方法、装置、计算设备及存储介质。
背景技术
自然语义理解是使用自然语言与智能终端进行通讯的技术。自然语义理解***需要处理大规模的真实文本。本发明的发明人在实现本发明的过程中,发现:在智能智能终端进行自然语言理解需要的运算量很大,影响自然语义理解的效率。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种自然语义理解的方法、装置、计算设备及计算机存储介质。
为解决上述技术问题,本发明实施例采用的一个技术方案是:提供一种自然语义理解的方法,包括:
接收智能终端发送的问题语句;
使用预设分词算法将所述问题语句拆分为多个词语;
在预设问答库中搜索包含至少一个所述词语的语句;
计算所述语句和所述智能终端发送的问题语句的相似度,得到相似度值;
选择所述相似度最高的语句对应的答复发送至所述智能终端。
其中,所述方法还包括:判断所述相似度最高的语句对应的相似度值是否小于预设第一阈值;
若所述相似度最高的语句对应的相似度值小于预设第一阈值,则将信心指数减少预设第一数值;
若所述相似度最高的语句对应的相似度值不小于预设第一阈值,判断所述相似度最高的语句对应的相似度值是否大于或等于预设第二阈值;
若所述相似度最高的语句对应的相似度值大于或等于预设第二阈值,则将信心指数增加预设第二数值;
判断所述信心指数是否小于预设第三阈值;
若所述信心指数小于预设第三阈值,触发人工介入算法。
其中,所述人工介入算法包括:
搜索所述智能终端发送的问题语句的答案;
在搜索到所述问题语句的答案时,将所述问题语句及所述问题语句的答案存入所述预设问答库中。
其中,若所述相似度最高的语句对应的相似度值小于预设第一阈值,则将所述相似度最高的语句对应的答复以预设警示方式发送至所述智能终端。
本发明采用的另一个技术方案是提供一种自然语义理解装置,包括:
接收模块:用于接收智能终端发送的问题语句;
拆分模块:用于使用预设分词算法将所述问题语句拆分为多个词语;
搜索模块:用于在预设问答库中搜索包含至少一个所述词语的语句;
计算模块:用于计算所述语句和所述智能终端发送的问题语句的相似度,得到相似度值;
发送模块:用于选择所述相似度最高的语句对应的答复发送至所述智能终端。
其中,所述装置还包括:第一判断模块,用于判断所述相似度最高的语句对应的相似度值是否小于预设第一阈值;第一计算模块,用于当所述相似度最高的语句对应的相似度值小于预设第一阈值时,将信心指数减少预设第一数值;第二判断模块,用于当所述相似度最高的语句对应的相似度值不小于预设第一阈值时,判断所述相似度最高的语句对应的相似度值是大于或等于预设第二阈值;第二计算模块,用于当所述相似度最高的语句对应的相似度值大于或等于预设第二阈值时,将信心指数增加预设第二数值;第三判断模块,用于判断所述信心指数是否小于预设第三阈值;触发模块,用于当所述信心指数小于预设第三阈值时,触发人工介入算法。
其中,所述人工介入算法包括:搜索所述智能终端发送的问题语句的答案;在搜索到所述问题语句的答案时,将所述问题语句及所述问题语句的答案存入所述预设问答库中。
其中,若所述第一判断模块结果为相似度最高的语句对应的相似度值小于预设第一阈值,则将所述相似度最高的语句对应的答复以预设警示方式发送至所述智能终端。
本发明采用的再一技术方案是提供一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一条执行指令,所述可执行指令使所述处理器执行一种自然语义理解的方法对应的操作。
本发明采用的又一技术方案是提供一种计算机存储介质,所述存储介质中存储有至少一条执行指令,所述可执行指令使处理器执行一种自然语义理解的方法对应的操作。
本发明实施例的有益效果是:区别于现有技术的情况,本发明实施例可以实现将智能终端的自然语义理解工作转移至云端服务器执行,减少了智能终端的工作量,提高了工作效率;此外,通过设置信心指数来评价对所述智能终端的自然语义理解程度,并当信心指数低时,执行人工介入算法以修改预设问答库,提高了语义理解的效率和准确度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施例。
附图说明
通过阅读下文优选实施例的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施例的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例的一种自然语义理解的方法流程图;
图2是本发明另一实施例的一种自然语义理解的方法示意图;
图3是本发明实施例的一种自然语义理解装置的功能框图;
图4是本发明实施例的一种计算设备的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1为本发明一种自然语义理解的方法实施例的流程图。如图1所示,该方法包括以下步骤:
步骤S101:接收智能终端发送的问题语句。
在本步骤中,所述智能终端发送的问题语句,可以是语音形式,也可以是文字形式,当所述智能终端发送的问题语句是语音形式时,使用预设文本转换算法将所述问题语句转换成文字形式。
步骤S102:使用预设分词算法将所述问题语句拆分为多个词语。
在本步骤中,所述预设分词算法是现有技术,在进行问题语句拆分时,将所述语句按照词语在句子中的成分拆分成几个词语的组合,如:当所述问题语句为“今天吃什么?”,在进行拆分时,所述问题语句会拆分成“今天”、“吃”及“什么”三个词语的组合。
步骤S103:在预设问答库中搜索包含至少一个所述词语的语句。
在本步骤,所述预设问答库中存储语句的形式是一问一答的形式,即每一个问题后面有相应问题的答案,所述在预设问答库中搜索,具体将所述词语与所述预设问答库中的问题进行匹配搜索,如,“今天吃什么?”拆分后的词语为“今天”、“吃”及“什么”三个词语的组合,在进行搜索时,将三个词语作为查找内容,分别与所述预设问答库中的问题进行匹配。
步骤S104:计算所述语句和所述智能终端发送的问题语句的相似度,得到相似度值。
在本步骤中,当在所述预设问答库中匹配到查找词语之后,将所述查找到的词语所在的语句与所述智能终端发送的问题语句计算相似度,计算算法为现有技术,在此不做限定。如,所述智能终端发送的问题“今天吃什么?”,通过与所述预设问答库中的问题匹配后,匹配到的其中一条语句为“午饭吃什么”,则通过词语匹配度作为相似度计算算法时,所述智能终端发送的问题与所述匹配到的语句之间共重合两个词,即“吃”和“什么”,所述语句中的分词总量为三个词,因此,相似度值为67%。
步骤S105:选择所述相似度最高的语句对应的答复发送至所述智能终端。
在本步骤中,将所述预设问答库中检索到的每一条语句与所述智能终端发送的问题语句计算相似度,并认为所述相似度最高的一条语句与所述智能终端发送的问题语句最接近,可以理解的是,当用户在所述智能终端输入一条问题语句后,希望得到是所述输入问题语句对应的答复,因此,将所述预设问答库中相似度最高的语句对应的答复发送至所述智能终端。
本发明实施例通过将智能终端用户输入的问题传送至云端服务器进行处理,并将云端服务器检索到的所述用户输入的问题对应的答案发送至智能终端,由此可见,利用本发明,减少了智能终端的工作量,提高了智能终端处理问题的工作效率。
图2为本发明一种自然语义理解的方法另一实施例的流程图。与上一实施例相比,该实施例还包括以下步骤:
步骤S201:判断所述相似度最高的语句对应的相似度值是否小于预设第一阈值,若是,执行步骤S202,若否,执行步骤S203。
在本步骤,所述预设第一阈值是人为设定的,用以判断所述相似度的可接受最低值,如,将所述预设第一阈值设置为50%。
步骤S202:将信心指数减少预设第一数值。
在本步骤中,当所述相似度最高的语句对应的相似度值小于预设第一阈值时,说明所述相似度最高的语句与智能终端发送的问题语句之间的相似度低,云端服务器没有信心识别,因此将信心指数减少预设第一数值,所述预设第一数值是人为设定的,如,将所述预设第一数值设置为25%。当所述相似度最高的语句对应的相似度值低于所述预设第一阈值50%时,则将信心指数减少25%。所述信心指数有一个初值,在每次判断相似度之后,将得到的信心指数作为新的信心指数初值。如,信心指数初值为100%,对于智能终端发送的第一个问题,得到的相似度最高值为40%,低于第一阈值50%,则将信心指数减少25%,得到新的信心指数75%。在接收到第二个问题时,若得到的相似度仍低于第一阈值50%,则在新的信心指数75%的基础上减少25%,以此类推。
值得说明的是,当当所述相似度最高的语句对应的相似度值小于预设第一阈值时,在向所述智能终端返回所述相似度最高的语句对应的答复时,以警示方式显示,以告知用户所述答复准确性低,所述警示方式可以是任意可区分准确性的标志,如,将非警示的回复语句以白底黑字的文字显示,警示性的语句以红底黑字的文字显示。
步骤S203:判断所述相似度最高的语句对应的相似度值是否大于或等于预设第二阈值,若是,执行步骤S204,若否,执行步骤S205。
在本步骤中,所述预设第二阈值用来判断所述智能终端发送的问题语句的识别度,在本步骤中,将所述第二阈值设置为100%,即当所述智能终端发送的问题语句与预设问答库中的语句完全匹配时,人为达到预设第二阈值。
步骤S204:将信心指数增加预设第二数值。
在本步骤中,当所述相似度最高的语句对应的相似度值大于或等于预设第二阈值时,说明所述相似度最高的语句与智能终端发送的问题语句之间的相似度高,云端服务器有信心识别,因此将信心指数增加预设第一数值,所述预设第一数值是人为设定的,如,将所述预设第二数值设置为15%。当所述相似度最高的语句对应的相似度值等于所述预设第二阈值100%时,则将信心指数增加15%。
步骤S205:判断所述信心指数是否小于预设第三阈值,若是,执行步骤S206。
在本步骤中,所述预设第三阈值用来说明可以接受的信心指数最低值,在本发明实施例中,将所述第三阈值设置为50%,即,当所述信心指数小于50%时,则执行步骤S206。
步骤S206:触发人工介入算法。
在本步骤中,人工介入算法触发之后,可以提示人工介入,也可触发预设算法,所述人工介入或预设算法具体执行:搜索所述智能终端发送的问题语句的答案;在搜索到所述问题语句的答案时,将所述问题语句及所述问题语句的答案存入所述预设问答库中。可以理解的是,所述人工介入或预设算法执行的内容可以人为执行,也可通过算法实现,当通过算法实现时,需要预先在云端服务器设置相关算法,如爬虫算法。
本发明实施例通过设置信心指数,作为对所述智能终端发送的问题语句的理解程度,当信心指数低时,触发人工介入算法,将云端处理器没有信心处理的语句包含在预设问答库中,从而辅助云端处理器更高效的处理所述智能终端发送的问题。
图3为本发明一种自然语义理解装置实施例的功能框图。如图3所示,所述装置包括:接收模块301、拆分模块302、搜索模块303、计算模块304及发送模块305。其中,接收模块301,用于接收智能终端发送的问题语句;拆分模块302,用于使用预设分词算法将所述问题语句拆分为多个词语;搜索模块303,用于在预设问答库中搜索包含至少一个所述词语的语句;计算模块304,用于计算所述语句和所述智能终端发送的问题语句的相似度,得到相似度值;发送模块305,用于选择所述相似度最高的语句对应的答复发送至所述智能终端。
在本发明实施例中,所述装置还包括:第一判断模块306、第一计算模块307、第二判断模块308、第二计算模块309、第三判断模块310及触发模块311。其中,第一判断模块306,用于判断所述相似度最高的语句对应的相似度值是否小于预设第一阈值;第一计算模块307,用于当所述相似度最高的语句对应的相似度值小于预设第一阈值时,将信心指数减少预设第一数值;第二判断模块308,用于当所述相似度最高的语句对应的相似度值不小于预设第一阈值时,判断所述相似度最高的语句对应的相似度值是大于或等于预设第二阈值;第二计算模块309,用于当所述相似度最高的语句对应的相似度值大于或等于预设第二阈值时,将信心指数增加预设第二数值;第三判断模块310,用于判断所述信心指数是否小于预设第三阈值;触发模块311,用于当所述信心指数小于预设第三阈值时,触发人工介入算法。
其中,所述触发模块311中人工介入算法包括:搜索所述智能终端发送的问题语句的答案;在搜索到所述问题语句的答案时,将所述问题语句及所述问题语句的答案存入所述预设问答库中。
其中,当所述第一计算模块307判定结果为所述相似度最高的语句对应的相似度值小于预设第一阈值,则将所述相似度最高的语句对应的答复以预设警示方式发送至所述智能终端。
本发明实施例通过接受模块接收智能终端发送的问题语句,通过搜索模块在预设问答库中搜索与所述接收模块接收到的问题语句匹配的语句,并通过发送模块将最相似的问题语句对应的答复发送至智能终端,由此可见,通过本发明,减少了智能终端的工作量,提高了工作效率;此外,通过设置信心指数来评价对所述智能终端的自然语义理解程度,并当信心指数低时,执行人工介入算法以修改预设问答库,提高了语义理解的效率和准确度。
本申请实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的一种自然语义理解的方法方法。
图4为本发明计算设备实施例的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图4所示,该计算设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储器(memory)406、以及通信总线408。
其中:
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器402,用于执行程序410,具体可以执行上述一种自然语义理解的方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:
接收智能终端发送的问题语句;
使用预设分词算法将所述问题语句拆分为多个词语;
在预设问答库中搜索包含至少一个所述词语的语句;
计算所述语句和所述智能终端发送的问题语句的相似度,得到相似度值;
选择所述相似度最高的语句对应的答复发送至所述智能终端。
在一种可选的方式中,程序410具体可以进一步用于使得处理器402执行以下操作:判断所述相似度最高的语句对应的相似度值是否小于预设第一阈值;
若所述相似度最高的语句对应的相似度值小于预设第一阈值,则将信心指数减少预设第一数值;
若所述相似度最高的语句对应的相似度值不小于预设第一阈值,判断所述相似度最高的语句对应的相似度值是否大于或等于预设第二阈值;
若所述相似度最高的语句对应的相似度值大于或等于预设第二阈值,则将信心指数增加预设第二数值;
判断所述信心指数是否小于预设第三阈值;
若所述信心指数小于预设第三阈值,触发人工介入算法。
在一种可选的方式中,程序410具体可以进一步用于使得处理器402执行以下操作:
搜索所述智能终端发送的问题语句的答案;
在搜索到所述问题语句的答案时,将所述问题语句及所述问题语句的答案存入所述预设问答库中。
在一种可选的方式中,程序410具体可以进一步用于使得处理器402执行以下操作:若所述相似度最高的语句对应的相似度值小于预设第一阈值,则将所述相似度最高的语句对应的答复以预设警示方式发送至所述智能终端。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施例的权利要求书由此明确地并入该具体实施例,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种自然语义理解装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。