CN111767457B - 推荐方法及装置 - Google Patents

推荐方法及装置 Download PDF

Info

Publication number
CN111767457B
CN111767457B CN201910806627.9A CN201910806627A CN111767457B CN 111767457 B CN111767457 B CN 111767457B CN 201910806627 A CN201910806627 A CN 201910806627A CN 111767457 B CN111767457 B CN 111767457B
Authority
CN
China
Prior art keywords
chain
word vector
sample
ordered
user
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
Application number
CN201910806627.9A
Other languages
English (en)
Other versions
CN111767457A (zh
Inventor
陈伟颖
支荣
吕晶晶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Wodong Tianjun Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Wodong Tianjun Information Technology Co Ltd
Priority to CN201910806627.9A priority Critical patent/CN111767457B/zh
Publication of CN111767457A publication Critical patent/CN111767457A/zh
Application granted granted Critical
Publication of CN111767457B publication Critical patent/CN111767457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computational Linguistics (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

推荐方法及装置
技术领域
本发明实施例涉及互联网技术领域,尤其涉及一种推荐方法及装置。
背景技术
随着技术的不断发展,用户通过各种各样的电商平台购买商品。购买过程中,电商平台根据商品的描述词向用户推荐相关商品。
推荐场景中,很难找到一个合适的表达让计算机理解,常见的描述词是利用打标签、离散化特征构建出用于描述商品的词语,基于该种方式构建出的描述词包含一些离散的特征,如商品的产地、颜色、尺寸等,商品的描述词也称之为商品的库存量单位(stockkeeping unit,SKU)。然而,利用基于离散化特征等方式构建的描述词描述商品时,使得商品和商品之间除了描述词外,没有直观的联系,导致商品与商品之间不具有关联性,进而导致电商平台无法根据描述词确定出用户感兴趣的商品并向用户推荐。
因此,如何准确确定出用户感兴趣的商品并向用户推荐,视为业界急待解决的问题。
发明内容
本发明实施例提供一种推荐方法及装置,通过利用词向量描述对象,根据词向量确定用户感兴趣的对象,从而提高对象推荐的成功率。
第一方面,本发明实施例提供一种推荐方法,包括:
接收电子设备发送的推荐请求,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词;
从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象;
从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量;
向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象。
一种可行的设计中,所述从词向量集合中确定所述第一描述词对应的第一词向量之前,还包括:
获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买;
根据所述样本日志集合,确定所述词向量集合。
一种可行的设计中,所述根据所述样本日志集合,确定所述词向量集合,包括:
从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志;
根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象;
根据所述第一有序链和所述第二有序链,构建有向图;
根据所述有向图,确定所述词向量集合。
一种可行的设计中,所述根据所述第一有序链和所述第二有序链,构建有向图,包括:
确定第一节点,所述第一节点是所述第一有序链和所述第二有序链共同存在的节点;
将所述第一有序链和所述第二有序链上的第一节点合并为一个节点,得到所述有向图。
一种可行的设计中,所述根据所述有向图,确定所述词向量集合之前,还包括:
从所述有向图中提取出跨用户有序链,根据所述跨用户有序链,获取第一购买链,所述跨用户有序链上的第一节点属于不同样本用户的有序链,所述第一购买链的最后一个节点表示的对象是被任意一个样本用户购买过的对象;
和/或
从所述有向图中提取所述行为有序链,所述行为有序链中的各节点表示的对象被同一个样本用户处理。
一种可行的设计中,所述根据所述有向图,确定所述词向量集合,包括:
基于第一模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第一模型为深度学习模型,所述第一模型引入购买列表,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述根据所述有向图,确定所述词向量集合,包括:
基于第二模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第二模型为引入了注意力机制和购买列表的词向量产生模型,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述根据所述有向图,确定所述词向量集合之前,还包括:
根据所述第一购买链,确定所述购买列表,所述购买列表中的对象是所述第一购买链中的最后一个节点表示的对象。
第二方面,本发明实施例提供一种推荐装置,包括:
接收单元,用于接收电子设备发送的推荐请求,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词;
处理单元,用于从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象;从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量;
发送单元,用于向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象。
一种可行的设计中,所述处理单元,在从词向量集合中确定所述第一描述词对应的第一词向量之前,还用于获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买,根据所述样本日志集合,确定所述词向量集合。
一种可行的设计中,所述处理单元,在根据所述样本日志集合,确定所述词向量集合时,用于从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志;根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象;根据所述第一有序链和所述第二有序链,构建有向图;根据所述有向图,确定所述词向量集合。
一种可行的设计中,所述处理单元,在根据所述第一有序链和所述第二有序链,构建有向图时,确定第一节点,所述第一节点是所述第一有序链和所述第二有序链共同存在的节点;将所述第一有序链和所述第二有序链上的第一节点合并为一个节点,得到所述有向图。
一种可行的设计中,所述处理单元,在根据所述第一有序链和所述第二有序链,构建有向图之前,还用于从所述有向图中提取出跨用户有序链,根据所述跨用户有序链,获取第一购买链,所述跨用户有序链上的第一节点属于不同样本用户的有序链,所述第一购买链的最后一个节点表示的对象是被任意一个样本用户购买过的对象;
和/或
从所述有向图中提取所述行为有序链,所述行为有序链中的各节点表示的对象被同一个样本用户处理。
一种可行的设计中,所述处理单元,在根据所述有向图,确定所述词向量集合时,基于第一模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第一模型为深度学习模型,所述第一模型引入购买列表,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述处理单元,在根据所述有向图,确定所述词向量集合时,基于第二模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第二模型为引入了注意力机制和购买列表的词向量产生模型,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述处理单元,在根据所述有向图,确定所述词向量集合之前,还用于根据所述第一购买链,确定所述购买列表,所述购买列表中的对象是所述第一购买链中的最后一个节点表示的对象。
第三方面,本发明实施例提供一种服务器,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上第一方面或第一方面的各种可行的实现方式所述的方法。
第四方面,本发明实施例提供一种存储介质,所述存储介质中存储有指令,当其在服务器上运行时,使得服务器执行如上第一方面或第一方面的各种可行的实现方式所述的方法。
第五方面,本发明实施例提供一种计算机程序产品,所述计算机程序产品在服务器上运行时,使得服务器执行如上第一方面或第一方面的各种可行的实现方式所述的方法。
本发明实施例提供的推荐方法及装置,服务器接收到电子设备发送的推荐请求后,确定推荐请求携带的第一对象的第一描述词对应的第一词向量,之后确定与第一词向量的相似度大于第一阈值的第二词向量,并向电子设备发送第二词向量对应的第二对象的对象信息,从而实现向用户推荐感兴趣的对象的目的。该过程中,利用词向量描述对象,两个对象的词向量的相似度能够反映该两个对象的关联程度,因此,根据第一对象的第一词向量确定出的用户感兴趣的第二对象是与第一对象关联度最高的对象,提高了对象推荐的成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的推荐方法的运行环境示意图;
图2是本发明实施例提供的一种推荐方法的流程图;
图3是本发明实施例提供的推荐方法中构建词向量集合的示意图;
图4是本发明实施例提供的推荐方法中构建出的有序链的示意图;
图5是本发明实施例提供的推荐方法中构建有向图的示意图;
图6为本发明实施例提供的一种推荐装置的结构示意图;
图7为本发明实施例提供的另一种推荐装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高购买率,电商平台会根据用户输入的描述词或用户的历史搜索记录,确定用户感兴趣的商品并向用户推荐。其中,描述词是用打标签、离散化特征构建出的用于描述商品的词语,商品的描述词也称之为商品SKU,包含商品的产地、颜色、尺寸等信息。然而,利用基于离散化特征等方式构建的描述词描述商品时,使得商品和商品之间除了描述词外,没有直观的联系,导致商品与商品之间不具有关联性,进而导致电商平台无法根据描述词确定出用户感兴趣的商品并向用户推荐。例如,商品a、商品b和商品c的描述词分别为商品a:XX、粉红色、大屏幕;商品b:YY、黑色、持久续航;商品c:拖鞋、粉红色、居家,XX和YY表示不同手机的生产厂商。倘若用户最近浏览过或购买过商品a,则电商平台会认为商品a与商品c的关联性大于商品a和商品b的关联性,从而向用户推荐商品c,事实上,用户更倾向于商品b。而且,若商品d的描述词为钢化膜、透明、超清,则电商平台计算出商品d和商品a的关联性很可能为0,从而不向用户推荐商品d,但是事实上,倘若用户购买了商品a,则很有可能会购买商品d。其中,商品a和商品b可以称之为相似商品,商品a和商品d可以称之为互补商品。由此可知:现有的基于描述词的商品推荐方式中,很难向用户推荐相似商品或互补商品。
另外,用户购买商品或被商品广告吸引时,往往会有短期和长期的兴趣所在。例如,用户购买了手机后,往往会对手机配件,如钢化膜、耳机等产生兴趣,基于描述词的推荐方式中,往往会继续向用户推荐手机,而不是手机配件;再如,用户在购买了餐厅纸后,一段时间内往往不会重复购买该种商品,而电商平台会继续给用户推荐餐厅纸,事实上,用户一段时间内不需要餐厅纸。
有鉴于此,本发明实施例提供一种推荐方法及装置,通过利用词向量描述对象,根据词向量确定用户感兴趣的对象,从而提高对象推荐的成功率。
图1是本发明实施例提供的推荐方法的运行环境示意图。请参照图1,电子设备与服务器建立网络连接,电子设备上运行电商平台的应用程序(application,APP),服务器是为该APP提供业务服务的服务器,用户可以通过APP访问服务器,从而浏览、点击或感兴趣的对象下单,对象例如为商品、景点、酒店、宠物、美食等。电子设备接收到用户输入的推荐请求后,将该推荐请求发送给服务器,该推荐请求携带用户感兴趣的第一对象的第一描述词,服务器从预先存储的词向量集合中,确定出第一描述词对应的第一词向量,然后确定与第一词向量的相似度大于第一阈值的第二词向量,可以理解的是,该些第二词向量对应的对象是第一词向量对应的对象的关联对象,例如,第二词向量对应的对象是与第一对象相似的对象,再如,第二词向量对应的对象是与第一对象互补的对象。其中,电子设备例如可以是用户的电脑、笔记本、手机等,本发明实施例并不限制。服务器例如可以是APP对应的服务器等。
下面,在上述图1的基础上,对本发明实施例所述的推荐方法进行详细说明。示例性的,请参见图2。
图2是本发明实施例提供的一种推荐方法的流程图。本实施例从服务器和终端设备交互的角度对本发明实施例所述的推荐方法进行详细说明,本实施例包括:
101、接收电子设备发送的推荐请求。
其中,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词。
示例性的,用户对电子设备上的APP进行操作,从而触发电子设备向服务器发送推荐请求。
例如,用户点击电子设备触摸屏上的APP以开启APP,从而触发电子设备向服务器发送推荐请求。APP确定用户近期搜索过的对象,如一个周内搜索过的对象,或者,用户最近搜索过的10个对象,并将该些对象作为第一对象,推荐请求携带该些第一对象的第一描述词。
再如,用户在APP的搜索栏里输入第一对象的第一描述词,从而触发电子设备向服务器发送推荐请求,该推荐请求携带用户输入的第一描述词。
102、从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象。
示例性的,服务器上预先存储词向量集合,该词向量集合也可以称之为词库等,词向量集合中的每个词向量对应一个对象描述词,即对应一个对象SKU。服务器接收到推荐请求后,从词向量集合中确定出第一描述词对应的词向量。
103、从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量。
示例性的,服务器确定第一词向量与词向量集合中的每个词向量的相似度,将相似度较高的K个词向量作为第二词向量,其中,K≥1且为整数,相似度可以为两个词向量的余弦相似度等。该top K个第二词向量对应的对象即为与第一对象关联的K个对象,例如,与第一对象相似的对象,或者,与第一对象互补的对象。
104、向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象。
示例性的,服务器确定出与第一对象关联的top K个对象后,向服务器发送该topK个对象的对象信息,如对象的链接、图片等。
例如,当K比较大时,服务器可分次将该些对象的对象信息发送给电子设备。第一次发送之后,电子设备的用户界面上显示该些对象,之后,用户在用户界面上进行上滑、左滑等操作时,电子设备向服务器发送对象信息获取请求,使得服务器继续向电子设备发送对象信息,电子设备刷新用户界面;第二词发送之后,用户继续在用户界面上进行上滑等操作,电子设备继续向服务器发送对象信息获取请求。
再如,服务器一次性的将top K个对象的对象信息发送给电子设备,电子设备缓存该top K个对象的对象信息,并在用户界面上显示部分对象的对象信息。之后,电子设备检测到用户输入的上滑、左滑等操作时,刷新用户界面。
本实施例提供的推荐方法,服务器接收到电子设备发送的推荐请求后,确定推荐请求携带的第一对象的第一描述词对应的第一词向量,之后确定与第一词向量的相似度大于第一阈值的第二词向量,并向电子设备发送第二词向量对应的第二对象的对象信息,从而实现向用户推荐感兴趣的对象的目的。该过程中,利用词向量描述对象,两个对象的词向量的相似度能够反映该两个对象的关联程度,因此,根据第一对象的第一词向量确定出的用户感兴趣的第二对象是与第一对象关联度最高的对象,提高了对象推荐的成功率。
下面,对上述实施例中,如何构建词向量集合进行详细说明。
一种可行的设计中,服务器从词向量集合中确定所述第一描述词对应的第一词向量之前,还获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买;根据所述样本日志集合,确定所述词向量集合。
示例性的,可参见图,图3是本发明实施例提供的推荐方法中构建词向量集合的示意图。一般而言,只有当语料超过亿级别的时候,使用词嵌入(word embedding)向量方案才会产生好的效益,以下将词嵌入向量称之为词向量。本发明实施例中,通过查询数据库,使用用户的浏览、点击、购买日志作为样本日志,基于样本日志集合构建词向量集合。例如,随机抽取每个类别对象的浏览日志、点击日志和购买日志,从而获得一部分用户在一定时间内的所有点击、浏览和购买的记录,该些日志形成本发明实施例中的样本日志集合。例如,获取超过500万样本用户在一个月年内的所有点击日志、购买日志和浏览日志,从而得到本发明实施例所述的样本日志集合。
本发明实施例中,浏览指点击某个对象后进入该对象的详情界面,以浏览该对象的详细信息,但未发生下单、支付的操作;点击指未进入对象的详情界面、但未发生下单、支付的操作;购买指发生了下单支付的操作。
下面,基于图3,对如何根据所述样本日志集合,确定所述词向量集合进行详细说明。
一种可行的设计中,从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志,根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象,根据所述第一有序链和所述第二有序链,构建有向图,根据所述有向图,确定所述词向量集合。
示例性的,可参见图4,图4是本发明实施例提供的推荐方法中构建出的有序链的示意图。请参照图4,以一天作为基本单位,用对象的描述词(对象SKU)作为词语构建多个独立的有序链(session)。用户A第一天浏览了对象a、对象b和对象c,第二天浏览了对象b、对象c、对象f和对象g,第六天浏览了对象f、对象b和对象c。那么,对对象sku以浏览前后的顺序进行连边,得到多个独立的有序链,即第一天、第二天和第六天分别对应的有序链为A:a,b,c;A:b,c,f,g;A:f、g、b、c。其中,用户A为500万样本用户中的任意一个样本用户,以下称之为第一样本用户,第一天、第二天和第六天分别对应的有序链为第一有序链。如果浏览记录中包含不同的行为,则使用0(浏览)、1(点击)、2(购买)来标记不同行为类型的节点,0、1、2分别如图中未填充、灰色填充、斜线填充部分所示。
对于500万样本用户中的其他用户进行类似的操作,该500万各样本用户中,不同于用户A的用户称之为第二样本用户。
在对500万个样本用户中的每个用户构建出有序链后,需要对该些有序链进行清洗,即从该些有序链中过滤掉一些可能会引入噪音的链。例如,对于同一个样本用户,如样本用户B,统计样本用户B浏览同类目的对象的次数,从样本用户B的有序链中删除低频次类目的对象,以防止某些对象是样本用户B误点导致有序链中引入噪音,例如,去掉样本用户B的所有有序链中出现频次不超过3次的对象,并过滤掉长度不超过5的有序链。
在构建出第一样本用户的第一有序链和第二样本用户的第二有序链后,根据该第一有序链和第二有序链,构建有向图。示例性的,可参见图5。
图5是本发明实施例提供的推荐方法中构建有向图的示意图。请参照图5,服务器根据所述第一有序链和所述第二有序链,构建有向图时,确定第一节点,所述第一节点是所述第一有序链和所述第二有序链共同存在的节点;将所述第一有序链和所述第二有序链上的第一节点合并为一个节点,从而得到有向图。
示例性的,请参见图5,有向图指的是一个有序三元组为关联函数,顶点之间通过带有方向的边连接而成的图。本申请实施例中,利用样本用户的有序链进行有向图的构建。构建过程中,将不同样本用户的有序链中共同存在的节点合并为一个节点。例如,500万个样本用户包括样本用户A和样本用户B,样本用户A的有序链A:a、b、c;样本用户B的有序链B:d、a、f、g;样本用户C的有序链C:g、i、j。有序链A、有序链B中同时存在节点a,则将有序链A和有序链B的节点a合并为一个节点;有序链B和有序链C中同时存在节点g,则将有序链B和有序链C的节点g合并为一个节点。之后,重复上述的操作,直到500万样本用户中的所有样本用户的有序链都被加入到有向图中。
本实施例中,使用有向图表达用户,并利用对同一对象的共同动作构建起样本用户之间的关系。该过程中,对浏览、点击和购买的先后顺序构建有向图,对不同样本用户,按照同一个对象进行合并,使得所有的有序链的均包含样本用户的兴趣。
接下来,通过遍历有向图的方式进行链的抽取。本发明实施例中,按照不同节点的标记,可以从有向图中抽取出三种不同类型的有序链:初始购买链、浏览有序链和跨用户有序链,其中,初始购买链指存在购买节点的有序链;浏览有序链指不存在购买节点的有序链,例如,图5中,有序链A:a、b、c不包括购买节点,则有序链A为浏览有序链;而有序链B:d、a、f、g中存在购买节点g,则有序链B为初始链。跨用户有序链指完成有向图的构建后,从有向图中采样出的有序链,跨用户有序链至少存在一个节点,该节点同时存在与两个不同的样本用户的有序链中。例如,图5中,可以采样出跨用户有序链a、f、g、i、j。需要说明的是,跨用户有序链中一个节点的行为在不同样本用户的有序链中不同时,例如,跨用户有序链中一个节点,当该节点在样本用户C的有序链时,行为为点击,当该节点在样本用户D的有序链时,行为为浏览,则该节点在跨用户有序链中的行为可根据采样得到。
再请参照图3,基于有向图进行链的抽取之后,需要进行有序链的合并。示例性的,为了确定良好的词向量集合的训练效果,本发明实施例中基于初始购买链、浏览有序链和跨用户有序链,进一步得到两种有序链,分别为行为有序链和第一购买链。其中,第一购买链可根据跨用户有序链获取,第一购买链的最后一个节点表示的对象是被任意一个样本用户购买过的对象。例如,再请参照图5,第一购买链是基于跨用户有序链抽取的有序链,其满足如下条件:1、以标号为2(购买)的节点作为终点;2、只关注标号为0(浏览)和/或标号为1(点击)、浏览次数大于3的有序链;3、与单个样本用户的初始购买链合并而成,各第一购买链中的最后一个节点表示的对象形成本发明实施例中的购买列表(listing)。例如,图5中,根据跨用户有序链可以构建出的第一购买链包括:A:a、f、g;B:d、a、f、g;C:g,购买列表例如为:g。行为有序链例如为有序链A:a、b、c;有序链B:d、a、f、g;有序链C:g、i、j
基于有向图得到行为有序链、第一购买有序链和购买列表(listing)后,就可以将购买列表引入词向量产生模型。本发明实施例中,词向量产生模型包括第一模型和第二模型,相应的,词向量集合中的词向量包括基于第一模型产生的词向量,和/或,基于第二模型产生的词向量。下面,对该几种情况分别进行说明。
首先,基于第一模型产生的词向量。
一种可行的设计中,服务器根据有向图,确定词向量集合时,基于第一模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第一模型为深度学习模型,所述第一模型引入购买列表,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
示例性的,本发明实施例中,对Word2vec原生的跳克模型(skip gram model)的目标函数进行改进,使用负采样的训练方法,得到本发明实施例所述的第一模型,该第一模型如下所示:
其中,当以行为有序链作为输入时,l是行为有序链的身份标识(identity,ID),c是ID对应的上下文关系,Dp是行为有序链的正样本集合,Dn是行为有序链的负采样的样本集合,vl是购买列表中对象的词向量,vc′和vlbuy是第一模型的参数。
当以第一购买链作为输入时,l是第一购买链的身份标识(identity,ID),c是ID对应的上下文关系,Dp是第一购买链的正样本集合,Dn是第一购买链的负采样的样本集合,vl是购买列表中对象的词向量,vc′和vlbuy是第一模型的参数。
上述利用第一词向产生模型训练词向量时,为了更有效的获取全局信息,引入了购买列表,以帮助优化从浏览、点击到购买的相关关系。
其次,基于第二模型产生词向量。
一种可行的设计中,服务器根据所述有向图,确定所述词向量集合时,基于第二模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第二模型为引入了注意力机制和购买列表的词向量产生模型,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
示例性的,除了对Word2vec原生的skip gram model的目标函数进行改进,引入购买列表外,还可以引入注意力机制,得到本发明实施例所述的第二模型,该第二模型如下所示:
该第二模型相较于第一模型,新增α(l,c),α(l,c)=ω×vl,其中,ω是注意力模型参数,vl是购买列表中对象的词向量。
基于上述的第一模型和第二模型,可以训练产生每个对象的对象描述词(对象SKU)对应的64维的词向量,多个对象的词向量构成词向量集合存入服务器。
上述基于第二模型产生词向量时,使用了一个额外的注意力网络来处理购买列表,对不同词语分配不同权重。
图6为本发明实施例提供的一种推荐装置的结构示意图,该推荐装置可以通过软件和/或硬件的方式实现。如图6所示,该推荐装置100包括:
接收单元11,用于接收电子设备发送的推荐请求,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词;
处理单元12,用于从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象;从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量;
发送单元13,用于向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象。
一种可行的设计中,所述处理单元12,在从词向量集合中确定所述第一描述词对应的第一词向量之前,还用于获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买,根据所述样本日志集合,确定所述词向量集合。
一种可行的设计中,所述处理单元12,在根据所述样本日志集合,确定所述词向量集合时,用于从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志;根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象;根据所述第一有序链和所述第二有序链,构建有向图;根据所述有向图,确定所述词向量集合。
一种可行的设计中,所述处理单元12,在根据所述第一有序链和所述第二有序链,构建有向图时,确定第一节点,所述第一节点是所述第一有序链和所述第二有序链共同存在的节点;将所述第一有序链和所述第二有序链上的第一节点合并为一个节点,得到所述有向图。
一种可行的设计中,所述处理单元12,在根据所述第一有序链和所述第二有序链,构建有向图之前,还用于从所述有向图中提取出跨用户有序链,根据所述跨用户有序链,获取第一购买链,所述跨用户有序链上的第一节点属于不同样本用户的有序链,所述第一购买链的最后一个节点表示的对象是被任意一个样本用户购买过的对象;
和/或
从所述有向图中提取所述行为有序链,所述行为有序链中的各节点表示的对象被同一个样本用户处理。
一种可行的设计中,所述处理单元12,在根据所述有向图,确定所述词向量集合时,基于第一模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第一模型为深度学习模型,所述第一模型引入购买列表,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述处理单元12,在根据所述有向图,确定所述词向量集合时,基于第二模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第二模型为引入了注意力机制和购买列表的词向量产生模型,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
一种可行的设计中,所述处理单元12,在根据所述有向图,确定所述词向量集合之前,还用于根据所述第一购买链,确定所述购买列表,所述购买列表中的对象是所述第一购买链中的最后一个节点表示的对象。
本发明实施例提供的登录验证装置,可以执行上述实施例中服务器的动作,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上接收单元实际实现时可以为接收器、发送单元实际实现时可以为发送器。而处理单元可以以软件通过处理元件调用的形式实现;也可以以硬件的形式实现。例如,处理单元可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理单元的功能。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个单元通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
图7为本发明实施例提供的另一种推荐装置的结构示意图。如图7所示,该推荐装置200包括:
至少一个处理器21和存储器22;
所述存储器22存储计算机执行指令;
所述至少一个处理器21执行所述存储器22存储的计算机执行指令,使得所述至少一个处理器21执行如上电子设备执行的推荐方法或服务器执行的推荐方法。
处理器21的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
可选地,该推荐装置200还包括通信部件23。其中,处理器21、存储器22以及通信部件23可以通过总线24连接。
本发明实施例还提供一种存储介质,所述存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的推荐方法。
本发明实施例还提供一种计算机程序产品,当所述计算机程序产品在服务器上运行时,使得服务器执行如上述推荐方法。
在上述的实施例中,应该理解到,所描述的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component,PCI)总线或扩展工业标准体系结构(extendedIndustry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本发明附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuits,ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于终端或服务器中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (9)

1.一种推荐方法,其特征在于,包括:
接收电子设备发送的推荐请求,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词;
从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象;
从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量;
向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象;
所述从词向量集合中确定所述第一描述词对应的第一词向量之前,还包括:
获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买;
从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志;
根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象;
根据所述第一有序链和所述第二有序链,构建有向图;
根据所述有向图,确定所述词向量集合。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一有序链和所述第二有序链,构建有向图,包括:
确定第一节点,所述第一节点是所述第一有序链和所述第二有序链共同存在的节点;
将所述第一有序链和所述第二有序链上的第一节点合并为一个节点,得到所述有向图。
3.根据权利要求1所述的方法,其特征在于,所述根据所述有向图,确定所述词向量集合之前,还包括:
从所述有向图中提取出跨用户有序链,根据所述跨用户有序链,获取第一购买链,所述跨用户有序链上的第一节点属于不同样本用户的有序链,所述第一购买链的最后一个节点表示的对象是被任意一个样本用户购买过的对象;
和/或
从所述有向图中提取所述行为有序链,所述行为有序链中的各节点表示的对象被同一个样本用户处理。
4.根据权利要求3所述的方法,其特征在于,所述根据所述有向图,确定所述词向量集合,包括:
基于第一模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第一模型为深度学习模型,所述第一模型引入购买列表,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
5.根据权利要求3所述的方法,其特征在于,所述根据所述有向图,确定所述词向量集合,包括:
基于第二模型,确定所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量,所述第二模型为引入了注意力机制和购买列表的词向量产生模型,所述购买列表中的每个对象被购买过;将所述第一购买链和/或所述行为有序链中的每个节点表示的对象的词向量作为所述词向量集合中的词向量。
6.根据权利要求4或5所述的方法,其特征在于,所述根据所述有向图,确定所述词向量集合之前,还包括:
根据所述第一购买链,确定所述购买列表,所述购买列表中的对象是所述第一购买链中的最后一个节点表示的对象。
7.一种推荐装置,其特征在于,包括:
接收单元,用于接收电子设备发送的推荐请求,所述推荐请求用于请求向用户推荐第一对象关联的对象,所述推荐请求携带第一对象的第一描述词;
处理单元,用于从词向量集合中确定所述第一描述词对应的第一词向量,所述词向量集合中的不同词向量用于描述不同的对象;从所述词向量集合中确定出与所述第一词向量的相似度大于第一阈值的第二词向量;
发送单元,用于向所述电子设备发送所述第二词向量所描述的第二对象的对象信息,所述第二对象为所述第一对象的关联对象;
所述处理单元,在从词向量集合中确定所述第一描述词对应的第一词向量之前,还用于获取样本日志集合,所述样本日志集合中的样本日志用于记录不同样本用户的行为,所述行为包括点击、浏览或购买;从所述样本日志集合中确定出第一样本用户的样本日志和第二样本用户的样本日志;根据所述第一样本用户的样本日志,构建所述第一样本用户的第一有序链,根据所述第二样本用户的样本日志,构建所述第二样本用户的第二有序链,所述第一有序链上的每个节点代表一个对象,所述第二有序链上的每个节点代表一个对象;根据所述第一有序链和所述第二有序链,构建有向图;根据所述有向图,确定所述词向量集合。
8.一种服务器,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上述权利要求1-6任一项所述的方法。
9.一种存储介质,其特征在于,所述存储介质中存储有指令,当其在服务器上运行时,使得服务器执行如权利要求1-6任一项所述的方法。
CN201910806627.9A 2019-08-29 2019-08-29 推荐方法及装置 Active CN111767457B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910806627.9A CN111767457B (zh) 2019-08-29 2019-08-29 推荐方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910806627.9A CN111767457B (zh) 2019-08-29 2019-08-29 推荐方法及装置

Publications (2)

Publication Number Publication Date
CN111767457A CN111767457A (zh) 2020-10-13
CN111767457B true CN111767457B (zh) 2024-04-09

Family

ID=72718295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910806627.9A Active CN111767457B (zh) 2019-08-29 2019-08-29 推荐方法及装置

Country Status (1)

Country Link
CN (1) CN111767457B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113781152A (zh) * 2021-02-08 2021-12-10 北京沃东天骏信息技术有限公司 一种对象推荐的方法和装置
CN117631910A (zh) * 2022-08-13 2024-03-01 华为技术有限公司 一种服务推荐方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016101777A1 (zh) * 2014-12-26 2016-06-30 中国银联股份有限公司 用户兴趣数据分析和收集系统及其方法
CN110020112A (zh) * 2017-09-25 2019-07-16 北京京东尚科信息技术有限公司 对象推送方法及其系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016101777A1 (zh) * 2014-12-26 2016-06-30 中国银联股份有限公司 用户兴趣数据分析和收集系统及其方法
CN110020112A (zh) * 2017-09-25 2019-07-16 北京京东尚科信息技术有限公司 对象推送方法及其系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Distributional semantics for understanding spoken meal descriptions;Mandy Korpusik;IEEE;全文 *
一种高效的社交网络朋友推荐方案;程宏兵;王珂;李兵;钱漫匀;;计算机科学(第S1期);全文 *

Also Published As

Publication number Publication date
CN111767457A (zh) 2020-10-13

Similar Documents

Publication Publication Date Title
AU2016225947B2 (en) System and method for multimedia document summarization
US20180342004A1 (en) Cumulative success-based recommendations for repeat users
US10489842B2 (en) Large-scale recommendations for a dynamic inventory
US20220067115A1 (en) Information processing method, apparatus, electrical device and readable storage medium
US20160012124A1 (en) Methods for automatic query translation
US9953061B2 (en) Similarity engine for facilitating re-creation of an application collection of a source computing device on a destination computing device
US20210263978A1 (en) Intelligent interface accelerating
CN108550046B (zh) 一种资源和营销推荐方法、装置及电子设备
US20170337243A1 (en) Systems and methods for representing search query rewrites
CN111429148B (zh) 评价界面进入方法及装置
US9104746B1 (en) Identifying contrarian terms based on website content
CN112507153B (zh) 用于图像检索的方法、计算设备和计算机存储介质
CN112085567B (zh) 商品推荐方法、装置、电子设备以及可读介质
US20150310529A1 (en) Web-behavior-augmented recommendations
CN111767457B (zh) 推荐方法及装置
US20210049674A1 (en) Predictive selection of product variations
US20170169477A1 (en) Determining item of information, from content aggregation platform, to be transmitted to user device
US10163144B1 (en) Extracting data from a catalog
CN113139115A (zh) 信息推荐方法、搜索方法、装置及客户端、介质及设备
CN110058992B (zh) 一种文案模板效果反馈方法、装置及电子设备
CN111131419A (zh) 基于书籍页面的信息推送方法及服务器
CN113744002A (zh) 推送信息的方法、装置、设备和计算机可读介质
CN112650942A (zh) 产品推荐方法、装置、计算机系统和计算机可读存储介质
WO2023122092A1 (en) Machine learning-based user selection prediction based on sequence of prior user selections
US20210110456A1 (en) Email Content Selection System And Method

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