1.本发明涉及互联网技术领域,尤其涉及一种数据搜索方法、装置、设备和存储介质。
背景技术:2.随着互联网技术的发展,人们足不出户地便可通过网络获取自己所需的各种物品和信息。比如,通过各种购物类app在线地购买各种商品。
3.假设用户通过某app可以购买某种类目的商品,如话费充值卡等等。在实际应用中,用户在购买商品时,可能会输出想要反映其购买意图的搜索语句,但是,该搜索语句可能是很短的句子,而且没有上下文信息,比如用户输入的搜索语句为:便宜的、最牛的、速度快的、划算的,等等。这样的搜索语句使得该app不知所云,无法准确地获知用户的真实意图,从而无法为该用户准确地推荐满足其需求的商品。
技术实现要素:4.本发明实施例提供一种数据搜索方法、装置、设备和存储介质,可以为用户提供满足其需求的数据。
5.第一方面,本发明实施例提供一种数据搜索方法,该方法包括:
6.接收用户输入的与数据类目对应的数据搜索信息;
7.若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;
8.根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
9.输出所述数据集。
10.第二方面,本发明实施例提供一种数据搜索装置,该装置包括:
11.接收模块,用于接收用户输入的与数据类目对应的数据搜索信息;
12.处理模块,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
13.输出模块,用于输出所述数据集。
14.第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第一方面所述的数据搜索方法。
15.第四方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,
使所述处理器至少可以实现如第一方面所述的数据搜索方法。
16.第五方面,本发明实施例提供一种数据搜索方法,该方法包括:
17.响应于用户输入的图像,从所述图像中识别出与数据类目对应的数据搜索信息;
18.若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;
19.根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
20.输出所述数据集。
21.第六方面,本发明实施例提供一种数据搜索装置,该装置包括:
22.识别模块,用于响应于用户输入的图像,从所述图像中识别出与数据类目对应的数据搜索信息;
23.获取模块,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
24.输出模块,用于输出所述数据集。
25.第七方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第五方面所述的数据搜索方法。
26.第八方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第五方面所述的数据搜索方法。
27.第九方面,本发明实施例提供一种数据搜索方法,该方法包括:
28.响应于用户输入的视频,从所述视频中识别出与数据类目对应的数据搜索信息;
29.若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;
30.根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
31.输出所述数据集。
32.第十方面,本发明实施例提供一种数据搜索装置,该装置包括:
33.识别模块,用于响应于用户输入的视频,从所述视频中识别出与数据类目对应的数据搜索信息;
34.获取模块,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集;
35.输出模块,用于输出所述数据集。
36.第十一方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第九方面所述的数据搜索方法。
37.第十二方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第九方面所述的数据搜索方法。
38.在本发明实施例中,当用户针对某种数据类目输出数据搜索信息时,若该数据搜索信息是缺省的简短信息,在与该数据类目对应的问答库中不存在与之匹配的参考问询信息,则从与该数据类目对应的数据属性库中确定与该数据搜索信息匹配的属性描述信息,以明确用户是想要搜索具有什么属性特征的数据,进而,再根据与匹配出的属性描述信息对应的属性值筛选条件,从该数据类目对应的候选数据集中筛选出与该属性值筛选条件对应的数据集并输出给用户,从而保证输出给用户的数据是与用户的真实意图相符的数据。
附图说明
39.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1为本发明实施例提供的一种数据属性库构建过程的流程图;
41.图2为本发明实施例提供的一种数据属性库构建结果的示意图;
42.图3为本发明实施例提供的一种数据搜索方法的流程图;
43.图4为本发明实施例提供的一种执行数据搜索方法的场景示意图;
44.图5为本发明实施例提供的另一种数据搜索方法的流程图;
45.图6为本发明实施例提供的又一种数据搜索方法的流程图;
46.图7为本发明实施例提供的一种数据搜索装置的结构示意图;
47.图8为与图7所示实施例提供的数据搜索装置对应的电子设备的结构示意图;
48.图9为本发明实施例提供的另一种数据搜索装置的结构示意图;
49.图10为与图9所示实施例提供的数据搜索装置对应的电子设备的结构示意图;
50.图11为本发明实施例提供的另一种数据搜索装置的结构示意图;
51.图12为与图11所示实施例提供的数据搜索装置对应的电子设备的结构示意图。
具体实施方式
52.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
53.在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
54.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
55.另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
56.本发明实施例提供的数据搜索方法可以由一电子设备来执行,该电子设备可以是诸如pc机、笔记本电脑、智能手机等终端设备,也可以是服务器。该服务器可以是包含一独立主机的物理服务器,或者也可以为虚拟服务器,或者也可以为云服务器。
57.在介绍本发明实施例提供的数据搜索方法的执行过程之前,先介绍下该数据搜索方法的整体思想。数据搜索的过程可以视为是一种人机问答对话的过程。
58.以电商场景为例,会预先建立与商品类目对应的问答库,简单来说,问答库中会包含反映用户购物意图的参考问询信息以及对应的回复数据,该回复数据即体现为一个个商品。从而,当用户输出针对该商品类目的搜索信息时,在问答库中搜索与该搜索信息匹配的参考问询信息,当存在匹配的参考问询信息时,将该参考问询信息对应的回复输出给用户。其中,参考问询信息中会明确地指出商品的属性以及属性值,从而,参考问询信息会清楚地指向某一种或多种具体的商品。
59.但是,当用户针对某种商品类目输出搜索信息时,实际上,可能只给出了很短的搜索语句,而且没有上下文,例如:用户购买话费充值卡,会输入:便宜的、办不了、速度快的、最牛的、划算的等短文本。这类描述往往令人不知所云,即该搜索信息中并未明确地指出想要搜索的商品的属性和属性值,往往只是给出了与商品属性对应的关键词,电商平台可能无法给出准确的商品列表。这是因为,一方面,上述问答库中无法匹配到与这种搜索信息匹配的参考问询信息,另一方面,商品的一些属性是动态变化的。例如,用户输入“便宜的”,某商品多少价格算“便宜”?可能取决于商家所处地点、物价、商品材质、生产日期、政策、物流等一系列因素。从而,这种简短的搜索语句无法明确地对应到具体的商品上。
60.而为了应对用户输入上述较短的、并未指示出想要搜索的商品的属性及属性值的情形,本发明实施例中提出了构建数据属性库的思路。其中,对应于上述电商场景,该数据属性库可以称为商品属性库。商品属性库是与商品类目对应的,其中包含了商品属性、属性描述信息以及属性值筛选条件之间的对应关系。
61.概括来说,本文中的数据搜索信息可以具有这样的特征:数据搜索信息中可以包含对应于数据属性的关键词,但该数据搜索信息中不包含数据属性值,从而单从该数据搜索信息的字面含义上,不能明确定位出需要反馈给用户的数据集。也就是说,该数据搜索信息具有“模糊”的特征,并不能直接对应到某种数据属性的属性值。
62.当然,上述仅以电商场景为例进行了说明,实际上,本发明实施例提供的方案可以适用于多种不同的应用场景中,包括但不限于电商场景,比如还可以包括文章搜索场景,视频搜索场景,等等。从而,下述所说的数据可以是商品、文章、视频等等。
63.下面,先介绍如何构建数据属性库,再介绍如何基于数据属性库进行数据搜索处理。
64.图1为本发明实施例提供的一种数据属性库构建过程的流程图,如图1所示,该方法包括如下步骤:
65.101、获取与数据类目对应的多个搜索语料和多个数据属性。
66.102、根据多个搜索语料确定多个数据属性各自对应的属性描述信息。
67.103、获取多个数据属性各自对应的属性值筛选条件。
68.104、根据多个数据属性、多个数据属性各自对应的属性描述信息和属性值筛选条件,生成数据属性库。
69.在电商场景中,上述数据类目即为商品类目,比如为电话卡类目、连衣裙类目、手机类目,等等。在文章搜索场景中,上述类目比如为财经类目、娱乐类目,等等。
70.可以理解的是,不同数据类目所对应的数据属性可能并不相同,比如手机类目下所对应的商品为各种品牌的手机,其数据属性即商品属性可能包含品牌、型号、操作系统类型、屏幕尺寸、摄像头数量及分辨率,等等。而连衣裙类目所对应的商品为各种连衣裙,其数据属性即商品属性可能包含品牌、颜色、长度、面料、尺码,等等。
71.本发明实施例中,针对任一数据类目来说,可以统计该数据类目下各数据所包含的数据属性,从而得到与该数据类目对应的数据属性。上述多个数据属性可以是该数据类目对应的全部数据属性。
72.针对任一数据类目来说,与该数据类目对应的多个搜索语料可以是历史上众多用户对该数据类目触发的全部或部分搜索信息。该搜索信息可以是文本的形式,也可以是语音形式,当是语音形式时需转换为文本,从而获得如果文本形式的搜索语料。
73.为了兼顾数据计算量以及准确性,可选地,可以通过如下方式获取与任一数据类目对应的多个搜索语料:
74.获取与该数据类目对应的搜索语料集;
75.对搜索语料集中包含的各搜索语料进行分词处理;
76.确定词频最高的预设数量的多个目标词语;
77.从搜索语料集中筛选出包含多个目标词语中任一目标词语的搜索语料作为与该数据类目对应的多个搜索语料。
78.其中,搜索语料集可以由历史上众多用户对该数据类目触发的全部搜索信息构成。
79.对搜索语料集中包含的各搜索语料进行分词处理后,可以得到该搜索语料集中包含的词表,针对该词表中的每个词语,根据该词语在该搜索语料集中的出现次数,确定该词语的词频。从而,基于每个词语的词频可以确定出词频最高的n个词语,n大于1。最后,将包含这n个词语中任一个词语的搜索语料筛选出来,被筛选出的搜索语料即为与该数据类目对应的多个搜索语料中的一个。
80.在得到与某数据类目对应的多个搜索语料和多个数据属性后,根据该多个搜索语料确定多个数据属性各自对应的属性描述信息,其中,对于任一数据属性而言,该数据属性对应的属性描述信息反映出了在该数据属性这个维度下,众多用户习惯使用的搜索关键词是什么。
81.可选地,根据多个搜索语料确定多个数据属性各自对应的属性描述信息,可以实现为:
82.确定多个搜索语料各自对应的编码向量与多个数据属性各自对应的编码向量之间的相似度。对于多个数据属性中的任一数据属性,确定该任一数据属性对应的属性描述
信息中包括与该任一数据属性的编码向量之间的相似度大于设定阈值的搜索语料。具体地,也可以以该条搜索语料中包含的搜索关键词作为与该数据属性对应的属性描述信息。
83.实际应用中,可以预先基于前述搜索语料集训练出一个编码模型,以使用该编码模型得到多个搜索语料各自对应的编码向量以及多个数据属性各自对应的编码向量。该搜索语料集中会包含大量明确指示出数据属性的搜索语料,而且这些搜索语料中也会包含与数据属性对应的属性描述关键词,因此,基于该编码模型可以使得描述同一种数据属性的搜索语料的编码向量之间的距离较近,描述不同数据属性的搜索语料的编码向量之间的距离较远,而且,描述同一种数据属性的各搜索语料的编码向量与该数据属性的编码向量之间的距离较近。
84.举例来说,假设某条搜索语料为:我想要找价格便宜的。另一条搜索语料为:便宜的。其中,数据属性为价格。基于上述编码模型的编码,会使得“价格”的编码向量与“便宜的”的编码向量之间的距离较近。
85.针对上述多个搜索语料和多个数据属性,当基于编码模型得到各自对应的编码向量后,针对每个数据属性来说,可以计算其编码向量与各个搜索语料的编码向量之间的相似度,该相似度比如为通过计算两个编码向量之间的余弦距离、欧式距离等得到。当某搜索语料的编码向量与该数据属性的编码向量之间的相似度大于设定阈值时,认为该搜索语料或该搜索语料中的关键词是与该数据属性对应的一种属性描述信息。
86.另外,可选地,为保证数据属性对应的属性描述信息能够覆盖用户的各种表述习惯,当确定某条搜索语料作为与某数据属性对应的属性描述信息后,还可以对该搜索语料进行同义词扩展(可以是对该搜索语料中包含的关键词进行同义词扩展),从而,与该数据属性对应的属性描述信息中还包括经同义词扩展后得到的信息。举例来说,假设某数据属性为价格,其对应的一条属性描述信息为:便宜的。通过对“便宜的”进行同义词扩展,可以得到诸如贱的、性价比高的、不贵的等同义词。
87.同义词扩展的手段比如可以是收集网络上公开的各种文档数据,对其进行分词处理,对于某数据属性而言,计算每个词语与该数据属性或该数据属性对应的已有属性描述信息之间的相似度,将相似度大于设定阈值的词语确定为与该数据属性对应的一条属性描述信息。
88.另外,值得说明的是,对于某些数据属性而言,其对应的多个属性描述信息中可能存在如下情况:其中的部分属性描述信息的语义与其中的另外一些属性描述信息的语义是截然相反的。举例来说,价格这个数据属性对应的属性描述信息中可能包含这些属性描述信息:便宜的、性价比高的、贱的、贵的、价格较高的。其中,便宜的、性价比高的、贱的具有一种语义,而贵的、价格较高的具有另一种语义。
89.基于此,可选地,对任一数据属性对应的多条属性描述信息还可以进行如下的处理:对该多条属性描述信息进行聚类处理,以经聚类处理得到与该数据属性对应的多个类别的属性描述信息。
90.其中,可以理解的是,这里的多个类别往往是表示语义类别,即得到每个数据属性对应的表示不同语义的属性描述信息。另外,对某数据属性对应的多条属性描述信息进行聚类后也可能仅得到一种类别。在进行聚类处理的过程中,可以预先针对每种数据属性设定对应的聚类参数,比如,针对价格这个数据属性,预先设定属性描述信息的编码向量之间
的相似度阈值,以便将属性描述信息的编码向量之间的相似度满足该相似度阈值的属性描述信息聚为一类。在比如针对使用时长这个数据属性,可以预先设定不同的时长范围,从而,将对应于某种时长范围的属性描述信息聚为一类。
91.在得到多个数据属性各自对应的属性描述信息后,可以将多个数据属性以及每种数据属性对应的全部或部分属性描述信息输出给各数据提供方(如商家)或某管理人员(如电商平台的维护人员、新闻网站的维护人员),由数据提供方或管理人员设置与各数据属性对应的属性值筛选条件。
92.可以理解的是,若某数据属性对应有多个类别的属性描述信息,则设置与每个类别的属性描述信息对应的属性值筛选条件。
93.以电商场景为例,假设某商品类目下的某数据属性为价格,该价格下对应有“便宜的”和“贵的”两种类别的属性描述信息,对于该商品类目下对应的任一商家来说,该商家可以根据自身情况设定与“便宜的”这种属性描述信息对应的属性值筛选条件为:(0,100]或(0,top*60%]。其中,(0,100]表示该商家设定自己销售的该商品类目下的商品,价格如果小于或等于100元,则是便宜的。(0,top*60%]表示该商家设定自己销售的该商品类目下的多个商品,价格如果小于或等于这多个商品中最高价格(即top)的60%,则是便宜的。
94.由此可见,各个商家可以结合自身情况而设定与每种属性描述信息对应的属性值筛选条件,基于每种数据属性对应的属性描述信息与属性值筛选条件的设定,可以将用户输入的比较模糊的数据搜索信息映射为能够明确量化的属性值筛选条件,从而辅助用户的数据搜索处理。
95.为便于理解,下面结合图2来示例性说明经过上述构成过程得到的数据属性库的组成。
96.在图2中,以商品类目为电话卡为例,假设包含的数据属性包括价格、速度、使用时间三种属性,每种数据属性对应有多种属性描述信息,并且,每种数据属性对应有属性值筛选条件。
97.下面结合以下实施例说明如何基于前述实施例构建的数据属性库进行数据搜索。
98.图3为本发明实施例提供的一种数据搜索方法的流程图,如图3所示,该方法包括如下步骤:
99.301、接收用户输入的与数据类目对应的数据搜索信息。
100.实际应用中,用户可以以文本形式或语音形式输入该数据搜索信息,当以语音形式说出该数据搜索信息时,可以对该语音进行文字转换,以得到文本形式的数据搜索信息。
101.302、若与数据类目对应的问答库中不存在与数据搜索信息匹配的参考问询信息,则从与数据类目对应的数据属性库中确定与数据搜索信息匹配的属性描述信息,根据属性描述信息对应的属性值筛选条件,从数据类目对应的候选数据集中筛选出与属性值筛选条件对应的数据集。
102.303、输出所述数据集。
103.如前文所述,在与某数据类目对应的问答库中包含有参考问询信息以及与参考问询信息对应的回复数据,若能够在问答库中寻找到与用户当前输入的数据搜索信息匹配的参考问询信息,则直接向用户输出与该参考问询信息对应的回复数据即可。
104.在一可选实施例中,该问答库可以实现为与上述数据类目对应的知识库,或者称
为知识图谱。在知识库中包括与该数据类目对应的实体和实体关系。从而,若用户输入的数据搜索信息中不包含知识库中的实体,则确定知识库中不存在与该数据搜索信息匹配的参考问询信息。
105.以电商场景为例,某种商品类目对应的知识库中的实体,可以包括商品、商品属性值,此时,商品实体和商品属性值实体之间的实体关系可以是属性。当然,实体也可以是商品,此时,每个商品可以关联有多个属性值,两个商品实体之间的实体关系可以是两个商品之间的关系。
106.有关知识图谱的概念本文中不做具体阐述,属于现有技术。
107.本实施例中仅强调的是,当上述问答库实现为知识库时,可以通过识别用户当前输入的数据搜索信息中是否包含知识库中的实体来确定是否能够在该知识库中寻找到与该数据搜索信息对应的数据集。实际应用中,可以通过命名实体识别模型来识别数据搜索信息中是否包含知识库中的实体。
108.当问答库中不存在与数据搜索信息匹配的参考问询信息时,使用前述构建的与该数据类目对应的数据属性库来进行数据搜索处理。
109.首先,从该数据属性库中确定与用户输入的数据搜索信息匹配的属性描述信息。具体地,可以先查询该数据搜索信息是否存在于数据属性库中,即是否在数据属性库中存在一条属性描述信息与该数据搜索信息一致。如果该数据搜索信息不存在于数据属性库中,则对该数据搜索信息进行编码,以得到该数据搜索信息对应的编码向量,进而,确定数据属性库中各属性描述信息对应的编码向量与该数据搜索信息对应的编码向量之间的相似度。最终,确定与该数据搜索信息对应的编码向量之间的相似度大于设定阈值的属性描述信息为与该数据搜索信息匹配的属性描述信息。
110.在得到与该数据搜索信息匹配的属性描述信息后,根据该属性描述信息对应的属性值筛选条件,从数据类目对应的候选数据集中筛选出与该属性值筛选条件对应的数据集。
111.为便于理解,下面结合图4所示实施例来示例性说明该数据搜索方法的执行过程。
112.在图4中,以电商场景为例,电商的服务器中维护有众多商品类目,假设用户当前触发的是电话卡类目。假设用户输入的数据搜索信息为:要快的。基于图4中示意的数据属性库可知,用户终端在接收到用户的数据搜索信息之后,通过计算数据搜索信息的编码向量与各属性描述信息的编码向量之间的相似度,确定与数据搜索信息与数据属性库中的“网速快的”这个属性描述信息的相似度符合要求,从而,以该属性描述信息对应的属性值筛选条件:产品代数(generation)>3g来从服务器中存储的电话卡中,筛选出符合该属性值筛选条件的电话卡,比如图4中示意的卡1、卡2、卡3
···
卡n。
113.值得说明的是,在可以由各商家根据自身情况设定与每个数据属性(或者说每种属性描述信息)对应的属性值筛选条件的情况下,各个商家针对同一数据属性而设定的属性值筛选条件未必相同,因此,上述与匹配出的属性描述信息对应的属性值筛选条件的个数可能是多个,此时,可以根据每个商家各自设定的属性值筛选条件对各自的商品进行筛选,以筛选出各自的商品中满足自己设定的属性值筛选条件的商品。
114.在一可选实施例中,当筛选出与用户的数据搜索信息对应的数据集后,可以按照随机顺序依次显示该数据集中包含的各数据。在另一可选实施例中,也可以根据该数据集
中各数据对应的属性值,确定该数据集中各数据的显示顺序。比如,按照属性值从低到高的顺序或从高到低的顺序。
115.另外,以电商场景为例,如上文所述,每个商家针对同一类属性描述信息设定的属性值筛选条件未必相同。以价格这个属性为例,针对“便宜的、贱的、性价比高的”这类属性描述信息,假设大部分商家设定的属性值筛选条件为(0,100],个别商家设定的属性值筛选条件为[200,300]。此时,可以认为[200,300]这个条件属于异常的,在进行数据筛选的过程中,可以将该异常条件剔除。或者,在对数据集中的数据进行排序的过程中,进行异常属性值的处理:检测数据集中存在的异常属性值;剔除异常属性值对应的数据,或者,将异常属性值对应的数据排列在非异常属性值对应的数据之后。可选地,在进行异常属性值检测的时候,可以将该数据集中包含的属性值拟合成高斯分布曲线,将远离高斯分布曲线的属性值确定为异常属性值。
[0116]
以上实施例中介绍的是基于数据属性库进行数据搜索。实际应用中,还可以获取一些其他因素,以辅助进行数据搜索。
[0117]
比如,在一可选实施例中,可以获取用户的特征信息,从而,在通过上述属性值筛选条件得到某数据集(为便于描述,称为第一数据集)后,可以进一步从该数据集中筛选出与用户的特征信息匹配的数据集(称为第二数据集)。
[0118]
可选地,用户的特征信息包括如下至少一种:位置信息、历史搜索行为。其中,位置信息,用于将第一数据集中不符合该位置信息的数据剔除。其中,以电商场景为例,历史搜索行为反映了该用户曾经搜索或购买了哪个具体的商品,从而,可以根据该商品信息对第一数据集中的商品进行过滤,比如过滤出同一品牌的商品。
[0119]
举例来说,针对上述购买电话卡的场景,某北京地区的用户输入“便宜的”这个数据搜索信息,在根据数据属性库获得上述第一数据集后,可以从中筛选出商家地址属于北京的或者适用地址属于北京的数据,构成第二数据集。
[0120]
综上,当用户针对某种数据类目输出数据搜索信息时,若该数据搜索信息是缺省的简短信息,无法准确定位出用户想要搜索的数据符合具体的什么属性条件时,可以通过本发明实施例提供的方案为用户推荐符合其需求的数据集。而该方案的重点在于,将用户输入的简短信息,映射为筛选数据的属性值筛选条件,以量化用户的搜索意图。
[0121]
图5为本发明实施例提供的另一种数据搜索方法的流程图,如图5所示,该数据搜索方法可以包括如下步骤:
[0122]
501、响应于用户输入的图像,从图像中识别出与数据类目对应的数据搜索信息。
[0123]
502、若与数据类目对应的问答库中不存在与数据搜索信息匹配的参考问询信息,则从与数据类目对应的数据属性库中确定与数据搜索信息匹配的属性描述信息。
[0124]
503、根据属性描述信息对应的属性值筛选条件,从数据类目对应的候选数据集中筛选出与属性值筛选条件对应的数据集。
[0125]
504、输出所述数据集。
[0126]
本实施例中,用户输入数据搜索信息的方式不限于前述其他实施例中所述的文字、语音方式,还可以通过输入图像的方式来提供数据搜索信息。
[0127]
以电商场景为例,上述数据类目为某商品类目。用户通过点击该商品类目在浏览该商品类目下包含的众多商品的过程中,当浏览到某个商品的时候,看到该商品的优势特
点,如果其中某个优势特点是该用户感兴趣的,该用户可以通过截图的方式将包含描述该优势特点的文字截取出来,进而,该用户可以触发如下的搜索操作:在与上述商品类目对应的搜索界面中,上传截取出的图像。基于此,触发本实施例提供的上述多个步骤的执行。其中,上述优势特点往往是与某种数据属性(电商场景下,为商品属性)对应的关键词。比如,商品类目为电话卡,优势特点为:便宜、网速快。
[0128]
具体地,接收到用户输入的图像后,可以对图像进行字符识别处理,以获取图像中包含的文字,如通过光学字符识别(optical character recognition,简称ocr)技术识别图像中包含的文字。之后,从识别出的全部文字中提取出与数据属性对应的关键词作为数据搜索信息。
[0129]
由于实际应用中,用户提供的图像中可能包含一些干扰文字,这些干扰文字不应被包含在数据搜索信息内,因此,需要从识别得到的全部文字中提取出能够作为数据搜索信息的文字。提取出的文字是与数据属性对应的关键词,亦即为上文中所述的描述优势特点的文字。可选地,由于用户截取描述上述优势特点的关键词时,该关键词往往在截取的图像中占据主要位置,且一般来说,关键词的字号相比其他干扰文字更大,因此,可以根据这些图像特征来提取出作为数据搜索信息的关键词。
[0130]
上述举例中,数据类目(如商品类目)是用户主动从类目列表中选择的,但是,可选地,也可以通过其他方式获知用户当前想要搜索的数据类目,具体实现方式如下:用户输入的图像中包括物品,从而,可以确定该物品对应的类别作为该用户想要进行数据搜索的数据类目。
[0131]
实际应用中,用户可以提供一张图像,这张图像中既包含上述关键词,又包含物品。用户也可以提供两张图像,一张图像中包含上述关键词,另一张图像中包含物品。
[0132]
对于包含物品的图像,可以通过现有的各种图像分类方案识别出图像中包含的物品的类别,以该类别作为数据类目。
[0133]
当然,可以理解的是,对数据类目的确定方式不限于此,比如,用户提供的一张图像中既包含有上述关键词,又包含物品名称(比如电话卡),基于对物品名称的提取,也可以确定出数据类目。
[0134]
本实施例中,步骤502-503的执行过程可以参考前述其他实施例中的相关说明,在此不赘述。
[0135]
图6为本发明实施例提供的又一种数据搜索方法的流程图,如图6所示,该方法可以包括如下步骤:
[0136]
601、响应于用户输入的视频,从视频中识别出与数据类目对应的数据搜索信息。
[0137]
602、若与数据类目对应的问答库中不存在与数据搜索信息匹配的参考问询信息,则从与数据类目对应的数据属性库中确定与数据搜索信息匹配的属性描述信息。
[0138]
603、根据属性描述信息对应的属性值筛选条件,从数据类目对应的候选数据集中筛选出与属性值筛选条件对应的数据集。
[0139]
604、输出所述数据集。
[0140]
本实施例中,用户输入数据搜索信息的方式不限于前述其他实施例中所述的文字、语音、图像方式,还可以通过输入视频的方式来提供数据搜索信息。
[0141]
任以电商场景为例,上述数据类目为某商品类目。假设用户原本已经拥有某商品,
但是该商品坏了或者用户想要换一个新的,则该用户产生了想要再购买一个这类商品(是指想要购买同一商品类目下的商品,不一定与原本所拥有的商品完全一样)的需求。此时,该用户可以对着坏了的商品拍摄个短视频,在拍摄的过程中还可以语音说出购买意愿。其中,该购买意愿可以通过反映商品属性的关键词来表征。比如用户是想买个手机,说出诸如“我想买个大屏幕的、重量轻的”这种语音。
[0142]
在拍得上述视频后,该用户可以触发如下的搜索操作:在与上述商品类目对应的搜索界面中或者在购物app的首页界面中,上传拍摄的视频。基于此,触发本实施例提供的上述多个步骤的执行。
[0143]
基于用户上传的视频,上述步骤601可以实现为:
[0144]
从视频中提取出语音信息以及包含物品的至少一帧图像;
[0145]
对该至少一帧图像进行分类识别处理,以确定出的物品对应的类别作为数据类目;
[0146]
将语音信息转换为文本信息,从文本信息中提取出数据搜索信息。
[0147]
对于包含物品的至少一帧图像,可以通过现有的各种图像分类方案识别出各帧图像中包含的物品的类别,如果全部图像帧中识别出的物体类别都相同或大部分相同,则以该物体类别作为数据类目。
[0148]
从上述本文信息中提取出数据搜索信息,具体可以是:对文本信息进行关键词提取,将提取出的关键词作为数据搜索信息。在上述“我想买个大屏幕的、重量轻的”的举例中,提取出的关键词为:大屏幕、重量轻。
[0149]
本实施例中,步骤602-603的执行过程可以参考前述其他实施例中的相关说明,在此不赘述。
[0150]
以下将详细描述本发明的一个或多个实施例的数据搜索装置。本领域技术人员可以理解,这些数据搜索装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
[0151]
图7为本发明实施例提供的一种数据搜索装置的结构示意图,该数据搜索装置可以设置在前文所述的电子设备中。如图7所示,该装置包括:接收模块11、处理模块12、输出模块13。
[0152]
接收模块11,用于接收用户输入的与数据类目对应的数据搜索信息。
[0153]
处理模块12,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集。
[0154]
输出模块13,用于输出所述数据集。
[0155]
可选地,所述数据搜索信息中包含对应于数据属性的关键词,所述数据搜索信息中不包含数据属性值。
[0156]
可选地,所述装置还包括:获取模块和筛选模块。
[0157]
获取模块,用于获取所述用户的特征信息。
[0158]
筛选模块,用于从与所述属性值筛选条件对应的数据集中筛选出与所述用户的特征信息匹配的数据集。
[0159]
可选地,所述用户的特征信息包括如下至少一种:位置信息、历史搜索行为。
[0160]
可选地,所述处理模块12具体用于:若所述数据搜索信息不存在于所述数据属性库中,则对所述数据搜索信息进行编码,以得到所述数据搜索信息对应的编码向量;确定所述数据属性库中各属性描述信息对应的编码向量与所述数据搜索信息对应的编码向量之间的相似度;确定与所述数据搜索信息对应的编码向量之间的相似度大于设定阈值的属性描述信息为与所述数据搜索信息匹配的属性描述信息。
[0161]
可选地,所述装置包括:生成模块。
[0162]
所述生成模块,用于获取与所述数据类目对应的多个搜索语料和多个数据属性;根据所述多个搜索语料确定所述多个数据属性各自对应的属性描述信息;获取所述多个数据属性各自对应的属性值筛选条件;根据所述多个数据属性、所述多个数据属性各自对应的属性描述信息和属性值筛选条件,生成所述数据属性库。
[0163]
可选地,所述生成模块具体用于:确定所述多个搜索语料各自对应的编码向量与所述多个数据属性各自对应的编码向量之间的相似度;对于所述多个数据属性中的任一数据属性,确定所述任一数据属性对应的属性描述信息中包括与所述任一数据属性的编码向量之间的相似度大于设定阈值的搜索语料。
[0164]
可选地,所述生成模块还用于:对与所述任一数据属性的编码向量之间的相似度大于设定阈值的搜索语料,进行同义词扩展;确定所述任一数据属性对应的属性描述信息中包括经所述同义词扩展后得到的信息。
[0165]
可选地,所述生成模块还用于:对所述任一数据属性对应的属性描述信息进行聚类处理;若经所述聚类处理得到与所述任一数据属性对应的多个类别的属性描述信息,则获取与所述多个类别的属性描述信息分别对应的属性值筛选条件。
[0166]
可选地,所述生成模块具体用于:获取与所述数据类目对应的搜索语料集;对所述搜索语料集中包含的各搜索语料进行分词处理;
[0167]
确定词频最高的预设数量的多个目标词语;从所述搜索语料集中筛选出包含所述多个目标词语中任一目标词语的搜索语料作为所述多个搜索语料。
[0168]
可选地,所述输出模块13还用于:根据所述数据集中各数据对应的属性值,确定所述数据集中各数据的显示顺序。
[0169]
可选地,所述输出模块13还用于:检测所述数据集中存在的异常属性值;剔除所述异常属性值对应的数据,或者,将所述异常属性值对应的数据排列在非异常属性值对应的数据之后。
[0170]
可选地,所述数据类目为商品类目,所述数据集为商品集合。
[0171]
可选地,所述问答库为知识库,所述知识库中包括所述数据类目对应的实体和实体关系。所述处理模块12具体可以用于:若所述数据搜索信息中不包含所述知识库中的实体,则确定所述知识库中不存在与所述数据搜索信息匹配的参考问询信息。
[0172]
图7所示装置可以执行前述图1至图4所示实施例中提供的数据搜索方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
[0173]
在一个可能的设计中,上述图7所示数据搜索装置的结构可实现为一电子设备,如图8所示,该电子设备可以包括:第一处理器21、第一存储器22。其中,第一存储器22上存储有可执行代码,当所述可执行代码被第一处理器21执行时,使第一处理器21至少可以实现
如前述图1至图4所示实施例中提供的数据搜索方法。
[0174]
可选地,该电子设备中还可以包括第一通信接口23,用于与其他设备进行通信。
[0175]
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使处理器至少可以实现如前述图1至图4所示实施例中提供的数据搜索方法。
[0176]
图9为本发明实施例提供的另一种数据搜索装置的结构示意图,该数据搜索装置可以设置在前文所述的电子设备中。如图9所示,该装置包括:识别模块31、获取模块32、输出模块33。
[0177]
识别模块31,用于响应于用户输入的图像,从所述图像中识别出与数据类目对应的数据搜索信息。
[0178]
获取模块32,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集。
[0179]
输出模块33,用于输出所述数据集。
[0180]
可选地,识别模块31具体可以用于:对所述图像进行字符识别处理,以获取所述图像中包含的文字;从所述文字中提取出与数据属性对应的关键词作为所述数据搜索信息。
[0181]
可选地,所述图像中包括物品,识别模块31具体可以用于:确定所述物品对应的类别作为所述数据类目。
[0182]
图9所示装置可以执行前述图5所示实施例中提供的数据搜索方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
[0183]
在一个可能的设计中,上述图9所示数据搜索装置的结构可实现为一电子设备,如图10所示,该电子设备可以包括:第二处理器41、第二存储器42。其中,第二存储器42上存储有可执行代码,当所述可执行代码被第二处理器41执行时,使第二处理器41至少可以实现如前述图5所示实施例中提供的数据搜索方法。
[0184]
可选地,该电子设备中还可以包括第二通信接口43,用于与其他设备进行通信。
[0185]
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使处理器至少可以实现如前述图5所示实施例中提供的数据搜索方法。
[0186]
图11为本发明实施例提供的另一种数据搜索装置的结构示意图,该数据搜索装置可以设置在前文所述的电子设备中。如图11所示,该装置包括:识别模块51、获取模块52、输出模块53。
[0187]
识别模块51,用于响应于用户输入的视频,从所述视频中识别出与数据类目对应的数据搜索信息。
[0188]
获取模块52,用于若与所述数据类目对应的问答库中不存在与所述数据搜索信息匹配的参考问询信息,则从与所述数据类目对应的数据属性库中确定与所述数据搜索信息匹配的属性描述信息;根据所述属性描述信息对应的属性值筛选条件,从所述数据类目对应的候选数据集中筛选出与所述属性值筛选条件对应的数据集。
[0189]
输出模块53,用于输出所述数据集。
[0190]
可选地,所述视频中包括物品,识别模块51具体可以用于:从所述视频中提取出语音信息以及包含所述物品的至少一帧图像;对所述至少一帧图像进行分类识别处理,以确定出的所述物品对应的类别作为所述数据类目;将所述语音信息转换为文本信息;从所述文本信息中提取出所述数据搜索信息。
[0191]
图11所示装置可以执行前述图6所示实施例中提供的数据搜索方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
[0192]
在一个可能的设计中,上述图11所示数据搜索装置的结构可实现为一电子设备,如图12所示,该电子设备可以包括:第三处理器61、第三存储器62。其中,第三存储器62上存储有可执行代码,当所述可执行代码被第三处理器61执行时,使第三处理器61至少可以实现如前述图6所示实施例中提供的数据搜索方法。
[0193]
可选地,该电子设备中还可以包括第三通信接口63,用于与其他设备进行通信。
[0194]
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使处理器至少可以实现如前述图6所示实施例中提供的数据搜索方法。
[0195]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0196]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0197]
本发明实施例提供的数据搜索方法可以由某种程序/软件来执行,该程序/软件可以由网络侧提供,前述实施例中提及的电子设备可以将该程序/软件下载到本地的非易失性存储介质中,并在其需要执行前述数据搜索方法时,通过cpu将该程序/软件读取到内存中,进而由cpu执行该程序/软件以实现前述实施例中所提供的数据搜索方法,执行过程可以参见前述图1至图6中的示意。
[0198]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。