CN110020124B - 用于相关产品挖掘的方法及装置 - Google Patents
用于相关产品挖掘的方法及装置 Download PDFInfo
- Publication number
- CN110020124B CN110020124B CN201710985473.5A CN201710985473A CN110020124B CN 110020124 B CN110020124 B CN 110020124B CN 201710985473 A CN201710985473 A CN 201710985473A CN 110020124 B CN110020124 B CN 110020124B
- Authority
- CN
- China
- Prior art keywords
- product
- products
- candidate set
- product group
- similarity
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2216/00—Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
- G06F2216/03—Data mining
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开一种用于相关产品挖掘的方法及装置。涉及计算机信息处理领域,该方法包括:通过预定时间窗口,获取多个产品的表示向量;通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;以及通过所述第一产品候选集合,进行相关产品挖掘。本申请公开的用于相关产品挖掘的方法及装置,能够利用用户的购买行为等数据,找出具有类似表现的商品作为相关商品。并且能够大幅减少计算所需的时间及资源,具有相对于传统方法更高的准确率。
Description
技术领域
本发明涉及计算机信息处理领域,具体而言,涉及一种用于相关产品挖掘的方法及装置。
背景技术
推荐系统是电子商务领域不可或缺的一部分,能够帮助用户更好更快地发现兴趣商品,优化购物体验。在电商推荐系统中,相似相关关系是商品推荐的基础依据。准确的商品相似相关关系能够直接或间接地应用于推荐系统的各个环节,包括推荐召回、推荐排序、推荐过滤、搭配推荐等。在商品相似相关关系中,相关关系往往更难挖掘。在电商领域,相似商品可以认为是具有类似属性,相互可以被替代的商品,如“iphone7手机”与“iphone7plus手机”。相关商品则可以认为是具有关联关系或互补关系,能够被用户同时购买及使用的商品,如“iphone7手机”与“iphone7手机贴膜”。准确的商品相关关系对提升用户体验具有重要作用,如搭配推荐、多样性推荐、场景推荐等。
目前在推荐系统中,相似相关商品的挖掘主要来源于协同过滤、频繁项集等方法。根据用户的历史购物行为,包括点击、关注、下单等,得到具有类似行为的用户或商品。根据品类对得到的相似商品对进行过滤,相同品类的可以视为相似商品,不同品类的则视为相关商品。但是,协同过滤等方法对商品相似度进行直接计算,需要对商品候选对进行两两连接,所需的时间复杂度非常大,导致数据更新十分费时,数据的时效性受到限制,往往只能采取T+1及以上的更新策略。而且,在分布式计算框架下,传统方法混排后的文件大小过大,导致能够计算的数据量受到限制。同时,传统方法的可扩展性较差,缺乏一个统一而高效的框架,将基于物品的协同过滤、基于用户的协同过滤、基于内容的协同过滤等方法进行整合。
因此,需要一种新的用于相关产品挖掘的方法及装置。
在所述背景技术部分公开的上述信息仅用于加强对本发明的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本发明提供一种用于相关产品挖掘的方法及装置,能够利用用户的购买行为等数据,找出具有类似表现的商品作为相关商品。并且能够大幅减少计算所需的时间及资源,具有相对于传统方法更高的准确率。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明的一方面,提出一种用于相关产品挖掘的方法,该装置包括:通过预定时间窗口,获取多个产品的表示向量;通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;以及通过所述第二产品组候选集合,进行相关产品挖掘。
在本公开的一种示例性实施例中,所述通过预定时间窗口,获取多个产品的表示向量,包括:确定所述预定的时间窗口;或取在所述预定的时间窗口内所有产品的交易信息;以及通过所述产品交易信息对应生成产品的表示向量。
在本公开的一种示例性实施例中,所述通过所述产品交易信息对应生成产品的表示向量,包括:通过所述产品与其对应的购买该产品的用户生成所述产品的所述表示向量。
在本公开的一种示例性实施例中,所述通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合,包括:通过MinHash算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合。
在本公开的一种示例性实施例中,所述通过MinHash算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合,包括:将多个产品之中每两个产品进行关联,生成产品组;通过MinHash算法对每一个产品组进行第一相似度估计计算;将所述产品组按照第一相似度估计计算结果进行排序;以及选取满足第一阈值的计算结果对应的产品组,生成所述第一产品组候选集合。
在本公开的一种示例性实施例中,所述通过MinHash算法对每一个产品组进行第一相似度估计计算,包括:通过Jaccard相似度获取每一个产品组进行第一相似度估计计算。
在本公开的一种示例性实施例中,所述根据产品的相关程度,对所述第一产品组候选集合中的产品组进行二次排序处理,获取第二产品组候选集合,包括:通过相似度公式对所述第一产品组候选集合中的产品组进行第二相似度估计计算;将所述产品组按照第二相似度估计计算结果进行排序;以及选取满足第二阈值的计算结果对应的产品组,生成所述第二产品组候选集合。
在本公开的一种示例性实施例中,所述相似度公式,包括:
其中,rel(a,b)为a,b两个产品之间的相似度,X,Y分别为购买a,b两个产品的用户集合,I(·)为示性函数。
在本公开的一种示例性实施例中,通过分布式计算框架支持局部敏感哈希计算。
在本公开的一种示例性实施例中,还包括:通过所述第二产品组候选集合进行产品信息推广。
根据本发明的一方面,提出一种用于相关产品挖掘的装置,该装置包括:产品模块,用于通过预定时间窗口,获取多个产品的表示向量;第一排序模块,用于通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;第二排序模块,用于根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;以及产品挖掘模块,用于通过所述相关产品集合,进行相关产品挖掘。
根据本发明的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本发明的一方面,提出一种计算机可读介质,其上存储有计算机程序,其特征在于,程序被处理器执行时实现如上文中的方法。
根据本发明的用于相关产品挖掘的方法及装置,能够利用用户的购买行为等数据,找出具有类似表现的商品作为相关商品。并且能够大幅减少计算所需的时间及资源,具有相对于传统方法更高的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
通过参照附图详细描述其示例实施例,本发明的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种用于相关产品挖掘的方法的系统架构。
图2是根据一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。
图3是根据另一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。
图4是根据另一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。
图5是根据一示例性实施例示出的一种用于相关产品挖掘的装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
图7是根据一示例性实施例示出的一种计算机可读介质示意图。
具体实施例
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本发明将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的,因此不能用于限制本发明的保护范围。
下面结合附图对本公开示例实施方式进行详细说明。
图1是根据一示例性实施例示出的一种用于相关产品挖掘的方法的系统架构。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息购买请求等数据进行分析等处理,并将处理结果(例如推送信息、产品信息,相似产品信息)反馈给终端设备。
需要说明的是,本申请实施例所提供的消息生成方法一般由服务器105执行,相应地,网页生成装置一般设置于客户端101中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2是根据一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。
如图2所示,在S202中,通过预定时间窗口,获取多个产品的表示向量。包括:确定所述预定的时间窗口;获取在所述预定的时间窗口内所有产品的交易信息;以及通过所述产品交易信息对应生成产品的表示向量。所述通过所述产品交易信息对应生成产品的表示向量,包括:通过所述产品与其对应的购买该产品的用户生成所述产品的所述表示向量。
在本发明实施例中,以用户购买的商品作为产品的示例性描述,然而本发明中的产品还可例如为基于用户数据寻找相似用户,基于内容寻找相似内容数据,本发明不以此为限。购买行为是用户行为中意图最明确,精度和质量最高的数据。本发明的示例性内容主要基于购买行为的相关商品挖掘,但也适用于其他行为、其他内容的商品关系挖掘,具有较强的扩展性。
在一个实施例中,选取一定的时间窗口,将每个商品表示为时间窗口内购买该商品的用户集合,如此可得到各个商品的分布式表达,得到每个商品的表示向量。如商品a被用户x、y购买,则商品a的分布式表达为a=(x:1,y:1),进而组成表示向量。
在S204中,通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合。两个商品的相似度由商品对应向量的相似度进行估计,但此处商品和用户的维度会十分大,直接计算相似度会造成计算上的困难,且各个向量组成的矩阵通常较为稀疏。针对这种情况,可例如使用局部敏感哈希算法中的MinHash局部敏感函数预先筛选出相关商品的候选对。局部敏感哈希算法为一种对高维数据进行降维的哈希方法,其能够以概率保持原有数据的距离属性不变。
电子商务领域用户及商品的数量十分巨大,局部敏感哈希(LSH)可以有效地对海量数据进行降维。对度量空间M中的任意两个点p、q,设定R为度量空间中的一个距离阈值,则一个局部敏感哈希函数h需要满足:
如果p、q之间的距离小于阈值R,即d(p,q)≤R,那么发生哈希碰撞h(p)=h(q)的概率至少为P1;
如果p、q之间的距离大于或等于阈值R,即d(p,q)≥cR,那么发生哈希碰撞h(p)=h(q)的概率至多为P2;
当P1>P2时,此时的哈希函数h是有意义的,并称之为(R,cR,P1,P2)-sensitive
局部敏感哈希在通过哈希函数降维的同时,可以以概率保证原度量空间中的距离属性不发生改变。因此,可以选择合适的局部敏感哈希函数,对海量的商品或用户数据进行降维,同时以概率保持它们的相似度不发生太大改变。
在另一些实施例中,还可以选择其它的相似度量及对应的局部敏感哈希方法进行相似度计算,可例如包括Euclidean距离和Manhattan距离与Scalar-Random-Projection局部敏感哈希,Cos相似度与Sign-Random-Projection局部敏感哈希,Hamming距离与BitSampling局部敏感哈希等。本申请不以此为限。
将多个产品之中每两个产品进行关联,生成产品组,通过MinHash算法对每一个产品组进行第一相似度估计计算;将所述产品组按照第一相似度估计计算结果进行排序。选取相似度或相似度排名达到阈值上的商品对,即为第一产品组候选集合。
在S206中,根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合。通过相似度公式对所述第一产品组候选集合中的产品组进行第二相似度估计计算;将所述产品组按照第二相似度估计计算结果进行排序;以及选取满足第二阈值的计算结果对应的产品组,生成所述第二产品组候选集合。所述相似度公式,包括:
其中,rel(a,b)为a,b两个产品之间的相似度,X,Y分别为购买a,b两个产品的用户集合,I(·)为示性函数。
在S208中,通过所述第二产品组候选集合,进行相关产品挖掘。在本实施例中,相关商品可例如为,具有关联关系或互补关系的商品组,用户在购买前置产品后,具有超出一般的可能性购买后置商品。还可例如,通过所述相关产品集合进行产品信息推广。
根据本发明的用于相关产品挖掘的方法,通过通过局部敏感哈希算法获取第一产品组候选集合,进而对第一产品候选集合中的产品组进行二次排序,进而获取相关产品集合的方式,能够利用用户的购买行为等数据,找出具有类似表现的商品作为相关商品。并且能够大幅减少计算所需的时间及资源,具有相对于传统方法更高的准确率。
应清楚地理解,本发明描述了如何形成和使用特定示例,但本发明的原理不限于这些示例的任何细节。相反,基于本发明公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。图3是对图2中S204的示例性描述。
如图3所示,在S302中,将多个产品之中每两个产品进行关联,生成产品组。
在S304中,通过MinHash算法对每一个产品组进行第一相似度估计计算。可例如通过MinHash进行相关商品组的预选取。MinHash作为局部敏感函数的一种,主要用于快速估计两个集合的Jaccard相似度。对于A、B两个集合,其Jaccard相似度定义为J(A,B)=|A∩B|/|A∪B|。Jaccard系数是一个介于0和1之间的系数,该系数越接近于1,两个集合越相似。
不同于直接在原始数据上计算Jaccard系数的值,MinHash方法基于哈希之后的值计算该相似系数。假定h是一个将A和B中的元素映射到一些不相交整数的哈希函数,且针对一个给定的集合S,定义hmin(S)为S集合经h函数哈希后的最小哈希值。则MinHash的基本思想为:
即A、B两个集合经同一函数哈希后的最小哈希值,相等的概率是A、B集合Jaccard相似度的无偏估计。即如果r是一个当hmin(A)=hmin(B)时值为1,其它情况下值为0的随机变量,那么r可认为是J(A,B)的无偏估计。由Chernoff bounds(切诺夫界)可知,随机变量r的期望误差为因此,对于任意ε>0,存在常数使得估计的期望误差不大于ε。由此可知,100次哈希可以使获得的Jaccard系数达到90%准确率,400次哈希可以获得95%的准确率。
还可例如,在分布式计算框架下,将每个商品向量哈希为若干整数,并取这些整数的最小值作为每个商品向量的签名,通过对签名值的比较估算商品向量之间的相似度。使用多次不同的哈希函数,并取最终的平均结果作为商品相似度更为准确的估计。
在使用k轮不同哈希函数的情况下,取上文提到的无偏估计量r,则A、B集合的Jaccard相似度的估计值为:
在S306中,将所述产品组按照第一相似度估计计算结果进行排序。
在S308中,选取满足第一阈值的计算结果对应的产品组,生成所述第一产品组候选集合。选取相似度或相似度排名达到阈值上的商品对,即为第一产品组候选集合。
根据本发明的用于相关产品挖掘的方法,通过通过局部敏感哈希算法获取第一产品组候选集合,能够快速计算出了可能的相关商品组,并根据Jaccard相似度进行排序,多次的MinHash计算保证了所得结果的召回率。
图4是根据另一示例性实施例示出的一种用于相关产品挖掘的方法的流程图。图4是对图2中S206的示例性描述。
如图4所示,在S402中,通过相似度公式对所述第一产品组候选集合中的产品组进行第二相似度估计计算。MinHash方法快速计算出了可能的相关商品对,并根据Jaccard相似度进行排序。多次的MinHash计算保证了所得结果的召回率,但Jaccard相似度本身未必适合相关商品这一场景。当两个商品的销量存在较大差异时,其对应购买用户集合的大小也存在较大差异,这会导致使用Jaccard相似度识别出的相关商品更偏向于冷门商品。所以在本发明实施例中,对第一产品组候选集合中的产品组进行第二相似度估计计算。
记X、Y分别为购买a、b两个商品的用户集合,则本发明将a商品到b商品的相关程度定义为:
其中,rel(a,b)为a,b两个产品之间的相似度,X,Y分别为购买a,b两个产品的用户集合,I(·)为示性函数,用以控制a、b两个商品共现的次数,减少偶然性对结果的影响。rel(a,b)的定义同样符合统计学中卡方检验的形式,可以看做卡方检验统计量的平方根,卡方检验为统计学中用以检验样本中某事件的实际发生次数是否符合理论分布的假设检验方法。
在本实施例中,对相关商品的定义同样利用了这一思想,将相关商品组(a,b)定义为,购买商品a后,用户有“超乎寻常”的可能性也购买b商品。该定义可以有效识别出具有相关购买关系的商品。
在S404中,将所述产品组按照第二相似度估计计算结果进行排序。
在S406中,选取满足第二阈值的计算结果对应的产品组,生成所述第二产品组候选集合。根据rel(a,b)的定义,对MinHash所得的相关商品对候选集进行重新排序,并根据排名或相似度得分进行截断,即可得到准确度较高的相关商品集合(第二产品组候选集合)。
根据本发明的用于相关产品挖掘的方法,通过本申请定义的商品相关程度公式对商品组进行二次排序,获取相关商品集合的方式,根据实验评测,能够在保证精度和覆盖率不低于传统方案的前提下,将计算时间缩短50%以上。
本发明提出的方法可用于计算基于购买行为的相关商品集合,同时具有极强的扩展性。将输入数据进行转置,可进行基于用户的协同过滤;将输入数据转化为商品内容特征,可进行基于内容的协同过滤;改变距离的定义方式,可以计算任何形式的相似相关商品。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本发明提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
图5是根据一示例性实施例示出的一种用于相关产品挖掘的装置的框图。
产品模块502用于通过预定时间窗口,获取多个产品的表示向量。
第一排序模块504用于通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合。
第二排序模块506用于根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合。
产品挖掘模块508用于通过所述相关产品集合,进行相关产品挖掘。
根据本发明的用于相关产品挖掘的装置,通过局部敏感哈希算法获取第一产品组候选集合,进而对第一产品候选集合中的产品组进行二次排序,进而获取相关产品集合的方式,能够利用用户的购买行为等数据,找出具有类似表现的商品作为相关商品。并且能够大幅减少计算所需的时间及资源,具有相对于传统方法更高的准确率。
图6是根据一示例性实施例示出的一种电子设备的框图。
下面参照图6来描述根据本发明的这种实施方式的电子设备200。图6显示的电子设备200仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元210执行,使得所述处理单元210执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元210可以执行如图2,3,4中所示的步骤。
所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述电子处方流转处理方法。
图7是根据一示例性实施例示出的一种计算机可读介质示意图。
参考图7所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品400,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:通过预定时间窗口,获取多个产品的表示向量;通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;根据产品的相关程度,对所述第一产品候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;以及通过所述相关产品集合,进行相关产品挖掘。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本发明实施例的方法。
通过以上的详细描述,本领域的技术人员易于理解,根据本发明实施例的用于相关产品挖掘的方法及装置具有以下优点中的一个或多个。
根据一些实施例,本发明的用于相关产品挖掘的方法,扩大了相关商品挖掘支持的计算量级,并大幅减少计算所需时间。实验表明,该算法可以支持在三千万用户、六百万商品数据中快速挖掘相关商品对,并将计算时间缩短至1小时以内。
根据另一些实施例,本发明的用于相关产品挖掘的方法,通过自定义距离的形式,获得了比传统协同过滤更高的准确度。自定义距离的形式也符合卡方检验的思想,具有稳固的理论基础。
根据再一些实施例,本发明的用于相关产品挖掘的方法,提出了一套进行商品关系挖掘的框架,该框架具有较强的扩展性,可以用于相关商品、相似商品、相似用户、基于内容的协同过滤等多种关系的计算,并支持自定义目标函数。
以上具体地示出和描述了本发明的示例性实施例。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
此外,本说明书说明书附图所示出的结构、比例、大小等,均仅用以配合说明书所公开的内容,以供本领域技术人员了解与阅读,并非用以限定本公开可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本公开所能产生的技术效果及所能实现的目的下,均应仍落在本公开所公开的技术内容得能涵盖的范围内。同时,本说明书中所引用的如“上”、“第一”、“第二”及“一”等的用语,也仅为便于叙述的明了,而非用以限定本公开可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当也视为本发明可实施的范畴。
Claims (13)
1.一种用于相关产品挖掘的方法,其特征在于,包括:
通过预定时间窗口,获取多个产品的表示向量,其中,所述表示向量是通过所述多个产品和与所述多个产品对应的购买所述产品的用户生成的;
通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;
利用相似度公式,并根据产品的相关程度,对所述第一产品组候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;其中,所述相似度公式中包括与所述第一产品组候选集合对应的产品组、示性函数以及与所述产品组对应的用户集合,所述示性函数控制与所述产品组对应的所述产品出现的次数;以及
通过所述第二产品组候选集合,进行相关产品挖掘,其中,所述相关产品为具有关联关系或互补关系的商品组。
2.如权利要求1所述的方法,其特征在于,所述通过预定时间窗口,获取多个产品的表示向量,包括:
确定所述预定时间窗口;
获取在所述预定时间窗口内所有产品交易信息;以及
通过所述产品交易信息对应生成产品的表示向量。
3.如权利要求2所述的方法,其特征在于,所述通过所述产品交易信息对应生成产品的表示向量,包括:
通过所述产品与其对应的购买该产品的用户生成所述产品的所述表示向量。
4.如权利要求1所述的方法,其特征在于,所述通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合,包括:
通过MinHash算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合。
5.如权利要求4所述的方法,其特征在于,所述通过MinHash算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合,包括:
将多个产品之中每两个产品进行关联,生成产品组;
通过MinHash算法对每一个产品组进行第一相似度估计计算;
将所述产品组按照第一相似度估计计算结果进行排序;以及
选取满足第一阈值的计算结果对应的产品组,生成所述第一产品组候选集合。
6.如权利要求5所述的方法,其特征在于,所述通过MinHash算法对每一个产品组进行第一相似度估计计算,包括:
通过Jaccard相似度获取每一个产品组进行第一相似度估计计算。
7.如权利要求1所述的方法,其特征在于,所述利用相似度公式,并根据产品的相关程度,对所述第一产品组候选集合中的产品组进行二次排序处理,获取第二产品组候选集合,包括:
通过相似度公式对所述第一产品组候选集合中的产品组进行第二相似度估计计算;
将所述产品组按照第二相似度估计计算结果进行排序;以及
选取满足第二阈值的计算结果对应的产品组,生成所述第二产品组候选集合。
9.如权利要求1所述的方法,其特征在于,通过分布式计算框架支持局部敏感哈希计算。
10.如权利要求1所述的方法,其特征在于,还包括:
通过所述第二产品组候选集合进行产品信息推广。
11.一种用于相关产品挖掘的装置,其特征在于,包括:
产品模块,用于通过预定时间窗口,获取多个产品的表示向量,其中,所述表示向量是通过所述多个产品和与所述多个产品对应的购买所述产品的用户生成的;
第一排序模块,用于通过局部敏感哈希算法对所述多个产品的表示向量进行排序处理,获取第一产品组候选集合;
第二排序模块,用于利用相似度公式,并根据产品的相关程度,对所述第一产品组候选集合中的产品组进行二次排序处理,获取第二产品组候选集合;其中,所述相似度公式中包括与所述第一产品组候选集合对应的产品组、示性函数以及与所述产品组对应的用户集合,所述示性函数控制与所述产品组对应的所述产品出现的次数;以及
产品挖掘模块,用于通过所述第二产品组候选集合,进行相关产品挖掘,其中,所述相关产品为具有关联关系或互补关系的商品组。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任一所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710985473.5A CN110020124B (zh) | 2017-10-20 | 2017-10-20 | 用于相关产品挖掘的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710985473.5A CN110020124B (zh) | 2017-10-20 | 2017-10-20 | 用于相关产品挖掘的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110020124A CN110020124A (zh) | 2019-07-16 |
CN110020124B true CN110020124B (zh) | 2021-09-07 |
Family
ID=67186676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710985473.5A Active CN110020124B (zh) | 2017-10-20 | 2017-10-20 | 用于相关产品挖掘的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110020124B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110781354B (zh) * | 2019-10-24 | 2022-06-10 | 北京齐尔布莱特科技有限公司 | 一种对象选择方法、装置、系统及计算设备 |
CN111367965B (zh) * | 2020-03-04 | 2023-05-02 | 腾讯云计算(北京)有限责任公司 | 目标对象确定方法、装置、电子设备及存储介质 |
CN111694964A (zh) * | 2020-05-13 | 2020-09-22 | 平安科技(深圳)有限公司 | 一种药品发现方法、设备、服务器及可读存储介质 |
CN113763061A (zh) * | 2020-06-03 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 相似物品聚合的方法和装置 |
CN112633363A (zh) * | 2020-12-21 | 2021-04-09 | 上海明略人工智能(集团)有限公司 | 商品特征相似度计算方法及系统 |
CN112734386A (zh) * | 2021-01-13 | 2021-04-30 | 国家电网有限公司 | 基于关联匹配算法的新能源接网全流程贯通方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206752A (zh) * | 2007-12-25 | 2008-06-25 | 北京科文书业信息技术有限公司 | 电子商务网站相关商品推荐系统及其方法 |
CN103377250A (zh) * | 2012-04-27 | 2013-10-30 | 杭州载言网络技术有限公司 | 基于邻域的top-k推荐方法 |
CN104679835A (zh) * | 2015-02-09 | 2015-06-03 | 浙江大学 | 一种基于多视图哈希的图书推荐方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101020206B1 (ko) * | 2008-06-16 | 2011-03-08 | 성균관대학교산학협력단 | 사용자 추천 방법 및 이를 위한 프로그램이 기록된 기록매체 |
-
2017
- 2017-10-20 CN CN201710985473.5A patent/CN110020124B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206752A (zh) * | 2007-12-25 | 2008-06-25 | 北京科文书业信息技术有限公司 | 电子商务网站相关商品推荐系统及其方法 |
CN103377250A (zh) * | 2012-04-27 | 2013-10-30 | 杭州载言网络技术有限公司 | 基于邻域的top-k推荐方法 |
CN104679835A (zh) * | 2015-02-09 | 2015-06-03 | 浙江大学 | 一种基于多视图哈希的图书推荐方法 |
Non-Patent Citations (1)
Title |
---|
数据挖掘之lsh minhash simhash;mousever;《https://blog.csdn.net/mousever/article/details/52491040?utm_source=blogxgwz7》;20160909;第2-5页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110020124A (zh) | 2019-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110020124B (zh) | 用于相关产品挖掘的方法及装置 | |
CN107729937B (zh) | 用于确定用户兴趣标签的方法及装置 | |
US11281860B2 (en) | Method, apparatus and device for recognizing text type | |
US11315032B2 (en) | Method and system for recommending content items to a user based on tensor factorization | |
US10685065B2 (en) | Method and system for recommending content to a user | |
WO2018121700A1 (zh) | 基于已安装应用来推荐应用信息的方法、装置、终端设备及存储介质 | |
CN110363604B (zh) | 页面生成方法和装置 | |
CN107517251B (zh) | 信息推送方法和装置 | |
CN112149003B (zh) | 商品社群推荐方法、装置和计算机设备 | |
CN107679916A (zh) | 用于获取用户兴趣度的方法及装置 | |
CN112347147A (zh) | 基于用户关联关系的信息推送方法、装置及电子设备 | |
CN112116426A (zh) | 一种推送物品信息的方法和装置 | |
CN114493786A (zh) | 一种信息推荐方法及装置 | |
CN110599281A (zh) | 一种确定目标店铺的方法和装置 | |
CN111368189B (zh) | 货源排序推荐方法、装置、电子设备、存储介质 | |
CN113761350A (zh) | 一种数据推荐方法、相关装置和数据推荐系统 | |
CN113360816A (zh) | 点击率预测的方法和装置 | |
CN110827101A (zh) | 一种店铺推荐的方法和装置 | |
CN112016791B (zh) | 资源分配方法、装置及电子设备 | |
CN113722593A (zh) | 事件数据处理方法、装置、电子设备和介质 | |
CN113792952A (zh) | 用于生成模型的方法和装置 | |
CN113327145A (zh) | 一种物品推荐方法和装置 | |
CN113342969A (zh) | 数据处理方法和装置 | |
CN113450167A (zh) | 一种商品推荐方法和装置 | |
CN111488537A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |