CN117171216A - 产品查找方法、装置、计算机设备及介质 - Google Patents
产品查找方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN117171216A CN117171216A CN202310803812.9A CN202310803812A CN117171216A CN 117171216 A CN117171216 A CN 117171216A CN 202310803812 A CN202310803812 A CN 202310803812A CN 117171216 A CN117171216 A CN 117171216A
- Authority
- CN
- China
- Prior art keywords
- product
- products
- initial
- attribute
- comparison result
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000012545 processing Methods 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 18
- 238000003860 storage Methods 0.000 claims description 11
- 230000003993 interaction Effects 0.000 claims description 8
- 230000008030 elimination Effects 0.000 claims description 2
- 238000003379 elimination reaction Methods 0.000 claims description 2
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 239000000047 product Substances 0.000 claims 144
- 239000013066 combination product Substances 0.000 claims 1
- 229940127555 combination product Drugs 0.000 claims 1
- 238000012216 screening Methods 0.000 abstract description 23
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 7
- 238000005070 sampling Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005587 bubbling Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理技术领域,尤其涉及一种产品查找方法、装置、计算机设备及介质。该方法从产品数据库中随机选择N个初始产品发送给目标用户以获取产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品,根据产品数据库中除初始产品外的每一第二产品和第一产品根据产品属性信息的第一属性比较结果,将小于或等于目标属性比较结果的第二产品确定为第三产品,从产品数据库中排除第一产品和第三产品,若得到的剩余产品集合满足预设条件,以剩余产品集合作为产品查找结果,通过少量产品的产品偏好程度,结合属性比较结果对产品进行筛选,降低了用户的筛选负荷,适用于高维属性的产品和多样化的用户偏好,从而提高了产品查找效率和准确率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种产品查找方法、装置、计算机设备及介质。
背景技术
目前,数据处理场景下的一个基本任务为帮助具有未知偏好的用户在大型产品数据库中确定其对应的查找产品,例如,帮助学者在科学文献中寻找目标论文,或者给用户推荐其喜欢的电影,然而,产品的查找过程是高度个性化的,并且大多数时候用户并不能精确地描述自己的需求,因此,高效和准确地获取用户偏好变得尤为重要,从而提高个性化产品查找过程的效率。
但是,现有通过与用户交互的方法确定用户偏好时,查询复杂性较高,也即对用户的提问请求次数较多,而如果要降低查询复杂性,则需要进行假设先验条件,例如限制产品属性的类型数量,限制产品可以是指虚拟产品等,但此类方法在实际使用时往往难以泛化。因此,如何在最少先验条件的情况下,有效降低产品查找的查询复杂性成为亟待解决的问题。
发明内容
有鉴于此,本发明实施例提供了一种产品查找方法、装置、计算机设备及介质,以解决在先验条件较少的情况下,产品查找的查询复杂性较高的问题。
第一方面,本发明实施例提供一种产品查找方法,所述产品查找方法包括:
从产品数据库中随机选择N个初始产品,所述产品数据库中的每一产品对应一产品属性信息,N为大于或等于2的整数;
将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品;
针对所述产品数据库中除N个所述初始产品外的任一第二产品,将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果;
将所述第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从所述产品数据库中排除N个所述第一产品和所有所述第三产品,得到剩余产品集合;
将所述剩余产品集合作为所述产品数据库,返回执行所述从产品数据库中随机选择N个初始产品的步骤,直至所述剩余产品集合中的产品数量满足预设条件,得到所述剩余产品集合中的产品作为产品查找结果。
第二方面,本发明实施例提供一种产品查找装置,所述产品查找装置包括:
产品选择模块,用于从产品数据库中随机选择N个初始产品,所述产品数据库中的每一产品对应一产品属性信息,N为大于或等于2的整数;
用户交互模块,用于将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品;
属性比较模块,用于针对所述产品数据库中除N个所述初始产品外的任一第二产品,将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果;
产品排除模块,用于将所述第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从所述产品数据库中排除N个所述第一产品和所有所述第三产品,得到剩余产品集合;
产品查找模块,用于将所述剩余产品集合作为所述产品数据库,返回执行所述从产品数据库中随机选择N个初始产品的步骤,直至所述剩余产品集合中的产品数量满足预设条件,得到所述剩余产品集合中的产品作为产品查找结果。
第三方面,本发明实施例提供一种计算机设备,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的产品查找方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的产品查找方法。
本发明实施例与现有技术相比存在的有益效果是:
从产品数据库中随机选择N个初始产品,将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品,针对产品数据库中除N个初始产品外的任一第二产品,将第二产品的产品属性信息和第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果,将第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从产品数据库中排除N个第一产品和所有第三产品,得到剩余产品集合,将剩余产品集合作为产品数据库,返回执行从产品数据库中随机选择N个初始产品的步骤,直至剩余产品集合中的产品数量满足预设条件,得到剩余产品集合中的产品作为产品查找结果,通过少量产品的产品偏好程度,结合属性比较结果对产品进行筛选,从而以较小的查询复杂度确定出用户偏好意向,显著地降低了用户的筛选负荷,并且适用于高维属性的产品和更多样化的用户偏好,从而提高了产品查找效率和准确率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种产品查找方法的一应用环境示意图;
图2是本发明实施例一提供的一种产品查找方法的流程示意图;
图3是本发明实施例一提供的一种产品查找方法中筛选范围的几何示意图;
图4是本发明实施例二提供的一种产品查找装置的结构示意图;
图5是本发明实施例三提供的一种计算机设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
应当理解,当在本发明说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本发明说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本发明说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本发明说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本发明的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
应理解,以下实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
本发明实施例一提供的一种产品查找方法,可应用在如图1的应用环境中,其中,客户端与服务端进行通信。其中,客户端包括但不限于掌上电脑、桌上型计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、云端终端设备、个人数字助理(personal digital assistant,PDA)等计算机设备。服务端可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参见图2,是本发明实施例一提供的一种产品查找方法的流程示意图,上述产品查找方法可以应用于图1中的服务端,服务端对应的计算机设备部署有产品数据库,产品数据库包含若干个产品及其对应的产品属性信息,服务端对应的计算机设备与客户端通信,以将需要进行目标用户评估的产品对发送至客户端并展示给目标用户,由目标用户通过客户端返回其对于产品的产品偏好程度。如图2所示,该产品查找方法可以包括以下步骤:
步骤S201,从产品数据库中随机选择N个初始产品,N为大于或等于2的整数。
其中,产品数据库可以包含M个产品及其对应的产品属性信息,N为大于或者等于二,且小于M的整数,产品可以是指需要进行查找的对象,查找的对象包括文献、影视作品、家居用品、穿戴饰品等,需要说明的是,产品与产品数据库存在对应关系,例如,当产品为文献时,产品数据库对应的应为文献数据库,当产品为影视作品时,产品数据库对应的影视作品数据库等。初始产品可以是指需要发送给目标用户进行产品偏好程度评估的被选择到的产品,以为后续产品筛选提供参考。
产品属性信息可以是指用于描述产品特征的信息,产品属性信息通常包括至少一个维度,在本实施例中,产品属性信息可以包括多维度,例如上百维度,例如,当产品为影视作品时,产品属性信息可以包括类型、发布时间、时长、制片国家等多个维度,需要说明的是,产品属性信息可以由实施者自行定义,在单次产品查找过程中,产品属性信息的维度是固定的,而在不同产品查找流程中,产品属性信息的维度可以不同,以更好地适应于个性化查找任务。
具体地,产品数据库存储于服务端对应的计算机设备内,可以根据实施者需要进行数据库更新,以添加或者删除产品,以及修改产品的产品属性信息等,随机选择过程可以采用随机采样的方式实现,例如,为产品数据库中的每个产品分配相同的采样概率1/M,通过无放回采样的方式采样得到N个产品作为随机选择的产品。需要说明的是,由于本实施例为了尽可能在先验条件最小的情况下实施,因此,随机采样更符合无先验条件,当然,实施者也可以根据实际需要为不同的产品分配不同的采样概率。
上述从产品数据库中随机选择N个初始产品的步骤,从产品数据库中提取出少量的产品作为初始产品,使得后续与目标用户交互以得到产品偏好程度的过程能够尽量减少对目标用户的提问次数,从而有效提高用户交互的效率,进而提高产品查找的效率。
步骤S202,将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品。
其中,目标用户可以是指需要进行产品查找的用户,目标用户的产品偏好通常是未知的,产品偏好程度可以用于描述目标用户对于各个初始产品的选择意向,第一产品可以是指在当前所选择出的所有初始产品中最符合目标用户偏好的产品。
具体地,实施者可以将每个初始产品均与其他各个初始产品分别组成产品对发送给用户,设初始产品的数量为N,则每个初始产品需要组成N-1个产品对,需要说明的是,由于存在产品对本质相同的情况,则初始产品集合中实际仅有(N+1)*N/2个产品对需要被目标用户对比,在得到目标用户对N个初始产品的产品偏好程度后可以对所有初始产品进行排序,在实际使用过程中,实施者可以采用排序算法来提高排序过程的计算效率,排序算法可以采用如快速排序、希尔排序、选择排序、冒泡排序、归并排序等,在本实施例中,可以选用快速排序。
需要说明的是,在本实施例中,默认目标用户能够准确选择出更符合其偏好的初始产品,也即默认目标用户对各组产品对的选择结果之间不会出现冲突,举例说明,若目标用户选择产品A的偏好程度大于产品B,且选择产品B的偏好程度大于产品C,则默认目标用户在对产品A和产品C进行选择时,会必然选择对产品A更偏好。
在一种实施方式中,实施者还可以采用两两组合的形式将N个初始产品发送给目标用户,例如,预设两个集合分别为已发送集合和未发送集合,初始情况下未发送集合包含N个初始产品,已发送集合为空集,从未发送集合包含的所有初始产品中随机选择出两个形成产品对,并将被选择的初始产品从未发送集合中剔除,加入已发送集合,将该产品对发送给目标用户,由目标用户选择出其偏好的初始产品,再将该被选择的产品与从未发送集合中随机选择的新的初始产品形成产品对,重复执行将被选择的初始产品从未发送集合中剔除,加入已发送集合,将该产品对发送给目标用户,由目标用户选择出其偏好的初始产品的步骤,即可直接得到第一产品。
可选的是,将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品,包括:
针对任一初始产品,将初始产品与其他每个初始产品形成的N-1个产品组合发送给目标用户,获取目标用户对每一产品组合的组合偏好信息;
根据N-1组产品组合的组合偏好信息,确定目标用户对初始产品的产品偏好程度;
依据N个初始产品对应的产品偏好程度从大到小进行排序,得到排序结果,选取排序结果中最靠前的初始产品作为第一产品。
其中,每个初始产品能与其他各个初始产品形成N-1个产品组合,产品偏好程度可以表示目标用户对初始产品偏好的量化表示,排序结果S可以表示为:S={s1,…,sN},其中,s1可以表示排序结果中排序最靠前的初始产品,也即第一产品。
可选的是,根据N-1组产品组合的组合偏好信息,确定目标用户对初始产品的产品偏好程度,包括:
根据每一组产品组合的组合偏好信息,确定产品组合中的偏好产品和非偏好产品;
统计初始产品为偏好产品对应的偏好产品数量;
根据偏好产品数量和所有产品组合的数量,确定目标用户对初始产品的产品偏好程度。
其中,偏好产品可以是指当前展示给目标用户的两个初始产品组成的产品组合中目标用户更喜欢的初始产品,也即更符合目标用户偏好的初始产品,相应地,非偏好产品可以是指当前展示给目标用户的两个初始产品中相比之下目标用户较不喜欢的初始产品。偏好产品数量可以是指一初始产品在所属的N-1组产品组合中被选择为偏好产品的数量。
具体地,不同用户的对于产品的喜好往往是不同的,但大多数时候用户并不能精确地描述自己的需求,也即,用户自身无法轻易精确地用数值去刻画这种喜好,而用户更擅长进行相对的比较而不是绝对的评估。例如,用户通常很容易在两部影视作品之间选择更喜欢的一个,但却很难对某一部影视作品的确切喜好程度进行评分,因此,本实施例采用两两对比的方式确定偏好产品,再根据两两对比的结果进行产品偏好程度的确定。
本实施例中,通过由两个初始产品形成产品组合由目标用户进行偏好比较,从而更准确地确定出目标用户对初始产品的偏好情况,通过两两对比的方式以较低的交互难度实现与目标用户的交互。
可选的是,在将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品之后,还包括:
从产品数据库中随机选取第一数量相对应的测试产品,第一数量为大于或等于2的整数;
将每一测试产品的产品属性信息与第一产品的产品属性信息进行比较,确定每一测试产品对应的第二属性比较结果;
统计第二属性比较结果大于目标属性比较结果的测试产品对应的第二数量,根据第二数量和第一数量,确定测试比值;
若测试比值大于预设比值,则将N增加1,返回执行从产品数据库中随机选择N个初始产品的步骤。
其中,第一数量可以是指测试产品的选取数量,第一数量可以表示为P,P为大于或等于2,且小于M的整数,特别地,P的取值应当小于O(logM),O(logM)用于描述复杂度,第二属性比较结果可以用于描述一测试产品的产品属性信息和第一产品的产品属性信息之间的差异信息。
目标属性比较结果可以用于衡量测试产品是否满足预设条件,例如预设条件可以是指产品属性信息与各个初始产品相近或者偏好程度低于各个初始产品,与各个初始产品相近可以是指与各个初始产品的产品属性信息较为相似。
第二数量可以是指满足预设条件的测试产品的数量,测试比值可以表征满足预设条件的测试产品的数量在所有测试产品中的占比,预设比值可以用于衡量基于当前各个初始产品所得到的第一产品对测试产品的筛选能力。
具体地,产品属性信息在本实施例中可以表示为向量形式,以便于产品属性信息之间的量化比较,也即产品属性信息中每个维度对应向量中的一个元素,该元素的元素值对应该维度的属性值,例如,对于影视作品产品,其类型维度对应向量中的第一个元素,当类型为动作类型时,第一个元素的元素值为0,当类型为喜剧类型时,第一个元素的元素值为1等。
比较过程可以采用欧式距离、余弦距离等距离度量方式,在本实施例中,采用欧式距离进行产品属性信息的比较度量,目标属性比较结果可以由人工设置,例如设置为各个元素全为10的向量。
在本实施例中,预设比值可以设置为3/8,在测试比值大于预设比值时,说明所有测试产品中被认为满足预设条件的测试产品数量较少,也即可以认为被筛选掉的测试产品数量较少,因此可以调整初始产品的选择数量,本实施例中的调整方式为将N增加1,并重新选择N个初始产品,在测试比值小于或者等于预设比值时,说明所有测试产品中被认为满足预设条件的测试产品数量较多,也即可以认为被筛选掉的测试产品数量较多,因此无需调整初始产品的选择数量。
本实施例中,通过选取多个测试产品的方式,有效确定了当前所选择的各个初始产品对于随机产品的筛选能力,能够基于此自适应调整确定初始产品的选择数量,从而有效确保了基于当前所有初始产品进行产品筛选的准确性,提高了产品查找的效率和准确率。
可选的是,依据N个初始产品对应的产品偏好程度从大到小进行排序,得到排序结果之后,还包括:
对排序结果中的任意相邻两个初始产品对应的产品属性信息进行比较,确定N-1组相邻两个初始产品对应的第三属性比较结果;
对N-1组第三属性比较结果进行加权处理,得到第四属性比较结果;
将第四属性比较结果和预设可接受阈值相加,确定目标属性比较结果。
其中,从任意相邻两个初始产品确定排序在前的初始产品和排序在后的初始产品,排序在前的初始产品可以是指两个相邻的初始产品中位置在前的初始产品,相应地,排序在后的初始产品可以是指两个相邻的初始产品中位置在后的初始产品,第三属性比较结果可以用于表征排序在前的初始产品的产品属性信息与排序在后的初始产品的产品属性信息之间的差异信息。
第四属性比较结果可以用于确定与各个初始产品相近或者偏好程度小于各个初始产品的产品表示范围,预设可接受阈值可以是由目标用户设置的、表示其能够接受效用差不低于可接受阈值的产品,效用差可以用于表示一产品对比最优产品的偏好程度差值。
具体地,设排序结果S包含三个产品,表示为S={s1,s2,s3},则第三属性比较结果可以表示为||s2-s1||2和||s3-s2||2,则对应第四属性比较结果可以表示为||s2-s1||2+||s3-s2||2。
相应地,在排序结果S包含N个产品时,第四属性比较结果可以表示为以ε表示预设可接受阈值,则预设值可以表示为/>
则第二产品s的第一属性比较结果满足的预设条件可以表示为:
可选的是,对N-1组第三属性比较结果进行加权处理,得到第四属性比较结果,包括:
获取N-1组第三属性比较结果对应的可调节权重,基于N-1组第三属性比较结果和可调节权重进行加权处理,得到加权结果;
动态调节N-1组第三属性比较结果分别对应的可调节权重,确定加权结果的最大值,将加权结果的最大值确定为第四属性比较结果。
其中,一第三属性比较结果对应一可调节权重,可调节权重的约束为为大于或者等于零的值,可调节权重可以用于调整满足预设条件的产品的表示范围,加权结果的最大值可以用于表示满足预设条件的产品的最大表示范围。
具体地,此时第二产品s的第一属性比较结果满足的预设条件可以表示为:
其中,aj可以是指第j个第三属性比较结果对应的可调节权重。
上式可以转换为:
该式左侧可以使用二次规划求解器求解。
参见图3,是本发明实施例一提供的一种产品查找方法中筛选范围的几何示意图,其中,每个点表示一产品的产品属性信息,在本实施例中,设置产品属性信息为两个维度,以便于表示,图中W可以是指目标用户的偏好向量,在W上的点即为最优点,而根据最优点所在切线,以及与最优点相距ε的直线R可以确定较优点范围,可见较优点在本实施例中为两个,图中a可以表示预设可接受阈值ε。
沿用上例,则排序结果S所包含的产品分别对应图中的s1、s2和s3,经向量之间的运算,则第四属性比较结果所覆盖的范围可以表示为由射线L1和射线L2所形成扇形区域内的范围,此处,s2与s1的差值可以视作s1指向s2的向量,同理,s3与s2的差值可以视作s2指向s3的向量,另外由于每个第三属性比较结果均有对应的可调节权重,因此s1指向s2的向量在调整后可以是由s1指向射线L2上任一点的向量,s2指向s3的向量在调整后可以是由s1指向射线L1上任一点的向量,根据向量相加的原理,则射线L1和射线L2所形成扇形区域内的任一点均可以通过第四属性比较结果表示,此时,若第二产品s在射线L1和射线L2所形成扇形区域内,则显然可以得到 取值为0,满足预设条件;同样地,射线L3和射线L4所形成扇形区域内的任一点均可以通过预设值表示,此时,若第二产品s在射线L1和射线L2所形成扇形区域内,则显然可以得到取值为小于或者等于ε的值,也满足预设条件。
本实施例中,通过让目标用户对少量产品排序,然后使用二次规划求解所设计好的判别条件来排除次优产品,从而快速且准确地实现产品筛选过程,进而提高产品查找的效率和准确率。
上述将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品的步骤,为后续产品属性信息比较过程提供比较对象,也即第一产品,使得后续基于第一产品的比较结果更为准确。
步骤S203,针对产品数据库中除N个初始产品外的任一第二产品,将第二产品的产品属性信息和第三产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果。
其中,第二产品可以是指未被选择为初始产品,但在产品数据库中的产品,也即需要进行产品筛选操作的产品,第一属性比较结果可以用于表征第二产品的产品属性信息和第一产品的产品属性信息之间的差异信息。
可选的是,将第二产品的产品属性信息和第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果,包括:
将第二产品的产品属性信息和第一产品的产品属性信息进行属性相减,得到相减结果,将相减结果确定为第二产品对应的第一属性比较结果。
其中,相减结果可以表示第二产品的产品属性信息和第一产品的产品属性信息之间的距离度量结果。
具体地,第二产品的产品属性信息可以表示为s,沿用上述示例,临时产品的产品属性信息可以表示为s1,则属性比较结果可以表示为||s-s1||2。
本实施例中,通过向量形式进行产品属性信息的比较,使得比较过程计算便捷,提高了比较过程的效率。
上述针对产品数据库中除N个初始产品外的任一第二产品,将第二产品的产品属性信息和第三产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果的步骤,为后续产品筛选过程提供基础,从而提高产品筛选过程的准确率和效率。
步骤S204,将第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从产品数据库中排除N个第一产品和所有第三产品,得到剩余产品集合。
其中,第三产品可以是指满足预设条件的第二产品,预设条件可以是指产品属性信息与各个初始产品相近或者偏好程度低于各个初始产品,与各个初始产品相近可以是指与各个初始产品的产品属性信息较为相似,剩余产品集合可以是指所有第二产品经产品筛选后的剩余结果。
上述将第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从产品数据库中排除N个第一产品和所有第三产品,得到剩余产品集合的步骤,使得后续迭代过程中,后一次产品筛选只需要在前一次未能筛选的产品中进行,从而提高产品筛选的效率,通常情况下,本实施例只需要进行最多O(log M)次筛选过程即可处理完毕产品数据库中的全部M个产品。
步骤S205,将剩余产品集合作为产品数据库,返回执行从产品数据库中随机选择N个初始产品的步骤,直至剩余产品集合中的产品数量满足预设条件,得到剩余产品集合中的产品作为产品查找结果。
其中,产品数量可以是指剩余产品的统计数量,预设条件可以用于衡量产品筛选过程是否能够终止。
具体地,当产品数量满足预设条件时,认为产品筛选过程能够终止,得到剩余产品集合中的产品为产品查找结果。
当产品数量不满足预设条件时,认为产品筛选过程不能够终止,返回执行从产品数据库中随机选择N个产品的步骤,此时产品数据库已经更新完毕,相当于针对未筛选的产品再次进行筛选。
需要说明的是,在本实施例中,预设条件可以设置为产品数量小于预设数量,预设数量可以设置为3,此时,说明已通过最优产品将所有产品筛选掉,或者已通过较优产品将大部分产品筛选掉,该最优产品或者较优产品存在于最后一次筛选过程中,可以将最后一次筛选过程中对应的第一产品发送给目标用户,作为产品查找结果。
上述将剩余产品集合作为预设的产品数据库,返回执行从预设的产品数据库中随机选择N个产品形成初始产品集合的步骤,直至剩余产品集合中产品数量满足预设条件,得到剩余产品集合中的产品为产品查找结果的步骤,在最坏的情况下,最多只需要次用户请求,相较于常规方法在最坏的情况下需要N-1次请求,极大提高了产品查找的效率,并且可以应用到上百的较高维度,且无需假设先验条件,从而取得了更优的产品查找效果和更高的可扩展性。
本实施例中,通过少量产品的产品偏好程度,结合属性比较结果对产品进行筛选,从而以较小的查询复杂度确定出用户的偏好意向,显著地降低了用户的筛选负荷,并且适用于高维属性的产品和更多样化的用户偏好,从而提高了产品查找效率和准确率。
对应于上文实施例的产品查找方法,图4示出了本发明实施例二提供的产品查找装置的结构框图,上述产品查找装置应用服务端,服务端对应的计算机设备部署有产品数据库,产品数据库包含若干个产品及其对应的产品属性信息,服务端对应的计算机设备与客户端通信,以将需要进行目标用户评估的产品对发送至客户端并展示给目标用户,由目标用户通过客户端返回其对于产品的产品偏好程度。为了便于说明,仅示出了与本发明实施例相关的部分。
参见图4,该产品查找装置包括:
产品选择模块41,用于从产品数据库中随机选择N个初始产品,产品数据库中的每一产品对应一产品属性信息,N为大于或等于2的整数;
用户交互模块42,用于将N个初始产品发送给目标用户,获取目标用户对N个初始产品的产品偏好程度,选取产品偏好程度最高的初始产品作为第一产品;
属性比较模块43,用于针对产品数据库中除N个初始产品外的任一第二产品,将第二产品的产品属性信息和第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果;
产品排除模块44,用于将第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从产品数据库中排除N个第一产品和所有第三产品,得到剩余产品集合;
产品查找模块45,用于将剩余产品集合作为产品数据库,返回执行从产品数据库中随机选择N个初始产品的步骤,直至剩余产品集合中的产品数量满足预设条件,得到剩余产品集合中的产品作为产品查找结果。
可选的是,上述用户交互模块42包括:
产品组合单元,用于针对任一初始产品,将初始产品与其他每个初始产品形成的N-1个产品组合发送给目标用户,获取目标用户对每一产品组合的组合偏好信息;
偏好确定单元,用于根据N-1组产品组合的组合偏好信息,确定目标用户对初始产品的产品偏好程度;
产品排序单元,用于依据N个初始产品对应的产品偏好程度从大到小进行排序,得到排序结果,选取排序结果中最靠前的初始产品作为第一产品。
可选的是,上述偏好确定单元包括:
类型确定子单元,用于根据每一组产品组合的组合偏好信息,确定产品组合中的偏好产品和非偏好产品;
数量统计子单元,用于统计初始产品为偏好产品对应的偏好产品数量;
程度计算子单元,用于根据偏好产品数量和所有产品组合的数量,确定目标用户对初始产品的产品偏好程度。
可选的是,上述属性比较模块43包括:
属性相减单元,用于将第二产品的产品属性信息和第一产品的产品属性信息进行属性相减,得到相减结果,将相减结果确定为第二产品对应的第一属性比较结果。
可选的是,上述产品查找装置还包括:
测试筛选模块,用于从产品数据库中随机选取第一数量相对应的测试产品,第一数量为大于或等于2的整数;
测试比较模块,用于将每一测试产品的产品属性信息与第一产品的产品属性信息进行比较,确定每一测试产品对应的第二属性比较结果;
测试统计模块,用于统计第二属性比较结果大于目标属性比较结果的测试产品对应的第二数量,根据第二数量和第一数量,确定测试比值;
参数调整模块,用于若测试比值大于预设比值,则将N增加1,返回执行从产品数据库中随机选择N个初始产品的步骤。
可选的是,上述产品查找装置还包括:
属性比较模块,用于对排序结果中的任意相邻两个初始产品对应的产品属性信息进行比较,确定N-1组相邻两个初始产品对应的第三属性比较结果;
加权处理模块,用于对N-1组第三属性比较结果进行加权处理,得到第四属性比较结果;
阈值相加模块,用于将第四属性比较结果和预设可接受阈值相加,确定目标属性比较结果。
可选的是,上述加权处理模块包括:
权重获取单元,用于获取N-1组第三属性比较结果对应的可调节权重,基于N-1组第三属性比较结果和可调节权重进行加权处理,得到加权结果;
动态调节单元,用于动态调节N-1组第三属性比较结果分别对应的可调节权重,确定加权结果的最大值,将加权结果的最大值确定为第四属性比较结果。
需要说明的是,上述模块、单元、子单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图5为本发明实施例三提供的一种计算机设备的结构示意图。如图5所示,该实施例的计算机设备包括:至少一个处理器(图5中仅示出一个)、存储器以及存储在存储器中并可在至少一个处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意各个产品查找方法实施例中的步骤。
该计算机设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图5仅仅是计算机设备的举例,并不构成对计算机设备的限定,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括网络接口、显示屏和输入装置等。
所称处理器可以是CPU,该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器包括可读存储介质、内存储器等,其中,内存储器可以是计算机设备的内存,内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。可读存储介质可以是计算机设备的硬盘,在另一些实施例中也可以是计算机设备的外部存储设备,例如,计算机设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,该其他程序如计算机程序的程序代码等。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
本发明实现上述实施例方法中的全部或部分流程,也可以通过一种计算机程序产品来完成,当计算机程序产品在计算机设备上运行时,使得计算机设备执行时实现可实现上述方法实施例中的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种产品查找方法,其特征在于,包括:
从产品数据库中随机选择N个初始产品,所述产品数据库中的每一产品对应一产品属性信息,N为大于或等于2的整数;
将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品;
针对所述产品数据库中除N个所述初始产品外的任一第二产品,将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果;
将所述第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从所述产品数据库中排除N个所述第一产品和所有所述第三产品,得到剩余产品集合;
将所述剩余产品集合作为所述产品数据库,返回执行所述从产品数据库中随机选择N个初始产品的步骤,直至所述剩余产品集合中的产品数量满足预设条件,得到所述剩余产品集合中的产品作为产品查找结果。
2.根据权利要求1所述的产品查找方法,其特征在于,所述将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品,包括:
针对任一初始产品,将所述初始产品与其他N-1个初始产品形成的N-1个产品组合发送给所述目标用户,获取所述目标用户对每一所述产品组合的组合产品偏好程度;
根据N-1组所述产品组合的组合产品偏好程度,确定所述目标用户对所述初始产品的产品偏好程度;
依据N个所述初始产品对应的产品偏好程度从大到小进行排序,得到排序结果,选取所述排序结果中最靠前的初始产品作为所述第一产品。
3.根据权利要求2所述的产品查找方法,其特征在于,所述根据N-1组所述产品组合的组合产品偏好程度,确定所述目标用户对所述初始产品的产品偏好程度,包括:
根据每一组所述产品组合的组合偏好信息,确定所述产品组合中的偏好产品和非偏好产品;
统计所述初始产品为所述偏好产品对应的偏好产品数量;
根据所述偏好产品数量和所有产品组合的数量,确定所述目标用户对所述初始产品的产品偏好程度。
4.根据权利要求1所述的产品查找方法,其特征在于,所述将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果,包括:
将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行属性相减,得到相减结果,将所述相减结果确定为所述第二产品对应的第一属性比较结果。
5.根据权利要求1所述的产品查找方法,其特征在于,在所述将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品之后,还包括:
从所述产品数据库中随机选取第一数量相对应的测试产品,所述第一数量为大于或等于2的整数;
将每一所述测试产品的产品属性信息与所述第一产品的产品属性信息进行比较,确定每一所述测试产品对应的第二属性比较结果;
统计所述第二属性比较结果大于所述目标属性比较结果的测试产品对应的第二数量,根据所述第二数量和所述第一数量,确定测试比值;
若所述测试比值大于预设比值,则将N增加1,返回执行所述从产品数据库中随机选择N个初始产品的步骤。
6.根据权利要求2所述的产品查找方法,其特征在于,在所述依据N个所述初始产品对应的产品偏好程度从大到小进行排序,得到排序结果之后,还包括:
对所述排序结果中的任意相邻两个所述初始产品对应的产品属性信息进行比较,确定N-1组相邻两个所述初始产品对应的第三属性比较结果;
对N-1组所述第三属性比较结果进行加权处理,得到第四属性比较结果;
将所述第四属性比较结果和预设可接受阈值相加,确定所述目标属性比较结果。
7.根据权利要求6所述的产品查找方法,其特征在于,所述对N-1组所述第三属性比较结果进行加权处理,得到第四属性比较结果,包括:
获取N-1组所述第三属性比较结果对应的可调节权重,基于N-1组所述第三属性比较结果和所述可调节权重进行加权处理,得到加权结果;
动态调节N-1组所述第三属性比较结果分别对应的可调节权重,确定所述加权结果的最大值,将所述加权结果的最大值确定为第四属性比较结果。
8.一种产品查找装置,其特征在于,所述产品查找装置包括:
产品选择模块,用于从产品数据库中随机选择N个初始产品,所述产品数据库中的每一产品对应一产品属性信息,N为大于或等于2的整数;
用户交互模块,用于将N个所述初始产品发送给目标用户,获取所述目标用户对N个所述初始产品的产品偏好程度,选取所述产品偏好程度最高的初始产品作为第一产品;
属性比较模块,用于针对所述产品数据库中除N个所述初始产品外的任一第二产品,将所述第二产品的产品属性信息和所述第一产品的产品属性信息进行比较,得到每一第二产品对应的第一属性比较结果;
产品排除模块,用于将所述第一属性比较结果小于或者等于目标属性比较结果的第二产品,确定为第三产品,从所述产品数据库中排除N个所述第一产品和所有所述第三产品,得到剩余产品集合;
产品查找模块,用于将所述剩余产品集合作为所述产品数据库,返回执行所述从产品数据库中随机选择N个初始产品的步骤,直至所述剩余产品集合中的产品数量满足预设条件,得到所述剩余产品集合中的产品作为产品查找结果。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的产品查找方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的产品查找方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310803812.9A CN117171216A (zh) | 2023-06-30 | 2023-06-30 | 产品查找方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310803812.9A CN117171216A (zh) | 2023-06-30 | 2023-06-30 | 产品查找方法、装置、计算机设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117171216A true CN117171216A (zh) | 2023-12-05 |
Family
ID=88936410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310803812.9A Pending CN117171216A (zh) | 2023-06-30 | 2023-06-30 | 产品查找方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117171216A (zh) |
-
2023
- 2023-06-30 CN CN202310803812.9A patent/CN117171216A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3345104B1 (en) | Media unit retrieval and related processes | |
CN109190023B (zh) | 协同推荐的方法、装置及终端设备 | |
WO2014071033A1 (en) | Sorting social profile search results based on computing personal similarity scores | |
CN110750658B (zh) | 一种媒体资源的推荐方法、服务器及计算机可读存储介质 | |
CN111159563B (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
CN110704677B (zh) | 一种节目推荐方法、装置、可读存储介质及终端设备 | |
CN110825894A (zh) | 数据索引建立、数据检索方法、装置、设备和存储介质 | |
CN110782286A (zh) | 广告推送方法、装置、服务器及计算机可读存储介质 | |
CN104615723B (zh) | 查询词权重值的确定方法和装置 | |
CN113656699B (zh) | 用户特征向量确定方法、相关设备及介质 | |
US11012812B2 (en) | System and method for identifying associated subjects from location histories | |
CN113468441A (zh) | 基于权重调整的搜索排序方法、装置、设备及存储介质 | |
CN110674388A (zh) | 推送项目的配图方法、装置、存储介质和终端设备 | |
CN112613296A (zh) | 新闻的重要程度获取方法、装置、终端设备及存储介质 | |
CN110262906B (zh) | 接口标签推荐方法、装置、存储介质和电子设备 | |
CN116705310A (zh) | 围术期风险评估的数据集构建方法、装置、设备及介质 | |
CN117171216A (zh) | 产品查找方法、装置、计算机设备及介质 | |
CN110781217B (zh) | 排序数据的处理方法、装置及存储介质、服务器 | |
CN110765230B (zh) | 一种法律文本存储方法、装置、可读存储介质及终端设备 | |
CN113868373A (zh) | 一种词云生成方法、装置、电子设备及存储介质 | |
CN113392184A (zh) | 一种相似文本的确定方法、装置、终端设备及存储介质 | |
CN112434198B (zh) | 图表组件推荐方法及装置 | |
CN112214387B (zh) | 基于知识图谱的用户操作行为预测方法及装置 | |
CN117390292B (zh) | 基于机器学习的应用程序信息推荐方法、系统及设备 | |
CN114691152B (zh) | 推荐数据资源服务应用程序接口的方法及装置 |
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 |