CN109542247B - 句式推荐方法及装置、电子设备、存储介质 - Google Patents
句式推荐方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN109542247B CN109542247B CN201811353225.XA CN201811353225A CN109542247B CN 109542247 B CN109542247 B CN 109542247B CN 201811353225 A CN201811353225 A CN 201811353225A CN 109542247 B CN109542247 B CN 109542247B
- Authority
- CN
- China
- Prior art keywords
- sentence
- word
- similar
- words
- patterns
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
- G06F3/0233—Character input methods
- G06F3/0237—Character input methods using prediction or retrieval techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本发明揭示了一种句式推荐方法及装置、电子设备、计算机可读存储介质,包括:从相似词图谱中查找对应于输入词汇的若干相似词;针对每一相似词,将相似词与输入词汇的历史输入文本进行拼接,得到对应于相似词的候选句式;运算候选句式的合理度;根据候选句式的合理度,筛选出合理句式进行推荐。本发明通过从相似词图谱中查找与输入词汇对应的相似词,将相似词与历史输入文本进行拼接得到候选句式,进而向开发人员推荐合理度较高的候选句式,启发开发人员进行句式配置。由此,降低了开发人员进行句式配置的工作量,使配置的句式更加全面,进而在交互***中,可以使所有用户指令匹配到合适的句式,准确理解用户意图,执行用户指令。
Description
技术领域
本发明涉及人工智能技术领域,特别涉及一种句式推荐方法及装置、电子设备、计算机可读存储介质。
背景技术
对话***、问答***是一种基于自然语言的人机交互***。通过这些交互***,人可以使用自然语言和机器进行多轮交互来完成特定的任务,如信息查询、服务获取等。这些交互***提供了一种更自然、便捷的人机交互方式,广泛应用于车载、家居、客服等场景。
目前,这些交互***为了与人进行多轮交互,理解人的意图,执行人下发的指令,通常由开发人员手动配置很多句式,来匹配用户的请求。比如,在对话***中,开发人员需要配置诸如“请播放<歌曲名称>”,来匹配诸如“请播放贝加尔湖畔”、“请播放命运交响曲”等跟音乐意图有关的用户指令,从而准确理解用户意图,执行播放歌曲的任务。
但是,不同意图的用户指令形式多样,仅靠开发人员人工配置句式,工作量较大,而且很可能因配置的句式不够全面,无法将用户指令匹配到合适的句式,从而无法准确理解用户意图,执行用户指令。
发明内容
为了解决相关技术中存在的人工配置句式,工作量较大,配置不够全面的问题,本发明提供了一种句式推荐方法。
一方面,本发明提供了一种句式推荐方法,包括:
从相似词图谱中查找对应于输入词汇的若干相似词;
针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
运算所述候选句式的合理度;
根据所述候选句式的合理度,筛选出合理句式进行推荐。
另一方面,本发明提供了一种句式推荐装置,,包括:
相似词查找模块,用于从相似词图谱中查找对应于输入词汇的若干相似词;
句式拼接模块,用于针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
合理度运算模块,用于运算所述候选句式的合理度;
句式推荐模块,用于根据所述候选句式的合理度,筛选出合理句式进行推荐。
此外,本发明还提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述句式推荐方法。
进一步的,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序可由处理器执行完成上述句式推荐方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
本发明通过从相似词图谱中查找与输入词汇对应的相似词,将相似词与历史输入文本进行拼接得到候选句式,进而向开发人员推荐合理度较高的候选句式,启发开发人员进行句式配置。由此,降低了开发人员进行句式配置的工作量,使配置的句式更加全面,进而在交互交互***中,可以使所有用户指令匹配到合适的句式,准确理解用户意图,执行用户指令。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的本发明所涉及的实施环境示意图;
图2是本发明实施例提供的一种服务器结构示意图;
图3是根据一示例性实施例示出的一种句式推荐方法的流程图;
图4是根据一示例性实施例示出的构建相似词图谱的流程图;
图5是图4对应实施例中步骤420在一个实施例的流程图。
图6是图4对应实施例中步骤430在一个实施例的流程图。
图7是根据一示例性实施例示出的相似词图谱的部分示意图;
图8是根据一示例性实施例示出的一种训练语言模型的流程图;
图9是图3对应实施例中步骤370在一个实施例的流程图。
图10是一种示例性实施例示出的句式推荐方法的技术原理图;
图11是根据一示例性实施例示出的一种句式推荐装置的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的本发明所涉及的实施环境示意图。该实施环境包括:服务端110和用户终端130。
服务端110和用户终端130之间通过有线或无线网络连接,服务端110可以是一台服务器或多台服务器构成的服务器集群,此服务器是为用户提供后台服务的电子设备,例如句式合理度计算,相似词查找等服务。用户终端130可以是台式电脑、笔记本电脑、平板电脑、智能手机。
服务端110可以采用本发明提供的方法,基于用户终端130的输入词汇和历史输入文本,筛选出合理句式,通过网络连接向用户终端130推荐可以配置的句式,从而启发用户终端130的开发人员进行句式配置。
应当说明的是,本发明提供的句式推荐方法,不限于在服务端110中部署相应的处理逻辑,其也可以是部署于其它机器中的处理逻辑。例如,在具备计算能力的终端设备中句式推荐的处理逻辑等。
参见图2,图2是本发明实施例提供的一种服务器结构示意图。该服务器200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(centralprocessing units,CPU)222(例如,一个或一个以上处理器)和存储器232,一个或一个以上存储应用程序242或数据244的存储介质230(例如一个或一个以上海量存储设备)。其中,存储器232和存储介质230可以是短暂存储或持久存储。存储在存储介质230的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器200中的一系列指令操作。更进一步地,中央处理器222可以设置为与存储介质230通信,在服务器200上执行存储介质230中的一系列指令操作。服务器200还可以包括一个或一个以上电源226,一个或一个以上有线或无线网络接口250,一个或一个以上输入输出接口258,和/或,一个或一个以上操作***241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。下述图3-图6、图8、图9所示实施例中所述的由服务器所执行的步骤可以基于该图2所示的服务器结构。
本领域普通技术人员可以理解实现下述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
图3是根据一示例性实施例示出的一种句式推荐方法的流程图。该句式推荐方法的适用范围和执行主体可以是服务端。例如,该服务端可以是图1所示实施环境的服务端110。如图3所示,该方法可以由服务端执行,可以包括以下步骤。
在步骤310中,从相似词图谱中查找对应于输入词汇的若干相似词;
其中,相似词图谱是指根据词语之间的相似度,把跟每个词语最相似的K(K可以人为设定)个词语与该词语进行有向连接的图谱。由此,从该相似词图谱中,可以查找到某个词语对应的最相似的K个词语。从相似词图谱中查找得到的某个词语最相似的K个词语可以认为是该词语对应的相似词。当然,也可以从相似词图谱中找到某个词语最相似的J(J大于K)个词语作为该词语对应的相似词。需要说明的是,相似词图谱可以由服务端在利用相似词图谱之前,根据所有词语之间的相似度,将每个词语与其最相似的K个词语进行有向连接,构建相似词图谱。
其中,输入词汇是指用户终端接收到的开发人员输入的词汇。服务端可以获取用户终端接收到的输入词汇。进而服务端可以从相似词图谱中查找该输入词汇对应的最相似的K个词语,作为对应于该输入词汇的若干相似词。根据实际情况,相似词的数量可能存在1个或多个。
在步骤330中,针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
其中,历史输入文本是指在输入词汇之前用户终端获取到的用户已输入的内容。举例来说,输入词汇可能是“播放”,历史输入文本可能是“请”。
将相似词与输入词汇的历史输入文本进行拼接,是指将相似词放在历史输入文本之后形成一个句子。举例来说,输入词汇“打开”的某个相似词可能是“播放”,则可以将历史输入文本与“播放”进行拼接。假设历史输入文本是“请”,则拼接后可以得到新的句子是“请<播放>”。
需要说明的是,由于步骤310中得到的对应于输入词汇的相似词可能是多个,也就是说,输入词汇“打开”的相似词除了“播放”外,可能还有“启动”、“关闭”,由此可以历史输入文本分别与“播发”、“启动”、“关闭”进行拼接。候选句式是指将历史输入文本与相似词拼接后得到的句子。一个相似词对应一个候选句式。由此,当存在多个相似词时,可以得到对应的多个候选句式。
举例来说,假设历史输入文本是“请播放”,输入词汇“XXX”的相似词有“YYY”、“AAA”、“BBB”、“CCC”,则得到的候选句式可以有“请播放YYY”、“请播放AAA”、“请播放BBB”、“请播放CCC”。
在步骤350中,运算所述候选句式的合理度;
需要说明的是,每条候选句式的语法、语义不一定正确,比如“请暂停<歌手名>”显然就是一个错误句式,所以需要运算每条候选句式的合理度。合理度用于表征候选句式的规范程度,包括语法规范程度、语义规范程度等。合理度越高,则候选句式越规范,更加符合人类自然语言的语义、语法规则。
具体的,候选句式合理度的运算,可以通过事先构建的语言模型,输出每条候选句式的困惑度(perplexity),困惑度越小,表示候选句式的合理度越高,将候选句式的困惑度作为该语言模型的输出指标。当然,语言模型可以事先通过大量样本数据建模得到。需要说明的是,通过语言模型计算句子困惑度的方式,可以参见现有技术实现,在此不再赘述。
在步骤370中,根据所述候选句式的合理度,筛选出合理句式进行推荐。
其中,合理句式是指从所有候选句式中挑选出的合理度较高的候选句式。
当存在多条候选句式时,可以根据步骤350计算得到的每条候选句式的合理度,进行合理度的排序,挑选出合理度排序靠前的若干候选句式作为合理句式,进而向用户终端推荐筛选的合理句式。
在另一实施例中,服务端还可以根据每条候选句式的合理度,挑选出合理度大于阈值的候选句式作为合理句式,进而向用户终端推荐筛选的合理句式。
具体的,合理句式的推荐方式,可以是服务端向用户终端推送合理句式中的相似词,进而启发用户终端的开发人员可以选择某个相似词与历史输入文本进行拼接,得到另一种可以配置的句式。
在另一实施例中,服务端也可以直接向用户终端推送筛选的合理句式,进而启发开发人员还可以配置的句式种类。
需要说明的是,本发明提供的句式推荐方法,除上述示例性实施例列举的由服务端执行外,还可以由用户终端执行,用户终端可以采用本发明提供的方法,直接根据开发人员输入的词汇和历史输入文本,进行句式推荐。
在人机交互***中,为了理解用户意图,执行用户下发的指令,开发人员需要提前配置很多句式,来匹配产品侧的用户指令,进而理解用户意图,执行用户下达的指令。现有技术中,均是由开发人员人工配置句式,人工配置句式的工作量较大,配置的句式不够全面,进而可能某些用户指令无法匹配到合适的句式,从而无法准确理解用户意图,执行用户指令。
本发明上述示例性实施例提供的技术方案,通过从相似词图谱中查找与输入词汇对应的相似词,将相似词与历史输入文本进行拼接得到候选句式,进而向开发人员推荐合理度较高的候选句式,启发开发人员进行句式配置。由此,降低了开发人员进行句式配置的工作量,使配置的句式更加全面,进而在交互交互***中,可以使所有用户指令匹配到合适的句式,准确理解用户意图,执行用户指令。
图4是根据一示例性实施例示出的构建相似词图谱的流程图,如图4所示,在上述步骤310之前,本发明提供的句式推荐方法还包括:
在步骤410中,获取多条原始查询语句;
其中,该原始查询语句可以是产品侧用户输入的自然语句,包括疑问语句、陈述语句等。原始查询语句的数量不限。该产品可以是智能音响、智能机器人(新闻机器人、写诗机器人、客户机器人等)等具有语音交互功能的电子设备。服务端可以获取这些具有语音交互功能的电子设备采集到的用户输入的原始查询语句。举例来说,原始查询语句可能是:“请播放张三的春夏秋冬(举例的一种歌曲名)”。
在步骤420中,将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
实体名词是指某个实体的名称,可能是深圳市(地名)、张三(歌手名)、春夏秋冬(歌曲名)等。类别名称是指某个实体名词对应的类别的名字,类别名称包括地名、歌手名、歌曲名等。
举例来说,某个原始查询语句可能是:“请播放张三的春夏秋冬”,则“张三”可以替换成对应的类别名称“歌手名”,“春夏秋冬”可以替换成对应的类别名称“歌曲名”,进而得到新的查询语句“请播放<歌手名><歌曲名>”,该新的查询语句即可称为目标语句。
在步骤430中,根据所有目标语句所含词语之间的相似性关系,构建相似词图谱。
相似性关系是指某个词语是另一个词语的相似词。一条目标语句可以包括多个词语,进而根据所有目标语句的所有词语之间的相似性关系,针对每个词语,将该词语的相似词与该词语进行有向连接,形成相似词图谱。
在一种示例性实施例中,如图5所示,上述步骤420具体包括:
在步骤421中:根据所述实体名词所在的实体词典,获取所述实体词典对应的类别名称;
实体词典是指存储某一类实体的实体名的词典,如“中国省会城市词典”,里面存储了中国所有省会城市的名字,该词典对应的类别名称是“省会城市”;“歌手名词典”里面存储了所有歌手的名字,该词典对应的类别名称是“歌手名”;“歌曲名词典”里面存储了所有的歌曲名,该词典对应的类别名称是“歌曲名”。
这里假设实体词典是互斥的,不存在同一个实体名词属于多个实体词典的情况。由此,根据实体名称所在的实体词典,可以获取该实体词典对应的类别名称,该类别名称也就是该实体名词对应的类别名称。
在步骤422中:将所述原始查询语句中的实体名词替换为获得的所述类别名称,得到所述目标语句。
举例来说,某条原始查询语句是“请播放张三的春夏秋冬”,如果“张三”出现在一个叫“歌手名”的实体词典中,则可以将“张三”替换为“歌手名”。“春夏秋冬”出现在“歌曲名”对应的实体词典中,则可以将“春夏秋冬”替换为“歌曲名”,由此,将原始查询语句替换后得到目标语句“请播放<歌手名><歌曲名>”。
在一种示例性实施例中,如图6所示,上述步骤430具体包括:
在步骤431中,对每条目标语句进行分词操作,提取分词操作后每个词语对应的词向量;
一条目标语句可以看出一个汉字序列,分词操作是指将一个汉字序列切分成一个个单独的词。分词方法包括基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。这些方法均属于现有技术,本发明在此不再赘述。
提取分词操作后每个词语对应的词向量是指用向量来表示对应的词语。一种最简单的词向量表示方式就是用一个很“长”的向量来表示一个词,向量的长度为词典的大小,向量的分量只有一个1,其他全为0,1的位置对应该词在词典中的位置。
在其他实施例中,可以通过训练将某种语言中的每一个词映射成一个固定长度的短向量(当然这里的“短”是相对于上文的“长”而言的),将所有这些向量放在一起形成一个词向量空间,而每一向量则为该空间中的一个点。在这个空间上引入“距离”,则可以根据词之间的距离来判断它们之间的(词法、语义上的)相似性了。
在步骤432中,根据所述每个词语对应的词向量,计算不同词语之间的相似度;
具体的,在得到每条查询语句中每个词语对应的词向量之后,可以通过计算不同词语的词向量之间的距离,得到不同词语之间的相似度,距离越近,表示这两个词语之间的相似度越高。
在步骤433中,根据所述不同词语之间的相似度,将一个词语作为一个节点,选取与所述词语最相似的若干词语进行相似词语之间的有向连接,形成相似词图谱。
其中,有向连接是指如果A是B的相似词,则A→B。具体的,根据不同词语之间的相似度,可以将一个词语作为一个节点,针对每个词语,选取与该词语最相似的K个词语作为该词语的相似词,与该词语进行有向连接,形成有向有环的相似词图谱。
如图7所示,是相似词图谱的一部分,图中每个节点是一个词语,节点之间的边代表相似性关系;如“播放”有一条边指向“打开”,代表“播放”是“打开”的K个相似词之一,但“打开”并不是“播放”最相似的K个词之一,所以“打开”没有边指向“播放”。相似词图谱最重要的概念是:B是A的相似词,并不能立刻得到A就是B的相似词,本质上是一个有向图。
需要说明的是,一度节点,表示跟图上某节点直接连接的节点;二度节点,表示跟图上某节点间接连接的节点,且连接的边数恰好为2。根据需要,从相似词图谱中查找输入词汇的相似词,可以通过挖掘该输入词汇的一度节点、二度节点甚至更多,得到关于该输入词汇的相似词集合。如图7所示,“打开”是“启动”的一度节点,“播放”是“启动”的二度节点,虽然“播放”并不是“启动”最相似的词(即一度节点),但通过挖掘二度节点,则挖掘出了“启动”和“播放”的相似性关系。
节点度数越多,相似词集合越庞大,但此时相似性也越来越弱,所以在用到相似词图谱的算法中,需要额外的手段去甄别合理性,如本发明中的语言模型。
对于相似词图谱的构建方法,除上述实施例列举的根据词向量之间的相似度来构建外,还可以利用同义词词典。将每个词语作为一个节点,根据同义词词典,建立任一词语与其同义词之间的有向连接。举例来说,A的同义词有B1,B2,B3,则可以认为B1是A的相似词,B2是A的相似词,B3是A的相似词,进行相似词之间的有向连接。此外,还可以利用自定义词典,自定义词典中记录了每个词语的相似词,进而可以根据自定义词典,建立相似词语之间的有向连接,得到相似词图谱。
在一种示例性实施例中,上述步骤350具体包括:
将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度。
其中,语言模型是用于识别一段文本是否“真实”的模型,这里“真实”是指符合人类语言的语法规范、语义规范等。可以将每条候选句式输入语言模型,通过该语言模型运算每条候选句式的困惑度,即可得到每条候选句式的合理度。困惑度也就是混乱度,困惑度低的,可以认为比较符合语言规范,合理度高。
图8是根据一示例性实施例示出的一种训练语言模型的流程图,在将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度之前,如图8所示,本发明提供的句式推荐方法还可以包括:
在步骤810中,获取多条原始查询语句;
在步骤820中,将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
在步骤830中,将多条目标语句作为训练集进行机器学习,获得用于运算候选句式合理度的所述语言模型。
需要说明的是,该步骤810与上述实施例中的步骤410相同,该步骤820与上述实施例中的步骤420相同。在图3对应实施例的基础上,则需要执行步骤810和步骤820得到目标语句搭建语言模型,运算候选句式的合理度。如果在图4对应实施例的基础上,则可以直接利用步骤410和步骤420获取的目标语句,搭建语言模型。
具体的,根据多条目标语句已知的困惑度,将这些目标语句作为训练集进行机器学习,训练得到将困惑度作为输出指标之一的语言模型。进而利用该语言模型可以输出每条候选句式的困惑度,确定候选句式中的这些词语是一堆乱七八糟的词还是语言中合格的句子,得到每条候选句式的合理度,筛选出合理句式进行推荐。举例来说,该语言模型可以是Y.巴尔-希列尔用数理逻辑方法提出的句法类型演算模型,具体搭建步骤参见现有技术实现。
在一种示例性实施例中,如图9所示,上述步骤370具体包括:
在步骤371中,根据每条候选句式的合理度,从所有候选句式中筛选出合理句式;
具体的,根据每条候选句式的困惑度,可以从所有候选句式中挑选出困惑度低的,也就是合理度较高的若干候选句式,作为合理句式。
在步骤372中,向前端推送所述合理句式中拼接的相似词,触发前端通过所述相似词进行句式配置。
前端可以是指用户终端,服务端可以向用户终端推送合理句式中拼接的相似词,相似词的推送触发用户终端进行相似词的显示,用户终端接收用户选中某个相似词的选择指令,进而利用选中的相似词进行句式配置。该方案可以启发用户终端的开发人员选择推荐的某个相似词进行句式配置。由于该相似词是考虑了用户输入词汇的上下文的,所以准确性大大提高。
在一种示例性实施例中,在上述步骤372之后,本发明提供的方法还包括:
根据所述前端对所述相似词进行的选择,将选择的目标相似词与所述历史输入文本进行拼接,生成新的历史输入文本;
接收新的输入词汇,重复进行句式推荐的步骤。
也就是说,开发人员可以从推送的相似词中选择一个相似词,为进行区分,开发人员选择的相似词称为目标相似词。进而服务端可以将目标相似词与上述实施例中的历史输入文本进行拼接,生成新的历史输入文本。之后,用户终端可以将新的输入词汇传递给服务端,服务端继续采用上述示例性实施例所述的过程,查找新输入词汇的若干相似词,然后将该相似词与新的历史输入文本进行拼接,得到多条候选句式,筛选出合理句式向用户终端进行推荐,重复句式推荐的步骤直到配置完一个完整句式。
以实际场景举例来说,当开发人员在用户终端输入某个词汇时,服务端根据已输入的文本(即历史输入文本)和当前输入词汇,可以启发式给出补全建议,即除了当前输入词汇,还可以选择的词汇,具体过程举例如下:
1.假设用户的历史输入文本是“请”,当前输入的是“播放”,则服务端根据“播放”,可以找到“打开”、“暂停”、“启动”等相似词;
2.将这些词跟历史输入文本,即“请”拼接,得到“请打开”、“请启动”等候选句式;
3.将拼接后的候选句式输入语言模型,找出合理的句式,供用户配置的时候选择;
4.假设用户选择了“启动”,则输入历史变成“请启动”;
5.假设用户当前输入的是<设备名称>,我们找到跟<设备名称>相似的如<歌曲名>、<歌手名>等;
6.将这些词拼接,得到“请启动<歌曲名>”等。但通过语言模型可以发现“请启动<歌曲名>”并不是一个合理句式,所以将其过滤掉,只留下其他合理的供用户选择;
7.重复上述步骤直到用户配置完一个完整句式。
图10是一种示例性实施例示出的句式推荐方法的技术原理图。如图10所示,该句式推荐方法主要分为两个部分,建模阶段和句式推荐阶段。
在建模阶段,可以获取产品用户产生的大量原始查询语句(queries),通过实体词典,将每条原始查询语句中的实体名词统一替换成对应的类别名称,得到多条新的查询语句(即目标语句),目标语句可以看成是对原始查询语句在实体层面的抽象。进而可以利用这些目标语句构建相似词图谱和训练语言模型。其中。相似词图谱的构建方式可以是通过对这些目标语句进行分词、提取词向量,把每个词最相似的若干词进行有向连接,构成一个相似词图谱。
在句式推荐阶段,根据用户当前输入词汇,从相似词图谱中找出与当前输入词汇最相似的前K个词语作为相似词,得到相似词初步候选集;然后将当前输入词汇之前用户已输入的文本分别与这些相似词进行拼接,得到句式候选集。之后可以通过语言模型计算每条候选句式的困惑度,并进行排序,筛选出困惑度较低的候选句式作为合理句式,这些合理句式中的相似词作为相似词最终候选集。开发人员可以从相似词最终候选集中选择一个相似词输入句式中,得到新的已输入文本,重复上述步骤直到配置完一个句式。
下述为本发明装置实施例,可以用于执行本发明上述服务端110执行的句式推荐方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明句式推荐方法实施例。
图11是根据一示例性实施例示出的一种句式推荐装置的框图,该句式推荐装置可以用于图1所示实施环境的服务端110中,执行图3-图6、图8、图9任一所示的句式推荐方法的全部或者部分步骤。如图11所示,该装置包括但不限于:相似词查找模块1110、句式拼接模块1130、合理度运算模块1150以及句式推荐模块1170。
相似词查找模块1110,用于从相似词图谱中查找对应于输入词汇的若干相似词;
句式拼接模块1130,用于针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
合理度运算模块1150,用于运算所述候选句式的合理度;
句式推荐模块1170,用于根据所述候选句式的合理度,筛选出合理句式进行推荐。
上述装置中各个模块的功能和作用的实现过程具体详见上述句式推荐方法中对应步骤的实现过程,在此不再赘述。
相似词查找模块1110比如可以是图2中的某一个物理结构中央处理器222。
相似词查找模块1110、句式拼接模块1130、合理度运算模块1150以及句式推荐模块1170也可以是功能模块,用于执行上述句式推荐方法中的对应步骤。可以理解,这些模块可以通过硬件、软件、或二者结合来实现。当以硬件方式实现时,这些模块可以实施为一个或多个硬件模块,例如一个或多个专用集成电路。当以软件方式实现时,这些模块可以实施为在一个或多个处理器上执行的一个或多个计算机程序,例如图2的中央处理器222所执行的存储在存储器232中的程序。
在一种示例性实施例中,上述句式推荐装置还包括:
语句获取模块,用于获取多条原始查询语句;
类别替换模块,用于将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
图谱构建模块,用于根据所有目标语句所含词语之间的相似性关系,构建所述相似词图谱。
在一种示例性实施例中,所述类别替换模块包括:
类别获得单元,用于根据所述实体名词所在的实体词典,获得所述实体词典对应的类别名称;
类别替换单元,用于将所述原始查询语句中的实体名词替换为获得的所述类别名称,得到所述目标语句。
在一种示例性实施例中,所述图谱构建模块包括:
词向量提取单元,用于对每条目标语句进行分词操作,提取分词操作后每个词语对应的词向量;
相似度计算单元,用于根据所述每个词语对应的词向量,计算不同词语之间的相似度;
相似词连接单元,用于根据所述不同词语之间的相似度,将一个词语作为一个节点,选取与所述词语最相似的若干词语进行相似词语之间的有向连接,形成所述相似词图谱。
在一种示例性实施例中,所述合理度运算模块1150包括:
模型运算单元,用于将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度。
在一种示例性实施例中,上述句式推荐装置还包括:
语句获取模块,用于获取多条原始查询语句;
类别替换模块,用于将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
模型搭建模块,用于将多条目标语句作为训练集进行机器学习,获得用于运算候选句式合理度的所述语言模型。
在一种示例性实施例中,所述句式推荐模块1170包括:
句式筛选单元,用于根据每条候选句式的合理度,从所有候选句式中筛选出合理句式;
相似词推送单元,用于向前端推送所述合理句式中拼接的相似词,触发前端通过所述相似词进行句式配置。
可选的,本发明还提供一种电子设备,该电子设备可以用于图1所示实施环境的服务端110中,执行图3-图6、图8、图9任一所示的句式推荐方法的全部或者部分步骤。所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述示例性实施例所述的句式推荐方法。
该实施例中电子设备的处理器执行操作的具体方式已经在有关该句式推荐方法的实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质存储有计算机程序,所述计算机程序可由服务器200的中央处理器222执行以完成上述句式推荐方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (12)
1.一种句式推荐方法,其特征在于,包括:
从相似词图谱中查找对应于输入词汇的若干相似词;
针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度;
根据所述候选句式的合理度,筛选出合理句式进行推荐;
在将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度之前,还包括:
获取多条原始查询语句;
将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
将多条目标语句作为训练集进行机器学习,获得用于运算候选句式合理度的语言模型。
2.根据权利要求1所述的方法,其特征在于,在所述从相似词图谱中查找对应于输入词汇的若干相似词之前,所述方法还包括:
获取多条原始查询语句;
将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
根据所有目标语句所含词语之间的相似性关系,构建所述相似词图谱。
3.根据权利要求2所述的方法,其特征在于,所述将所述原始查询语句中的实体名词替换为对应的类别名词,得到目标语句,包括:
根据所述实体名词所在的实体词典,获得所述实体词典对应的类别名称;
将所述原始查询语句中的实体名词替换为获得的所述类别名称,得到所述目标语句。
4.根据权利要求2所述的方法,其特征在于,所述根据所有目标语句所含词语之间的相似性关系,构建相似词图谱,包括:
对每条目标语句进行分词操作,提取分词操作后每个词语对应的词向量;
根据所述每个词语对应的词向量,计算不同词语之间的相似度;
根据所述不同词语之间的相似度,将一个词语作为一个节点,选取与所述词语最相似的若干词语进行相似词语之间的有向连接,形成所述相似词图谱。
5.根据权利要求1所述的方法,其特征在于,所述根据所述候选句式的合理度,筛选出合理句式进行推荐,包括:
根据每条候选句式的合理度,从所有候选句式中筛选出合理句式;
向前端推送所述合理句式中拼接的相似词,触发前端通过所述相似词进行句式配置。
6.根据权利要求5所述的方法,其特征在于,在所述向前端推送所述合理句式中拼接的相似词之后,所述方法还包括:
根据所述前端对所述相似词进行的选择,将选择的目标相似词与所述历史输入文本进行拼接,生成新的历史输入文本;
接收新的输入词汇,重复进行句式推荐的步骤。
7.一种句式推荐装置,其特征在于,包括:
相似词查找模块,用于从相似词图谱中查找对应于输入词汇的若干相似词;
句式拼接模块,用于针对每一所述相似词,将所述相似词与所述输入词汇的历史输入文本进行拼接,得到对应于所述相似词的候选句式;
合理度运算模块,用于将所述候选句式输入语言模型,通过所述语言模型运算得到所述候选句式的合理度;
句式推荐模块,用于根据所述候选句式的合理度,筛选出合理句式进行推荐;
语句获取模块,用于获取多条原始查询语句;
类别替换模块,用于将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
模型搭建模块,用于将多条目标语句作为训练集进行机器学习,获得用于运算候选句式合理度的语言模型。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
语句获取模块,用于获取多条原始查询语句;
类别替换模块,用于将所述原始查询语句中的实体名词替换为对应的类别名称,得到目标语句;
图谱构建模块,用于根据所有目标语句所含词语之间的相似性关系,构建所述相似词图谱。
9.根据权利要求8所述的装置,其特征在于,所述类别替换模块包括:
类别获得单元,用于根据所述实体名词所在的实体词典,获得所述实体词典对应的类别名称;
类别替换单元,用于将所述原始查询语句中的实体名词替换为获得的所述类别名称,得到所述目标语句。
10.根据权利要求8所述的装置,其特征在于,所述图谱构建模块包括:
词向量提取单元,用于对每条目标语句进行分词操作,提取分词操作后每个词语对应的词向量;
相似度计算单元,用于根据所述每个词语对应的词向量,计算不同词语之间的相似度;
相似词连接单元,用于根据所述不同词语之间的相似度,将一个词语作为一个节点,选取与所述词语最相似的若干词语进行相似词语之间的有向连接,形成所述相似词图谱。
11.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-6任意一项所述的句式推荐方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序可由处理器执行完成权利要求1-6任意一项所述的句式推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811353225.XA CN109542247B (zh) | 2018-11-14 | 2018-11-14 | 句式推荐方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811353225.XA CN109542247B (zh) | 2018-11-14 | 2018-11-14 | 句式推荐方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109542247A CN109542247A (zh) | 2019-03-29 |
CN109542247B true CN109542247B (zh) | 2023-03-24 |
Family
ID=65847231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811353225.XA Active CN109542247B (zh) | 2018-11-14 | 2018-11-14 | 句式推荐方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109542247B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263338A (zh) * | 2019-06-18 | 2019-09-20 | 北京明略软件***有限公司 | 替换实体名称方法、装置、存储介质及电子装置 |
CN110688838B (zh) * | 2019-10-08 | 2023-07-18 | 北京金山数字娱乐科技有限公司 | 一种成语同义词列表的生成方法及装置 |
CN111046667B (zh) * | 2019-11-14 | 2024-02-06 | 深圳市优必选科技股份有限公司 | 一种语句识别方法、语句识别装置及智能设备 |
CN111046653B (zh) * | 2019-11-14 | 2023-12-29 | 深圳市优必选科技股份有限公司 | 一种语句识别方法、语句识别装置及智能设备 |
CN111046654B (zh) * | 2019-11-14 | 2023-12-29 | 深圳市优必选科技股份有限公司 | 一种语句识别方法、语句识别装置及智能设备 |
CN113010768B (zh) * | 2019-12-19 | 2024-03-19 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN111178077B (zh) * | 2019-12-26 | 2024-02-02 | 深圳市优必选科技股份有限公司 | 一种语料生成方法、语料生成装置及智能设备 |
CN111259635A (zh) * | 2020-01-09 | 2020-06-09 | 智业软件股份有限公司 | 一种对病历书写文本补全和预测的方法及*** |
CN113360742A (zh) * | 2021-05-19 | 2021-09-07 | 维沃移动通信有限公司 | 推荐信息确定方法、装置及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885938A (zh) * | 2014-04-14 | 2014-06-25 | 东南大学 | 基于用户反馈的行业拼写错误检查方法 |
CN105653706A (zh) * | 2015-12-31 | 2016-06-08 | 北京理工大学 | 一种基于文献内容知识图谱的多层引文推荐方法 |
CN105701108A (zh) * | 2014-11-26 | 2016-06-22 | 阿里巴巴集团控股有限公司 | 一种信息推荐方法、装置及服务器 |
CN106557563A (zh) * | 2016-11-15 | 2017-04-05 | 北京百度网讯科技有限公司 | 基于人工智能的查询语句推荐方法及装置 |
CN107346183A (zh) * | 2017-06-29 | 2017-11-14 | 维沃移动通信有限公司 | 一种词汇推荐方法和电子设备 |
CN107679039A (zh) * | 2017-10-17 | 2018-02-09 | 北京百度网讯科技有限公司 | 用于确定语句意图的方法和装置 |
WO2018120889A1 (zh) * | 2016-12-28 | 2018-07-05 | 平安科技(深圳)有限公司 | 输入语句的纠错方法、装置、电子设备及介质 |
-
2018
- 2018-11-14 CN CN201811353225.XA patent/CN109542247B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885938A (zh) * | 2014-04-14 | 2014-06-25 | 东南大学 | 基于用户反馈的行业拼写错误检查方法 |
CN105701108A (zh) * | 2014-11-26 | 2016-06-22 | 阿里巴巴集团控股有限公司 | 一种信息推荐方法、装置及服务器 |
CN105653706A (zh) * | 2015-12-31 | 2016-06-08 | 北京理工大学 | 一种基于文献内容知识图谱的多层引文推荐方法 |
CN106557563A (zh) * | 2016-11-15 | 2017-04-05 | 北京百度网讯科技有限公司 | 基于人工智能的查询语句推荐方法及装置 |
WO2018120889A1 (zh) * | 2016-12-28 | 2018-07-05 | 平安科技(深圳)有限公司 | 输入语句的纠错方法、装置、电子设备及介质 |
CN107346183A (zh) * | 2017-06-29 | 2017-11-14 | 维沃移动通信有限公司 | 一种词汇推荐方法和电子设备 |
CN107679039A (zh) * | 2017-10-17 | 2018-02-09 | 北京百度网讯科技有限公司 | 用于确定语句意图的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109542247A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542247B (zh) | 句式推荐方法及装置、电子设备、存储介质 | |
EP3648099B1 (en) | Voice recognition method, device, apparatus, and storage medium | |
CN109241524B (zh) | 语义解析方法及装置、计算机可读存储介质、电子设备 | |
CN106919655B (zh) | 一种***方法和装置 | |
US10997370B2 (en) | Hybrid classifier for assigning natural language processing (NLP) inputs to domains in real-time | |
CN111522994B (zh) | 用于生成信息的方法和装置 | |
CN108304375B (zh) | 一种信息识别方法及其设备、存储介质、终端 | |
JP2021114291A (ja) | 時系列ナレッジグラフ生成方法、装置、デバイス及び媒体 | |
CN106570180B (zh) | 基于人工智能的语音搜索方法及装置 | |
CN111695345B (zh) | 文本中实体识别方法、以及装置 | |
CN110543574A (zh) | 一种知识图谱的构建方法、装置、设备及介质 | |
CN103092943B (zh) | 一种广告调度的方法和广告调度服务器 | |
CN110162753B (zh) | 用于生成文本模板的方法、装置、设备和计算机可读介质 | |
WO2022237253A1 (zh) | 一种测试用例生成方法、装置及设备 | |
US11907671B2 (en) | Role labeling method, electronic device and storage medium | |
CN112528001B (zh) | 一种信息查询方法、装置及电子设备 | |
CN110941694A (zh) | 知识图谱的搜索定位方法、***、电子设备和存储介质 | |
CN111382260A (zh) | 一种检索文本纠错方法、装置和存储介质 | |
CN113553414B (zh) | 智能对话方法、装置、电子设备和存储介质 | |
CN111881316A (zh) | 搜索方法、装置及服务器和计算机可读存储介质 | |
CN111274358A (zh) | 文本处理方法、装置、电子设备及存储介质 | |
CN109828748A (zh) | 代码命名方法、***、计算机装置及计算机可读存储介质 | |
WO2016121048A1 (ja) | 文章生成装置及び方法 | |
CN111984774B (zh) | 搜索方法、装置、设备以及存储介质 | |
CN113779062A (zh) | Sql语句生成方法、装置、存储介质及电子设备 |
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 |