CN108304407B - 一种进行对象排序的方法和系统 - Google Patents
一种进行对象排序的方法和系统 Download PDFInfo
- Publication number
- CN108304407B CN108304407B CN201710022716.5A CN201710022716A CN108304407B CN 108304407 B CN108304407 B CN 108304407B CN 201710022716 A CN201710022716 A CN 201710022716A CN 108304407 B CN108304407 B CN 108304407B
- Authority
- CN
- China
- Prior art keywords
- objects
- similarity matrix
- value
- similarity
- sorting
- 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
- 238000012163 sequencing technique Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 26
- 239000011159 matrix material Substances 0.000 claims abstract description 186
- 238000010606 normalization Methods 0.000 claims description 14
- 238000012423 maintenance Methods 0.000 abstract description 12
- 238000004364 calculation method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 1
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
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/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/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- 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/2462—Approximate or statistical queries
-
- 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/0603—Catalogue ordering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例涉及互联网技术领域,特别涉及一种进行对象排序的方法和系统,用以解决现有技术中存在的对象排序的方案需要依赖平台运营的人工经验对规则进行维护,所以这种方式存在对维护人员的要求比较高,并且维护时间比较长的问题。本申请实施例确定需要进行排序的对象集合中的对象的排序值根据所述排序值对所述对象集合中的对象进行排序;将排序结果进行推送,其中排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的。由于能够根据对所述对象集合对应的相似度矩阵进行迭代后确定的排序值对对象进行排序,不使用排序规则,从而不需要依赖平台运营的人工经验对规则进行维护,降低了对维护人员的要求,缩短了维护时间。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种进行对象排序的方法和系统。
背景技术
网络发布平台是发布者通过网络发布自己的产品,用户通过网络浏览产品,并通过网络进行交互的平台。
发布者在网络发布平台发布产品时都会为该产品配置产品信息。用户根据产品信息可以与网站发布平台针对一个产品发生交互行为。
目前对于网络发布平台上都支持产品排序的功能,产品排序可以使用户更有效的进行产品的选择。
网络发布平台比较广泛使用的一种排序方式是依据产品的交互信息和用户的反馈信息等,并按照网络发布平台上设置的规则进行排序。
这种方式规则的设置及相关参数需要严格保密,避免用户基于规则作弊,同时需要定期进行规则的升级维护,从而保证排序结果的质量。
现有对象排序的方案需要依赖平台运营的人工经验对规则进行维护,所以这种方式对维护人员的要求比较高,并且维护时间比较长。
发明内容
本申请提供一种进行对象排序的方法和系统,用以解决现有技术中存在的对象排序的方案需要依赖平台运营的人工经验对规则进行维护,所以这种方式存在对维护人员的要求比较高,并且维护时间比较长的问题。
本申请实施例提供一种进行对象排序的方法,该方法包括:
确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
根据所述排序值对所述对象集合中的对象进行排序
本申请实施例提供一种进行对象排序的系统,该系统包括:
确定模块,用于确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
排序模块,用于根据所述排序值对所述对象集合中的对象进行排序。
本申请实施例确定需要进行排序的对象集合中的对象的排序值根据所述排序值对所述对象集合中的对象进行排序;将排序结果进行推送,其中排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的;。由于能够根据对所述对象集合对应的相似度矩阵进行迭代后确定的排序值对对象进行排序,不使用排序规则,从而不需要依赖平台运营的人工经验对规则进行维护,降低了对维护人员的要求,缩短了维护时间。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例进行对象排序的方法流程示意图;
图2为本申请实施例确定排序值向量的方法流程示意图;
图3为本申请实施例进行对象排序的系统结构示意图。
具体实施方式
本申请实施例的方案可以应用于任何需要有对象排序需求的网站,比如淘宝,aliexpress(全球速卖通),拍拍,京东,苏宁,亚马逊,ebay、1688等网站。
本申请实施例的对象可以是任何能够进行排序的对象。具体对象根据应用于的场景不同,对象也不同。比如本申请实施例如果应用于电商场景,则对象可以是商家、商品等;还比如本申请实施例如果应用于文化影音传媒应用场景,例如活跃出版社排序、热门音乐人物排序、热门新闻客户端排序等,则对象可以是出版社、音乐人物、新闻客户端等。
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部份实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
如图1所示,本申请实施例进行对象排序的方法包括:
步骤100、确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
步骤101、根据所述排序值对所述对象集合中的对象进行排序。
本申请实施例确定需要进行排序的对象集合中的对象的排序值根据所述排序值对所述对象集合中的对象进行排序;将排序结果进行推送,其中排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的。由于能够根据对所述对象集合对应的相似度矩阵进行迭代后确定的排序值对对象进行排序,不使用排序规则,从而不需要依赖平台运营的人工经验对规则进行维护,降低了对维护人员的要求,缩短了维护时间。
其中,触发本申请实施例进行排序的场景有很多,比如用户需要对对象进行排序;用户打开一个网页,网上需要向用户展示对象的排序;其他程序或其他系统需要获得对象的排序结果等。还比如用户可用流量有限、存储空间有限或浏览时间有限的情况下,需要对展示对象进行排序,择优选择对象推送呈现给用户的场景。
除了上面提到的触发排序场景,在实施中也可以采用本申请实施例的方案周期对每个对象集合进行排序,在有上面提到的触发场景满足后,可以直接返回排序后的结果,这样可以提高响应速度。
周期的时长可以根据需要进行设置,比如1一天,一周、半个月等。
根据不同的应用场景,本申请实施的对象集合划分也可以不同。比如如果本申请实施例的方案应用于电商场景,则对象集合中的对象可以包括电商平台上所有的商家和/或店铺;也可以根据商家和/或店铺出售的商品的类别划分,比如将出售同类别的商家和/或店铺划分到一个对象集合中。
本申请实施例中,对象集合的数量可以有很多;对于一个对象可以在多个对象集合中,比如电商场景,一个店铺售卖电子产品和服装,则该店铺可以划分到电子产品集合中,也在服装集合中,还可以在包括整个平台所有店铺的集合中。
其中,本申请实施例的所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵中的部分或全部;
若所述相似度矩阵包括所述第一相似度矩阵,则对象的相关信息包括用户与所述对象集合中的对象之间的关系信息;
若所述相似度矩阵包括所述第二相似度矩阵,则对象的相关信息包括所述对象集合中的对象的特征信息。
为了更好地理解本申请实施例的方案,下面先分别介绍下第一相似度矩阵和第二相似度矩阵是如何确定的。
一、确定第一相似度矩阵。
具体的,针对任意一个对象集合,确定用户集合中的用户与所述对象集合中的对象之间的关系信息;
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值;
根据确定的所有任意两个对象之间的第一相似度值,确定第一对象邻近相似度矩阵;
将所述第一对象邻近相似度矩阵进行归一化处理得到所述第一相似度矩阵。
其中,不同的应用场景本申请实施例的用户集合的确定方式也不相同。
以本申请实施例的方案应用于电商场景为例,本申请实施例的用户集合可以是电商品台上进行过交易的所有用户。
由于电商品台上进行过交易的用户数量非常庞大,如果用户集合采用电商品台上进行过交易的所有用户,虽然可以提高排序准确率,但是整体的排序效率会比较低,系统的运算量会非常大,对系统的性能要求非常高。
基于此,为了进一步提高排序的效率,一种可选的方式是:可以提取一段时间内网络点击和购买行为数据比较充足的用户组成用户集合。这里在筛选比较充足的用户时,可以分别为点击量和下单量设置阈值,只要点击量和下单量都不小于对应阈值,就可以将对应的用户作为数据比较充足的用户。
在确定用户集合后,就可以确定用户集合中的用户与所述对象集合中的对象之间的关系信息。这里的关系信息根据应用场景不同,关系信息中的具体含义也不相同。
以本申请实施例的方案应用于电商场景为例,本申请实施例的关系信息可以包括用户在商家和/或店铺的点击次数和/或下单数。
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值。
比如对象集合中有对象A、对象B和对象C。假设先确定对象A和对象B的第一相似度值,则确定用户集合中所有与对象A有关系的用户,并确定这些用户与对象A之间的关系信息,再确定用户集合中所有与对象B有关系的用户,并确定这些用户与对象B之间的关系信息,根据确定的关系信息就可以确定对象A和对象B之间的第一相似度值。
若对象之间的相似度值计算具有对称性,即A与B的第一相似度值等于B与A的第一相似度值时,可以只用进行其中一半的比较计算,得到所有对象之间的第一相似度值。即只需要采用上面的方式例子确定即可。如果对象之间的相似度值计算不具有对称性,则确定A与B的相似度值的第一相似度值之后还需要确定B与A的第一相似度值。
之后在确定对象A和对象C之间的第一相似度值,以及对象B和对象C之间的第一相似度值,具体方式与确定对象A和对象B的第一相似度值类似,在此不再赘述。
以本申请实施例的方案应用于电商场景为例,假设对象是店铺:
将平台上的店铺集合表示为S={s1,s2,...,sn},si为第i家店铺,用户集合表示为U={u1,u2,...,um},ui表示第i个用户。
将用户的网络点击和下单记录,表示为一个m×n的纪录矩阵R,其中Rij=(cij,oij)记录用户ui在店铺sj的点击cij和下单数oij。基于此,R中每一行都记录一个用户在平台各个店铺的点击和下单数据,而R中的每一列则记录平台一个店铺所有用户在该店铺的点击和下单数据。依据用户在R的记录向量,可以通过公式(1)得到从用户角度的第一相似度值:
其中,φ(si,sj)表示店铺i和店铺j的第一相似度值(φ(si,sj)的取值越大,表示两个店铺越相似);表示对任意包含在U中的用户ui,即U中的u1,u2,...,um;表示用户ui在店铺si的记录向量(ui表示用户集合中的一个用户,si表示对象集合中的一个店铺。这里遵循数学公式表达的简洁性原则,对用户和店铺都使用i计数,下角标i只是一种简化的表示方式,当然也可以设置u和s的下角标不同。此外,ui和si虽然使用同一个下标,但是表达意义不一样,并且在本专利中两者之间也没有特殊的对应关系,后续类似的内容也是这种原因,不再重复解释);示在店铺si有记录信息的全部用户(即买家)的平均记录向量;表示用户ui在店铺sj的记录向量;表示在店铺sj有记录信息的全部用户(即买家)的平均记录向量。
在确定所有任意两个对象之间的第一相似度值后,就可以根据第一相似度值确定第一对象邻近相似度矩阵。
一种可选的方式是通过公式(2)确定第一对象邻近相似度矩阵:
其中,TopK(φ(si))表示店铺si的邻近店铺k的第一相似度值中的最小值;k是一个预先设置的模型参数,表示对任意一个店铺相似的邻近店铺数据;Mu ij表示从用户角度si店铺和sj店铺两者之间是否相似,比如取值为1,则相似,否则不相似。
将得到的每个Mu ij组成Mu(即第一对象邻近相似度矩阵),将Mu矩阵做归一化处理,得到第一相似度矩阵Pu。
除了采用上面方式得到列概率随机矩阵,也可以进行归一化处理得到行概率随机矩阵,具体方式与列类似,在此不再赘述。
二、确定第二相似度矩阵。
具体的,针对任意一个对象集合,确定所述对象集合中的对象的特征信息;
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值;
根据确定的所有任意两个对象之间的第二相似度值,确定第二对象邻近相似度矩阵;
将所述第二对象邻近相似度矩阵进行归一化处理得到所述第二相似度矩阵。
本申请实施例的特征信息根据应用场景不同,特征信息中的具体含义也不相同。
以本申请实施例的方案应用于电商场景,对象为商家和/或店铺为例,本申请实施例的特征信息可以包括但不限于下列指标中的部分或全部:
商家和/或店铺的销量、客单价(即平均每个用户的购买金额)和用户满意度。
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值。
比如对象集合中有对象A、对象B和对象C。假设先根据对象A和对象B的特征信息,确定对象A和对象B之间的第二相似度值。
若对象之间的相似度值计算具有对称性,即A与B的第二相似度值等于B与A的第二相似度值时,可以只用进行其中一半的比较计算,得到所有对象之间的第二相似度值。即只需要采用上面的方式例子确定即可。如果对象之间的相似度值计算不具有对称性,则确定A与B的相似度值的第二相似度值之后还需要确定B与A的第二相似度值。
之后在确定对象A和对象C之间的第二相似度值,以及对象B和对象C之间的第二相似度值,具体方式与确定对象A和对象B的第二相似度值类似,在此不再赘述。
以本申请实施例的方案应用于电商场景为例,假设对象是店铺:
将平台上的店铺集合表示为S={s1,s2,...,sn},si为第i家店铺可以通过公式(3)得到从用户角度的第二相似度值:
其中,A是预设的对角矩阵A=diag(a1,a2,...,ap),对角元素a1,a2,...,ap分别表示不同店铺指标的权重。fi表示店铺si的指标数据特征,该向量每一个分量分别代表店铺销量、客单价、用户满意度等指标。
在确定所有任意两个对象之间的第二相似度值后,就可以根据第二相似度值确定第二对象邻近相似度矩阵。
一种可选的方式是通过公式(4)确定第一对象邻近相似度矩阵:
其中,表示店铺si的近邻店铺k的第二相似度值中的最小值;k是一个预先设置的模型参数,表示对任意一个店铺相似的邻近店铺数据;Ms ij表示从店铺角度si店铺和sj店铺两者之间是否相似,比如取值为1,则相似,否则不相似。
将得到的每个Ms ij组成Ms(即第二对象邻近相似度矩阵),将Ms矩阵做归一化处理,得到第二相似度矩阵Ps。
这里对Ms矩阵做归一化处理的方式与上面对Mu矩阵做归一化处理的方式类似,在此不再赘述。
在确定第一相似度矩阵和第二相似度矩阵后,就可以对象集合中每个对象的排序值。
具体的,针对任意一个对象集合,通过排序模型对所述对象集合对应的相似度矩阵进行迭代处理,直到满足停止迭代条件;
将停止迭代后所述排序模型最后一次输出的排序值向量作为所述对象集合对应的排序值向量。
其中,所述排序值向量包括所述对象集合中每个对象对应的排序值。也就是说,对象集合中的每个对象对应排序值向量里的一个位置,而对应位置上的值就是对应的排序值。
具体的,在确定需要进行排序的对象集合中的对象的排序值时,可以确定所述对象在所述对象集合对应的排序值向量中的位置;将确定的位置上的数值作为所述对象的排序值。
比如对象集合包括对象A、对象B和对象C,分别对应排序值向量中的第一个位置、第二个位置、第三个位置,排序值向量为368,则对象A排序值是3,对象B排序值是6,对象C排序值是8。
在实施中,本申请实施例的排序模型可以是具有包含下列特性中的部分或全部的模型,比如PageRank模型。
相似性比较的排序、基于对象特征数据的排序、对象之间存在显示或隐式链接关系的排序。
PageRank是一种由根据网页之间相互的超链接计算的技术,是作为网页排名的要素。
PageRank通过网络的超链接关系来确定一个页面的等级。把从A页面到B页面的链接解释为A页面给B页面投票,根据投票来源和投票目标的等级来决定新的等级。简单的说,一个高等级的页面可以使其他低等级页面的等级提升。
在实施中,如果所述相似度矩阵包括第一相似度矩阵,则需要按照上述方式确定第一相似度矩阵,并对所述对象集合对应的第一相似度矩阵进行迭代处理,直到满足停止迭代条件;
如果所述相似度矩阵包括第二相似度矩阵,则需要按照上述方式确定第二相似度矩阵,并对所述对象集合对应的第二相似度矩阵进行迭代处理,直到满足停止迭代条件;
如果所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵,则需要按照上述方式确定第一相似度矩阵和第二相似度矩阵,并对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,直到满足停止迭代条件;
可选的,在进行迭代处理时可以通过排序模型实现。
对所述对象集合对应的第一相似度矩阵进行迭代处理,只需要将第一相似度矩阵输入到排序模型进行迭代处理;
对所述对象集合对应的第二相似度矩阵进行迭代处理,只需要将第二相似度矩阵输入到排序模型进行迭代处理;
对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,只需要将第一相似度矩阵和第二相似度矩阵输入到排序模型进行迭代处理。
下面以对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,且排序模型是PageRank模型为例进行说明。
可选的,可以应用于本申请实施例的一种PageRank模型,如公式(5)所示:
其中,α和β是模型的参数;πt和πt+1分别表示在第t次迭代和第t+1次迭代时的排序值向量。
对于第一次迭代,可以预先随机初始化一个π,然后基于公式(5)进行迭代计算,可以得到最终的排序值向量,从而依据该向量可以实现对对象的排序。
π向量是pagerank算法模型中的pagerank排序值向量(即PR值),该向量里面元素值越大,表示该对象越重要,对用户和平台的影响越大。
对于两个对象的排序值一样,可以随机对这两个对象确定前后位置,也可以根据对象的其他信息确定排序位置。
以本申请实施例的方案应用于电商场景为例,还可以根据对象的销量、好评度等,对排序值相等的对象再排序,从而得到最终的排序结果。
如果满足停止迭代条件,则最后一个得到的πt+1就是所述对象集合对应的排序值向量。
停止迭代条件可以根据具体应用场景、需求等进行设置。
由于实际应用中,人们对不同对象的关注度存在差异时,或者对象本身重要性程度存在差异时,或者人们对不同对象已有一个历史排序结果认识时,为了将这种先验知识包含在最终的排序结果中,本申请实施例还可以在排序模型中包括用于表示对象排序等级的等级向量,其中所述等级向量中包括需要进行排序的对象集合中的对象对应的等级分值。
以PageRank模型为例,如公式(6)所示:
这里n的取值等于对象集合中对象的数量。
由于在前面数学模型(6)中,当α和β取值趋向零的时候,排序模型等价于按照对象等级进行排序;若α和β取值大于零时,排序结果是按照对象等级排序与按照从用户角度和店铺角度排序结果的综合效果,故通过调节α和β取值可以更好地进行兼容现有排序方式。
下面以对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理为例,对本申请实施例的方案进行说明,只对第一相似度矩阵进行迭代处理或只对第二相似度矩阵进行迭代处理的方式与对第一相似度矩阵和第二相似度矩阵进行迭代处理的方式类似,在此不再赘述。
如图2所示,本申请实施例确定排序值向量的方法包括:
步骤200、针对任意一个对象集合,确定用户集合中的用户与所述对象集合中的对象之间的关系信息。
步骤201、针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值。
步骤202、根据确定的所有任意两个对象之间的第一相似度值,确定第一对象邻近相似度矩阵。
步骤203、将所述第一对象邻近相似度矩阵进行归一化处理得到所述第一相似度矩阵。
步骤204、针对任意一个对象集合,确定所述对象集合中的对象的特征信息。
步骤205、针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值。
步骤206、根据确定的所有任意两个对象之间的第二相似度值,确定第二对象邻近相似度矩阵。
步骤207、将所述第二对象邻近相似度矩阵进行归一化处理得到所述第二相似度矩阵。
步骤208、针对任意一个对象集合,通过排序模型对所述对象集合对应的相似度矩阵进行迭代处理。
步骤209、判断是否满足停止迭代条件,如果是,则执行步骤210;否则,返回步骤208。
步骤210、将停止迭代后所述排序模型最后一次输出的排序值向量作为所述对象集合对应的排序值向量;其中,所述排序值向量包括所述对象集合中每个对象对应的排序值。
其中,步骤200~步骤203,与步骤204~步骤207之间没有必然的时序关系,可以先执行步骤200~步骤203,再执行步骤204~步骤207;也可以先执行步骤204~步骤207,再执行步骤200~步骤203;还可以同时执行步骤200~步骤203,以及步骤204~步骤207。
基于同一发明构思,本申请实施例中还提供了一种进行对象排序的系统,由于该系统解决问题的原理与本申请进行对象排序的方法相似,因此该系统的实施可以参见方法的实施,重复之处不再赘述。
如图3所示,本申请实施例进行对象排序的系统包括:
确定模块300,用于确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
排序模块301,用于根据所述排序值对所述对象集合中的对象进行排序。
其中,触发本申请实施例进行排序的场景有很多,比如用户需要对对象进行排序;用户打开一个网页,网上需要向用户展示对象的排序;其他程序或其他系统需要获得对象的排序结果等。
除了上面提到的触发排序场景,在实施中也可以采用本申请实施例的方案周期对每个对象集合进行排序,在有上面提到的触发场景满足后,可以直接返回排序后的结果,这样可以提高响应速度。
周期的时长可以根据需要进行设置,比如1一天,一周、半个月等。
根据不同的应用场景,本申请实施的对象集合划分也可以不同。比如如果本申请实施例的方案应用于电商场景,则对象集合中的对象可以包括电商平台上所有的商家和/或店铺;也可以根据商家和/或店铺出售的商品的类别划分,比如将出售同类别的商家和/或店铺划分到一个对象集合中。
本申请实施例中,对象集合的数量可以有很多;对于一个对象可以在多个对象集合中,比如电商场景,一个店铺售卖电子产品和服装,则该店铺可以划分到电子产品集合中,也在服装集合中,还可以在包括整个平台所有店铺的集合中。
其中,本申请实施例的所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵中的部分或全部;
若所述相似度矩阵包括所述第一相似度矩阵,则对象的相关信息包括用户与所述对象集合中的对象之间的关系信息;
若所述相似度矩阵包括所述第二相似度矩阵,则对象的相关信息包括所述对象集合中的对象的特征信息。
为了更好地理解本申请实施例的方案,下面先分别介绍下第一相似度矩阵和第二相似度矩阵是如何确定的。
一、确定第一相似度矩阵。
具体的,确定模块300还用于:
针对任意一个对象集合,确定用户集合中的用户与所述对象集合中的对象之间的关系信息;
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值;
根据确定的所有任意两个对象之间的第一相似度值,确定第一对象邻近相似度矩阵;
将所述第一对象邻近相似度矩阵进行归一化处理得到所述第一相似度矩阵。
其中,不同的应用场景本申请实施例的用户集合的确定方式也不相同。
以本申请实施例的方案应用于电商场景为例,本申请实施例的用户集合可以是电商品台上进行过交易的所有用户。
由于电商品台上进行过交易的用户数量非常庞大,如果用户集合采用电商品台上进行过交易的所有用户,虽然可以提高排序准确率,但是整体的排序效率会比较低,系统的运算量会非常大,对系统的性能要求非常高。
基于此,为了进一步提高排序的效率,一种可选的方式是:可以提取一段时间内网络点击和购买行为数据比较充足的用户组成用户集合。这里在筛选比较充足的用户时,可以分别为点击量和下单量设置阈值,只要点击量和下单量都不小于对应阈值,就可以将对应的用户作为数据比较充足的用户。
在确定用户集合后,就可以确定用户集合中的用户与所述对象集合中的对象之间的关系信息。这里的关系信息根据应用场景不同,关系信息中的具体含义也不相同。
以本申请实施例的方案应用于电商场景为例,本申请实施例的关系信息可以包括用户在商家和/或店铺的点击次数和/或下单数。
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值。
以本申请实施例的方案应用于电商场景为例,假设对象是店铺:
将平台上的店铺集合表示为S={s1,s2,...,sn},si为第i家店铺,用户集合表示为U={u1,u2,...,um},ui表示第i个用户。
将用户的网络点击和下单记录,表示为一个m×n的纪录矩阵R,其中Rij=(cij,oij)记录用户ui在店铺sj的点击cij和下单数oij。基于此,R中每一行都记录一个用户在平台各个店铺的点击和下单数据,而R中的每一列则记录平台一个店铺所有用户在该店铺的点击和下单数据。依据用户在R的记录向量,可以通过公式(1)得到从用户角度的第一相似度值:
在确定所有任意两个对象之间的第一相似度值后,就可以根据第一相似度值确定第一对象邻近相似度矩阵。
一种可选的方式是通过公式(2)确定第一对象邻近相似度矩阵。
二、确定第二相似度矩阵。
具体的,确定模块300还用于:
针对任意一个对象集合,确定所述对象集合中的对象的特征信息;
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值;
根据确定的所有任意两个对象之间的第二相似度值,确定第二对象邻近相似度矩阵;
将所述第二对象邻近相似度矩阵进行归一化处理得到所述第二相似度矩阵。
本申请实施例的特征信息根据应用场景不同,特征信息中的具体含义也不相同。
以本申请实施例的方案应用于电商场景,对象为商家和/或店铺为例,本申请实施例的特征信息可以包括但不限于下列指标中的部分或全部:
商家和/或店铺的销量、客单价和用户满意度。
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值。
比如对象集合中有对象A、对象B和对象C。假设先根据对象A和对象B的特征信息,确定对象A和对象B之间的第二相似度值。
之后在确定对象A和对象C之间的第二相似度值,以及对象B和对象C之间的第二相似度值,具体方式与确定对象A和对象B的第二相似度值类似,在此不再赘述。
以本申请实施例的方案应用于电商场景为例,假设对象是店铺:
将平台上的店铺集合表示为S={s1,s2,...,sn},si为第i家店铺可以通过公式(3)得到从用户角度的第一相似度值。
其中,A是预设的对角矩阵A=diag(a1,a2,...,ap),对角元素a1,a2,...,ap分别表示不同店铺指标的权重。fi表示店铺si的指标数据特征,该向量每一个分量分别代表店铺销量、客单价、用户满意度等指标。
在确定所有任意两个对象之间的第二相似度值后,就可以根据第二相似度值确定第二对象邻近相似度矩阵。
一种可选的方式是通过公式(4)确定第二对象邻近相似度矩阵。
将得到的每个Ms ij组成Ms(即第二对象邻近相似度矩阵),将Ms矩阵做归一化处理,得到第二相似度矩阵Ps。
这里对Ms矩阵做归一化处理的方式与上面对Mu矩阵做归一化处理的方式类似,在此不再赘述。
在确定第一相似度矩阵和第二相似度矩阵后,就可以对象集合中每个对象的排序值。
具体的,确定模块300针对任意一个对象集合,通过排序模型对所述对象集合对应的相似度矩阵进行迭代处理,直到满足停止迭代条件;
将停止迭代后所述排序模型最后一次输出的排序值向量作为所述对象集合对应的排序值向量。
其中,所述排序值向量包括所述对象集合中每个对象对应的排序值。也就是说,对象集合中的每个对象对应排序值向量里的一个位置,而对应位置上的值就是对象的排序值。
具体的,确定模块300在确定需要进行排序的对象集合中的对象的排序值时,可以确定所述对象在所述对象集合对应的排序值向量中的位置;将确定的位置上的数值作为所述对象的排序值。
在实施中,本申请实施例的排序模型可以是具有包含下列特性中的部分或全部的模型,比如PageRank模型。
相似性比较的排序、基于对象特征数据的排序、对象之间存在显示或隐式链接关系的排序。
在实施中,如果所述相似度矩阵包括第一相似度矩阵,则需要按照上述方式确定第一相似度矩阵,并对所述对象集合对应的第一相似度矩阵进行迭代处理,直到满足停止迭代条件;
如果所述相似度矩阵包括第二相似度矩阵,则需要按照上述方式确定第二相似度矩阵,并对所述对象集合对应的第二相似度矩阵进行迭代处理,直到满足停止迭代条件;
如果所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵,则需要按照上述方式确定第一相似度矩阵和第二相似度矩阵,并对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,直到满足停止迭代条件;
可选的,在进行迭代处理时可以通过排序模型实现。
对所述对象集合对应的第一相似度矩阵进行迭代处理,只需要将第一相似度矩阵输入到排序模型进行迭代处理;
对所述对象集合对应的第二相似度矩阵进行迭代处理,只需要将第二相似度矩阵输入到排序模型进行迭代处理;
对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,只需要将第一相似度矩阵和第二相似度矩阵输入到排序模型进行迭代处理。
下面以对所述对象集合对应的第一相似度矩阵和第二相似度矩阵进行迭代处理,且排序模型是PageRank模型为例进行说明。
可选的,可以应用于本申请实施例的一种PageRank模型,如公式(5)所示。
对于第一次迭代,可以预先随机初始化一个π,然后基于公式(5)进行迭代计算,可以得到最终的排序值向量,从而依据该向量可以实现对对象的排序。
对于两个对象的排序值一样,可以随机对这两个对象确定前后位置,也可以根据对象的其他信息确定排序位置。
以本申请实施例的方案应用于电商场景为例,还可以根据对象的销量、好评度等,对排序值相等的对象再排序,从而得到最终的排序结果。
如果满足停止迭代条件,则最后一个得到的πt+1就是所述对象集合对应的排序值向量。
停止迭代条件可以根据具体应用场景、需求等进行设置。
由于实际应用中,人们对不同对象的关注度存在差异时,或者对象本身重要性程度存在差异时,或者人们对不同对象已有一个历史排序结果认识时,为了将这种先验知识包含在最终的排序结果中,所以本申请实施例还可以在排序模型中包括用于表示对象排序等级的等级向量,其中所述等级向量中包括需要进行排序的对象集合中的对象对应的等级分值。
在实施中,上述模块可以集成在一个实体中,也可以分布在多个实体中形成一个系统。
根据运算量,设备性能等原因的影响,上述每个模块的功能可以由一个或多个实体实现。
以上参照示出根据本申请实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或系统使用,或结合指令执行系统、装置或系统使用。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (14)
1.一种进行对象排序的方法,其特征在于,应用于网络发布平台,该方法包括:
确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
根据所述排序值对所述对象集合中的对象进行排序;
所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵中的部分或全部;
若所述相似度矩阵包括所述第一相似度矩阵,则对象的相关信息包括用户与所述对象集合中的对象之间的关系信息;
若所述相似度矩阵包括所述第二相似度矩阵,则对象的相关信息包括所述对象集合中的对象的特征信息。
2.如权利要求1所述的方法,其特征在于,所述对象集合中对象的排序值是根据下列方式确定的:
针对任意一个对象集合,通过排序模型对所述对象集合对应的相似度矩阵进行迭代处理,直到满足停止迭代条件;
将停止迭代后所述排序模型最后一次输出的排序值向量作为所述对象集合对应的排序值向量;
其中,所述排序值向量包括所述对象集合中每个对象对应的排序值。
3.如权利要求2所述的方法,其特征在于,所述确定需要进行排序的对象集合中的对象的排序值,包括:
确定所述对象在所述对象集合对应的排序值向量中的位置;
将确定的位置上的数值作为所述对象的排序值。
4.如权利要求2所述的方法,其特征在于,所述排序模型中包括用于表示对象排序等级的等级向量,其中所述等级向量中包括需要进行排序的对象集合中的对象对应的等级分值。
5.如权利要求1所述的方法,其特征在于,所述相似度矩阵包括所述第一相似度矩阵,所述第一相似度矩阵是根据下列方式确定的:
针对任意一个对象集合,确定用户集合中的用户与所述对象集合中的对象之间的关系信息;
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值;
根据确定的所有任意两个对象之间的第一相似度值,确定第一对象邻近相似度矩阵;
将所述第一对象邻近相似度矩阵进行归一化处理得到所述第一相似度矩阵。
6.如权利要求1所述的方法,其特征在于,所述相似度矩阵包括所述第二相似度矩阵,所述第二相似度矩阵是根据下列方式确定的:
针对任意一个对象集合,确定所述对象集合中的对象的特征信息;
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值;
根据确定的所有任意两个对象之间的第二相似度值,确定第二对象邻近相似度矩阵;
将所述第二对象邻近相似度矩阵进行归一化处理得到所述第二相似度矩阵。
7.如权利要求1~6任一所述的方法,其特征在于,所述对象为商家和店铺中的部分或全部。
8.一种进行对象排序的系统,其特征在于,应用于网络发布平台,该系统包括:
确定模块,用于确定需要进行排序的对象集合中的对象的排序值,其中所述排序值是对所述对象集合对应的相似度矩阵进行迭代后确定的,所述相似度矩阵是根据对象的相关信息确定的;
排序模块,用于根据所述排序值对所述对象集合中的对象进行排序;
所述相似度矩阵包括第一相似度矩阵和第二相似度矩阵中的部分或全部;
若所述相似度矩阵包括所述第一相似度矩阵,则对象的相关信息包括用户与所述对象集合中的对象之间的关系信息;
若所述相似度矩阵包括所述第二相似度矩阵,则对象的相关信息包括所述对象集合中的对象的特征信息。
9.如权利要求8所述的系统,其特征在于,所述确定模块还用于,根据下列方式确定对象集合中对象的排序值:
针对任意一个对象集合,通过排序模型对所述对象集合对应的相似度矩阵进行迭代处理,直到满足停止迭代条件;
将停止迭代后所述排序模型最后一次输出的排序值向量作为所述对象集合对应的排序值向量;
其中,所述排序值向量包括所述对象集合中每个对象对应的排序值。
10.如权利要求9所述的系统,其特征在于,所述确定模块具体用于:
确定所述对象在所述对象集合对应的排序值向量中的位置;
将确定的位置上的数值作为所述对象的排序值。
11.如权利要求9所述的系统,其特征在于,所述排序模型中包括用于表示对象排序等级的等级向量,其中所述等级向量中包括需要进行排序的对象集合中的对象对应的等级分值。
12.如权利要求8所述的系统,其特征在于,所述确定模块还用于,根据下列方式确定所述第一相似度矩阵:
针对任意一个对象集合,确定用户集合中的用户与所述对象集合中的对象之间的关系信息;
针对所述对象集合中的任意两个对象,根据确定的所述用户集合中的用户与所述任意两个对象之间的关系信息,确定所述任意两个对象之间的第一相似度值;
根据确定的所有任意两个对象之间的第一相似度值,确定第一对象邻近相似度矩阵;
将所述第一对象邻近相似度矩阵进行归一化处理得到所述第一相似度矩阵。
13.如权利要求11所述的系统,其特征在于,所述确定模块还用于,根据下列方式确定所述第二相似度矩阵:
针对任意一个对象集合,确定所述对象集合中的对象的特征信息;
针对所述对象集合中的任意两个对象,根据所述任意两个对象的特征信息,确定所述任意两个对象之间的第二相似度值;
根据确定的所有任意两个对象之间的第二相似度值,确定第二对象邻近相似度矩阵;
将所述第二对象邻近相似度矩阵进行归一化处理得到所述第二相似度矩阵。
14.如权利要求8~13任一所述的系统,其特征在于,所述对象为商家和店铺中的部分或全部。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710022716.5A CN108304407B (zh) | 2017-01-12 | 2017-01-12 | 一种进行对象排序的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710022716.5A CN108304407B (zh) | 2017-01-12 | 2017-01-12 | 一种进行对象排序的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108304407A CN108304407A (zh) | 2018-07-20 |
CN108304407B true CN108304407B (zh) | 2022-02-25 |
Family
ID=62872389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710022716.5A Active CN108304407B (zh) | 2017-01-12 | 2017-01-12 | 一种进行对象排序的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108304407B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959644B (zh) | 2018-07-27 | 2020-04-14 | 北京字节跳动网络技术有限公司 | 搜索排序方法、装置、计算机设备和存储介质 |
CN109949075A (zh) * | 2019-02-25 | 2019-06-28 | 傲宝珠宝文化发展(深圳)有限公司 | 一种用于多家珠宝门店的实时数据远程监控系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103399951A (zh) * | 2013-08-19 | 2013-11-20 | 山东大学 | 一种基于异构图具有自反馈特性的半监督图像重排序方法 |
CN104281585A (zh) * | 2013-07-02 | 2015-01-14 | 阿里巴巴集团控股有限公司 | 一种对象排序方法和装置 |
CN104516897A (zh) * | 2013-09-29 | 2015-04-15 | 国际商业机器公司 | 一种针对应用对象进行排序的方法和装置 |
CN104951441A (zh) * | 2014-03-24 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种对对象进行排序的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856047B2 (en) * | 2011-06-21 | 2014-10-07 | Microsoft Corporation | Fast personalized page rank on map reduce |
-
2017
- 2017-01-12 CN CN201710022716.5A patent/CN108304407B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104281585A (zh) * | 2013-07-02 | 2015-01-14 | 阿里巴巴集团控股有限公司 | 一种对象排序方法和装置 |
CN103399951A (zh) * | 2013-08-19 | 2013-11-20 | 山东大学 | 一种基于异构图具有自反馈特性的半监督图像重排序方法 |
CN104516897A (zh) * | 2013-09-29 | 2015-04-15 | 国际商业机器公司 | 一种针对应用对象进行排序的方法和装置 |
CN104951441A (zh) * | 2014-03-24 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种对对象进行排序的方法及装置 |
Non-Patent Citations (1)
Title |
---|
"基于网络的动态多文档文摘系统框架";刘美玲等;《软件学报》;20130531;第1013-1016页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108304407A (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11551280B2 (en) | Method, manufacture, and system for recommending items to users | |
US20200242678A1 (en) | Item recommendation techniques | |
US20210142389A1 (en) | Method and System for making Recommendation from Binary Data Using Neighbor-Score Matrix and Latent Factors | |
US10409821B2 (en) | Search result ranking using machine learning | |
CN106651542B (zh) | 一种物品推荐的方法及装置 | |
CN110866181B (zh) | 资源推荐的方法、装置及存储介质 | |
CN105095267B (zh) | 一种用于用户参与项目的推荐方法及装置 | |
CN107451894B (zh) | 数据处理方法、装置和计算机可读存储介质 | |
TWI539305B (zh) | Personalized information push method and device | |
US20120072220A1 (en) | Matching text sets | |
CN102789462A (zh) | 一种项目推荐方法及系统 | |
US20150356658A1 (en) | Systems And Methods For Serving Product Recommendations | |
US9911130B1 (en) | Attribution modeling using regression analysis | |
CN113837842A (zh) | 一种基于用户行为数据的商品推荐方法及设备 | |
CN108572984A (zh) | 一种实时用户兴趣识别方法及装置 | |
CN112149003B (zh) | 商品社群推荐方法、装置和计算机设备 | |
CN112801803B (zh) | 一种理财产品推荐方法和装置 | |
CN111966886A (zh) | 对象推荐方法、对象推荐装置、电子设备及存储介质 | |
CN110866191A (zh) | 推荐召回方法、设备和存储介质 | |
CN111797319B (zh) | 推荐方法、装置、设备及存储介质 | |
Lin et al. | A consumer review-driven recommender service for web e-commerce | |
CN110659807A (zh) | 一种基于链路的风险用户识别方法及装置 | |
CN108304407B (zh) | 一种进行对象排序的方法和系统 | |
Aprilianti et al. | Implementation of weighted parallel hybrid recommender systems for e-commerce in indonesia | |
CN103810262B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240314 Address after: # 04-08, Lai Zanda Building 1, 51 Belarusian Road, Singapore Patentee after: Alibaba Singapore Holdings Ltd. Country or region after: Singapore Address before: Cayman Islands Grand Cayman capital building, a four storey No. 847 mailbox Patentee before: ALIBABA GROUP HOLDING Ltd. Country or region before: Cayman Islands |