基于人工智能的搜索方法和装置与流程

文档序号:12124660阅读:249来源:国知局
基于人工智能的搜索方法和装置与流程

本发明涉及信息检索技术领域,尤其涉及一种基于人工智能的搜索方法和装置。



背景技术:

人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语音识别、图像识别、自然语言处理和专家系统等。

语音搜索是一种全新的搜索模式,通过接收用户说出的语音,解析出用户的搜索意图,例如“明天天气如何”、“宫保鸡丁的做法”等,就能够获得相应的搜索结果,从而免去文字输入的繁琐。然而,用户在输入长查询语句时,由于噪声等原因的影响,在将语音转换为文字的过程中,可能会产生错误分词。如果用包含有错误分词的查询语句进行搜索,可能导致搜索到的结果无法满足用户的需要,甚至有些情况下没有搜索结果返回,从而影响用户的满意度。目前,主要通过对查询语句进行纠错,来减少错误分词的影响。但是,长查询语句中的纠错的效果并不能达到预期效果。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种基于人工智能的搜索方法,该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

本发明的第二个目的在于提出一种基于人工智能的搜索装置。

为了实现上述目的,本发明第一方面实施例提出了一种基于人工智能的搜索方法,包括:接收输入的查询语句;基于预先训练的冗余词识别模型确定查询语句中的冗余词;从查询语句中删除冗余词,以生成新的查询语句;根据新的查询语句进行搜索。

本发明实施例的基于人工智能的搜索方法,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

为达上述目的,本发明第二方面实施例提出了一种基于人工智能的搜索装置,包括接收模块,用于接收输入的查询语句;确定模块,用于基于预先训练的冗余词识别模型确定查询语句中的冗余词;删除模块,用于从查询语句中删除冗余词,以生成新的查询语句;搜索模块,用于根据新的查询语句进行搜索。

本发明实施例的基于人工智能的搜索装置,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

图1是根据本发明一个实施例的基于人工智能的搜索方法的流程图;

图2是根据本发明一个具体实施例的基于人工智能的搜索方法的流程图;

图3是根据本发明一个实施例的基于人工智能的搜索装置的结构示意图;

图4是根据本发明一个具体实施例的基于人工智能的搜索装置的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于人工智能的搜索方法和装置。

图1是根据本发明一个实施例的基于人工智能的搜索方法的流程图。

如图1所示,该基于人工智能的搜索方法包括:

S101,接收输入的查询语句。

在本发明的一个实施例中,用户想要通过搜索引擎进行搜索,可通过搜索引擎提供的语音输入接口,通过语音输入的方式输入查询语句。

S102,基于预先训练的冗余词识别模型确定查询语句中的冗余词。

在接收到查询语句之后,可基于预先训练的冗余词识别模型确定查询语句中的冗余词。其中,冗余词识别模型为预先训练的用于识别查询语句中冗余词的模型。

具体地,可根据RNNLM(Recurrent Neural Network Language Model,递归神经网络语言模型)获取查询语句中每个分词的出现概率,根据各个分词的出现概率计算查询语句的第一困惑度。其中,困惑度即ppl,可用于衡量分词的成句概率。

接下来,依次删除查询语句中的分词,分别计算删除每个分词后的查询语句的第二困惑度,然后计算第二困惑度与第一困惑度的比值。如果比值小于等于预设阈值,则删除的分词为冗余词,如果比值大于预设阈值,则删除的分词不是冗余词。

S103,从查询语句中删除冗余词,以生成新的查询语句。

在确定查询语句中的冗余词之后,可从查询语句中删除冗余词,利用剩下的分词组成新的查询语句。

S104,根据新的查询语句进行搜索。

利用去掉冗余词的查询语句进行搜索,从而获得更加符合用户需求的搜索结果。

综上所述,本发明实施例的基于人工智能的搜索方法,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

为了更清楚详细的描述本发明实施例,下面结合图2通过具体实施例对其进行进一步描述。图2是根据本发明一个具体实施例的基于人工智能的搜索方法的流程图。

如图2所示,该基于人工智能的搜索方法包括:

S201,接收输入的查询语句。

在本发明的一个实施例中,用户想要通过搜索引擎进行搜索,可通过搜索引擎提供的语音输入接口,通过语音输入的方式输入查询语句。

S202,通过RNNLM确定查询语句中每个分词的出现概率。

其中,RNNLM主要用于获取查询语句中每个分词的出现概率。

具体地,首先将查询语句切分为多个分词,然后分别计算每个分词出现在该查询语句中的出现概率。

举例来说,查询语句为q,可将查询语句q切分成M个分词,那么查询语句q可表示为q={t1,t2,…,tM}。其中,t1,t2,…,tM表示查询语句q中的分词,M表示分词的个数。查询语句中某一分词ti的出现概率p(ti)可通过公式一表示,

公式一:p(ti)=f(ti-1,ti-2,…,ti-N),其中,N为自然数。

即分词ti的出现概率p(ti)由分词ti的前N个分词决定。f表示RNNLM模型。

假设N=4,当前想要计算第六个分词t6的出现概率,那么可将t6之前的4个分词输入至RNNLM。则第六个分词的出现概率可表示为p(t6)=f(t5,t4,t3,t2)。

此外,在RNNLM确定查询语句中每个分词的出现概率之前,还可对RNNLM进行训练。具体地,可获取用户查询日志中的训练预料,根据获得的训练预料训练最初的RNNLM,将训练预料训练完毕后获得最终的RNNLM。其中,训练语料为查询日志中的历史查询语句。通过大量的历史查询语句对RNNLM进行训练,能够提升RNNLM计算分词出现概率的准确率。

S203,根据出现概率计算查询语句的第一困惑度。

具体地,根据RNNLM获得每个分词的出现概率后,根据每个分词的出现概率计算查询语句的第一困惑度。其中,困惑度即ppl,可用于衡量分词的成句概率。

本实施例中,查询语句q的第一困惑度ppl(q)可通过公式二表示,

公式二:其中,M表示查询语句q中分词的个数,p(ti)表示查询语句中某一分词ti的出现概率。

S204,依次删除查询语句中的一个分词,分别计算删除分词后的查询语句的第二困惑度。

具体地,依次删除查询语句中的一个分词,分别计算删除分词后的查询语句的第二困惑度。举例说明如下:

假设查询语句q中有4个分词,即q={t1,t2,t3,t4}。计算删除分词后的查询语句的第二困惑度的步骤为:首先删除分词t1,根据除分词t1外的其他分词的出现概率,然后利用公式二计算删除分词t1后的查询语句q-t1的第二困惑度ppl(q-t1);以此类推,分别计算出删除分词t2后的查询语句q-t2的第二困惑度ppl(q-t2)、删除分词t3后的查询语句q-t3的第二困惑度以及删除分词t4后的查询语句q-t4的第二困惑度ppl(q-t4)。

S205,基于预先训练的冗余词识别模型,根据第一困惑度和第二困惑度确定删除的分词是否为冗余词。

其中,冗余词识别模型为预先训练的用于识别查询语句中冗余词的模型。

具体地,获得查询语句的第一困惑度和删除分词后的查询语句的第二困惑度后,计算第二困惑度与第一困惑度的比值。该比值可通过公式三表示,

公式三:w(ti)=ppl(q-ti)/ppl(q),其中,ppl(q-ti)为删除分词ti后查询语句q-ti的第二困惑度ppl(q-ti),ppl(q)为查询语句q的第一困惑度ppl(q)。

接下来,根据删除分词后的查询语句的第二困惑度与查询语句的第一困惑度的比值和预设阈值,判断该比值是否小于等于预设阈值。如果该比值小于等于预设阈值,则确定删除的分词为冗余词。如果该比值大于预设阈值,则确定删除的分词不是冗余词。可通过公式四表示,

公式四:其中,a是预设阈值,w(ti)是删除分词ti后的查询语句q-ti的第二困惑度ppl(q-ti)与查询语句q的第一困惑度ppl(q)的比值。

如果w(ti)≤a,则I=1,表示删除的分词ti是冗余词。其他的情况下,I=0,表示删除的分词ti不是冗余词。

此外,预设阈值a为训练获得。在训练之前预先设定候选阈值,其中,候选阈值的大小在0到1之间。预设阈值a的训练过程如下:

首先,可从用户的搜索日志中,挖掘搜索相关性不好、用户满意度低的查询语句集合,并人工标注查询语句中的冗余词得到包含冗余词的查询语句样本。然后,测试候选阈值在包含冗余词的查询语句样本上的准确率与召回率,根据准确率与召回率的权衡,选择适当的候选阈值作为预设阈值。

其中,根据准确率与召回率的权衡,选择适当的候选阈值作为预设阈值是指,如果要保证高准确率,则在保证高准确率的情况下,选择召回率高时的候选阈值作为预设阈值。如果要保证高召回率,则在保证高召回率的情况下,选择准确率高时的候选阈值作为预设阈值。

S206,从查询语句中删除冗余分词,以生成新的查询语句。

在确定查询语句中的冗余词之后,可从查询语句中删除冗余词,利用剩下的分词组成新的查询语句。

S207,根据新的查询语句进行搜索。

利用去掉冗余词的查询语句进行搜索,从而获得更加符合用户需求的搜索结果。

综上所述,本发明实施例的基于人工智能的搜索方法,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

下面结合图3对本发明实施例提出的基于人工智能的搜索装置进行详细描述。图3是根据本发明一个实施例的基于人工智能的搜索装置的结构示意图。

如图3所示,该基于人工智能的搜索装置包括:接收模块310、确定模块320、删除模块330、搜索模块340。

接收模块310,用于接收输入的查询语句。

确定模块320,用于基于预先训练的冗余词识别模型确定查询语句中的冗余词。确定模块320包括:第一确定单元321、第一计算单元322、第二计算单元323、第二确定单元324。

第一确定单元321,用于通过RNNLM确定查询语句中每个分词的出现概率。

第一确定单元321具体用于将当前分词的前N个分词输入至RNNLM,其中,N为自然数;通过RNNLM输出当前分词的出现概率。

第一计算单元322,用于根据出现概率计算查询语句的第一困惑度。

第二计算单元323,用于依次删除查询语句中的一个分词,分别计算删除分词后的查询语句的第二困惑度。

第二确定单元324,用于基于预先训练的冗余词识别模型,根据第一困惑度和第二困惑度确定删除的分词是否为冗余词。

第二确定单元324具体用于计算第二困惑度和第一困惑度的比值;如果比值大于等于预设阈值,则确定删除的分词为冗余词。

删除模块330,用于从查询语句中删除冗余词,以生成新的查询语句。

具体地,确定模块320确定查询语句中有冗余词后,删除模块330从查询语句中删除冗余词,生成新的查询语句。

搜索模块340,用于根据新的查询语句进行搜索。

具体地,如果基于预先训练的冗余词识别模型确定查询语句中有冗余词,则删除模块330删除查询语句中的冗余词,生成新的查询语句。生成新的查询语句后,搜索模块340根据新的查询语句进行搜索。

需要说明的是,前述对基于人工智能的搜索方法实施例的解释说明也适用于该实施例的基于人工智能的搜索装置,此处不再赘述。

综上所述,本发明实施例的基于人工智能的搜索装置,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

下面结合图4对基于人工智能的搜索装置进行详细说明。图4是根据本发明一个具体实施例的基于人工智能的搜索装置的结构示意图。

如图4所示,在图3的基础上,基于人工智能的搜索装置还包括:训练模块350。确定模块320还包括训练单元325。

训练模块350,用于在通过RNNLM确定查询语句中每个分词的出现概率之前,获取查询日志中的训练语料,并利用训练语料训练RNNLM。

训练单元325,用于从查询日志中挖掘包含冗余词的查询语句样本,并训练包含冗余词的查询语句样本,以获取预设阈值。

需要说明的是,前述对基于人工智能的搜索方法实施例的解释说明也适用于该实施例的基于人工智能的搜索装置,此处不再赘述。

综上所述,本发明实施例的基于人工智能的搜索装置,通过预先训练的冗余词识别模型确定查询语句中的冗余词,并删除冗余词,生成新的查询语句,根据新的查询语句进行搜索。该方法能够有效地对查询语句进行纠错,去掉冗余词,从而获取更准确的搜索结果,满足用户需求。

在本说明书的描述中,参考术语:“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1