CN111538907B - 一种对象推荐方法、系统及装置 - Google Patents

一种对象推荐方法、系统及装置 Download PDF

Info

Publication number
CN111538907B
CN111538907B CN202010505356.6A CN202010505356A CN111538907B CN 111538907 B CN111538907 B CN 111538907B CN 202010505356 A CN202010505356 A CN 202010505356A CN 111538907 B CN111538907 B CN 111538907B
Authority
CN
China
Prior art keywords
vector representation
user
recommended
processing
vector
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
CN202010505356.6A
Other languages
English (en)
Other versions
CN111538907A (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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010505356.6A priority Critical patent/CN111538907B/zh
Publication of CN111538907A publication Critical patent/CN111538907A/zh
Application granted granted Critical
Publication of CN111538907B publication Critical patent/CN111538907B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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

Abstract

本说明书实施例公开了一种对象推荐方法、系统及装置。所述方法包括:获取预设历史时间段内分别与多个历史时间节点对应的对象特征;将对象特征按照时间区间进行划分,得到多个时段对象特征;利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示;利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;获取待推荐对象的对象特征,以及目标用户的用户特征;对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值;基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。

Description

一种对象推荐方法、系统及装置
技术领域
本说明书涉及数据处理领域,特别涉及一种对象推荐方法、系统、及装置。
背景技术
近年来,互联网给人们的生活带来了极大的方便。人们可以通过各种智能终端(例如,智能手机、电脑、平板等)连接互联网以享受服务、完成消费以及信息交流等。同时,身处于大数据时代,人们每天在终端上的各种行为记录比如新闻浏览、导航记录、商品查看等会被记录一个月、一个季度甚至更长的时间。
发明内容
本说明书实施例之一提供一种对象推荐方法。所述方法包括:获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;将对象特征按照时间区间进行划分,得到多个时段对象特征,每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示;利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;获取待推荐对象的对象特征,以及目标用户的用户特征;对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值;基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。
本说明书实施例之一提供一种对象推荐系统,所述系统包括:第一获取模块,用于获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;划分模块,用于将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的时间先后顺序排列的对象特征;第一处理模块,用于利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示;第二处理模块,用于利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;第二获取模块,用于获取待推荐对象的对象特征,以及目标用户的用户特征;计算模块,用于对所述待推荐的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;第一确定模块,用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值;第二确定模块,用于基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。
本说明书实施例之一提供一种对象推荐装置,包括处理器,所述处理器用于执行以上所述的对象推荐方法。
本说明书实施例之一提供一种推荐模型。所述模型包括:输入处理层,用于接收预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;并将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;所述输入处理层还用于接收待推荐对象的对象特征,以及目标用户的用户特征;循环神经网络,用于处理每一个时段对象特征,得到对应的第一向量表示;膨胀卷积神经网络,用于处理每一个第一向量表示,得到对应的第二向量表示;注意力机制运算层,用于对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;输出处理层,用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值。
本说明书实施例之一提供一种对象序列特征的处理方法。所述方法包括:获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与某用户相关的至少一个对象相对应;将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;利用循环神经网络模型处理每一个时段对象特征,得到对应的第一向量表示;利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;将多个所述第二向量表示作为与该用户相关的对象序列特征。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的一种对象推荐系统的应用场景示意图;
图2是根据本说明书一些实施例所示的一种对象推荐方法的示例性流程图;
图3是根据本说明书一些实施例所示的一种对象推荐模型的示例性示意图;
图4是根据本说明书一些实施例所示的一种对象推荐系统的模块图;
图5是根据本说明书一些实施例所示的一种对象序列特征的处理方法的示例性流程图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
目前,在推荐算法中,基于用户的超长序列化特征的个性化对象推荐,通常会采用LSTM或GRU等来处理用户的序列化特征以挖掘用户对历史推荐对象的反馈。对于用户的长期行为的兴趣爱好,一种方法是采用双向LSTM对用户的超长序列化特征进行处理以实现挖掘的目的。但是,由于LSTM网络的自身约束,后一个时间点的输入依赖于前一个时间点的输出,只能串行计算,在模型训练和预测时无法进行并行处理,存在模型训练效率低、线上推荐对象,如商品,预测超时等问题。
本说明书所披露的技术方案,通过LSTM对用户的短期行为序列进行处理以挖掘用户的短期兴趣,利用膨胀卷积网络挖掘对用户的长期行为序列(超长序列化特征)进行处理以挖掘用户的长期兴趣。膨胀卷积网络不需要前后依赖,可以快速高效的实现并行运算,大大压缩了模型训练以及预测的时间消耗,且降低了推荐模型的复杂度。
图1是根据本说明书一些实施例所示的一种对象推荐系统的应用场景示意图。
对象推荐系统100可以应用于网络服务平台。例如,对象推荐系统100可以用于根据用户在网络服务平台上的各种行为数据预测用户的偏好,并根据偏好将相关对象,如商品或服务等,推送给用户。如图1所示,对象推荐系统100可以包含处理设备110、网络120、用户终端130和存储设备140。
在一些实施例中,处理设备110可以用于对用户的长时间的行为特征序列进行处理,以确定面向用户的个性化推荐对象。例如,处理设备110可以获取预设历史时间段内分别与多个历史时间节点对应的多份对象特征,并将多个对象特征按照时间区间进行划分,得到多个时段对象特征。随后,处理设备110可以利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示,并利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示。在获取待推荐对象的对象特征,以及目标用户的用户特征后,处理设备110可以对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示。其后,处理设备110可以基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值,并基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。在一些实施例中,处理设备110可以是独立的服务器或者服务器组。该服务器组可以是集中式的或者分布式的(如:处理设备110可以是分布系统)。在一些实施例中该处理设备110可以是区域的或者远程的。例如,处理设备110可通过网络访问存储于用户终端130、存储设备140中的信息和/或资料。在一些实施例中,处理设备110可直接与用户终端130、存储设备140直接连接以访问存储于其中的信息和/或资料。在一些实施例中,处理设备110可在云平台上执行。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等中的一种或其任意组合。
在一些实施例中,处理设备110本说明书可包含一个或多个子处理设备(例如,单芯处理设备或多核多芯处理设备)。仅仅作为范例,处理设备112可包含中央处理器(CPU)、专用集成电路(ASIC)、专用指令处理器(ASIP)、图形处理器(GPU)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编辑逻辑电路(PLD)、控制器、微控制器单元、精简指令集电脑(RISC)、微处理器等或以上任意组合。
网络120可促进数据和/或信息的交换,数据和/或信息可以包括用户终端130发送给处理设备110的用户在终端130上的操作所产生的行为数据,例如与用户行为相关的对象的对象特性信息;或者,所述数据和/或信息可以包括处理设备110向用户在终端130推荐的对象信息。在一些实施例中,对象推荐系统100中的一个或多个组件(用户终端130、存储设备140)可通过网络120发送数据和/或信息给对象推荐系统100中的其他组件。在一些实施例中,网络120可是任意类型的有线或无线网络。仅作为范例,网络140可以是有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、城域网(MAN)、广域网(WAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通讯(NFC)网络、全球移动通讯系统(GSM)网络、码分多址(CDMA)网络、时分多址(TDMA)网络、通用分组无线服务(GPRS)网络、增强数据速率GSM演进(EDGE)网络、宽带码分多址接入(WCDMA)网络、高速下行分组接入(HSDPA)网络、长期演进(LTE)网络、用户数据报协议(UDP)网络、传输控制协议/互联网协议(TCP/IP)网络、短讯息服务(SMS)网络、无线应用协议(WAP)网络、超宽带(UWB)网络、移动通信(1G、2G、3G、4G、5G)网络、Wi-Fi、Li-Fi、窄带物联网(NB-IoT)、红外通信等中的一种或多种组合。在一些实施例中,网络120可包括一个或多个网络进出点。例如,网络120可包含有线或无线网络进出点,如基站和/或网际网络交换点120-1、120-2、…,通过这些进出点,对象推荐系统100的一个或多个组件可连接到网络120上以交换数据和/或信息。
用户终端130可以包括各类具有信息接收和/或发送功能的设备,可包括智能手机130-1、平板电脑130-2、笔记本电脑130-3、智能手表130-4等中的一种或任意组合。上述示例仅用于说明设备范围的广泛性而非对其范围的限制。用户终端130上可以安装有多种应用程序,例如,电脑程序、移动应用程序(手机APP)等。多种应用程序可以用于实现多种网络服务平台提供的功能,用户终端130的使用者(也可以被称为“用户”)通过使用安装于其上的应用程序可以访问网络服务平台。例如,通过运行实现网络购物平台的应用程序,用户终端130的使用者可以通过用户终端访问网络购物平台,并在其上进行商品查看、收藏及购买。用户终端130在使用过程中可以产生与用户行为相关的数据,例如所查看、所收藏、所购买的商品的商品特征信息。这些信息可以通过网络120传输至处理设备110进行处理。
存储设备140可以储存数据和/或指令。数据可以包括与用户相关的对象的对象特征信息。存储设备140可以存储从用户终端130处获得的上述数据。指令可以包括供处理设备110执行或使用的,以执行本说明书中描述的示例性方法的指令。本说明书在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、挥发性读写存储器(例如,随机存取存储器RAM)、只读存储器(ROM)等或以上任意组合。在一些实施例中,存储设备140可在云平台上实现。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等或以上任意组合。
在一些实施例中,存储设备140可与网络120连接以与对象推荐系统100的一个或多个组件(例如,处理设备110、用户终端130等)通讯。对象推荐系统100的一个或多个组件可通过网络120访问存储于存储设备140中的数据或指令。在一些实施例中,存储设备140可直接与数据采集系统100中的一个或多个组件(例如,处理设备110、用户终端130等)连接或通讯。在一些实施例中,存储设备140可以是处理设备110的一部分。
图2是根据本说明书一些实施例所示的一种对象推荐方法的示例性流程图。在一些实施例中,流程200可以由对象推荐系统400,或图1所示的处理设备110实现。例如,流程200可以以程序或指令的形式存储在存储装置(如存储设备140)中,所述程序或指令在被执行时,可以实现流程200。如图2所示,流程200可以包括以下步骤。
步骤202,获取预设历史时间段内分别与多个历史时间节点对应的对象特征。该步骤可以由第一获取模块410执行。
在一些实施例中,所述对象特征与目标用户相关的至少一个对象相对应。可以知道的是,用户终端130的用户使用安装于用户终端上的各种应用程序以访问各种网络服务平台。例如,用户可以访问网络购物平台,在其上浏览、收藏、购买商品。又例如,用户可以访问网络支付平台,利用其完成转账、消费等支付操作。还例如,用户可以访问网络娱乐平台,在其上欣赏音视频节目、文学作品等。每一个用户在访问网络服务平台是都有自己的喜好。例如,偏好购买某一类产品。则确定用户的偏好并根据用户偏好对用户进行个性化推荐可以提升用户的体验度。因此,在本说明书中,任一访问/使用网络服务平台的用户可以被称为是目标用户,而目标用户在访问/使用网络服务平台时所查看、所关注或所操作的对象则可以被称为是与目标用户相关的对象。例如,一个使用网络购物平台的目标用户,其在网络购物平台上进行商品浏览、收藏、和/或购买,则目标用户所浏览、所收藏和/或所购买的商品可以被称为是与目标用户相关的多个对象。另外,用户在与对象产生关联时都会对应有一个时刻。例如,用户在某天上午10点在网络购物平台上查看了某件商品。则该件商品与该用户产生了关联,产生关联的时候是某天上午10点。
显然地,用户在使用网络服务平台时所产生的数据(包括用户的行为、行为时间、以及与这些行为相关的对象的详细信息)可以被收集并存储。例如,存储于网络服务平台自带的存储装置中,或外接的存储装置中例如存储设备140或云端。第一获取模块410可以与存储装置进行通信,以获取在预设历史时间段内(例如,一个月内、一个季度内、半年内、一年内等)分别与多个历史时间节点对应的多份对象特征。该多份对象特征可以是与目标对象相关的多个对象的对象特征。所述预设历史时间段并非固定,可以进行调整。本说明书不做具体限定。所述多个历史时间节点可以是属于所述预设历史时间段内的时刻或单位时间段(如1分钟,5分钟等)。需要注意的是,一个历史时间节点可能对应一个与目标用户相关的一个或多对象的对象特征。而一个与目标用户相关的一个对象的对象特征,可以与一个,或者是多个不同的历史时间节点对应。比如,用户在两个历史时间节点查看了同一件商品。
在一些实施例中,与目标用户相关的对象的对象特征可以是用以描述该对象的特征数据。所述对象特征可以是以向量、数组、矩阵的形式表示,其可以基于对象的对象特征信息来确定。所述对象特征信息可以是描述对象的自身属性的数据。为了说明的目的,作为示例,对于对象是网络购物平台上的商品来说,其对象特征信息可以是商品的标号(比如商品在网络购物平台上的ID)、商品的成本、商品的销售价格、商品的销售成本(比如优惠、折扣、红包抵价等)、商品的类别等。作为另一示例,对于对象是网络娱乐平台上的视频来说,其对象特征信息可以是视频的标号(比如视频在网络娱乐平台上的ID)、视频时长、视频类别、视频作者等。在一些实施例中,所述对象特征信息可以是以文字的形式表示,也可以是以数字化的形式表示,比如文字的编码结果。所使用的编码方式可以是通用的,在此不再赘述。作为示例,对应了预设历史时间段内的三个历史时间节点的两个对象的对象特征信息(编码后)可以如下表示:
其中,中的每一行,表示一个对象的对象特征信息,每一行中的每一个元素对应该商品的历史时间节点信息。
在一些实施例中,在获取预设历史时间内分别与目标用户相关的多个对象的对象特征信息(该多个对象与多个历史时间节点相对应)后,第一获取模块410可以利用词嵌入算法处理所述多个对象的对象特征信息得到所述多个对象的词嵌入向量形式的对象特征。所述多个对象的词嵌入向量形式的对象特征组成了与多个历史时间节点对应的多份对象特征。该词嵌入向量形式可以是向量、矩阵、或数组的形式呈现。所利用的词嵌入算法可以是Word2Vec、Glove、或其他通用的词嵌入算法。示例性的,经过词嵌入算法处理后得到的多个对象的多份对象特征可以如下表示:
其中,经过词嵌入算法处理后的结果,用以表示与预设历史时间段内的三个历史时间节点对应的两个对象的两份对象特征。中,前三行表示第一个对象的对象特征,后三行表示第二个对象的对象特征。三行中的“三”表示对应于三个历史时间节点。例如,中的第一行,表示第一个对象在第一个历史时间节点时的向量表示(经过词嵌入算法处理后),第二行表示第一个对象在第二个历史时间节点时的向量表示,第三行表示第一个对象在第三个历史时间节点时的向量表示。同样的,第四行表示第二个对象在第一个历史时间节点时的向量表示,第五行表示第二个对象在第二个历史时间节点时的向量表示,第六行表示第二个对象在第三个历史时间节点时的向量表示。在其中,三个历史时间节点可以是按时间先后顺序排列的。
步骤204,将多个对象特征按照时间区间进行划分,得到多个时段对象特征。每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征。该步骤可以由划分模块420执行。
在一些实施例中,所述时段对象特征可以是包括了处于一段历史时间内的历史时间节点对应的对象特征所组成的数据。划分模块430可以将所述预设历史时间段划分为多个时间区间,并将处于每一个时间区间内的历史时间节点对应的对象特征作为对应于时间区时段对象特征。时间区间的长度可以是预设的,例如,15分钟、30分钟、1小时等。划分模块430可以将预设历史时间段按时间区间的长度进行划分,得到多个时间区间。继续参考之前的示例,若中的三个历史时间节点在划分后分属于三个时间区间,则对应的三个时段对象特征可以分别是:
、以及分别表示三个时段对象特征,是由属于各自对应的时间区间内的历史时间节点对应的对象特征组成。对比,可知,每一个时段对象特征包括至少一个历史时间节点对应对象特征。这可以理解为对应于时间区间的时段对象特征,包含了在该时间区间内,与目标用户发生关联的且按照历史时间节点先后顺序排列的一个或多个对象(例如与用户的行为比如查看收藏购买的商品)的对象特征。
步骤206,利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示。该步骤可以由第一处理模块430执行。
在一些实施例中,循环神经网络,例如SRN(Simple RNN)、BiRNN(BidirectionalRNN)、ESN(Echo State Network)、GRU(Gated Recurrent Unit)、LSTM (Long Short TermMemory)、CW-RNN(Clockwork RNN)等,可以被第一处理模块430用于处理每一个时段对象特征,以得到用于表征时段对象特征对应的时间区间内在历史时间节点时的对象之间的关联关系的第一向量表示。在一些实施例中,循环神经网络可以是长短期记忆网络LSTM (LongShort Term Memory)。
作为示例,以第一处理模块430利用LSTM处理一个时段对象特征为例进行说明。假定该时段对象特征包含了多个对象在三个历史时间节点时的对象特征,历史时间节点以三个历史时间节点的时间顺序排列从前到后分别以A、B、C表示。第一处理模块430可以将该时段对象特征输入LSTM网络进行处理。并将LSTM在时刻C对象特征输入后对应的输出的向量作为该时段对象特征对应的第一向量。由此类推,第一处理模块430可以通过LSTM处理每一个时段对象特征,得到与每个时段对象特征对应的,且能表示每个时段对象特征中包含的多个对象特征的关联关系的第一向量。
可以理解,将长期的用户行为序列基于时间区间划分得到多个时段对象特征分别进行处理,使得后一时段对象特征对应的第一向量表示不依赖于前一时段对象特征,可以在模型中设置两个或以上循环网络对多个时段对象特征并行处理,提高处理效率。所述两个或以上循环神经网络可以共享参数,以达到模型轻量化的效果。
步骤208,利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示。该步骤可以由第二处理模块440执行。
在一些实施例中,所述第二向量表示可以用于表征时段对象特征内具有时间间隔的一个或多个对象特征之间的相关性,弱化不相关对象特征之间的关联信息,可以理解,用户的行为与对象相关,对象特征及其相关性可以反映用户的行为信息。第二处理模块440可以将每一个第一向量表示输入至膨胀卷积神经网络,以得到其输出与每个第一向量表示对应的向量表示。该向量表示可以表示在其对应的第一向量表示对应的时间区间中用户的行为爱好,可以理解为短期的用户行为爱好。在确定了每个第一向量表示对应的第二向量表示后,第二处理模块440可以将多个第二向量表示用于表示长期(或超长行为序列)的用户行为特征。
在一些实施例中,膨胀卷积神经网络可以包括两个或两个以上的卷积通道,每个卷积通道具有各自的卷积核,各卷积通道的卷积核的个数或卷积核的大小或卷积核的视野不同。例如,假定膨胀卷积神经网络包含三个卷积通道,则三个卷积通道的卷积核大小可以分别设置为1、3、以及6,对应的卷积核个数可以分别设置为4、4、以及4,膨胀卷积的视野可以分别设置为2、4、以及8。卷积通道的参数可以根据实际需要进行设定,本说明书不做具体限定。对于任意一个第一向量表示,膨胀卷积神经网络的每个卷积通道都可以对其进行处理得到一个卷积结果。即,每一个卷积通道可以同时处理所有的第一向量表示以获取处理结果。在一些实施例中,对于每一个第一向量表示,第二处理模块440可以将该第一向量表示同时输入两个或以上的卷积通道,得到两个或以上的卷积结果。再将两个或以上的卷积结果进行拼接,得到第二向量表示。卷积通道的参数的不同(包括卷积核的个数、卷积核的大小和卷积核的视野中的至少一个)不同会导致膨胀卷积神经网络提取第一向量表示中的特征的不同。对于多个不同的卷积通道,可以基于一个第一向量表示对应有多个输出结果,将这多个输出结果进行拼接,可以获得所述第二向量表示。
膨胀卷积神经网络的特性决定了其可以对输入数据进行跳跃式处理。而这正有利于处理在时间顺序上的与用户行为相关的对象的特征。不难理解,用户在平台内的行为序列之间在更长的时间周期内的关联性并不会很强,反而是在一定时间区间内不同时间间隔的行为序列之间的关联性更有意义。假定一个时间区间内,用户在网络购物平台上选择商品进行购买,一开始该用户是随意地进行商品浏览,随后该用户选择了自己偏好的商品类别进行浏览,再然后该用户又进行了其他类别商品的搜索,最后该用户还是返回了自己偏好的商品类别中进行了选择以及购买。利用膨胀卷积神经网络对在时间区间内在时间顺序上与用户行为相关的商品的商品特征(例如,本说明书中的第一向量表示)进行处理时可以达到间隔式处理,过滤掉无关的信息(例如,用户随意查看的商品),对用户的行为相关的特征(对象特征)进行更精确的提取。同时,多通道的并行处理,可以保证用户的行为相关的特征(对象特征)的更加全局性的提取。可以理解,通过不同的卷积通道处理同一个第一向量表示,可以获取该时段对象特征内不同时间间隔的对象特征之间的相关性。同时,膨胀卷积神经网络对于输入(例如,多个第一向量表示)的处理时,对于对应的时间区间是相邻的两个第一向量表示的处理时没有相互依赖(时间区间靠后的第一向量表示的处理不需要依赖时间区间靠前的第一向量表示的处理结果)。可以类似循环神经网络的部署方式,在模型中部署多套卷积神经网络(每套卷积神经网络可以具有多个卷积通道),这样可以达到多个第一向量表示的高效、并行处理,减少了预测消耗时间。其中,多套卷积神经网络之间可以共享参数。
步骤210,获取待推荐对象的对象特征,以及目标用户的用户特征。该步骤可由第二获取模块450执行。
显然地,用户在使用网络服务平台时,平台会优先显示某些信息(例如,对象)给用户。例如,安装在终端130的,用以实现网路购物平台的应用程序在被用户打开时,可以在其主界面显示多个商品。这些商品在一定程度上符合用户的喜好,可以被称为面向用户的推荐商品。可以理解,用户偏好的商品可以有许多个(例如,不同品牌的不同型号),而在主界面显示的商品的个数是有限制的。因此需要对以上的许多个商品进行筛选后确定最终在主界面显示的商品。以以上的说明为例,该许多个商品中的每一个都可以被认为是待推荐对象,其可认为是符合初步推荐要求的对象,例如,用户偏好的一大类对象中的某一个或某些个。
在一些实施例中,所述待推荐对象的对象特征的内容可以和与目标用户相关的多个对象的对象特征相同或类似,详细描述请参照步骤202中的相关部分。
在一些实施例中,所述目标用户的用户特征可以是用以指示目标用户的自身属性的特征信息,可以包括姓名、性别、年龄、职业、收入、平台账号(例如用于登录网络服务平台)、平台账号注册时间等。目标用户在网络服务平台上进行注册时可以输入这些信息,以用于身份验证等操作。随后被存储至某一存储装置,例如网络服务平台自带的存储装置,或外接存储装置例如存储设备140或云端。第二获取模块450可以与该存储装置进行通信,以获取目标用户的用户特征。
类似的,目标用户的用户特征可以是以文字的形式表示,也可以是利用数学化的表示形式比如向量、矩阵或数据。在一些实施例中,第二获取模块450可以同样利用词嵌入算法处理得到目标用户的词嵌入向量形式的用户特征。关于词嵌入算法处理获得词嵌入向量形式的对象特征的详细描述请参照步骤202中的相关描述。
步骤212,对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示。该步骤可由计算模块460执行。
在一些实施例中,所述注意力机制的计算,可以确定待推荐对象与各个时段对象特征(所述第二向量表示对应的时间区间)的相关性。待推荐对象的对象特征分别与多个第二向量的相关度可以正相关于对应的注意力权重。
在一些实施例中,计算模块460可以将待推荐对象的对象特征分别与多个第二向量表示计算内积,获取多个注意力权重。随后,计算模块460可以基于多个注意力权重,对多个第二向量表示进行加权求和,得到第三向量。
在又一实施例中,计算模块460也可以利用模型权重矩阵对待推荐对象的对象特征与多个第二向量表示进行运算,得到注意力权重。示例性的注意力机制的计算请参阅以下公式:
其中,表示多个第二向量表示的集合,表示待推荐对象的对象特征,表示将第二向量表示与待推荐对象的对象特征进行拼接,表示待训练的权重矩阵,表示计算参数,表示进行注意力机制的计算得到的注意力评分向量,其包括多个注意力评分,用于表示待推荐对象与用户行为(例如,行为相关联的对)之间的相关性,评分越高,则关联性越高;反之,则关联性越低。为了符合权重值的特性(例如,权重值为0到1之间的数值),计算模块460可以对所得到的多个做归一化,得到注意力权重向量,其包括多个注意力权重。完毕后,计算模块460可以将注意力权重与第二向量表示的加权求和结果作为输出,即第三向量表示。表示各第二向量表示(或时段对象特征)对应的时段。
步骤214,基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值。该步骤可由第一确定模块470执行。
在一些实施例中,所述待推荐对象的推荐分值可以用于判断该待推荐对象是否与用户的行为爱好(例如,长期行为爱好)贴近。评分越高则说明该对象更贴合用户长期行为爱好,更适合推荐给用户。
在一些实施例中,第一确定模块470可以利用多层感知器MLP处理第三向量表示与用户特征,得到待推荐对象的推荐分值。作为示例,第一确定模块470可以将所述第三向量表示与所述用户特征进行拼接后,将拼接后得到的结果输入至多层感知机MLP中以得到对应的推荐分值。
步骤216,基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。该步骤可由第二确定模块480执行。
在一些实施例中,第二确定模块480可以基于所述推荐分值,根据预设规则确定是否向目标用户推荐所述待推荐对象。可以理解的是,当向目标用户进行对象推荐时,推荐对象可以是多个。例如,从N个对象中选取预定个数的对象向用户推荐。一种示例性的确定方式是,第二确定模块480可以确定所述N个待推荐对象的推荐分值,将N个待推荐对象按照各自的推荐分值降序排列,取前M个待推荐对象,第二确定模块480向目标用户推荐所述M个待推荐对象。预先确定的规则可以根据实际情况以及实际需要进行设定,本说明书不做限定。
应当注意的是,上述有关流程200的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程200进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,在各步骤之间添加其他步骤,比如,预处理步骤和存储步骤等。
图3是根据本说明书一些实施例所示的一种对象推荐模型的模块示意图。在一些实施例中,对象推荐模型300可以对预设历史时间段内的分别与多个历史时间节点对应的多份对象特征、待推荐对象的对象特征、以及目标用户的用户特征进行处理,以确定对应于待推荐对象的推荐分值。所述推荐分值可以用于表示待推荐对象与目标用户的偏好的适配度。推荐分值越高,待推荐对象越适配目标用户的偏好。如图3所示,对象推荐模型300可以包括输入处理层310、循环神经网络320、膨胀卷积神经网络330、注意力机制运算层340、以及输出处理层350。
输入处理层可以用于获取预设历史时间段内分别与多个历史时间节点对应的对象特征,并将对象特征按照时间区间进行划分,得到多个时段对象特征。每个时段对象特征中包括至少一个按时间先后顺序排列的对象特征。所述输入处理层还用于获取待推荐对象的对象特征,以及目标用户的用户特征。
在一些实施例中,所述分别与多个历史时间节点对应的多份对象特征可以与目标用户相关的至少一个个对象相对应。所述目标用户可以是使用网络服务平台的用户,所述与目标用户相关的多个对象可以是目标用户在使用网络服务平台时用户的行为对象,或称为行为接收者。例如,目标用户在网络购物平台上所浏览、所收藏和/或所购买的商品可以被称为是与目标用户相关的多个对象。所述多个历史时间节点可以是在预设历史时间段内目标用户与其相关的对象产生关联时的行为时间,比如以上示例中目标用户浏览、收藏和/或购买商品的时间。每一个历史时间节点可以对应一个对象,一个对象可以对应一个或以上的历史时间节点。
在一些实施例中,与目标用户相关的对象的对象特征可以是用以描述该对象的特征数据。所述对象特征可以是以向量、数组、矩阵的形式表示,输入处理层可以通过输入的对象的对象特征信息来确定。所述对象特征信息可以是描述对象的自身属性的数据。比如,若对象是网络购物平台上的商品,其对象特征信息可以是商品的标号(比如商品在网络购物平台上的ID)、商品的成本、商品的销售价格、商品的销售成本(比如优惠、折扣、红包抵价等)、商品的类别等。输入处理层可以利用所包括的词嵌入层处理所述多个对象的对象特征信息得到所述多个对象的词嵌入向量形式的对象特征。所述词嵌入层所使用的词嵌入算法可以包括Word2Vec、Glove、或其他通用的词嵌入算法。
在获取对个对象的对象特征后,输入处理层可以将多个对象特征按照时间区间进行划分,以得到多个时段对象特征。所述时段对象特征可以是包括了处于一段历史时间内的历史时间节点对应的对象特征所组成的数据。时间区间的长度可以是预设的,例如,15分钟、30分钟、1小时等。输入处理层可以将属于各自对应的时间区间内的历史时间节点对应的对象特征组合,得到对应于每个时间区间的时段对象特征。
在一些实施例中,输入处理层还可以包括获取待推荐对象的对象特征,以及目标用户的用户特征。所述待推荐对象可以是在一定程度上符合用户的喜好的对象,其对象信息可以基于待推荐对象的对象特征信息确定。所述目标用户的用户特征可以基于目标用户的用户特征信息确定,例如姓名、性别、年龄、职业、收入、平台账号(例如用于登录网络服务平台)、平台账号注册时间等特征信息。所述待推荐对象的对象特征,与目标用户的用户特征的确定过程可以与确定与目标用户相关的多个对象的对象特征类似。输入处理层可以利用其包括的词嵌入层处理这些特征信息以得到待推荐对象的对象特征,以及目标用户的用户特征的。
循环神经网络可以用于处理每一个时段对象特征,得到对应的第一向量表示。在一些实施例中,循环神经网络可以包括SRN(Simple RNN)、BiRNN(Bidirectional RNN)、ESN(Echo State Network)、GRU(Gated Recurrent Unit)、LSTM (Long Short Term Memory)、CW-RNN(Clockwork RNN)等,其可以处理每一个时段对象特征,以得到用于表征时段对象特征对应的时间区间内在历史时间节点时的对象之间的关联关系的第一向量表示。在一些实施例中,循环神经网络可以为长短期记忆网络LSTM (Long Short Term Memory)。在处理每个时段对象特征时,循环神经网络可以将最后的历史时间节点对应的输出作为第一向量表示。
膨胀卷积神经网络可以用于处理每一个第一向量表示,得到对应的第二向量表示。在一些实施例中,膨胀卷积神经网络可以包括两个或两个以上的卷积通道,每个卷积通道具有各自的卷积核,各卷积通道的卷积核的个数或卷积核的大小或卷积核的视野不同。对于任一一个第一向量表示,膨胀卷积神经网络的每个卷积通道都可以对其进行处理得到一个卷积结果。即,每一个卷积通道可以同时处理所有的第一向量表示以获取处理结果。膨胀卷积神经网络可以将该第一向量表示同时输入两个或以上的卷积通道,得到两个或以上的卷积结果。再将两个或以上的卷积结果进行拼接,得到第二向量表示。
注意力机制运算层可以用于对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示。在一些实施例中,注意力机制运算层所进行的注意力机制的计算,可以确定待推荐对象与各个时段对象特征(所述第二向量表示对应的时间区间)的相关性。待推荐对象的对象特征分别与多个第二向量的相关度可以正相关于对应的注意力权重。在一些实施例中,注意力机制运算层可以将待推荐对象的对象特征分别与多个第二向量表示计算内积,获取多个注意力权重。随后,注意力机制运算层可以基于多个注意力权重,对多个第二向量表示进行加权求和,得到第三向量。在一些实施例中,注意力机制运算层可以将所述待推荐对象的对象特征分别与多个所述第二向量表示拼接后进行计算,获取多个注意力权重。并基于所述多个注意力权重,对多个第二向量表示进行加权求和,得到所述第三向量表示。
输出处理层可以用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值。在一些实施例中,所述待推荐对象的推荐分值可以用于判断该待推荐对象是否与用户的行为爱好(例如,长期行为爱好)贴近。评分越高则说明该对象更贴合用户长期行为爱好,更适合推荐给用户。输出处理层可以为多层感知器MLP,多层感知器MLP可以基于每个待处理对象的权重以及用户特征,获得每个待处理对象基于用户特征获得的评分。评分越高,越说明待处理对象更符合长期用户喜好。输出处理层可以将所述第三向量表示与所述用户特征进行拼接后,将拼接后得到的结果输入至多层感知机MLP中以得到对应的推荐分值。
关于对象推荐模型的其他描述可以参考图2。
本说明书中所披露的对象推荐模型,可以是经过训练得到的。在训练初始,对象推荐模型的各个部分(包括输入处理层、循环神经网络、膨胀卷积神经网络、注意力机制运算层、以及输出处理)的参数都是初始化的,例如,可以是随机赋予的。所需的训练数据,可以是样本用户的样本用户特征信息、多个历史待推荐对象的对象特征信息,以及在一个历史时间段内与多个历史时间节点对应的多份历史对象特征信息,该多份历史对象特征信息与样本用户相关的多个历史对象相对应。每个历史待推荐对象都具有一个标签,该标签可以基于历史待推荐对象被推荐给了样本用户并是否由样本用户接受来确定。例如,若该历史待推荐对象最后作为推荐对象被样本用户点击或购买,则该历史待推荐对象的标签可标记为“1”。否则该历史待推荐对象的标签可标记为“0”。将训练数据输入至对象推荐模型后,对象推荐模型的各个部件可以按图3中的执行顺序(例如,图3中的有向箭头)对输入的数据进行处理,最终得到对应于历史待推荐对象的预测推荐分值。根据模型输出的预测推荐分值与历史待推荐对象的标签,可以构建对象推荐模型的损失函数。为最小化损失函数,可以基于比如反向传递等调整对象推荐模型中各个部分的参数,并继续训练,直到满足预设要求,例如达到预设训练次数,或损失函数的值小于预定阈值时,可以停止训练。对象推荐模型的训练完毕。
图4是根据本说明书一些实施例所示的对象推荐系统的模块图。如图4所示,该对象推荐系统可以包括第一获取模块410、划分模块420、第一处理模块430、第二处理模块440、第二获取模块450、计算模块460、第一确定模块470和第二确定模块480。
第一获取模块410可以用于获取预设历史时间段内分别与多个历史时间节点对应的对象特征。所述对象特征与目标用户相关的至少一个对象相对应。所述多个历史时间节点可以是属于所述预设历史时间段内的时刻或单位时间段(如1分钟,5分钟等)。在一些实施例中,与目标用户相关的对象的对象特征可以是用以描述该对象的特征数据。所述对象特征可以是以向量、数组、矩阵的形式表示。
划分模块420可以用于将多个对象特征按照时间区间进行划分,得到多个时段对象特征。所述时段对象特征可以是包括了处于一段历史时间内的历史时间节点对应的对象特征所组成的数据。划分模块430可以将所述预设历史时间段划分为多个时间区间,并将处于每一个时间区间内的历史时间节点对应的对象特征作为对应于时间区时段对象特征。每个时段对象特征中包括至少一个按时间先后顺序排列的对象特征。
第一处理模块430可以用于利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示。循环神经网络,例如SRN(Simple RNN)、BiRNN(Bidirectional RNN)、ESN(Echo State Network)、GRU(Gated Recurrent Unit)、LSTM (Long Short TermMemory)、CW-RNN(Clockwork RNN)等,可以被第一处理模块430用于处理每一个时段对象特征,以得到用于表征时段对象特征对应的时间区间内在历史时间节点时的对象之间的关联关系的第一向量表示。在一些实施例中,循环神经网络可以是长短期记忆网络LSTM (LongShort Term Memory)。
第二处理模块440可以用于利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示。所述第二向量表示可以用于表征时段对象特征内具有时间间隔的一个或多个对象特征之间的相关性,弱化不相关对象特征之间的关联信息,可以理解,用户的行为与对象相关,对象特征及其相关性可以反映用户的行为信息。第二处理模块440可以将每一个第一向量表示输入至膨胀卷积神经网络,以得到其输出与每个第一向量表示对应的向量表示。
第二获取模块450可以用于获取待推荐对象的对象特征,以及目标用户的用户特征。所述待推荐对象的对象特征的内容可以和与目标用户相关的多个对象的对象特征相同或类似,所述目标用户的用户特征可以是用以指示目标用户的自身属性的特征信息,可以包括姓名、性别、年龄、职业、收入、平台账号(例如用于登录网络服务平台)、平台账号注册时间等。类似的,目标用户的用户特征可以是以文字的形式表示,也可以是利用数学化的表示形式比如向量、矩阵或数据。
计算模块460可以用于对所述待推荐的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示。所述注意力机制的计算,可以确定待推荐对象与各个时段对象特征(所述第二向量表示对应的时间区间)的相关性。待推荐对象的对象特征分别与多个第二向量的相关度可以正相关于对应的注意力权重。在一些实施例中,计算模块460可以将待推荐对象的对象特征分别与多个第二向量表示计算内积,获取多个注意力权重。随后,计算模块460可以基于多个注意力权重,对多个第二向量表示进行加权求和,得到第三向量。在又一实施例中,计算模块460也可以利用模型权重矩阵对待推荐对象的对象特征与多个第二向量表示进行运算,得到注意力权重。再基于多个注意力权重,对多个第二向量表示进行加权求和,得到第三向量。
第一确定模块470可以用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值。所述待推荐对象的推荐分值可以用于判断该待推荐对象是否与用户的行为爱好(例如,长期行为爱好)贴近。评分越高则说明该对象更贴合用户长期行为爱好,更适合推荐给用户。第一确定模块470可以利用多层感知器MLP处理第三向量表示与用户特征,得到待推荐对象的推荐分值。作为示例,第一确定模块470可以将所述第三向量表示与所述用户特征进行拼接后,将拼接后得到的结果输入至多层感知机MLP中以得到对应的推荐分值。
第二确定模块480可以用于基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。第二确定模块480可以基于所述推荐分值,根据预设规则确定是否向目标用户推荐所述待推荐对象。例如,第二确定模块480可以确定所述N个待推荐对象的推荐分值,将N个待推荐对象按照各自的推荐分值降序排列,取前M个待推荐对象,第二确定模块480向目标用户推荐所述M个待推荐对象。
应当理解,图4所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于候选项显示、确定系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
图5是根据本说明书一些实施例所示的一种对象序列特征的处理方法的示例性流程图。在一些实施例中,流程500图1所示的处理设备110实现。例如,流程500可以以程序或指令的形式存储在存储装置(如存储设备140)中,所述程序或指令在被执行时,可以实现流程500。如图5所示,流程500可以包括以下步骤。
步骤502,获取预设历史时间段内分别与多个历史时间节点对应的多份对象特征。所述多份对象特征与目标用户相关的多个对象相对应。
步骤504,将多个对象特征按照时间区间进行划分,得到多个时段对象特征。每个时段对象特征中可包括至少一个按历史时间节点的先后顺序排列的对象特征。
步骤506,利用循环神经网络模型处理每一个时段对象特征,得到对应的第一向量表示。
步骤508,利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示。
步骤502至步骤508与流程200中的相关步骤类似,详细描述可以参考图2。
步骤510,将多个所述第二向量表示作为与该用户相关的对象序列特征。
在一些实施例中,可以将多个所述第二向量表示作为与该用户相关的对象序列特征。在一些实施例中,还可以利用预设算法对应多个第二向量进行计算后得到与该用户相关的对象序列特征。所述预设运算可以是按第二向量表示对应的时间区间的先后顺序进行拼接。例如,首尾相接。所得到的拼接结果即为所述对象序列特征,可以用以反映用户在某一时间段内的行为特点。
应当注意的是,上述有关流程500的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程500进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,在各步骤之间添加其他步骤,比如,预处理步骤和存储步骤等。
本说明书实施例可能带来的有益效果包括但不限于:(1)通过LSMT网络以及膨胀卷积网络对划分的每个时段特征进行特征提取获取到用户的短期行为特征以及长期行为特征,可以增加短期、长期行为特征提取的速度,大大压缩模型训练和线上预测的时间消耗。(2)通过采用输入处理层、循环神经网络层、膨胀卷积神经网络层、注意力机制运算层和输出处理层组成对用户行为爱好预测的对象推荐模型,降低了模型整体的复杂度,节约模型构建资源。(3)对于长序列的用户行为特征,通过注意力机制获取每个待处理对象的权重,可以使得模型更快的学习更为重要的用户行为特征,提升最终模型效果。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。

Claims (20)

1.一种对象推荐方法,其中,所述方法包括:
获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;
将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;
利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示;
利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;
获取待推荐对象的对象特征,以及目标用户的用户特征;
对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;
基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值;
基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。
2.根据权利要求1所述的方法,其中,所述获取预设历史时间段内分别与多个历史时间节点对应的对象特征,包括:
获取预设历史时间段内与目标用户相关的多个对象的对象特征信息;
利用词嵌入算法处理所述多个对象的对象特征信息得到所述多个对象的词嵌入向量形式的对象特征。
3.根据权利要求1所述的方法,其中,所述利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示,包括,对每一个时段对象特征:
将该时段对象特征中的至少一个对象特征依次输入所述循环神经网络,获取该时段对象特征中对应于最后历史时间节点的对象特征的输出;
将所述输出,确定为所述第一向量表示。
4.根据权利要求3所述的方法,其中,所述循环神经网络包括长短期记忆网络LSTM。
5.根据权利要求1所述的方法,其中,所述膨胀卷积神经网络包括两个或以上的卷积通道,每一卷积通道具有各自的卷积核,所述各卷积通道的卷积核的个数或卷积核的大小或者卷积视野不同;
所述利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示,包括,对于每一个第一向量表示:
将该第一向量同时输入所述两个或以上的卷积通道,得到两个或以上的卷积结果;
将所述两个或以上的卷积结果拼接,得到所述第二向量表示。
6.根据权利要求1所示的方法,其中,所述对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示,包括:将所述待推荐对象的对象特征分别与多个所述第二向量表示进行计算,获取多个注意力权重;
基于所述多个注意力权重,对多个第二向量表示进行加权求和,得到所述第三向量表示。
7.根据权利要求1所述的方法,其中,所述基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值,包括:
利用多层感知器MLP处理所述第三向量表示与所述用户特征;
得到所述推荐分值。
8.一种对象推荐系统,其中,所述系统包括:
第一获取模块,用于获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;
划分模块,用于将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的时间先后顺序排列的对象特征;
第一处理模块,用于利用循环神经网络处理每一个时段对象特征,得到对应的第一向量表示;
第二处理模块,用于利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;
第二获取模块,用于获取待推荐对象的对象特征,以及目标用户的用户特征;
计算模块,用于对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;
第一确定模块,用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值;
第二确定模块,用于基于所述推荐分值确定是否向目标用户推荐所述待推荐对象。
9.根据权利要求8所述的系统,其中,所述第一获取模块历史时间节点还用于:
获取预设历史时间段内与目标用户相关的多个对象的对象特征信息;
利用词嵌入算法处理所述多个对象的对象特征信息得到所述多个对象的词嵌入向量形式的对象特征。
10.根据权利要求8所述的系统,其中,所述第一处理模块还用于,对每一个时段对象特征:将该时段对象特征中的至少一个对象特征依次输入所述循环神经网络,获取对应于该时段对象特征中对应于最后的历史时间节点的输出;
将所述输出,确定为所述第一向量表示。
11.根据权利要求10所述的系统,其中,所述循环神经网络包括长短期记忆网络LSTM。
12.根据权利要求8所述的系统,其中,所述膨胀卷积神经网络包括两个或以上的卷积通道,每一卷积通道具有各自的卷积核,所述各卷积通道的卷积核的个数或卷积核的大小或者卷积视野不同;
所述第二处理模块还用于,对于每一个第一向量表示:
将该第一向量同时输入所述两个或以上的卷积通道,得到两个或以上的卷积结果;
将所述两个或以上的卷积结果拼接,得到所述第二向量表示。
13.根据权利要求8所述的系统,其中,所述计算模块还用于:
将所述待推荐对象的对象特征分别与多个所述第二向量表示进行计算,获取多个注意力权重;基于所述多个注意力权重,对多个第二向量表示进行加权求和,得到所述第三向量表示。
14.根据权利要求8所述的系统,其中,所述第一确定模块还用于:
利用多层感知器MLP处理所述第三向量表示与所述用户特征;
得到所述推荐分值。
15.一种对象推荐装置,其中,所述装置包括处理器,所述处理器用于执行权利要求1-7所述的任意一项所述的方法。
16.一种对象推荐模型系统,其中,所述模型系统包括:
输入处理层,用于接收预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与目标用户相关的至少一个对象相对应;并将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;所述输入处理层还用于接收待推荐对象的对象特征,以及目标用户的用户特征;
循环神经网络,用于处理每一个时段对象特征,得到对应的第一向量表示;
膨胀卷积神经网络,用于处理每一个第一向量表示,得到对应的第二向量表示;
注意力机制运算层,用于对所述待推荐对象的对象特征与多个所述第二向量表示进行注意力机制的计算,获取第三向量表示;
输出处理层,用于基于所述第三向量表示,以及所述用户特征,确定对应于所述待推荐对象的推荐分值。
17.根据权利要求16所述的模型系统,其中,所述输入处理层包括词嵌入层。
18.根据权利要求16所述的模型系统,其中,所述循环神经网络包括长短期记忆网络LSTM。
19.根据权利要求16所述的模型系统,其中,所述输出处理层包括多层感知器MLP。
20.一种对象序列特征的处理方法,其中,所述方法包括:
获取预设历史时间段内分别与多个历史时间节点对应的对象特征,所述对象特征与某用户相关的至少一个对象相对应;
将对象特征按照时间区间进行划分,得到多个时段对象特征;每个时段对象特征中包括至少一个按历史时间节点的先后顺序排列的对象特征;
利用循环神经网络模型处理每一个时段对象特征,得到对应的第一向量表示;
利用膨胀卷积神经网络处理每一个第一向量表示,得到对应的第二向量表示;
将多个所述第二向量表示作为与该用户相关的对象序列特征。
CN202010505356.6A 2020-06-05 2020-06-05 一种对象推荐方法、系统及装置 Active CN111538907B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010505356.6A CN111538907B (zh) 2020-06-05 2020-06-05 一种对象推荐方法、系统及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010505356.6A CN111538907B (zh) 2020-06-05 2020-06-05 一种对象推荐方法、系统及装置

Publications (2)

Publication Number Publication Date
CN111538907A CN111538907A (zh) 2020-08-14
CN111538907B true CN111538907B (zh) 2023-04-18

Family

ID=71968433

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010505356.6A Active CN111538907B (zh) 2020-06-05 2020-06-05 一种对象推荐方法、系统及装置

Country Status (1)

Country Link
CN (1) CN111538907B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257867A (zh) * 2020-10-27 2021-01-22 支付宝(杭州)信息技术有限公司 一种基于深度学习模型的推理方法、系统和装置
CN112330442A (zh) * 2020-11-17 2021-02-05 深圳市欢太科技有限公司 基于超长行为序列的建模方法及装置、终端、存储介质
CN112288554B (zh) * 2020-11-27 2023-09-29 腾讯科技(深圳)有限公司 商品推荐方法和装置、存储介质及电子装置
CN112785197B (zh) * 2021-02-04 2024-03-29 中国工商银行股份有限公司 信息推荐方法、装置、计算设备、介质和程序产品
CN112905883A (zh) * 2021-02-09 2021-06-04 联想(北京)有限公司 一种应用于推荐系统的信息处理方法及装置
CN113468434B (zh) * 2021-09-06 2021-12-24 北京搜狐新动力信息技术有限公司 资源推荐方法、装置、可读介质以及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109190046A (zh) * 2018-09-18 2019-01-11 北京点网聚科技有限公司 内容推荐方法、装置及内容推荐服务器
CN110097433A (zh) * 2019-05-14 2019-08-06 苏州大学 基于注意力机制的推荐方法、装置、设备及存储介质
CN110209926A (zh) * 2019-04-22 2019-09-06 北京三快在线科技有限公司 商家推荐方法、装置、电子设备及可读存储介质
CN110399565A (zh) * 2019-07-29 2019-11-01 北京理工大学 基于时空周期注意力机制的递归神经网络兴趣点推荐方法
CN110941764A (zh) * 2019-12-03 2020-03-31 腾讯科技(深圳)有限公司 对象推荐方法、装置、计算机设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8990241B2 (en) * 2010-12-23 2015-03-24 Yahoo! Inc. System and method for recommending queries related to trending topics based on a received query
US10540611B2 (en) * 2015-05-05 2020-01-21 Retailmenot, Inc. Scalable complex event processing with probabilistic machine learning models to predict subsequent geolocations
RU2757546C2 (ru) * 2017-07-25 2021-10-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для создания персонализированного пользовательского параметра интереса для идентификации персонализированного целевого элемента содержимого
US20190205761A1 (en) * 2017-12-28 2019-07-04 Adeptmind Inc. System and method for dynamic online search result generation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109190046A (zh) * 2018-09-18 2019-01-11 北京点网聚科技有限公司 内容推荐方法、装置及内容推荐服务器
CN110209926A (zh) * 2019-04-22 2019-09-06 北京三快在线科技有限公司 商家推荐方法、装置、电子设备及可读存储介质
CN110097433A (zh) * 2019-05-14 2019-08-06 苏州大学 基于注意力机制的推荐方法、装置、设备及存储介质
CN110399565A (zh) * 2019-07-29 2019-11-01 北京理工大学 基于时空周期注意力机制的递归神经网络兴趣点推荐方法
CN110941764A (zh) * 2019-12-03 2020-03-31 腾讯科技(深圳)有限公司 对象推荐方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
都奕冰 ; 孙静宇 ; .融合项目嵌入表征与注意力机制的推荐算法.计算机工程与设计.(第03期),全文. *

Also Published As

Publication number Publication date
CN111538907A (zh) 2020-08-14

Similar Documents

Publication Publication Date Title
CN111538907B (zh) 一种对象推荐方法、系统及装置
CN111784455B (zh) 一种物品推荐方法及推荐设备
US10938927B2 (en) Machine learning techniques for processing tag-based representations of sequential interaction events
US9183497B2 (en) Performance-efficient system for predicting user activities based on time-related features
US10719854B2 (en) Method and system for predicting future activities of user on social media platforms
CN110008397B (zh) 一种推荐模型训练方法及装置
CN112837106A (zh) 商品推荐方法、装置、计算机设备
CN107735766A (zh) 用于向计算设备的用户前摄性地提供推荐的系统和方法
US10909145B2 (en) Techniques for determining whether to associate new user information with an existing user
US9767417B1 (en) Category predictions for user behavior
CN110413867B (zh) 用于内容推荐的方法及系统
CN111104599B (zh) 用于输出信息的方法和装置
CN112380449B (zh) 信息推荐方法、模型训练方法及相关装置
CN110473042B (zh) 用于获取信息的方法及装置
CN113077276A (zh) 行为数据的处理方法和系统、存储介质及处理器
CN111783810A (zh) 用于确定用户的属性信息的方法和装置
CN111680213B (zh) 信息推荐方法、数据处理方法及装置
CN116049536A (zh) 一种推荐方法及相关装置
CN116204709A (zh) 一种数据处理方法及相关装置
KR20210019370A (ko) 상황인지 데이터의 사례학습기반 추론에 따른 광고추천 장치 및 방법
CN116308640A (zh) 一种推荐方法及相关装置
KR102402931B1 (ko) 온라인 상품 판매 플랫폼을 제공하는 서버 및 서버가 고객에게 상품을 추천하는 방법
WO2023050143A1 (zh) 一种推荐模型训练方法及装置
US11521094B2 (en) Rule engine system and method for human-machine interaction
CN113535311A (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