CN112256977A - 组件化商品推荐方法、计算设备和计算机存储介质 - Google Patents
组件化商品推荐方法、计算设备和计算机存储介质 Download PDFInfo
- Publication number
- CN112256977A CN112256977A CN202011523099.5A CN202011523099A CN112256977A CN 112256977 A CN112256977 A CN 112256977A CN 202011523099 A CN202011523099 A CN 202011523099A CN 112256977 A CN112256977 A CN 112256977A
- Authority
- CN
- China
- Prior art keywords
- commodity
- user
- scene
- list
- information
- 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.)
- Granted
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/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
- 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/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种组件化商品推荐方法、计算设备和计算机可读存储介质。该方法包括:获取用户对商品展示系统中的一个场景的访问请求,该访问请求至少包括该场景的场景标识信息和该用户的用户信息;基于该场景标识信息确定第一商品推荐规则,基于该用户信息确定第二商品推荐规则,并且至少基于该第一商品推荐规则和该第二商品推荐规则产生该场景的上下文信息;基于该场景的上下文信息,从流程模板库中选择流程模板;基于所选择的流程模板和该上下文信息从流程组件库中选择多个流程组件,并且对该多个流程组件进行编排以产生符合该上下文信息的流程实例;以及执行该流程实例以在该场景中向该用户展示推荐商品。
Description
技术领域
本公开概括而言涉及计算机软件领域,更具体地,涉及一种组件化商品推荐方法、计算设备和计算机可读存储介质。
背景技术
当前,存在着各种各样的电商系统。为了更好地吸引用户,这些电商系统开发了各种商品展示系统来向用户进行商品展示。为了配合营销活动,这些商品展示系统中还设计了各种商品会场或分会场(以下有时统称为“场景”)以向用户展示各种不同商品列表。不同商品场景可能具有不同的布局并向用户展示不同类型的商品。此外,对于不同用户,同一场景中展示的商品也会基于推荐算法、用户的浏览和购买历史行为等而不同。
为了为各个场景组织有序商品列表,需要一系列复杂而有序的软件实现过程,包括数据抓取、筛选、处理等,并且由于场景类型、策略、所针对的商品、用户、业务规则等不同,不同场景的软件实现过程也不同。对于场景本身,出于灵活运营的目的,希望在后台进行动态配置,例如新增、修改会场、更改活动时间、商品范围以及基于业务规则改变排序等操作。不同的商品价格策略、售卖周期、库存情况、适应人群等等细节特征也对列表组织和排序产生各种影响。基于用户维度的智能推荐更是千人千面。另外,不同的电商平台实际上还有基于自身定位和一定差异的业务模式形成的业务规则,也会对商品展示顺序产生影响。
可以看出,软件系统在实现商品列表展示的过程,必须解决以下问题:1)业务场景多,同时要可快速灵活扩展,同时支持运营人员实时调整业务规则和策略;2)影响因素多,处理过程复杂,同时必须保证性能。
因此,对于商品展示系统的商品推荐来说,既要结合智能算法实现千人千面的智能推荐,又要支持用户主动发起有明确目的的搜索、筛选、排序操作等。为此,一种常见的实现方案是随着电商系统本身的业务变化,依次规划和设计各类活动和会场并投入研发资源逐一研发。在实现过程中,可能会针对同一类会场进行设计,复用同一套软件实现方案,通过一定的抽像和软件架构设计技巧,对执行过程和相同的功能点进行封装,实现最大程度的复用。
然而,随着业务场景增加,业务复杂度叠加,在研发过程中,每套实现方案之间难免出现大量重复性的设计和研发工作。另外由于彼此相对独立,所以设计质量和编码质量容易不出现参差不齐,进而影响系统的整体质量。
发明内容
针对上述问题中的至少一个,本公开提供了一种组件化商品推荐方案,其提供统一的框架对大部分商品列表组织场景进行统一的流程模板化实现,并进而通过对选定模板的各个组成单元进行组件化实现,能够快速统一地开发和实现各个不同的商品推荐场景。
根据本公开的一个方面,提供了一种组件化商品推荐方法。该方法包括:获取用户对商品展示系统中的一个场景的访问请求,该访问请求至少包括该场景的场景标识信息和该用户的用户信息;基于该场景标识信息确定第一商品推荐规则,基于该用户信息确定第二商品推荐规则,并且至少基于该第一商品推荐规则和该第二商品推荐规则产生该场景的上下文信息;基于该场景的上下文信息,从流程模板库中选择流程模板; 基于所选择的流程模板和该上下文信息从流程组件库中选择多个流程组件,并且对该多个流程组件进行编排以产生符合该上下文信息的流程实例;以及执行该流程实例以在该场景中向该用户展示推荐商品。
根据本公开的另一个方面,提供了一种计算设备。该计算设备包括:至少一个处理器;以及至少一个存储器,该至少一个存储器被耦合到该至少一个处理器并且存储用于由该至少一个处理器执行的指令,该指令当由该至少一个处理器执行时,使得该计算设备执行根据上述方法的步骤。
根据本公开的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序代码,该计算机程序代码在被运行时执行如上所述的方法。
在一种实施例中,获取用户对商品展示系统中的一个场景的访问请求包括:检测所述用户对所述商品展示系统中的特定商品会场的点击,所述场景包括所述特定商品会场;以及基于所述特定商品会场确定所述场景标识信息。
在一种实施例中,产生所述场景的上下文信息包括:基于所述场景标识信息确定所述场景的基础排序类型、优化排序类型、优化排序参数和用户组排序规则作为所述第一商品推荐规则;基于所述用户信息确定所述用户所属的用户组,并且基于所述用户组和所述用户组排序规则确定所述第二商品推荐规则,其中所述用户信息包括用户标识信息;以及基于所述第一商品推荐规则和所述第二商品推荐规则确定所述上下文信息。
在一种实施例中,产生所述场景的上下文信息包括:基于所述场景标识信息确定所述场景的基础排序类型作为所述第一商品推荐规则;获取所述用户的用户信息中的自定义信息,并且基于所述用户的自定义信息确定所述第二商品推荐规则;以及基于所述第一商品推荐规则和所述第二商品推荐规则确定所述上下文信息。
在一种实施例中,所述访问请求还包括所述场景中所包含的店铺的店铺标识信息,其中产生所述场景的上下文信息还包括:基于所述店铺标识信息确定第三商品推荐规则,并且基于所述第一商品推荐规则、所述第二商品推荐规则和所述第三商品推荐规则确定所述上下文信息。
在一种实施例中,所述多个流程组件包括基础列表组件、优化列表组件、列表编排组件和商品展示组件,并且其中对所述多个流程组件进行编排以产生符合所述上下文信息的流程实例包括:利用所述基础列表组件基于所述上下文信息抓取数据以获取第一商品列表;利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表;利用所述列表编排组件对所述第一商品列表和所述第二商品列表中的商品进行有序排列以产生第三商品列表;利用所述商品展示组件调取所述第三商品列表中的商品的详细信息以用于作为所述推荐商品。
在一种实施例中,利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表包括:基于所述用户的历史操作商品数据,根据所述第一商品列表中的商品确定与用户标识信息相关联的商品标识序列,其中所述历史操作商品数据可以包括用户标识信息、商品标识和操作时间之间的关联,商品标识序列中的商品标识可以按照操作时间顺序排列;基于当前时间和与所述商品标识相关联的活动截止时间,确定与所述商品标识相关联的剩余时间,并且基于所述商品标识序列和与所述商品标识相关联的剩余时间,生成商品共现元组,其中所述商品共现元组包括所述商品标识序列中的两个商品标识以及与所述两个商品标识的共现相关联的权重;以及基于所述商品共现元组生成与所述商品标识相关联的商品表示,并且基于所述商品表示之间的相似度,从所述第一商品列表中确定与所述商品标识相关联的商品以构成所述第二商品列表。
在一种实施例中,利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表包括:基于预定时间间隔中,所述用户对所述第一商品列表中的商品的历史操作数据、作为操作对象的商品数据和环境信息,生成输入数据,其中所述历史操作数据分别包括所述用户对所述操作对象的点击、加购和购买的操作数据;将所述输入数据平均分片成多个子输入数据,以分别在配置在多个处理单元上的第一神经网络模型和第二神经网络模型进行训练;利用所述第一神经网络模型和第二神经网络模型分别提取相应的子输入数据的特征从而预测所述用户的点击概率和转化概率,其中所述第一神经网络模型和所述第二神经网络模型分别基于第一损失函数和第二损失函数优化,并且至少共享嵌入层;基于所述用户的点击概率、关于目标对象的转化概率和第三损失函数,预测所述第一商品列表中的至少部分商品的推荐概率,并且按照所述推荐概率对所述第一商品列表中的所述至少部分商品进行排序以产生所述第二商品列表,其中所述第三损失函数基于所述第一损失函数和所述第二损失函数以及各自的权重而确定。
附图说明
通过参考下列附图所给出的本公开的具体实施方式的描述,将更好地理解本公开,并且本公开的其他目的、细节、特点和优点将变得更加显而易见。
图1示出了用于实现根据本发明的实施例的组件化商品推荐方法的系统的示意图。
图2示出了用于实现根据本发明实施例的组件化商品推荐方法的计算设备的软件结构图。
图3示出了根据本发明的一些实施例的组件化商品推荐方法的流程图。
图4示出了根据本发明一种实施例的确定上下文信息的步骤的流程图。
图5示出了根据本发明另一种实施例的确定上下文信息的步骤的流程图。
图6示出了根据本发明实施例的流程组件库的一种示例。
图7示出了根据本发明实施例的产生符合上下文信息的流程实例的步骤的流程图。
图8示出了根据本发明一种实施例的产生第二商品列表的子步骤的流程图。
图9示出了根据本发明另一种实施例的产生第二商品列表的子步骤的流程图。
图10示出了适合实现本公开的实施例的计算设备的结构方框图。
具体实施方式
下面将参照附图更详细地描述本发明的优选实施方式。虽然附图中显示了本发明的优选实施方式,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整的传达给本领域的技术人员。
在下文的描述中,出于说明各种发明的实施例的目的阐述了某些具体细节以提供对各种发明实施例的透彻理解。但是,相关领域技术人员将认识到可在无这些具体细节中的一个或多个细节的情况来实践实施例。在其它情形下,与本申请相关联的熟知的装置、结构和技术可能并未详细地示出或描述从而避免不必要地混淆实施例的描述。
除非语境有其它需要,在整个说明书和权利要求中,词语“包括”和其变型,诸如“包含”和“具有”应被理解为开放的、包含的含义,即应解释为“包括,但不限于”。
在整个说明书中对“一个实施例”或“一些实施例”的提及表示结合实施例所描述的特定特点、结构或特征包括于至少一个实施例中。因此,在整个说明书的各个位置“在一个实施例中”或“在一些实施例”中的出现不一定全都指相同实施例。另外,特定特点、结构或特征可在一个或多个实施例中以任何方式组合。
此外,说明书和权利要求中所用的第一、第二等术语,仅仅出于描述清楚起见来区分各个对象,而并不限定其所描述的对象的大小或其他顺序等。
图1示出了用于实现根据本发明的实施例的组件化商品推荐方法的系统1的示意图。如图1中所示,系统1包括一个或多个用户终端10、一个或多个计算设备20、服务器30和网络40。用户终端10、计算设备20和服务器30可以通过网络40进行数据交互。这里,每个用户终端10可以是消费者用户或小商户用户的移动或固定终端,如手机、平板电脑、台式电脑等。用户终端10例如可以通过其上安装的电商企业应用程序或特定搜索引擎与电商企业的服务器30通信,以向服务器30发送信息和/或从服务器30接收信息。每个计算设备20可以基于来自用户终端10和/或服务器30的数据执行相应的操作。计算设备20可以包括至少一个处理器210和与该至少一个处理器210耦合的至少一个存储器220,该存储器220中存储有可由该至少一个处理器210执行的指令230,该指令230在被该至少一个处理器210执行时执行如下所述的方法100的至少一部分。注意,在本文中,计算设备20可以是服务器30的一部分或者可以独立于服务器30。计算设备20或服务器30的具体结构例如可以如下结合图10所述。
图2示出了用于实现根据本发明实施例的组件化商品推荐方法100的计算设备20的软件结构图。如图2中所示,计算设备20的软件结构可以包括请求分析器232、动态配置处理器234、流程编排器236和执行引擎238,这些模块例如可以是存储器220中存储的指令230的一部分,并且在被处理器210运行时使得处理器210执行各自的功能。此外,计算设备20的软件结构还可以包括流程模板库240和流程组件库250。其中,流程模板库240和流程组件库250可以位于计算设备20的存储器220内,也可以位于存储器220外甚至计算设备20外。流程模板库240中可以存储针对同一场景或不同场景的多个流程模板,流程组件库250中可以存储一组通用流程组件,在实现每种流程模板时可以从该组流程组件中选择一部分或者全部。请求分析器232可以获取用户对商品展示系统中的一个场景的访问请求,其中该访问请求至少包括该场景的场景标识信息和该用户的用户信息。动态配置处理器234可以基于该场景标识信息确定第一商品推荐规则,基于该用户信息确定第二商品推荐规则,并且至少基于该第一商品推荐规则和该第二商品推荐规则确定该场景的上下文信息。流程编排器236可以基于该场景的上下文信息,从流程模板库240中选择流程模板,基于所选择的流程模板和该上下文信息从流程组件库250中选择多个流程组件,对该多个流程组件进行编排以产生符合该上下文信息的流程实例。执行引擎238执行该流程实例以基于该第一商品推荐规则和第二商品推荐规则在该场景中向该用户展示推荐商品。
图3示出了根据本发明的一些实施例的组件化商品推荐方法100的流程图。方法100例如可以由图1中所示的系统1中的计算设备20或服务器30执行。以下以在计算设备20中执行为例,结合图1至图9对方法100进行描述。
如图3中所示,在步骤110,计算设备20(例如请求分析器232)获取用户对商品展示系统中的一个场景的访问请求。如前所述,该场景例如可以是电商系统向用户展示不同商品列表的界面,在实际应用中这些显示界面也经常称为会场或分会场。
用户的访问请求至少包括其所访问的场景的场景标识信息和该用户的用户信息。场景标识信息例如可以是场景标识符(SceneID),每个场景具有其独特的场景标识符。一个会场和它的一个分会场被认为是两个不同场景,分别具有各自的场景标识符。每个场景的场景信息(例如包括每个场景对应的基础排序类型、优化排序类型、优化排序参数和用户组排序规则等排序信息(如下所述)、场景显示信息和渲染方式等)可以以场景标识符SceneID为索引存储,从而在计算设备20中可以维护一个包括多个场景标识符SceneID及其对应的场景信息的场景列表。
在一种实施例中,步骤110可以包括:计算设备20检测该用户对商品展示系统中的特定商品会场的点击并且基于所点击的特定商品会场确定该场景的场景标识信息。如前所述,在计算设备20中维护有一个场景列表,因此响应于用户对某个会场的点击,计算设备20可以确定用户点击的具体场景,从而确定该场景的场景标识信息。
用户信息可以包括用户标识信息,如用户标识符(UserID)。在一些实施例中,用户信息还可以包括用户的自定义信息,如用户自己指定的优选排序规则。
接下来,在步骤120,计算设备20基于场景标识信息确定第一商品推荐规则,基于用户信息确定第二商品推荐规则,并且至少基于该第一商品推荐规则和该第二商品推荐规则确定该场景的上下文信息。
图4示出了根据本发明一种实施例的确定上下文信息的步骤120的流程图。
如图4中所示,步骤120可以包括子步骤122,其中计算设备20(例如动态配置处理器234)可以基于步骤110获取的访问请求中的场景标识信息确定该场景的基础排序类型、优化排序类型、优化排序参数和用户组排序规则作为该第一商品推荐规则。
场景的基础排序类型例如可以包括销量排序、时间排序、价格排序等,它是场景中的商品显示的默认排序方式。例如,对于SceneID=1的场景来说,计算设备20中可以预先存储其基础排序类型是销量排序。
场景的优化排序类型用于对基础排序类型得到的排序结果进行进一步优化,例如可以包括基于用户历史数据的优化排序和/或基于业务的优化排序。基于用户历史数据的优化排序可以是基于用户的过往搜索、点击、加入购物车(加购)、购买等行为数据确定的该用户的个人偏好而进行的优化排序。基于业务的优化排序可以是基于商品展示系统的业务设定(如促销商品、促销周期等)进行的优化排序。
此外,每个场景的优化排序类型还具有与其相对应的优化排序参数。优化排序参数可以包括每种优化排序类型所优化的商品数量。例如,对于如上的SceneID=1的场景来说,计算设备20中可以预先存储其优化排序类型是基于用户历史数据的优化排序,并且对应的优化排序参数为100,即只对基础排序类型得到的前100个结果进行优化排序。
场景的用户组排序规则是指对不同用户组中的用户使用不同的排序类型。例如,在一种实施例中,可以将用户分为两个用户组,一组仅使用基础排序类型,另一组使用基础排序类型和优化排序类型的组合。在另一种实施例中,可以将用户分为三个用户组,第一组仅使用基础排序类型,第二组使用基础排序类型和一种优化排序类型(如基于用户历史数据的优化排序)的组合,第三组使用基础排序类型和两种不同优化排序类型(如基于用户历史数据的优化排序和基于业务的优化排序)的组合。这里,设置场景的用户组排序规则的目的是为了统计同一场景在使用不同排序规则时的效果,如销量、转化率等,从而根据该效果对该场景的排序规则(如基础排序类型、优化排序类型、优化排序参数)进行优化。
步骤120还包括子步骤124,其中计算设备20基于该用户的用户信息确定该用户所属的用户组,并且基于该用户组和用户组排序规则确定第二商品推荐规则。
这里,该用户的用户信息包括用户标识信息。在一种实施例中,用户组是基于用户标识信息,如用户标识符UserID,划分的。例如,在如上将用户分为两个用户组的情况下,可以按照用户标识符UserID的奇偶性来将所有用户平均划分到两个用户组。在将用户分为三个用户组的情况下,可以根据用户标识符UserID的尾号将所有用户划分为三个用户组,例如尾号0、1、2的为第一组,尾号3、4、5的为第二组,尾号6、7、8、9的为第三组。
在这种情况下,计算设备20可以基于用户的用户标识符确定用户所属的用户组,从而结合子步骤122的用户组排序规则来确定该用户的第二商品推荐规则。在该实施例中,用户的第二商品规则是指在该场景下用户所属的用户组的排序规则。
接下来,在步骤120的子步骤126,计算设备20基于该第一商品推荐规则和第二商品推荐规则确定该场景的上下文信息。
在这种情况下,场景的上下文信息包括基于第一商品推荐规则(场景的基础排序类型、优化排序类型、优化排序参数和用户组排序规则)的场景配置信息和基于第二商品推荐规则(该场景下用户所属的用户组的排序规则)的用户配置信息,从而在后续的推荐商品展示中,可以根据第一商品推荐规则召回商品信息列表,并根据第二商品推荐规则对召回的商品信息列表进行调整。
图5示出了根据本发明另一种实施例的确定上下文信息的步骤120的流程图。图5所示的实施例与图4所示的实施例的主要不同之处在于在步骤110中获取的用户信息包括用户的自定义信息,如用户指定的优选排序规则。在这种情况下,可以仅仅依赖用户的自定义信息来确定第二商品推荐规则,从而确定上下文信息,而不用考虑用户所属的用户组和用户组排序规则。
具体地,如图5中所示,步骤120可以包括子步骤122',其中计算设备20可以基于步骤110获取的访问请求中的场景标识信息确定该场景的基础排序类型作为该第一商品推荐规则。注意,这里除了基础排序类型之外,计算设备20也可以确定该场景的优化排序类型、优化排序参数和用户组排序规则,但是这些信息对于上下文信息的确定没有影响。
在步骤120的子步骤124',计算设备20获取用户的用户信息中的自定义信息,并且基于该用户的自定义信息确定该第二商品推荐规则。如前所述,用户的自定义信息包括用户指定的优选排序规则。因此,可以将用户指定的优选排序规则确定为该第二商品推荐规则。
接下来,在步骤120的子步骤126',计算设备20基于该第一商品推荐规则和该第二商品推荐规则确定该场景的上下文信息。
在这种情况下,场景的上下文信息包括基于第一商品推荐规则(场景的基础排序类型)的场景配置信息和基于第二商品推荐规则(用户指定的优选排序规则)的用户配置信息,从而在后续的推荐商品展示中,可以根据第一商品推荐规则召回商品信息列表,并根据第二商品推荐规则对召回的商品信息列表进行调整。
在一些实施例中,访问请求还可以包括该场景中所包含的店铺的店铺标识信息,如店铺标识符(ShopID)。在这种情况下,还可以根据访问请求中的店铺标识信息确定第三商品推荐规则。该第三商品推荐规则用于指定特定店铺的优先顺序和/或特定店铺的商品的优先顺序和数量,也称为店铺排序类型。例如,该第三商品推荐规则可以包括将该店铺标识信息所指示的店铺排在该场景的顶部位置,或者将该店铺的若干件商品排在该场景的商品列表的顶部位置。
在这种情况下,在子步骤126或126',计算设备20可以基于第一商品推荐规则、第二商品推荐规则和第三商品推荐规则确定该场景的上下文信息。
在这种情况下,场景的上下文信息除了包括如上所述的基于第一商品推荐规则的场景配置信息和基于第二商品推荐规则的用户配置信息之外还包括基于第三商品推荐规则的店铺配置信息,从而在后续的推荐商品展示中,可以根据第一商品推荐规则召回商品信息列表,并根据第二商品推荐规则和第三商品推荐规则对召回的商品信息列表进行调整。
继续图3,在步骤130,计算设备20(如流程编排器236)基于步骤120确定的该场景的上下文信息,从流程模板库240中选择流程模板。
流程模板库240中可以包括用于多种不同场景的多个不同流程模板,这些流程模板例如可以是针对电商活动主会场或分会场的不同流程模板,针对某一会场下的不同品类商品的不同流程模板以及针对不同店铺的商品的不同流程模板等。在步骤130,计算设备20可以基于场景的上下文信息来选择对应的流程模板。例如,对于仅包括场景配置信息和用户配置信息的上下文信息,可以选择第一种流程模板,而对于包括场景配置信息、用户配置信息和店铺配置信息的上下文信息,可以选择第二种流程模板(如默认流程模板)。
在步骤140,计算设备20(如流程编排器236)基于所选择的流程模板和该上下文信息从流程组件库250中选择多个流程组件,并且对该多个流程组件进行编排以产生符合该上下文信息的流程实例。
图6示出了根据本发明实施例的流程组件库250的一种示例。如图6中所示,流程组件库250可以包括基础列表组件251、优化列表组件252、列表编排组件253和商品展示组件254。更进一步的,优化列表组件252还可以进一步包括与各种优化排序方式相对应的子组件,如基于用户历史数据的优化排序子组件和/或基于业务的优化排序子组件(图中未示出)。此外,在一些实施例中,流程组件库250中还可以包括分页组件255、缓存组件256等。
图7示出了根据本发明实施例的产生符合上下文信息的流程实例的步骤140的流程图。
如图7中所示,步骤140可以包括子步骤142,其中计算设备20利用基础列表组件251基于该上下文信息抓取数据以获取第一商品列表。更具体地,基础列表组件251可以根据上下文信息中的场景配置信息获取基于第一商品推荐规则中的基础排序类型的商品列表,或者,基础列表组件251可以根据上下文信息中的场景配置信息和店铺配置信息获取该店铺的基于第一商品推荐规则中的基础排序类型和第三排序规则中的店铺排序类型的商品列表。
在子步骤144,计算设备20可以利用优化列表组件252基于该上下文信息对第一商品列表中的至少部分商品进行重排以产生第二商品列表。更具体地,优化列表组件252可以根据上下文信息中的场景配置信息基于第一商品推荐规则中的优化排序类型和优化排序参数对第一商品列表中的商品(全部商品或部分商品)进行重排。附加地或者替换地,优化列表组件252可以根据上下文信息中的用户配置信息基于第二商品推荐规则(如用户所属的用户组的排序规则或者用户指定的优选排序规则)对第一商品列表中的商品(全部商品或部分商品)进行重新排序。
这里,取决于所使用的优化排序算法的不同,优化列表组件252可以进一步具有不同的操作顺序。
图8示出了根据本发明一种实施例的产生第二商品列表的子步骤144的流程图。在该实施例中,优化排序算法包括基于商品生命周期的优化算法。
具体地,如图8中所示,在子步骤144的子步骤1442,优化列表组件252可以基于该用户的历史操作商品数据(例如历史点击、加购、购买的商品数据),根据第一商品列表中的商品确定与用户标识信息相关联的商品标识序列。这里,历史操作商品数据可以包括用户标识信息、商品标识和操作时间之间的关联,商品标识序列中的商品标识可以按照操作时间顺序排列。
然后,在子步骤1444,优化列表组件252可以基于当前时间和与商品标识相关联的活动截止时间,确定与商品标识相关联的剩余时间,并且基于商品标识序列和与商品标识相关联的剩余时间,生成商品共现元组。商品共现元组包括商品标识序列中的两个商品标识以及与两个商品标识的共现相关联的权重(例如剩余时间越长的商品的权重越高)。
在子步骤1446,优化列表组件252可以基于商品共现元组生成与商品标识相关联的商品表示,并且基于商品表示之间的相似度(例如两个商品表示之间的余弦距离),从第一商品列表中确定与商品标识相关联的商品以构成第二商品列表。
图9示出了根据本发明另一种实施例的产生第二商品列表的子步骤144的流程图。在该实施例中,优化排序算法包括基于稀疏用户历史操作数据的优化算法。
具体地,如图8中所示,在子步骤144的子步骤1442',优化列表组件252可以基于预定时间间隔中,用户对第一商品列表中的商品的历史操作数据、作为操作对象的商品数据和环境信息,生成输入数据。这里,历史操作数据可以分别包括用户对操作对象的点击、加购和购买的操作数据。
在子步骤1444',优化列表组件252可以将输入数据平均分片成多个子输入数据,以分别在配置在多个处理单元上的第一神经网络模型和第二神经网络模型进行训练。
然后,在子步骤1446',优化列表组件252可以利用第一神经网络模型和第二神经网络模型分别提取相应的子输入数据的特征从而预测用户的点击概率和转化概率。其中,第一神经网络模型和第二神经网络模型分别基于第一损失函数和第二损失函数优化,并且至少共享嵌入层。第一神经网络模型和第二神经网络模型可以基于DeepFM部分模型构建。DeepFM部分模型主要包括:稀疏特征层(Sparese Feature)、稠密嵌入层(DenseEmbedding)、FM部分和Deep部分和输出层。稀疏特征层用于输入输入数据。稠密嵌入层用于生成输入数据的嵌入转换结果。其中FM部分用于提取低阶组合特征,Deep部分用于提取高阶组合特征。输出层用于输出预测结果。
最后,在子步骤1448',优化列表组件252可以基于用户的点击概率、关于目标对象的转换概率和第三损失函数,预测第一商品列表中的至少部分商品的推荐概率,并且按照推荐概率对第一商品列表中的该至少部分商品进行排序以产生第二商品列表。这里,第三损失函数可以基于第一损失函数和第二损失函数以及各自的权重而确定。
继续图7,接下来,在子步骤146,计算设备20利用列表编排组件253对第一商品列表和第二商品列表中的商品进行有序排列以产生第三商品列表,并且在子步骤148,利用商品展示组件254调取第三商品列表中的商品的详细信息(如描述信息、图片信息、视频信息等)以用于作为该场景中的推荐商品。
此外,虽然图中未示出,步骤140还可以包括利用分页组件255对第三商品列表中的有序商品进行分页以便于分段交互。在这种情况下,商品展示组件254可以对分页后的每个页面中的商品分别调取商品的详细信息。
此外,虽然图中未示出,步骤140还可以包括利用缓存组件256记录各个组件执行过程中产生的中间数据和对外部来源数据进行短暂的缓存,以保障一段时间内数据重复应用的效率,从而在复杂的流程和数据处理过程中保证执行效率。
继续图3,在步骤150,计算设备20(如执行引擎238)执行步骤140得到的流程实例(其包括上述实例化的基础列表组件251、优化列表组件252、列表编排组件253和商品展示组件254)以在该场景中向用户展示推荐商品。推荐商品例如是如上所述的第三商品列表中的商品。
图10示出了适合实现本公开的实施例的计算设备1000的结构方框图。计算设备1000例如可以是如上所述的客户端10或服务器20。
如图10中所示,计算设备1000可以包括一个或多个中央处理单元(CPU)1010(图中仅示意性地示出了一个),其可以根据存储在只读存储器(ROM)1020中的计算机程序指令或者从存储单元1080加载到随机访问存储器(RAM)1030中的计算机程序指令,来执行各种适当的动作和处理。在RAM 1030中,还可存储计算设备1000操作所需的各种程序和数据。CPU 1010、ROM 1020以及RAM 1030通过总线1040彼此相连。输入/输出(I/O)接口1050也连接至总线1040。
计算设备1000中的多个部件连接至I/O接口1050,包括:输入单元1060,例如键盘、鼠标等;输出单元1070,例如各种类型的显示器、扬声器等;存储单元1080,例如磁盘、光盘等;以及通信单元1090,例如网卡、调制解调器、无线通信收发机等。通信单元1090允许计算设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的方法100例如可由计算设备1000(如客户端10或服务器20)的CPU1010执行。例如,在一些实施例中,方法100可被实现为计算机软件程序,其被有形地包括于机器可读介质,例如存储单元1080。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1020和/或通信单元1090而被载入和/或安装到计算设备1000上。当计算机程序被加载到RAM 1030并由CPU 1010执行时,可以执行上文描述的方法100的一个或多个操作。此外,通信单元1090可以支持有线或无线通信功能。
本领域技术人员可以理解,图10所示的计算设备1000仅是示意性的。在一些实施例中,客户端10或服务器20可以包含比计算设备1000更多或更少的部件。
利用本公开的方案,能够实现组件化的商品推荐。本发明提供了统一的软件工程框架对大部分商品列表组织场景进行统一的流程模板化实现,进而对选定模板的各个组成单元进行组件化管理和实现,从而达到统一规划、统一规范、统一建设、组件积累成库的效果。本发明的上述方案支撑移动商城商品列表智能推荐与动态排序,在满足设计要求的同时,在电商业务长期发展变化过程中,使用该框架可以大大降低开发同类场景的边际成本和研发风险,更有助于保障应用系统整体架构和细节代码不易腐败。
以上结合附图对根据本公开的组件化商品推荐方法100以及可用作客户端10和服务器20的计算设备1000进行了描述。然而本领域技术人员可以理解,方法100的步骤的执行并不局限于图中所示和以上所述的顺序,而是可以以任何其他合理的顺序来执行。此外,计算设备1000也不必须包括图10中所示的所有组件,其可以仅仅包括执行本公开中所述的功能所必须的其中一些组件,并且这些组件的连接方式也不局限于图中所示的形式。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
在一个或多个示例性设计中,可以用硬件、软件、固件或它们的任意组合来实现本公开所述的功能。例如,如果用软件来实现,则可以将所述功能作为一个或多个指令或代码存储在计算机可读介质上,或者作为计算机可读介质上的一个或多个指令或代码来传输。
本文公开的装置的各个单元可以使用分立硬件组件来实现,也可以集成地实现在一个硬件组件,如处理器上。例如,可以用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或用于执行本文所述的功能的任意组合来实现或执行结合本公开所描述的各种示例性的逻辑块、模块和电路。
本领域普通技术人员还应当理解,结合本公开的实施例描述的各种示例性的逻辑块、模块、电路和算法步骤可以实现成电子硬件、计算机软件或二者的组合。
本公开的以上描述用于使本领域的任何普通技术人员能够实现或使用本公开。对于本领域普通技术人员来说,本公开的各种修改都是显而易见的,并且本文定义的一般性原理也可以在不脱离本公开的精神和保护范围的情况下应用于其它变形。因此,本公开并不限于本文所述的实例和设计,而是与本文公开的原理和新颖性特性的最广范围相一致。
Claims (10)
1.一种组件化商品推荐方法,包括:
获取用户对商品展示系统中的一个场景的访问请求,所述访问请求至少包括所述场景的场景标识信息和所述用户的用户信息;
基于所述场景标识信息确定第一商品推荐规则,基于所述用户信息确定第二商品推荐规则,并且至少基于所述第一商品推荐规则和所述第二商品推荐规则产生所述场景的上下文信息;
基于所述场景的上下文信息,从流程模板库中选择流程模板;
基于所选择的流程模板和所述上下文信息从流程组件库中选择多个流程组件,并且对所述多个流程组件进行编排以产生符合所述上下文信息的流程实例;以及
执行所述流程实例以在所述场景中向所述用户展示推荐商品。
2.如权利要求1所述的方法,其中获取用户对商品展示系统中的一个场景的访问请求包括:
检测所述用户对所述商品展示系统中的特定商品会场的点击,所述场景包括所述特定商品会场;以及
基于所述特定商品会场确定所述场景标识信息。
3.如权利要求1所述的方法,其中产生所述场景的上下文信息包括:
基于所述场景标识信息确定所述场景的基础排序类型、优化排序类型、优化排序参数和用户组排序规则作为所述第一商品推荐规则;
基于所述用户信息确定所述用户所属的用户组,并且基于所述用户组和所述用户组排序规则确定所述第二商品推荐规则,其中所述用户信息包括用户标识信息;以及
基于所述第一商品推荐规则和所述第二商品推荐规则确定所述上下文信息。
4.如权利要求1所述的方法,其中产生所述场景的上下文信息包括:
基于所述场景标识信息确定所述场景的基础排序类型作为所述第一商品推荐规则;
获取所述用户的用户信息中的自定义信息,并且基于所述用户的自定义信息确定所述第二商品推荐规则;以及
基于所述第一商品推荐规则和所述第二商品推荐规则确定所述上下文信息。
5.如权利要求1所述的方法,其中所述访问请求还包括所述场景中所包含的店铺的店铺标识信息,其中产生所述场景的上下文信息还包括:
基于所述店铺标识信息确定第三商品推荐规则,并且基于所述第一商品推荐规则、所述第二商品推荐规则和所述第三商品推荐规则确定所述上下文信息。
6.如权利要求1所述的方法,其中所述多个流程组件包括基础列表组件、优化列表组件、列表编排组件和商品展示组件,并且其中对所述多个流程组件进行编排以产生符合所述上下文信息的流程实例包括:
利用所述基础列表组件基于所述上下文信息抓取数据以获取第一商品列表;
利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表;
利用所述列表编排组件对所述第一商品列表和所述第二商品列表中的商品进行有序排列以产生第三商品列表;
利用所述商品展示组件调取所述第三商品列表中的商品的详细信息以用于作为所述推荐商品。
7.如权利要求6所述的方法,其中利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表包括:
基于所述用户的历史操作商品数据,根据所述第一商品列表中的商品确定与所述用户标识信息相关联的商品标识序列,其中所述历史操作商品数据可以包括所述用户标识信息、商品标识和操作时间之间的关联,商品标识序列中的商品标识可以按照操作时间顺序排列;
基于当前时间和与所述商品标识相关联的活动截止时间,确定与所述商品标识相关联的剩余时间,并且基于所述商品标识序列和与所述商品标识相关联的剩余时间,生成商品共现元组,其中所述商品共现元组包括所述商品标识序列中的两个商品标识以及与所述两个商品标识的共现相关联的权重;以及
基于所述商品共现元组生成与所述商品标识相关联的商品表示,并且基于所述商品表示之间的相似度,从所述第一商品列表中确定与所述商品标识相关联的商品以构成所述第二商品列表。
8.如权利要求6所述的方法,其中利用所述优化列表组件基于所述上下文信息对所述第一商品列表中的至少部分商品进行重排以产生第二商品列表包括:
基于预定时间间隔中,所述用户对所述第一商品列表中的商品的历史操作数据、作为操作对象的商品数据和环境信息,生成输入数据,其中所述历史操作数据分别包括所述用户对所述操作对象的点击、加购和购买的操作数据;
将所述输入数据平均分片成多个子输入数据,以分别在配置在多个处理单元上的第一神经网络模型和第二神经网络模型进行训练;
利用所述第一神经网络模型和第二神经网络模型分别提取相应的子输入数据的特征从而预测所述用户的点击概率和转化概率,其中所述第一神经网络模型和所述第二神经网络模型分别基于第一损失函数和第二损失函数优化,并且至少共享嵌入层;
基于所述用户的点击概率、关于目标对象的转化概率和第三损失函数,预测所述第一商品列表中的至少部分商品的推荐概率,并且按照所述推荐概率对所述第一商品列表中的所述至少部分商品进行排序以产生所述第二商品列表,其中所述第三损失函数基于所述第一损失函数和所述第二损失函数以及各自的权重而确定。
9.一种计算设备,包括:
至少一个处理器;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理器并且存储用于由所述至少一个处理器执行的指令,所述指令当由所述至少一个处理器执行时,使得所述计算设备执行根据权利要求1至8中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序代码,所述计算机程序代码在被运行时执行如权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523099.5A CN112256977B (zh) | 2020-12-22 | 2020-12-22 | 组件化商品推荐方法、计算设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523099.5A CN112256977B (zh) | 2020-12-22 | 2020-12-22 | 组件化商品推荐方法、计算设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112256977A true CN112256977A (zh) | 2021-01-22 |
CN112256977B CN112256977B (zh) | 2021-04-02 |
Family
ID=74225022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011523099.5A Active CN112256977B (zh) | 2020-12-22 | 2020-12-22 | 组件化商品推荐方法、计算设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256977B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836162A (zh) * | 2021-02-07 | 2021-05-25 | 上海哔哩哔哩科技有限公司 | 内容投放方法和系统 |
CN113032676A (zh) * | 2021-03-31 | 2021-06-25 | 上海天旦网络科技发展有限公司 | 基于微反馈的推荐方法和系统 |
CN113065888A (zh) * | 2021-03-09 | 2021-07-02 | 北京安锐卓越信息技术股份有限公司 | 基于行动行为推荐商机的方法、装置及存储介质 |
CN113869982A (zh) * | 2021-09-29 | 2021-12-31 | 未鲲(上海)科技服务有限公司 | 产品推荐系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140279202A1 (en) * | 2013-03-15 | 2014-09-18 | Sears Brands, L.L.C. | Recommendations Based Upon Explicit User Similarity |
CN104517223A (zh) * | 2014-12-15 | 2015-04-15 | 小米科技有限责任公司 | 商品信息推荐方法及装置 |
CN111461801A (zh) * | 2019-01-18 | 2020-07-28 | 阿里巴巴集团控股有限公司 | 一种页面生成方法及其装置 |
-
2020
- 2020-12-22 CN CN202011523099.5A patent/CN112256977B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140279202A1 (en) * | 2013-03-15 | 2014-09-18 | Sears Brands, L.L.C. | Recommendations Based Upon Explicit User Similarity |
CN104517223A (zh) * | 2014-12-15 | 2015-04-15 | 小米科技有限责任公司 | 商品信息推荐方法及装置 |
CN111461801A (zh) * | 2019-01-18 | 2020-07-28 | 阿里巴巴集团控股有限公司 | 一种页面生成方法及其装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836162A (zh) * | 2021-02-07 | 2021-05-25 | 上海哔哩哔哩科技有限公司 | 内容投放方法和系统 |
CN113065888A (zh) * | 2021-03-09 | 2021-07-02 | 北京安锐卓越信息技术股份有限公司 | 基于行动行为推荐商机的方法、装置及存储介质 |
CN113065888B (zh) * | 2021-03-09 | 2023-04-18 | 北京安锐卓越信息技术股份有限公司 | 基于行动行为推荐商机的方法、装置及存储介质 |
CN113032676A (zh) * | 2021-03-31 | 2021-06-25 | 上海天旦网络科技发展有限公司 | 基于微反馈的推荐方法和系统 |
CN113869982A (zh) * | 2021-09-29 | 2021-12-31 | 未鲲(上海)科技服务有限公司 | 产品推荐系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112256977B (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112256977B (zh) | 组件化商品推荐方法、计算设备和计算机存储介质 | |
CN108604222B (zh) | 用于部署定制机器学习服务的系统和方法 | |
CN108960945A (zh) | 商品推荐方法和装置 | |
CN107426328B (zh) | 信息推送方法和装置 | |
CN105718184A (zh) | 一种数据处理方法和装置 | |
CN111428131B (zh) | 信息推送方法、装置及系统 | |
CN112288464A (zh) | 商品推荐方法、装置、计算机设备和存储介质 | |
CN107332910A (zh) | 信息推送方法和装置 | |
CN113627995B (zh) | 商品推荐列表更新方法及其装置、设备、介质、产品 | |
CN112925973B (zh) | 数据处理方法和装置 | |
CN113793182B (zh) | 商品对象推荐方法及其装置、设备、介质、产品 | |
CN111738785A (zh) | 选品方法、系统及存储介质 | |
CN107545491A (zh) | 一种推荐信息的数据处理方法和装置 | |
CN115423555A (zh) | 一种商品推荐方法、装置、电子设备及存储介质 | |
CN113065882A (zh) | 一种商品处理方法、装置及电子设备 | |
CN112749323B (zh) | 一种构建用户画像的方法和装置 | |
CN115564531A (zh) | 商品组合推荐方法及其装置、设备、介质、产品 | |
CN107977876B (zh) | 用于处理订单信息的方法及装置 | |
CN110532448A (zh) | 基于神经网络的文档分类方法、装置、设备及存储介质 | |
US20230245170A1 (en) | Systems and methods for automated audience set identification | |
CN115187330A (zh) | 基于用户标签的产品推荐方法、装置、设备和介质 | |
CN110827044A (zh) | 提取用户兴趣模式的方法和装置 | |
CN113516524B (zh) | 用于推送信息的方法和装置 | |
CN113762992B (zh) | 一种处理数据的方法和装置 | |
CN113313542B (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 |