基于人工智能的查询方法和装置与流程

文档序号:11134078阅读:551来源:国知局
基于人工智能的查询方法和装置与制造工艺

本申请涉及互联网技术领域,尤其涉及一种基于人工智能的查询方法和装置。



背景技术:

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

随着技术的发展,具有相同功能的应用(APP)越来越多,比如,多个APP都可以用于团购。以及,一个APP包含的功能也越来越多,可以提供不同功能,比如,原来仅做团购的网站现在也做外卖。对用户来说,每一次选择都希望是最优选择,即价格、时间、地点等都是最优的;这就希望在多个APP间进行选择,但是受限于手机性能,一般用户很少装太多的同类APP,或者同一时间很难将所有APP打开进行条件比较,这就导致用户的选择未必是最优的选择,同时在选择的时候,还浪费了用户很多时间。



技术实现要素:

本申请旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本申请的一个目的在于提出一种基于人工智能的查询方法,该方法可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。

本申请的另一个目的在于提出一种基于人工智能的查询装置。

为达到上述目的,本申请第一方面实施例提出的基于人工智能的查询方法,包括:接收查询词;分析所述查询词,确定所述查询词对应的需求领域和需求条件;根据所述需求领域和需求条件获取同类APP,并对获取的同类APP进行排序后反馈给用户。

本申请第一方面实施例提出的基于人工智能的查询方法,通过获取同类APP并对同类APP进行排序后反馈给用户,可以整合各APP,并通过一个统一的接口向用户反馈同类APP,从而用户可以通过统一接口查看到多种同类APP,方便用户进行比较,可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。

为达到上述目的,本申请第二方面实施例提出的基于人工智能的查询装置,包括:接收模块,用于接收查询词;分析模块,用于分析所述查询词,确定所述查询词对应的需求领域和需求条件;反馈模块,用于根据所述需求领域和需求条件获取同类APP,并对获取的同类APP进行排序后反馈给用户。

本申请第二方面实施例提出的基于人工智能的查询装置,通过获取同类APP并对同类APP进行排序后反馈给用户,可以整合各APP,并通过一个统一的接口向用户反馈同类APP,从而用户可以通过统一接口查看到多种同类APP,方便用户进行比较,可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。

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

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是本申请一个实施例提出的基于人工智能的查询方法的流程示意图;

图2是本申请另一个实施例提出的基于人工智能的查询方法的流程示意图;

图3是本申请实施例中需求领域和需求条件的一种识别结果示意图;

图4是本申请一个实施例提出的基于人工智能的查询装置的结构示意图;

图5是本申请另一个实施例提出的基于人工智能的查询装置的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的模块或具有相同或类似功能的模块。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。

图1是本申请一个实施例提出的基于人工智能的查询方法的流程示意图。

如图1所示,本实施例的方法包括:

S11:接收查询词。

其中,查询词(query)可以是由用户输入的,用户可以以语音、文本或图片等形式输入查询词。

S12:分析所述查询词,确定所述查询词对应的需求领域和需求条件。

其中,需求领域是指查询词需要调用的APP的功能,如打车、美食团购、外卖、送药上门、洗衣、保洁等。

在分析查询词时,可以根据预先构建的模型识别查询词对应的需求领域。比如,模型是根据历史查询词和历史查询词的需求领域进行训练后生成的,可以表明查询词的特征与对应的需求领域之间的关系,因此,在当前接收到查询词后,可以提取查询词的特征,再根据模型可以确定出对应的需求领域。

需求领域可以确定调用具有哪些功能的APP,但是具有这些功能的APP不一定能够满足query的条件,因此需要对query进行进一步识别,确定需求条件。需求条件是具有相应功能的APP需要进一步满足的条件,例如,时间、版本等。每个query对应的需求条件可以为一个或多个,当为多个时,多个需求条件分别记录。

例如,query=“周六下午2点左右的独立日英文版的”,对query进行分析后得到的需求条件包括:开始时间=周六13:30-14:30,电影名称=独立日,版本=英文版。

S13:根据所述需求领域和需求条件获取同类APP,并对获取的同类APP进行排序后反馈给用户。

在确定出需求领域后,可以查找具有相应功能的APP,比如,确定出的需求领域是打车,则查找出一些具有打车功能的APP。进一步的,在确定出需求条件后,可以在具有相应功能的APP中查找出满足需求条件的APP,比如,在打车这一需求领域,确定出的需求条件可以包括时间、地点等,则可以进一步在具有打车功能的APP中确定出时间和地点满足用户需求的APP。

在根据需求领域和需求条件获取同类APP后,可以根据预设参数对这些同类APP进行排序,如按照距离、价格或时间等参数进行排序,并在排序后反馈给用户,以供用户在这些同类APP中选择。进一步的,在将同类APP反馈给用户时,可以是将这些同类APP展示在同一界面内,以方便用户比较。

本实施例中,通过获取同类APP并对同类APP进行排序后反馈给用户,可以整合各APP,并通过一个统一的接口向用户反馈同类APP,从而用户可以通过统一接口查看到多种同类APP,方便用户进行比较,可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。

图2是本申请另一个实施例提出的基于人工智能的查询方法的流程示意图。

如图2所示,本实施例的方法包括:

S201:获取训练数据。

其中,可以采用人工收集或从系统日志中获取训练数据。

训练数据包括历史查询词,历史查询词主要来自各APP内的查询词,还可以来自搜索引擎中点击了对应APP的查询词,例如,用户在手机上搜索“订电影票”,点击了百度糯米,或者百度推荐的其他相关软件等,则可以将“订电影票”这一query作为训练数据中的一个历史查询词。另外,训练数据还包括历史查询词对应的需求领域,如果历史query已经直接定位到具体需求领域上,则直接标注对应的需求领域,若无,则进行人工标注。

S202:根据训练数据提取特征。

在获取到历史查询词后,可以提取历史查询词的特征。

特征主要包含query中的上下文,即单个词条(term)、term组合、term词性,以及这里比较重要的一个特征是:term的上位词或类别。这个特征主要是保证识别召回率。如“订绝地逃亡”,需要识别“绝地逃亡”为“电影”,然后把这个上位词作为一维特征。

S203:根据所述特征进行训练,生成模型。

在模型训练时,可以将特征作为模型的输入,需求领域的信息作为输出,训练使得经过模型得到的输出预测值与需求领域的真实值之间的误差最小。具体可以采用深度神经网络(Deep Neural Network,DNN)进行训练。

进一步的,在模型训练时,可以获取各需求领域的训练数据,以及对应每个需求领域训练生成一个模型,从而针对新的查询词,分别通过各需求领域对应的模型进行打分,根据打分确定新的查询词对应的需求领域,比如将得分最高的模型对应的需求领域确定为新的查询词对应的需求领域。

通过上述步骤可以完成模型的建立,之后该模型可以用于对新的查询词的需求领域的识别。

S204:接收查询词。

其中,查询词(query)可以是由用户输入的,用户可以以语音、文本或图片等形式输入查询词。

S205:提取接收的查询词的特征。

特征主要包含query中的上下文,即单个词条(term)、term组合、term词性,以及这里比较重要的一个特征是:term的上位词或类别。这个特征主要是保证识别召回率。如“订绝地逃亡”,需要识别“绝地逃亡”为“电影”,然后把这个上位词作为一维特征。

S206:根据提取的特征和已建立的模型,识别接收的查询词对应的需求领域。

例如,对应每个需求领域存在一个模型时,则可以将提取的特征分别作为每个模型的输入,之后将模型输出值最高的模型对应的需求领域,确定为接收的查询词对应的需求领域。

比如,通过模型可以识别出接收的查询词的需求领域是打车、美食团购或外卖等。

S207:识别接收的查询词的需求条件。

其中,可以对查询词本身进行分析,以确定查询词包括的条件,条件如一些时间、地点等限制信息。

例如,query=我想去上海,你帮我看一下有没有火车票;

经过需求领域和需求条件识别,得到的识别结果可以如图3所示。

如图3所示,需求领域是“买火车票”,需要条件包括:出发地、目的地、出发日和出发时间,其中,出发地默认是本地(current city),current city可以通过手机定位确定的城市地点,对于current date就是当前时间,直接调用已有模块进行识别;出发时间是空,则返回current date的所有可预订车次信息。

S208:按照需求领域和需求条件进行APP筛选。

其中,每个APP在上线前可以标记需求领域和需求条件,以在用户查询时根据标记信息进行匹配。

具体的,各APP标记需求领域tag,即该APP有哪些功能;每一个APP都有确定的功能,直接人工总结,并监控APP升级,若有新的功能,则进行新的tag标记。各需求领域建立对应的条件体系,也算是领域内的框架建设,如电影领域,包含场次(开始、结束时间)、中文或英文、2D或3D、电影名称、影院名称、影院位置、价格、剩余座位数等;对于打车领域,体系包含起始地点、终止地点、时间、车型、类型(专车、顺风车等)、司机性别等。各APP的同一需求领域的条件体系大致相同,按着并集进行整理以及建立,这部分按着需求领域,直接挖掘解析APP对应的官网HTML文件。

在识别出需求领域和需求条件后,可以分别与每个APP标记的需求领域和需求条件进行匹配。具体的,按条件查询各个具有该需求领域的APP,即条件需要对应满足,以及每一个APP满足了几个条件等;直接按着各个条件,匹配APP对应的体系,若value值全匹配上或者模糊匹配上,则可以认为匹配。

S209:对符合需求领域和需求条件的APP进行排序,并返回给用户。

具体的,若有满足所有条件的APP,则优先返回,并按着距离远近、价格、时间等进行排序;若无满足所有条件的APP,则按着满足条件数量由多到少进行返回。

本实施例中,通过获取同类APP并对同类APP进行排序后反馈给用户,可以整合各APP,并通过一个统一的接口向用户反馈同类APP,从而用户可以通过统一接口查看到多种同类APP,方便用户进行比较,可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。进一步的,通过在提取的特征中包括上位词或类别,可以保证识别召回率。

图4是本申请一个实施例提出的基于人工智能的查询装置的结构示意图。

如图4所示,该装置40包括:接收模块41、分析模块42和反馈模块43。

接收模块41,用于接收查询词;

分析模块42,用于分析所述查询词,确定所述查询词对应的需求领域和需求条件;

反馈模块43,用于根据所述需求领域和需求条件获取同类APP,并对获取的同类APP进行排序后反馈给用户。

一些实施例中,如图5所示,本实施例的装置40还包括:

获取模块44,用于获取训练数据;

提取模块45,用于根据所述训练数据提取特征;

生成模块46,用于根据所述特征进行训练,生成模型。

一些实施例中,所述分析模块用于分析所述查询词,确定所述查询词对应的需求领域,包括:

提取所述查询词的特征;

根据所述查询词的特征和所述模型,确定所述查询词对应的需求领域。

一些实施例中,所述特征包括:对查询词进行分词后得到的词条的上位词或类别。

一些实施例中,所述反馈模块用于对获取的同类APP进行排序后反馈给用户,包括:

在同一界面中展现排序后的同类APP。

可以理解的是,本实施例的装置与上述方法实施例对应,具体内容可以参见方法实施例中的相关描述,在此不再详细说明。

本实施例中,通过获取同类APP并对同类APP进行排序后反馈给用户,可以整合各APP,并通过一个统一的接口向用户反馈同类APP,从而用户可以通过统一接口查看到多种同类APP,方便用户进行比较,可以在用户没有安装多个同类APP的基础上也可以比较多个同类APP,以及可以节省用户对同类APP的比较时间,这些都会显著提高用户体验。

可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。

需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

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

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