CN113516524A - 用于推送信息的方法和装置 - Google Patents
用于推送信息的方法和装置 Download PDFInfo
- Publication number
- CN113516524A CN113516524A CN202010281176.4A CN202010281176A CN113516524A CN 113516524 A CN113516524 A CN 113516524A CN 202010281176 A CN202010281176 A CN 202010281176A CN 113516524 A CN113516524 A CN 113516524A
- Authority
- CN
- China
- Prior art keywords
- similarity
- item
- items
- vertex
- graph network
- 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 46
- 239000011159 matrix material Substances 0.000 claims abstract description 82
- 238000001514 detection method Methods 0.000 claims abstract description 30
- 230000009471 action Effects 0.000 claims description 54
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006399 behavior Effects 0.000 description 66
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 11
- 239000003795 chemical substances by application Substances 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 230000001186 cumulative effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000007619 statistical method Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- 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/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
- G06Q30/0625—Directed, with specific intent or strategy
- G06Q30/0629—Directed, with specific intent or strategy for generating comparisons
-
- 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/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
-
- 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/0241—Advertisements
- G06Q30/0251—Targeted advertisements
-
- 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/0282—Rating or review of business operators or products
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了用于推送信息的方法和装置。该方法的一具体实施方式包括:获取至少一个目标用户的行为信息,从行为信息中提取目标信息,其中,目标信息包括行为所针对的物品的物品标识;确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络,其中,图网络中的顶点用于表征物品,图网络中的边用于表征物品之间的相似度;利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果;基于聚类结果,向至少一个目标用户的用户终端推送物品信息。该实施方式提高了物品信息推送的准确性。
Description
技术领域
本申请实施例涉及计算机技术领域,具体涉及用于推送信息的方法和装置。
背景技术
在电子商务领域,商品的智能化推荐变得越来越重要。好的商品推荐算法能够更加合理地推荐顾客喜欢的商品,吸引顾客浏览相应的商品,提升商品的加购率,从而为商家带来收益上的提升。
相关的商品推荐方式通常是采用基于规则的方法,按照商品名称或商品种类进行商品推荐;也可以根据商品的文本描述信息或图片之间的相似度进行商品推荐。
发明内容
本申请实施例提出了用于推送信息的方法和装置。
第一方面,本申请实施例提供了一种用于推送信息的方法,包括:获取至少一个目标用户的行为信息,从行为信息中提取目标信息,其中,目标信息包括行为所针对的物品的物品标识;确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络,其中,图网络中的顶点用于表征物品,图网络中的边用于表征物品之间的相似度;利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果;基于聚类结果,向至少一个目标用户的用户终端推送物品信息。
在一些实施例中,目标信息还包括针对物品所产生的行为的行为时间,行为时间与物品标识相对应;以及确定提取出的各个物品标识所指示的各个物品之间的相似度,包括:针对至少一个目标用户中的每个目标用户,按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列,确定物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度;对相同的两个物品之间的第一相似度进行求和得到物品之间的相似度。
在一些实施例中,确定物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度,包括:针对各组物品中的每组物品,确定针对该组物品所产生的行为的行为时间之间的时间差,将时间差的绝对值与预设第一数值的比值向下取整,将所得到的整数确定为标准化时间差,将标准化时间差输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度,其中,各组物品由该目标用户对应的物品标识序列中相邻的物品标识所指示的两个物品所组成。
在一些实施例中,利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果,包括:基于图团体检测算法和各个物品之间的相似度,对图网络中各个顶点所表征的物品进行聚类,得到聚类结果。
在一些实施例中,基于图团体检测算法和各个物品之间的相似度,对图网络中各个顶点所表征的物品进行聚类,得到聚类结果,包括:确定图网络中各个顶点的度;利用物品相似矩阵,确定物品邻接矩阵,其中,物品邻接矩阵中的数值是基于物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的;对图网络中的各个顶点进行初始聚类,得到初始聚类结果,基于初始聚类结果,执行如下判断步骤:针对由图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值;从物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值;将该组顶点的度的乘积确定为第二数值,以及将第二数值与预设数值的乘积确定为第三数值;将第一数值与第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、第四数值和结果值的乘积确定为该组顶点对应的目标值;对各组顶点对应的各个目标值进行求和,将得到的和值与预设数值的乘积确定为初始聚类结果的分数,以及将初始聚类结果添加到预设的初始聚类结果集合中;确定针对图网络中的各个顶点是否存在其它聚类结果;若不存在,基于确定出的各个分数,从初始聚类结果集合中选取初始聚类结果作为聚类结果,其中,预设数值与图网络中的边的数量相关。
在一些实施例中,该方法还包括:若存在,将所存在的其它聚类结果作为初始聚类结果,继续执行判断步骤。
第二方面,本申请实施例提供了一种用于推送信息的装置,包括:获取单元,被配置成获取至少一个目标用户的行为信息,从行为信息中提取目标信息,其中,目标信息包括行为所针对的物品的物品标识;生成单元,被配置成确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络,其中,图网络中的顶点用于表征物品,图网络中的边用于表征物品之间的相似度;聚类单元,被配置成利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果;推送单元,被配置成基于聚类结果,向至少一个目标用户的用户终端推送物品信息。
在一些实施例中,聚类单元进一步配置成按照如下方式利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果:基于图团体检测算法和各个物品之间的相似度,对图网络中各个顶点所表征的物品进行聚类,得到聚类结果。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请的上述实施例提供的用于推送信息的方法和装置,通过获取至少一个目标用户的行为信息,从上述行为信息中提取包括行为所针对的物品的物品标识的目标信息;之后,确定提取出的各个物品标识所指示的各个物品之间的相似度,利用上述各个物品之间的相似度,生成物品相似矩阵,以及利用上述物品相似矩阵,构建图网络;而后,利用图团体检测算法对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果;最后,基于上述聚类结果,向上述至少一个目标用户的用户终端推送物品信息。通过这种方式可以从用户的行为信息中提取有用信息,构建物品相似矩阵,并利用图团体检测算法对用户行为所针对的物品进行聚类,基于得到的聚类结果进行物品推荐,从而可以提高物品信息推送的准确性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的各个实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的用于推送信息的方法的一个实施例的流程图;
图3是根据本申请的用于推送信息的方法的确定物品之间的相似度的一个实施例的流程图;
图4是根据本申请的用于推送信息的方法的对图网络中各个顶点所表征的物品进行聚类的一个实施例的流程图;
图5是根据本申请的用于推送信息的装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于推送信息的方法的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括用户终端1011、1012、1013,网络102和服务器103。网络102用以在用户终端1011、1012、1013和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用用户终端1011、1012、1013通过网络102与服务器103交互,以发送或接收消息等(例如,用户终端1011、1012、1013可以接收服务器103中发送的物品信息,服务器103也可以从用户终端1011、1012、1013中获取用户的行为信息)等。用户终端1011、1012、1013上可以安装有各种通讯客户端应用,例如购物类应用、搜索类应用、即时通讯软件等。
用户终端1011、1012、1013可以是硬件,也可以是软件。当用户终端1011、1012、1013为硬件时,可以是支持信息交互的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当用户终端1011、1012、1013为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器103可以是提供各种服务的服务器。例如,可以是对用户的行为信息进行分析的后台服务器。服务器103可以首先获取至少一个目标用户的行为信息,从上述行为信息中提取包括行为所针对的物品的物品标识的目标信息;之后,可以确定提取出的各个物品标识所指示的各个物品之间的相似度,利用上述各个物品之间的相似度,生成物品相似矩阵,以及利用上述物品相似矩阵,构建图网络;而后,可以利用图团体检测算法对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果;最后,可以基于上述聚类结果,向上述至少一个目标用户的用户终端1011、1012、1013推送物品信息。
需要说明的是,服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的用于推送信息的方法通常由服务器103执行。
需要说明的是,服务器103的本地可以存储有用户的行为信息,服务器103可以从本地获取用户的行为信息。此时示例性系统架构100可以不存在终端设备1011、1012、1013和网络102。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于推送信息的方法的一个实施例的流程200。该用于推送信息的方法,包括以下步骤:
步骤201,获取至少一个目标用户的行为信息,从行为信息中提取目标信息。
在本实施例中,用于推送信息的方法的执行主体(例如图1所示的服务器)可以获取至少一个目标用户的行为信息,从上述行为信息中提取目标信息。上述目标用户可以是待对其进行信息推荐的用户。目标用户的行为可以包括但不限于以下至少一项:浏览、点击、搜索、对物品的物品信息进行收藏和将物品的物品信息添加到购物车中。上述行为信息可以包括但不限于以下至少一项:行为所来源的目标用户的用户标识、行为时间和行为所针对的对象。
在这里,上述目标信息可以包括行为所针对的物品的物品标识,上述物品标识可以为物品的SKU(Stock keeping Unit,库存保有单位),库存保有单位也可以称为库存量单位,是对每一个产品和服务的唯一标示符,使用SKU可以用于数据管理,如仓库或零售商店中产品的库存情况。上述目标信息还可以包括行为所来源的目标用户的用户标识。
需要说明的是,在提取出目标信息之后,可以按照用户标识将同一用户标识所对应的目标信息划分为一组。
步骤202,确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络。
在本实施例中,上述执行主体可以确定提取出的各个物品标识所指示的各个物品之间的相似度。作为一种示例,上述执行主体可以首先获取上述各个物品标识中每个物品标识所指示的物品的物品描述文本;之后,针对上述各个物品标识所指示的各个物品中的每两个物品,可以将这两个物品的物品描述文本之间的相似度确定为这两个物品之间的相似度。
作为另一种示例,上述执行主体可以首先获取上述各个物品标识中每个物品标识所指示的物品的物品描述图片;之后,针对上述各个物品标识所指示的各个物品中的每两个物品,可以将这两个物品的物品描述图片输入预先训练的图像相似度预测模型中,得到这两个物品的物品描述图片之间的相似度作为这两个物品之间的相似度。
之后,上述执行主体可以利用上述各个物品之间的相似度,生成物品相似矩阵。相似矩阵通常是指存在相似关系的矩阵。设A、B都是n阶矩阵,若存在可逆矩阵P,使P-1AP=B,则称B是A的相似矩阵,并称矩阵A与B相似,记为A~B。作为示例,若物品A与物品B之间的相似度为0.5,物品A与物品C之间的相似度为0.12,物品A与物品D之间的相似度为0.68,物品B与物品C之间的相似度为0.25,物品B与物品D之间的相似度为0.87,物品C与物品D之间的相似度为0.9,则所生成的物品相似矩阵P可以表征如下:
而后,上述执行主体可以利用上述物品相似矩阵,构建图网络(Graph Network,GN)。图网络通常由相互连接的图网络块(GN block)组成,在神经网络实现中也被称为“节点”。节点间的连接被称为“边”,表示了节点间的依赖关系。在这里,上述图网络中的顶点可以用于表征物品,上述图网络中的边可以用于表征物品之间的相似度。
需要说明的是,可以设定预设相似度阈值,若两个物品之间的相似度小于上述相似度阈值,则可以将这两个物品之间的相似度设置为0。此时,上述图网络中不存在连接表征这两个物品的节点的边。
步骤203,利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果。
在本实施例中,上述执行主体可以利用图团体检测算法对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果。图团体通常被定义为一种顶点的子集,每个子集中的顶点相对于网络的其它顶点来说要连接得更加紧密。图团体检测算法是一种按照图结构中各个顶点所表征的对象的密切程度将各个顶点划分为至少两个子集的算法。在这里,所划分出的每个子集可以为一个聚类簇。
在这里,上述执行主体可以按照如下公式(1)对上述图网络中各个顶点所表征的物品进行聚类:
其中,M为模块性,用于衡量图团体划分质量的一种标准,划分的越好,M的值越大;L为上述图网络中所包含的边的数量;i和j的取值范围为1到N,N的取值大于等于1,N为上述图网络中所包含的顶点的数量;Ai,j为邻接矩阵中第i个顶点和第j个顶点所对应的值(在这里,邻接矩阵中的数值是基于物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度大于上述相似度阈值时,对应邻接矩阵中的数值为1;若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度小于等于上述相似度阈值时,对应邻接矩阵中的数值为0);ki表示顶点i的度(在这里,顶点的度表示与该顶点相连的其他顶点的数量);kj表示顶点j的度;ci为第i个顶点的聚类;cj为第j个顶点的聚类;δ(ci,cj)为克罗内克函数(Kronecker-deltafunction),若第i个顶点与第j个顶点属于同一聚类,则δ(ci,cj)为1;若第i个顶点与第j个顶点不属于同一聚类,则δ(ci,cj)为0。
需要说明的是,由于ki和kj分别表示第i个顶点和第j个顶点的度,那么表示当该图网络是随机分配时,第i个顶点和第j个顶点之间的预期边数。当ki和kj都比较大的时候,连接第i个顶点和第j个顶点的边出现的概率就越大,当ki和kj中的至少一个比较小的时候,连接第i个顶点和第j个顶点的边出现的概率就越小。
还需要说明的是,表示图网络的真实结构和随机组合时的预期结构之间的差。若Ai,j=1且很小时,M的数值最高。这意味着,当在第i个顶点和第j个顶点之间存在连接,但是第i个顶点和第j个顶点之间存在连接的预期又比较小的时候,得到的值更高。再有,如果把这样的两个顶点分到一个聚类,则能提高图网络的模块性,如果分在不同的聚类的话,则并不能提高图网络的模块性。
步骤204,基于聚类结果,向至少一个目标用户的用户终端推送物品信息。
在本实施例中,上述执行主体可以基于在步骤203中得到的聚类结果,向上述至少一个目标用户的用户终端推送物品信息。针对上述至少一个目标用户中的每个目标用户,上述执行主体可以向该目标用户的用户终端推送与该目标用户的行为所针对的物品存在于同一聚类簇(目标聚类簇)中的其他物品的物品信息。上述物品信息可以包括但不限于以下至少一项:物品信息链接、物品描述文字、物品描述图片和物品描述视频。
在这里,上述执行主体可以从上述目标聚类簇中选取预设第一数目(例如,3)个物品作为待推荐物品。上述执行主体也可以基于上述目标聚类簇中所包含的每个物品的物品信息的被浏览次数或者被点击次数,从上述目标聚类簇中选取出待推荐物品。例如,可以按照被浏览次数或者被点击次数由大到小的顺序对上述目标聚类簇中所包含的各个物品进行排序,之后,可以选取排序结果中的前预设第二数目个物品作为待推荐物品。或者,可以从上述目标聚类簇中选取被浏览次数或者被点击次数大于预设次数阈值的物品作为待推荐物品。上述执行主体还可以从上述目标聚类簇中选取该目标用户的行为所针对的物品之间的相似度较高的预设第三数目个物品作为待推荐物品。上述执行主体还可以从上述目标聚类簇中选取与当前季节相关性较高的物品作为待推荐物品。例如,若目标聚类簇中包含口罩、围巾、风衣、人字拖,当前季节为夏天,则可以将人字拖作为待推荐物品。
在本实施例的一些可选的实现方式中,上述目标信息还可以包括针对物品所产生的行为的行为时间。在这里,一个行为时间通常与一个物品标识相对应。上述执行主体可以通过如下方式确定提取出的各个物品标识所指示的各个物品之间的相似度:针对上述至少一个目标用户中的每个目标用户,上述执行主体可以按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列。之后,可以确定上述物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度。具体地,针对各组物品中的每组物品,上述执行主体可以确定针对该组物品所产生的行为的行为时间之间的时间差,之后,可以将上述时间差的绝对值与预设第二数值的比值进行取整,将所得到的整数输入到预设的高斯核(Gaussian kernel)函数中,得到该组物品之间的相似度作为第一相似度。而后,上述执行主体可以对相同的两个物品之间的第一相似度进行求和得到这两个物品之间的相似度。高斯核函数也可以称为径向基函数(Radial Basis Function,RBF),是常用的一种核函数。它可以将有限维数据映射到高维空间。高斯核函数是两个向量欧式距离的单调函数。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式利用图团体检测算法对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果:上述执行主体可以基于图团体检测算法和上述各个物品之间的相似度,对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果。具体地,上述执行主体可以按照如下公式(2)对上述图网络中各个顶点所表征的物品进行聚类:
其中,M为模块性,用于衡量图团体划分质量的一种标准,划分的越好,M的值越大;L为上述图网络中所包含的边的数量;i和j的取值范围为1到N,N的取值大于等于1,N为上述图网络中所包含的顶点的数量;Ai,j为邻接矩阵中第i个顶点和第j个顶点所对应的值(在这里,邻接矩阵中的数值是基于物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度大于上述相似度阈值时,对应邻接矩阵中的数值为1;若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度小于等于上述相似度阈值时,对应邻接矩阵中的数值为0);ki表示顶点i的度(在这里,顶点的度表示与该顶点相连的其他顶点的数量);kj表示顶点j的度;ci为第i个顶点的聚类;cj为第j个顶点的聚类;δ(ci,cj)为克罗内克函数,若第i个顶点与第j个顶点属于同一聚类,则δ(ci,cj)为1;若第i个顶点与第j个顶点不属于同一聚类,则δ(ci,cj)为0;C(i,j)是由第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度W(i,j)和预设相似度阈值所确定出的,若W(i,j)大于上述相似度阈值,则C(i,j)=1,若W(i,j)小于等于上述相似度阈值,则C(i,j)=0。
本申请的上述实施例提供的方法通过从用户的行为信息中提取有用信息,构建物品相似矩阵,并利用图团体检测算法对用户行为所针对的物品进行聚类,基于得到的聚类结果进行物品推荐,从而可以提高物品信息推送的准确性。
进一步参考图3,其示出了根据本申请的用于推送信息的方法的确定物品之间的相似度的一个实施例的流程300,包括以下步骤:
步骤301,针对至少一个目标用户中的每个目标用户,按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列。
在本实施例中,用于推送信息的方法的执行主体(例如图1所示的服务器)可以针对至少一个目标用户中的每个目标用户,按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列。在这里,一个行为时间通常与一个物品标识相对应。作为示例,若用户A在8点56分21秒时点击了物品C的物品信息,在8点56分57秒时浏览了物品E的物品信息,在9点1分8秒时将物品F的物品信息添加到购物车中,在9点5分12秒点击了物品C的物品信息,则按照用户A的行为时间,可以得到物品标识序列:物品C-物品E-物品F-物品C。
步骤302,针对各组物品中的每组物品,确定针对该组物品所产生的行为的行为时间之间的时间差。
在本实施例中,可以利用滑动时间窗口,对所得到的物品标识序列进行滑动。在这里,滑动窗口的时间差是可变的,但是滑动窗口内每次通常只允许包含两个物品标识。滑动窗口内所包含的两个物品标识所指示的两个物品构成一组物品。针对各组物品中的每组物品,上述执行主体可以确定针对该组物品所产生的行为的行为时间之间的时间差。作为示例,若一组物品为物品C和物品E,针对物品C所产生的行为的行为时间为8点56分21秒,针对物品E所产生的行为的行为时间为8点56分57秒,则针对该组物品所产生的行为的行为时间之间的时间差为36秒。
步骤303,将时间差的绝对值与预设第一数值的比值向下取整,将所得到的整数确定为标准化时间差,将标准化时间差输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度。
在本实施例中,上述执行主体可以将在步骤302中确定出的时间差的绝对值与预设第一数值的比值向下取整,将所得到的整数确定为标准化时间差。在这里,上述预设第一数值可以通过统计分析得到。
在这里,上述执行主体可以按照如下公式(3)确定标准化时间差:
其中,τ为标准化时间差;tj为针对第j个物品所产生的行为的行为时间;ti为针对第i个物品所产生的行为的行为时间;τ0是一个常数,表示对|tj-ti|的标准化因子,其值可以根据实际情况,通过统计分析而得到。在这里,τ0可以取15,表示以15分钟为一个时间基准。例如,当用户的行为所针对的两个物品之间的时间差在15分钟以内时,由公式(3)得到的标准化时间差为0;当用户的行为所针对的两个物品之间的时间差大于15分钟小于30分钟时,由公式(3)得到的标准化时间差为1。
之后,上述执行主体可以将上述标准化时间差输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度。
在这里,上述执行主体可以按照如下公式(4)确定一组物品之间的相似度:
其中,表示第k个用户在某一天(这里用d来表示)的ti时刻产生的行为所针对的物品m和tj时刻产生的行为所针对的物品n之间的相似度。ti和tj分别是同一个用户(这里的第k个用户)在同一天(这里的d天)针对不同商品所产生的行为的两个不同的时间点(这里可以以分钟作为基本的时间单元)。τ表示ti和tj之间的标准化时间差。随着τ的增大,高斯核函数值在单调递减。σ指的高斯核函数中的带宽,用于控制径向作用范围。σ越大,高斯核函数的局部影响范围就会越大。
步骤304,对相同的两个物品之间的第一相似度进行求和得到物品之间的相似度。
在本实施例中,上述执行主体可以在各组物品中查询出相同的两个物品,对相同的两个物品之间的第一相似度进行求和得到物品之间的相似度。作为示例,若得到的物品标识序列为物品C-物品E-物品F-物品C-物品E,则上述执行主体可以确定物品C与物品E之间的第一相似度,确定物品E与物品F之间的第一相似度,确定物品F与物品C之间的第一相似度以及确定物品C与物品E之间的第一相似度,而后,上述执行主体可以将物品C与物品E之间的两个第一相似度相加得到物品C与物品E之间的相似度。
在这里,上述执行主体可以按照如下公式(5)确定物品之间的相似度:
其中,sim(k,d)(skum,skun)表示第k个用户在某一天(这里用d来表示)产生的行为所针对的物品m和产生的行为所针对的物品n之间的相似度(累积相似度)。ti和tj分别是同一个用户(这里的第k个用户)在同一天(这里的d天)针对不同商品所产生的行为的两个不同的时间点(这里可以以分钟作为基本的时间单元)。T表示最大时间点,例如,若d为1月2日,则T可以为1月3日0点这一时间点。表示第k个用户在某一天(这里用d来表示)的ti时刻产生的行为所针对的物品m和tj时刻产生的行为所针对的物品n之间的相似度。
在本实施例中,上述执行主体在确定出某一个用户在某一天产生的行为所针对的物品之间的相似度之后,可以确定上述至少一个目标用户(所有目标用户)产生的行为所针对的物品之间的相似度。上述执行主体可以按照如下公式(6)确定物品之间的相似度:
sim(d)(skum,skun)=∑ksim(k,d)(skum,skun) (6)
其中,sim(d)(skum,skun)表示所有用户在某一天(这里用d来表示)产生的行为所针对的物品m和产生的行为所针对的物品n之间的相似度(累积相似度)。sim(k,d)(skum,skun)表示第k个用户在某一天(这里用d来表示)产生的行为所针对的物品m和产生的行为所针对的物品n之间的相似度(累积相似度)。
在本实施例中,上述执行主体在确定出上述至少一个目标用户(所有目标用户)产生的行为所针对的物品之间的相似度之后,可以确定所有用户在预设时间段内(在这里,可以是从第1天到第d天)产生的行为所针对的物品之间的相似度。上述执行主体可以按照如下公式(7)确定物品之间的相似度:
其中,sim(skum,skun)代表全局相似度,表示所有用户从第1天到第d天产生的行为所针对的物品m和产生的行为所针对的物品n之间的累积相似度。sim(d′)(skum,skun)表示所有用户在第d′天产生的行为所针对的物品m和产生的行为所针对的物品n之间的累积相似度。d′的取值范围为1到d。表示第k个用户在第d′天的ti时刻产生的行为所针对的物品m和tj时刻产生的行为所针对的物品n之间的相似度。
本申请的上述实施例提供的方法利用针对物品信息所产生的行为的行为时间确定物品之间的相似度,这种确定相似度的方式考虑了用户购物习惯与商品之间的联系,从而提高了物品信息推送的针对性。
进一步参考图4,其示出了根据本申请的用于推送信息的方法的对图网络中各个顶点所表征的物品进行聚类的一个实施例的流程400,包括以下步骤:
步骤401,确定图网络中各个顶点的度。
在本实施例中,用于推送信息的方法的执行主体(例如图1所示的服务器)可以确定图网络中各个顶点的度。在这里,顶点的度通常表示与该顶点相连的其他顶点的数量。
步骤402,利用物品相似矩阵,确定物品邻接矩阵。
在本实施例中,上述执行主体可以利用物品相似矩阵,确定物品邻接矩阵。上述物品邻接矩阵中的数值通常是基于上述物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。具体地,若上述物品相似矩阵中某一数值小于上述相似度阈值,则可以将上述物品邻接矩阵中与该数值相对应的位置上的数值设置为0。
步骤403,对图网络中的各个顶点进行初始聚类,得到初始聚类结果,基于初始聚类结果,执行如下判断步骤:针对由图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值;从物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值;将该组顶点的度的乘积确定为第二数值,以及将第二数值与预设数值的乘积确定为第三数值;将第一数值与第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、第四数值和结果值的乘积确定为该组顶点对应的目标值;对各组顶点对应的各个目标值进行求和,将得到的和值与预设数值的乘积确定为初始聚类结果的分数,以及将初始聚类结果添加到预设的初始聚类结果集合中;确定针对图网络中的各个顶点是否存在其它聚类结果;若不存在,基于确定出的各个分数,从初始聚类结果集合中选取初始聚类结果作为聚类结果。
在本实施例中,上述执行主体可以对上述图网络中的各个顶点进行初始聚类,得到初始聚类结果,以及基于上述初始聚类结果,执行如下判断步骤。在这里,上述执行主体可以对上述图网络中的各个顶点进行任意聚类,例如,可以将上述图网络中的每个顶点独自构成一个聚类;也可以将上述图网络中的各个顶点中的每任意两个顶点构成一个聚类。
在本实施例中,步骤403可以包括子步骤4031、4032、4033、4034、4035、4036和4037。
步骤4031,针对由图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值。
在这里,上述执行主体可以针对由上述图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值。若在上述初始聚类结果中查找到该组顶点在同一聚类簇中,则可以生成用于表征该组顶点在同一聚类簇中的结果值为1;若在上述初始聚类结果中查找到该组顶点不在同一聚类簇中,则可以生成用于表征该组顶点在同一聚类簇中的结果值为0。在这里,可以利用克罗内克函数确定该组顶点是否属于同一聚类。
步骤4032,从物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值。
在这里,上述执行主体可以从物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值。上述执行主体可以从上述物品邻接矩阵中查找与该组顶点对应的数值,将查找到的数值作为第一数值。作为示例,在物品邻接矩阵中,上述执行主体可以获取到与物品A和物品B这组物品相对应的数值为0.8。
步骤4033,将该组顶点的度的乘积确定为第二数值,以及将第二数值与预设数值的乘积确定为第三数值。
在这里,上述执行主体可以将该组顶点的度的乘积确定为第二数值,以及将第二数值与预设数值的乘积确定为第三数值。上述执行主体可以将该组顶点中一个顶点的度与另一个顶点的度的乘积确定为第二数值。顶点的度表示与该顶点相连的其他顶点的数量。上述预设数值通常与上述图网络中的边的数量相关,例如,上述数值可以为上述图网络中的边的数量的二倍。作为示例,若该组顶点为顶点A和顶点B,顶点A的度为5,顶点B的度为3,上述图网络中包含30条边,则上述第二数值可以为15,上述第三数值可以为0.25。
步骤4034,将第一数值与第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、第四数值和结果值的乘积确定为该组顶点对应的目标值。
在这里,上述执行主体可以将上述第一数值与第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、第四数值和结果值的乘积确定为该组顶点对应的目标值。
步骤4035,对各组顶点对应的各个目标值进行求和,将得到的和值与预设数值的乘积确定为初始聚类结果的分数,以及将初始聚类结果添加到预设的初始聚类结果集合中。
在这里,上述执行主体可以对各组顶点对应的各个目标值进行求和,将得到的和值与预设数值的乘积确定为初始聚类结果的分数。在这里,上述预设数值通常与上述图网络中的边的数量相关。例如,可以为上述图网络中的边的数量与2的乘积的倒数。之后,可以将初始聚类结果添加到预设的初始聚类结果集合中。
在这里,上述执行主体可以按照如下公式(8)确定上述初始聚类结果的分数:
其中,M为模块性,用于衡量图团体划分质量的一种标准,划分的越好,M的值越大;L为上述图网络中所包含的边的数量;i和j的取值范围为1到N,N的取值大于等于1,N为上述图网络中所包含的顶点的数量;Ai,j为邻接矩阵中第i个顶点和第j个顶点所对应的值(在这里,邻接矩阵中的数值是基于物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度大于上述相似度阈值时,对应邻接矩阵中的数值为1;若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度小于等于上述相似度阈值时,对应邻接矩阵中的数值为0);ki表示顶点i的度(在这里,顶点的度表示与该顶点相连的其他顶点的数量);kj表示顶点j的度;ci为第i个顶点的聚类;cj为第j个顶点的聚类;δ(ci,cj)为克罗内克函数,若第i个顶点与第j个顶点属于同一聚类,则δ(ci,cj)为1;若第i个顶点与第j个顶点不属于同一聚类,则δ(ci,cj)为0;W(i,j)为第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度。
步骤4036,确定针对图网络中的各个顶点是否存在其它聚类结果。
在这里,上述执行主体可以确定针对上述图网络中的各个顶点是否存在其它聚类结果。若确定出针对上述图网络中的各个顶点不存在其它聚类结果,上述执行主体可以执行步骤4037。
步骤4037,若确定出针对图网络中的各个顶点不存在其它聚类结果,基于确定出的各个分数,从初始聚类结果集合中选取初始聚类结果作为聚类结果。
在这里,若在步骤4036中确定出针对上述图网络中的各个顶点不存在其它聚类结果,上述执行主体可以基于确定出的各个分数,从上述初始聚类结果集合中选取初始聚类结果作为聚类结果。具体地,可以从上述初始聚类结果集合中选取最高分数对应的初始聚类结果作为最终的聚类结果。也可以从上述初始聚类结果集合中选取分数高于预设分数阈值的初始聚类结果作为最终的聚类结果。
在本实施例的一些可选的实现方式中,若在步骤4036中确定出针对上述图网络中的各个顶点存在其它聚类结果,上述执行主体可以将所存在的其它聚类结果作为初始聚类结果,继续执行上述判断步骤(步骤4031-步骤4037)。
本申请的上述实施例提供的方法利用针对物品信息所产生的行为的行为时间确定物品之间的相似度,这种确定相似度的方式考虑了用户购物习惯与商品之间的联系,从而提高了物品信息推送的针对性。
本申请的上述实施例提供的方法通过基于图团体检测算法和各个物品之间的相似度,对图网络中各个顶点所表征的物品进行聚类,这种聚类方式考虑了物品之间的相似度,从而可以得到更准确的聚类结果,进一步提高物品信息推送的准确性。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于推送信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于推送信息的装置500包括:获取单元501、生成单元502、聚类单元503和推送单元504。其中,获取单元501被配置成获取至少一个目标用户的行为信息,从行为信息中提取目标信息,其中,目标信息包括行为所针对的物品的物品标识;生成单元502被配置成确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络,其中,图网络中的顶点用于表征物品,图网络中的边用于表征物品之间的相似度;聚类单元503被配置成利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果;推送单元504被配置成基于聚类结果,向至少一个目标用户的用户终端推送物品信息。
在本实施例中,用于推送信息的装置500的获取单元501、生成单元502、聚类单元503和推送单元504的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203和步骤204。
在本实施例的一些可选的实现方式中,上述目标信息还可以包括针对物品所产生的行为的行为时间。在这里,一个行为时间通常与一个物品标识相对应。上述生成单元502可以通过如下方式确定提取出的各个物品标识所指示的各个物品之间的相似度:针对上述至少一个目标用户中的每个目标用户,上述生成单元502可以按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列。之后,可以确定上述物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度。具体地,针对各组物品中的每组物品,上述生成单元502可以确定针对该组物品所产生的行为的行为时间之间的时间差,之后,可以将上述时间差的绝对值与预设第二数值的比值进行取整,将所得到的整数输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度。而后,上述生成单元502可以对相同的两个物品之间的第一相似度进行求和得到这两个物品之间的相似度。
在本实施例的一些可选的实现方式中,上述生成单元502可以通过如下方式确定物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度:针对各组物品中的每组物品,上述生成单元502可以确定针对该组物品所产生的行为的行为时间之间的时间差。之后,上述生成单元502可以将确定出的时间差的绝对值与预设第一数值的比值向下取整,将所得到的整数确定为标准化时间差。在这里,上述预设第一数值可以通过统计分析得到。
在这里,上述生成单元502可以按照如下公式(3)确定标准化时间差:
其中,τ为标准化时间差;tj为针对第j个物品所产生的行为的行为时间;ti为针对第i个物品所产生的行为的行为时间;τ0是一个常数,表示对|tj-ti|的标准化因子,其值可以根据实际情况,通过统计分析而得到。在这里,τ0可以取15,表示以15分钟为一个时间基准。例如,当用户的行为所针对的两个物品之间的时间差在15分钟以内时,由公式(3)得到的标准化时间差为0;当用户的行为所针对的两个物品之间的时间差大于15分钟小于30分钟时,由公式(3)得到的标准化时间差为1。
而后,上述生成单元502可以将上述标准化时间差输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度。
在这里,上述生成单元502可以按照如下公式(4)确定一组物品之间的相似度:
其中,表示第k个用户在某一天(这里用d来表示)的ti时刻产生的行为所针对的物品m和tj时刻产生的行为所针对的物品n之间的相似度。ti和tj分别是同一个用户(这里的第k个用户)在同一天(这里的d天)针对不同商品所产生的行为的两个不同的时间点(这里可以以分钟作为基本的时间单元)。τ表示ti和tj之间的标准化时间差。随着τ的增大,高斯核函数值在单调递减。σ指的高斯核函数中的带宽,用于控制径向作用范围。σ越大,高斯核函数的局部影响范围就会越大。
在本实施例的一些可选的实现方式中,上述聚类单元503可以通过如下方式利用图团体检测算法对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果:上述聚类单元503可以基于图团体检测算法和上述各个物品之间的相似度,对上述图网络中各个顶点所表征的物品进行聚类,得到聚类结果。具体地,上述聚类单元503可以按照如下公式(2)对上述图网络中各个顶点所表征的物品进行聚类:
其中,M为模块性,用于衡量图团体划分质量的一种标准,划分的越好,M的值越大;L为上述图网络中所包含的边的数量;i和j的取值范围为1到N,N的取值大于等于1,N为上述图网络中所包含的顶点的数量;Ai,j为邻接矩阵中第i个顶点和第j个顶点所对应的值(在这里,邻接矩阵中的数值是基于物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度大于上述相似度阈值时,对应邻接矩阵中的数值为1;若第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度小于等于上述相似度阈值时,对应邻接矩阵中的数值为0);ki表示顶点i的度(在这里,顶点的度表示与该顶点相连的其他顶点的数量);kj表示顶点j的度;ci为第i个顶点的聚类;cj为第j个顶点的聚类;δ(ci,cj)为克罗内克函数,若第i个顶点与第j个顶点属于同一聚类,则δ(ci,cj)为1;若第i个顶点与第j个顶点不属于同一聚类,则δ(ci,cj)为0;C(i,j)是由第i个顶点所表征的物品和第j个顶点所表征的物品之间的相似度W(i,j)和预设相似度阈值所确定出的,若W(i,j)大于上述相似度阈值,则C(i,j)=1,若W(i,j)小于等于上述相似度阈值,则C(i,j)=0。
在本实施例的一些可选的实现方式中,上述聚类单元503可以通过如下方式基于图团体检测算法和所述各个物品之间的相似度,对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果:首先,上述聚类单元503可以确定图网络中各个顶点的度。在这里,顶点的度通常表示与该顶点相连的其他顶点的数量。之后,上述聚类单元503可以利用物品相似矩阵,确定物品邻接矩阵。上述物品邻接矩阵中的数值通常是基于上述物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的。具体地,若上述物品相似矩阵中某一数值小于上述相似度阈值,则可以将上述物品邻接矩阵中与该数值相对应的位置上的数值设置为0。而后,上述聚类单元503可以对上述图网络中的各个顶点进行初始聚类,得到初始聚类结果,基于上述初始聚类结果,执行如下判断步骤:针对由上述图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值;从物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值;将该组顶点的度的乘积确定为第二数值,以及将第二数值与预设数值的乘积确定为第三数值;将上述第一数值与上述第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、上述第四数值和上述结果值的乘积确定为该组顶点对应的目标值;对各组顶点对应的各个目标值进行求和,将得到的和值与预设数值的乘积确定为初始聚类结果的分数,以及将初始聚类结果添加到预设的初始聚类结果集合中;确定针对上述图网络中的各个顶点是否存在其它聚类结果;若不存在,基于确定出的各个分数,从初始聚类结果集合中选取初始聚类结果作为聚类结果。
在本实施例的一些可选的实现方式中,若确定出针对上述图网络中的各个顶点存在其它聚类结果,上述聚类单元503可以将所存在的其它聚类结果作为初始聚类结果,继续执行上述判断步骤。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的服务器)600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少一个目标用户的行为信息,从行为信息中提取目标信息,其中,目标信息包括行为所针对的物品的物品标识;确定提取出的各个物品标识所指示的各个物品之间的相似度,利用各个物品之间的相似度,生成物品相似矩阵,以及利用物品相似矩阵,构建图网络,其中,图网络中的顶点用于表征物品,图网络中的边用于表征物品之间的相似度;利用图团体检测算法对图网络中各个顶点所表征的物品进行聚类,得到聚类结果;基于聚类结果,向至少一个目标用户的用户终端推送物品信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、生成单元、聚类单元和推送单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,推送单元还可以被描述为“基于聚类结果,向至少一个目标用户的用户终端推送物品信息的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种用于推送信息的方法,包括:
获取至少一个目标用户的行为信息,从所述行为信息中提取目标信息,其中,所述目标信息包括行为所针对的物品的物品标识;
确定提取出的各个物品标识所指示的各个物品之间的相似度,利用所述各个物品之间的相似度,生成物品相似矩阵,以及利用所述物品相似矩阵,构建图网络,其中,所述图网络中的顶点用于表征物品,所述图网络中的边用于表征物品之间的相似度;
利用图团体检测算法对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果;
基于所述聚类结果,向所述至少一个目标用户的用户终端推送物品信息。
2.根据权利要求1所述的方法,其中,所述目标信息还包括针对物品所产生的行为的行为时间,行为时间与物品标识相对应;以及
所述确定提取出的各个物品标识所指示的各个物品之间的相似度,包括:
针对所述至少一个目标用户中的每个目标用户,按照该目标用户的行为时间由前到后的顺序对对应的物品标识进行排序得到物品标识序列,确定所述物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度;
对相同的两个物品之间的第一相似度进行求和得到物品之间的相似度。
3.根据权利要求2所述的方法,其中,所述确定所述物品标识序列中相邻的物品标识所指示的物品之间的相似度作为第一相似度,包括:
针对各组物品中的每组物品,确定针对该组物品所产生的行为的行为时间之间的时间差,将所述时间差的绝对值与预设第一数值的比值向下取整,将所得到的整数确定为标准化时间差,将所述标准化时间差输入到预设的高斯核函数中,得到该组物品之间的相似度作为第一相似度,其中,所述各组物品由该目标用户对应的物品标识序列中相邻的物品标识所指示的两个物品所组成。
4.根据权利要求1所述的方法,其中,所述利用图团体检测算法对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果,包括:
基于图团体检测算法和所述各个物品之间的相似度,对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果。
5.根据权利要求4所述的方法,其中,所述基于图团体检测算法和所述各个物品之间的相似度,对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果,包括:
确定所述图网络中各个顶点的度;
利用所述物品相似矩阵,确定物品邻接矩阵,其中,所述物品邻接矩阵中的数值是基于所述物品相似矩阵中对应位置上的数值和预设的相似度阈值所确定出的;
对所述图网络中的各个顶点进行初始聚类,得到初始聚类结果,基于初始聚类结果,执行如下判断步骤:针对由所述图网络中的两个顶点所组成的各组顶点中的每组顶点,利用初始聚类结果,生成用于表征该组顶点是否在同一聚类簇中的结果值;从所述物品邻接矩阵中获取与该组顶点相对应的数值作为第一数值;将该组顶点的度的乘积确定为第二数值,以及将所述第二数值与预设数值的乘积确定为第三数值;将所述第一数值与所述第三数值的差值确定为第四数值,将该组顶点所表征的物品之间的相似度、所述第四数值和所述结果值的乘积确定为该组顶点对应的目标值;对所述各组顶点对应的各个目标值进行求和,将得到的和值与所述预设数值的乘积确定为初始聚类结果的分数,以及将初始聚类结果添加到预设的初始聚类结果集合中;确定针对所述图网络中的各个顶点是否存在其它聚类结果;若不存在,基于确定出的各个分数,从所述初始聚类结果集合中选取初始聚类结果作为聚类结果,其中,所述预设数值与所述图网络中的边的数量相关。
6.根据权利要求5所述的方法,其中,所述方法还包括:
若存在,将所存在的其它聚类结果作为初始聚类结果,继续执行所述判断步骤。
7.一种用于推送信息的装置,包括:
获取单元,被配置成获取至少一个目标用户的行为信息,从所述行为信息中提取目标信息,其中,所述目标信息包括行为所针对的物品的物品标识;
生成单元,被配置成确定提取出的各个物品标识所指示的各个物品之间的相似度,利用所述各个物品之间的相似度,生成物品相似矩阵,以及利用所述物品相似矩阵,构建图网络,其中,所述图网络中的顶点用于表征物品,所述图网络中的边用于表征物品之间的相似度;
聚类单元,被配置成利用图团体检测算法对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果;
推送单元,被配置成基于所述聚类结果,向所述至少一个目标用户的用户终端推送物品信息。
8.根据权利要求7所述的装置,其中,所述聚类单元进一步配置成按照如下方式利用图团体检测算法对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果:
基于图团体检测算法和所述各个物品之间的相似度,对所述图网络中各个顶点所表征的物品进行聚类,得到聚类结果。
9.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010281176.4A CN113516524A (zh) | 2020-04-10 | 2020-04-10 | 用于推送信息的方法和装置 |
US17/962,680 US20240104623A1 (en) | 2020-04-10 | 2021-03-31 | Method and apparatus for pushing information |
PCT/CN2021/084266 WO2021204039A1 (zh) | 2020-04-10 | 2021-03-31 | 用于推送信息的方法和装置 |
EP21783720.2A EP4134898A4 (en) | 2020-04-10 | 2021-03-31 | METHOD AND APPARATUS FOR PUSHING INFORMATION |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010281176.4A CN113516524A (zh) | 2020-04-10 | 2020-04-10 | 用于推送信息的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113516524A true CN113516524A (zh) | 2021-10-19 |
Family
ID=78023384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010281176.4A Pending CN113516524A (zh) | 2020-04-10 | 2020-04-10 | 用于推送信息的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240104623A1 (zh) |
EP (1) | EP4134898A4 (zh) |
CN (1) | CN113516524A (zh) |
WO (1) | WO2021204039A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116703531A (zh) * | 2023-08-03 | 2023-09-05 | 腾讯科技(深圳)有限公司 | 物品数据处理方法、装置、计算机设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105913296A (zh) * | 2016-04-01 | 2016-08-31 | 北京理工大学 | 一种基于图的个性化推荐方法 |
US20170270590A1 (en) * | 2016-03-18 | 2017-09-21 | Palo Alto Research Center Incorporated | System and method for a real-time egocentric collaborative filter on large datasets |
CN107506495A (zh) * | 2017-09-28 | 2017-12-22 | 北京京东尚科信息技术有限公司 | 信息推送方法和装置 |
CN108363821A (zh) * | 2018-05-09 | 2018-08-03 | 深圳壹账通智能科技有限公司 | 一种信息推送方法、装置、终端设备及存储介质 |
CN109460514A (zh) * | 2018-11-02 | 2019-03-12 | 北京京东尚科信息技术有限公司 | 用于推送信息的方法和装置 |
CN110298716A (zh) * | 2018-03-22 | 2019-10-01 | 北京京东尚科信息技术有限公司 | 信息推送方法和装置 |
CN110941771A (zh) * | 2019-12-24 | 2020-03-31 | 哈尔滨理工大学 | 一种电商平台中的商品并行动态推送方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286391B1 (en) * | 2012-03-19 | 2016-03-15 | Amazon Technologies, Inc. | Clustering and recommending items based upon keyword analysis |
US20170206276A1 (en) * | 2016-01-14 | 2017-07-20 | Iddo Gill | Large Scale Recommendation Engine Based on User Tastes |
CN107424273A (zh) * | 2017-07-28 | 2017-12-01 | 杭州宇泛智能科技有限公司 | 一种无人超市的管理方法 |
CN110674407B (zh) * | 2019-09-30 | 2021-10-15 | 杭州电子科技大学 | 基于图卷积神经网络的混合推荐方法 |
CN110956511A (zh) * | 2019-12-30 | 2020-04-03 | 深圳前海微众银行股份有限公司 | 商品推荐方法、装置、设备与计算机可读存储介质 |
-
2020
- 2020-04-10 CN CN202010281176.4A patent/CN113516524A/zh active Pending
-
2021
- 2021-03-31 EP EP21783720.2A patent/EP4134898A4/en active Pending
- 2021-03-31 US US17/962,680 patent/US20240104623A1/en active Pending
- 2021-03-31 WO PCT/CN2021/084266 patent/WO2021204039A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170270590A1 (en) * | 2016-03-18 | 2017-09-21 | Palo Alto Research Center Incorporated | System and method for a real-time egocentric collaborative filter on large datasets |
CN105913296A (zh) * | 2016-04-01 | 2016-08-31 | 北京理工大学 | 一种基于图的个性化推荐方法 |
CN107506495A (zh) * | 2017-09-28 | 2017-12-22 | 北京京东尚科信息技术有限公司 | 信息推送方法和装置 |
CN110298716A (zh) * | 2018-03-22 | 2019-10-01 | 北京京东尚科信息技术有限公司 | 信息推送方法和装置 |
CN108363821A (zh) * | 2018-05-09 | 2018-08-03 | 深圳壹账通智能科技有限公司 | 一种信息推送方法、装置、终端设备及存储介质 |
CN109460514A (zh) * | 2018-11-02 | 2019-03-12 | 北京京东尚科信息技术有限公司 | 用于推送信息的方法和装置 |
CN110941771A (zh) * | 2019-12-24 | 2020-03-31 | 哈尔滨理工大学 | 一种电商平台中的商品并行动态推送方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116703531A (zh) * | 2023-08-03 | 2023-09-05 | 腾讯科技(深圳)有限公司 | 物品数据处理方法、装置、计算机设备和存储介质 |
CN116703531B (zh) * | 2023-08-03 | 2023-10-13 | 腾讯科技(深圳)有限公司 | 物品数据处理方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4134898A4 (en) | 2024-01-17 |
WO2021204039A1 (zh) | 2021-10-14 |
US20240104623A1 (en) | 2024-03-28 |
EP4134898A1 (en) | 2023-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109872242B (zh) | 信息推送方法和装置 | |
CN109344314B (zh) | 一种数据处理方法、装置及服务器 | |
CN107451832B (zh) | 推送信息的方法和装置 | |
CN109471978B (zh) | 一种电子资源推荐方法及装置 | |
CN112100489B (zh) | 对象推荐的方法、装置和计算机存储介质 | |
CN105159910A (zh) | 信息推荐方法和装置 | |
CN112528164B (zh) | 一种用户协同过滤召回方法及装置 | |
CN112380449B (zh) | 信息推荐方法、模型训练方法及相关装置 | |
CN113837842A (zh) | 一种基于用户行为数据的商品推荐方法及设备 | |
CN112907334A (zh) | 一种对象推荐方法及装置 | |
CN111339406A (zh) | 个性化推荐方法、装置、设备及存储介质 | |
CN112925973A (zh) | 数据处理方法和装置 | |
CN108512674B (zh) | 用于输出信息的方法、装置和设备 | |
CN115423555A (zh) | 一种商品推荐方法、装置、电子设备及存储介质 | |
CN110059172B (zh) | 基于自然语言理解的推荐答案的方法和装置 | |
CN111667018B (zh) | 一种对象聚类的方法、装置、计算机可读介质及电子设备 | |
CN116823410B (zh) | 数据处理方法、对象处理方法、推荐方法及计算设备 | |
CN111787042B (zh) | 用于推送信息的方法和装置 | |
WO2021204039A1 (zh) | 用于推送信息的方法和装置 | |
CN115456708A (zh) | 推荐模型的训练方法、装置、电子设备和存储介质 | |
CN113704596A (zh) | 用于生成召回信息集合的方法和装置 | |
CN113792952A (zh) | 用于生成模型的方法和装置 | |
CN113191840A (zh) | 物品信息显示方法、装置、电子设备和计算机可读介质 | |
CN112905885A (zh) | 向用户推荐资源的方法、装置、设备、介质和程序产品 | |
CN112035581A (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 |