CN116245573A - 用于推荐的方法、装置、电子设备和介质 - Google Patents
用于推荐的方法、装置、电子设备和介质 Download PDFInfo
- Publication number
- CN116245573A CN116245573A CN202310108943.5A CN202310108943A CN116245573A CN 116245573 A CN116245573 A CN 116245573A CN 202310108943 A CN202310108943 A CN 202310108943A CN 116245573 A CN116245573 A CN 116245573A
- Authority
- CN
- China
- Prior art keywords
- user
- recommendation
- model
- confounding
- feedback
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0269—Targeted advertisements based on user profile or attribute
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/735—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/738—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Multimedia (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Game Theory and Decision Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开的实施例涉及用于推荐的方法、装置、电子设备和介质。该方法包括获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对多个对象的用户反馈。方法还包括基于用户交互历史和用户特征来确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈。方法还包括基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。本公开的实施例的方法能够利用用户特征中所包含的信息,使得推荐模型能够更好地从用户与对象的交互历史中识别出混杂因子。所识别的混杂因子能够帮助推荐模型更好地去除混杂因子偏差,从而更好地实现推荐。
Description
技术领域
本公开涉及机器学习领域,并且更具体地,涉及用于推荐的方法、装置、电子设备和介质。
背景技术
推荐系统是旨在根据许多不同因素向用户推荐事物的系统,也称为推荐模型。推荐模型可以预测用户最有可能喜欢的事物或最有可能感兴趣的事物。例如,一些电影信息平台正在使用推荐模型来帮助平台的用户从海量电影中快速识别该用户可能喜欢的电影,然后通过诸如改变电影的排序或展示位置等方式来将该电影推荐给用户,从而使用户能够观看或找到自己喜欢的电影。另外,一些短视频平台正在使用推荐模型来识别特定用户最有可能感兴趣的视频,然后将这些视频展示给这些用户,从而改进用户在该平台上的浏览体验。
为了能向用户推荐感兴趣的对象,推荐模型需要量化用户与对象的交互行为和用户对该对象的反馈之间的因果关系。然而,在现实生活中想要估计用户交互行为与用户反馈之间的因果关系是非常困难的,因为存在一些变化的因素,这些因素在影响用户对于对象的交互行为的同时,也在影响用户对该对象的反馈,这些因素被称为混杂因子(confounder)。
发明内容
根据本公开的实施例,提供了一种用于推荐的方法。该方法包括获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对多个对象的用户反馈;基于用户交互历史和用户特征,确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈;以及基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。
在本公开的第二方面中,提供一种用于推荐的装置。该装置包括:用户信息获取模块,被配置为获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对多个对象的用户反馈;混杂因子确定模块,被配置为基于用户交互历史和用户特征,确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈;以及推荐模型生成模块,被配置为基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。
在本公开的第三方面中,提供一种电子设备。该电子设备包括一个或多个处理器;以及存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现根据本公开的第一方面的方法。
在本公开的第四方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的第一方面的方法。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其它特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的实施例的用户交互与用户反馈同时受混杂因子影响的示意图;
图3示出了根据本公开的一些实施例的用于预测用户反馈的方法的流程图;
图4A至4B示出了根据本公开的一些实施例的具有代理变量的推荐模型的因果图;
图5示出了根据本公开的一些实施例的用于实现推荐的方法的框架的示意图;以及
图6示出了根据本公开的某些实施例的用于推荐的装置的框图;以及
图7示出了能够实现本公开的多个实施例的设备的框图。
在所有附图中,相同或相似参考数字表示相同或相似元素。
具体实施方式
可以理解的是,本技术方案所涉及的数据(包括但不限于数据本身、数据的获取或使用)应当遵循相应法律法规及相关规定的要求。
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包括,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象,除非明确说明。下文还可能包括其它明确的和隐含的定义。
如本文中使用的,“对象”可以是指推荐模型/系统可以推荐给用户的任何事物,例如、短视频平台中的视频、音乐播放平台中的音乐或内容分发平台中的文章、电子商务平台中的商品等。
在本文的上下文中,针对对象的用户交互例如可以是点击电影、查看演员介绍页面、将电影加入“想看”列表等。针对对象的用户交互例如还可以是观看短视频、查看短视频的创作者等。用户反馈例如可以是对电影进行打分评价等。用户反馈例如还可以是对短视频点赞、将短视频标记为不感兴趣等。
本申请的发明人经研究发现,如何准确的识别混杂因子,并在推荐模型做出推荐时将混杂因子带来的影响去除,对于推荐模型做出高质量的推荐是非常重要的。在推荐模型中,用户是否选择与对象进行交互可能会受到混杂因子的影响,同时用户对所交互的对象的反馈也可能会受到混杂因子的影响。例如,在短视频平台中,视频的流行度是一种混杂因子。用户更有可能观看到由推荐模型推荐的正在流行的视频,因此视频的流行度影响了用户对该视频的交互行为。另一方面,正在流行的视频由于其与当下的时事或热点相关可能更容易被用户给予较高的评价,因此视频的流行度同时影响了用户对该视频的反馈。然而,视频的流行度可以随时间变化,正在流行的视频可能会在一个月后变得不再流行。如果推荐模型在预测用户对视频的反馈时没有将视频的流行度对用户交互和用户反馈的影响去除,则可能导致向用户推荐其不感兴趣的视频。诸如视频流行度的混杂因子给推荐模型带来了混杂因子偏差,即,推荐模型无法根据用户对于对象的真实喜好程度来推荐对象。
在常规的因果推荐理论中,当推荐模型中所有的混杂因子均可以被完全观察到时(例如,在推荐模型中已显示地告知视频在某一时刻的流行度),可以采用后门调整等方法来去除混杂因子的影响。然而,在现实中大部分情况下,混杂因子是无法被完全观察到,使得诸如后门调整的去除混杂因子偏差的方法无法直接被使用。现有的一些方案尝试在用户的交互历史中通过因子模型来学习一个混杂因子变量,并且把该混杂因子变量当作真实的混杂因子来应用后门调整。然而,如本公开在下文将详细描述地,从理论推导层面上可以证明直接从用户的交互历史中学习的混杂因子无法实现帮助识别用户对于对象的真实喜好。
根据本公开的各种实施例,提供了一种预测用户反馈的方案。该方案包括获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对多个对象的用户反馈;基于用户交互历史和用户特征,确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈;以及基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。因此,能够利用用户的特征作为混杂因子的代理变量使得推荐模型从用户与对象的交互历史中获得的混杂因子能够更好地被识别。所获得的混杂因子分布能够帮助推荐模型更好地去除混杂因子偏差,从而更好地实现推荐。
应当理解,根据本公开实施例的方案不仅适用于推荐模型,还适用于其他存在不可观察的混杂因子,并且其中有多个交互历史受到该混杂因子影响的场景。以下将参照附图来具体描述本公开的实施例。
图1示出了本公开的多个实施例能够在其中实现的示例环境100的示意图。在环境100中,系统102包括对象104-1、104-2、…、104-N(统称为“对象104”)和推荐模型105。推荐模型105根据特定的策略推荐对象104,并通过系统102将对象104展示110到用户的电子设备106-1、106-2、…、106-N(统称为或者单独称为“电子设备106”)。用户108-1、108-2、…、108-N(统称为或者单独称为“用户108”)通过电子设备106与对象104进行交互112。在用户108与对象104进行交互112之后,用户108可以通过电子设备106对各个对象104进行反馈114。然后,推荐模型105可以基于用户108做出的反馈114来调整其推荐策略,从而改进下一次展示110给用户108的对象104。
在一些实施例中,系统102可以是电影信息平台。对象104可以是在电影信息平台上展示的电影。交互112可以是点击电影、查看演员介绍页面、将电影加入“想看”列表等。反馈114可以是对电影进行打分评价等。
在一些实施例中,系统102可以是短视频平台。对象104可以是视频。交互112可以是观看短视频、查看短视频的创作者等。反馈114可以是对短视频点赞、将短视频标记为不感兴趣等。
电子设备106可以是允许用户108经由用户交互界面与其进行交互的任意类型的移动终端、固定终端或便携式终端,包括移动手机、多媒体计算机、多媒体平板、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人数字助理(PDA)、音频/视频播放器、电子书设备、游戏设备或者前述各项的任意组合,包括这些设备的配件和外设或者其任意组合。
例如,在上述实施例中,系统102可以是短视频平台。用户使用移动手机访问该短视频平台。短视频平台根据特定的策略将短视频展示到用户的移动手机的用户交互界面上。用户看到短视频后点击查看其他用户的留言,然后点击视频发布者的头像查看其发布的其他短视频。最终,用户点击该短视频页面上的“喜欢”按钮以表示自己很喜欢这条短视频。短视频平台在接收到该用户对该短视频的“喜欢”之后,可以更新其推荐策略,以便下一次向用户展示更符合其喜好的短视频。
应当理解,图1仅示出了本公开的实施例能够在其中实现的环境的一个示例。图1中示出的场景、设备交互等元素仅是为了解释说明的目的,而不意味着对本公开的实施例的任何限制。
在系统102向用户108展示对象104时,目标是向用户108展示符合其喜好的对象。然而在推荐模型105选择要被展示给用户108的对象时会受到混杂因子的影响,从而可能展示给用户108的对象104并不符合用户108的真实喜好,导致用户108对各个对象104做出负面的反馈114。
图2示出了根据本公开的实施例的用户交互与用户反馈同时受混杂因子影响的示意图200。如图2所示,用户202具有对应的用户特征210。用户202可以与对象204交互,例如浏览或者观看对象204。此外,用户202还可以将自己对于对象204的喜好反馈给推荐模型206。用户202在与对象204交互时,可能会受到混杂因子208的影响。同时,用户202在向推荐模型206提供反馈时也可能受到混杂因子208的影响。结果使得推荐模型206无法确定用户202对于对象204的准确喜好。
在一个示例中,推荐模型206可以是短视频平台的推荐模型。对象204可以是短视频。在短视频平台中,用户特征210可以是用户的性别、年龄、兴趣爱好等。在推荐模型将短视频推荐给用户后,用户可以通过诸如观看短视频、查看短视频的发布者等方式来与短视频进行交互。最终用户可以在喜欢的短视频上点击“喜欢”按钮,或在不喜欢的短视频上点击“不感兴趣”,以此方式来将自己对短视频的喜好反馈给推荐模型。在用户与短视频进行交互和反馈时,可能会受到该视频的流行度的影响,因为用户更容易看到正在流行的视频,也更容易与流行的视频进行交互,而正在流行的视频同时更容易获得用户的“喜欢”。然而这种反馈并不能准确地反映用户对该视频的真实喜好。
在一些情况下,该混杂因子可能是可以观察到的,例如短视频的流行度。在另一些情况下,该混杂因子可能是不可观察到的或不可测量的。一些现有常见的方案将混杂因子看作是一个特定的因子,例如,视频流行度、视频观看时长、上下文特征等。然而,在现实世界中的大部分场景下,混杂因子的完整信息无法被直接观察到。本公开将聚焦于这些混杂因子是不可观察到的情况,并在这些情况下预测用户202对于对象204的反馈。
在混杂因子不可观察的情况下,对用户真实喜好的预测将变得更为困难,因为一些现有的诸如后门调整的去除混杂因子偏差的算法均依赖于可观察的混杂因子。存在一些解决混杂因子不可观察的问题的现有方案,这些方案通过从用户交互历史中学习替代的混杂因子来近似真实的混杂因子,然后直接应用后门调整来预测用户的反馈。本公开发现这些方案不能确保学习到的混杂因子能够帮助学习到可识别的用户真实喜好。
在上述场景下,推荐模型通常包括用户交互历史、用户反馈和混杂因子。交互历史和用户反馈是可以从数据集中观察到的变量,即数据集中已有的一个或多个字段。混杂因子是无法从数据集中直接观察到的变量,即数据集中不包括作为混杂因子的一个或多个字段。例如,对于作为混杂因子的视频流行度来说,如果数据集中已经显现地给出视频流行度,则混杂因子是可观察的;如果数据集中未显现地给出视频流行度,则混杂因子是不可观察的。用户交互历史、用户反馈和混杂因子之间存在着因果效应,即,用户与对象的交互历史可以影响用户对于对象的反馈,而混杂因子在影响用户交互历史的同时,还会影响用户对于对象的反馈。
为了便于说明,本公开使用以下数学公式来表示本文中所描述的一些概念。本公开使用表示用户的集合,使用/>表示对象的集合,其中/>并且/>本公开使用Au=[Au,1,Au,2,...,Au,n]∈{0,1}n来标识用户u的交互状态,其中Au,i=1或0表示用户是否与对象i进行过交互,只有交互过的对象才可能被观察到用户反馈。本公开使用Rui来表示观察到的用户-对象对(u,i)的反馈。本公开使用/>来表示用户交互Au已经被设置为a的情况下将观察到的用户反馈。此外,本公开使用Zu来表示不可观察的混杂因子,该混杂因子可以直接地同时影响用户交互和反馈。例如,混杂因子可以是用户的视野开阔程度。拥有更开阔的视野的人更有可能与内容涉及较偏僻领域的短视频进行交互,但不一定会对这些短视频给出更高的评价。
推荐模型的目标是准确地预测用户u对于对象i的反馈,即在Aui=1的情况下的使得推荐的对象是用户高概率感兴趣的对象。然而如上文所描述的,在现实世界场景中,通常存在某些混杂因子Zu,其同时影响用户u的交互状态Au和对于对象的用户反馈Ru,导致在未准确地控制混杂效应的情况下,在评估/>时出现虚假相关。
为了学习用户u对于对象i的反馈,即首先需要从观察数据中识别潜在结果的分布/>只有在建立起因果可识别性时,才能利用数据驱动的策略来学习准确并且唯一的用户喜好。在全部混杂因子均可观察时,可以利用传统的后门调整算法来识别/>例如后门调整算法可以表示为等式(1):
在混杂因子不可观察时,无法应用等式(1)来去除混杂因子偏差。一些现有方案假设不可观察的混杂因子Zu是每个交互Au,i的共同原因,因此提出了一种去混杂模型来学习混杂因子不可观察情况下的该去混杂模型首先从交互历史Au中学习替代的混杂因子/>来近似真实的混杂因子Zu,并且直接应用等式(1)的后门调整来学习/>然而,该去混杂模型无法确保能够学习到可识别的用户真实喜好/>在接下来的示例中,尽管从用户交互历史Au中可以唯一地识别出替代的混杂因子/>该去混杂模型仍然不能唯一地识别用户真实喜好/>换句话说,/>在不同情况下会得到不同的值,导致对用户喜好的预测无法始终保持一致。
更具体地,假设用户交互状态Au,i和用户反馈Ru,i均是二元随机变量。为了确保P(Au)的唯一因子分解,假设n≥3,使得可以从用户交互历史A中唯一地识别该去混杂模型中推断的混杂因子换句话说,/>和/>均是已知的。除此之外,在用户交互历史Au=a的情况下,用户u对于对象i给出正面反馈的概率P(Ru,i=1|Au=a)也可以在给定数据集中获得。由于该去混杂模型通过应用等式(1)的后门调整并利用推断的替代混杂因子/>来学习用户真实喜好/>因此/>可以被表示为:
为了便于说明,令p01|a:=P(Z=0,R=1|A=a),以及πz|a:=P(Z=1|A=a),则可以得到:
如之前所假设的,πz和πz|a均是已知的,因此需要识别p01|a和p11|a来计算然而,由于存在四个未知的输入[pzr|a,z,r∈{0,1}]和以下三个约束,p01|a和p11|a无法被唯一地识别:
其中第一个约束是联合概率的和等于1,并且后面两个约束是边际约束。例如,第二个约束是由于:
其中在P(Z|A=a)未退化时(常见于推荐场景),即P(Z|A=a)≠1或0,由于存在一个自由度,使得四个未知的输入无法被唯一地识别。例如,在p11|a是自由变量时,则它可以具有以下范围内的任意值:
max{0,πZ|a+πR|a-1}≤p11|a≤min{πZ|a,πR|a} (6)这意味着在等式(3)中计算的也将落入一个范围内。换句话说,/>无法被唯一地识别。例如,假设/> 并且πRui=1|a=0.6,则p11|a可以是[0,0.1]范围内的任意值,使得/>属于[0.33,0.78]。更特定地,在p11|a=0.01时,/>=0.38,而在p11|a=0.09时,/>通常情况下,将采用0.5作为预测的阈值,因此意味着用户u对于对象i感兴趣,而/>意味着用户u对于对象i不感兴趣。此结果导致了该去偏差模型在预测用户u对于对象i的喜好时无法保持一致的预测结果。
为了解决在混在因子不可观察的情况下准确预测用户对于对象的反馈的问题,本公开提供了一种方案,该方案利用代理变量(例如用户特征)来帮助识别混杂因子分布,从而利用该混杂因子分布来预测用户反馈。
图3示出了根据本公开的一些实施例的用于预测用户反馈的方法300的流程图。如图3所示,在框302,方法300获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈。例如,如图1所示,用户特征可以是用户108的特征,系统102可以通过各种方式来获取用户108的用户特征,例如,邀请用户在系统中填写个人信息、分析用户在系统中加入的群组的分类,等等。用户交互历史是通过用户108与对象104进行交互112而获取的,例如,用户观看短视频或转发短视频等等。用户反馈是用户108对于对象104的反馈114,例如,用户对短视频点赞,等等。
在框304,方法300基于用户交互历史和用户特征确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈。该用户特征将被用作混杂因子的代理变量来为计算混杂因子提供附加的信息。因为代理变量提供了附加的信息,使得方法300可以识别原本不可观察且不可识别的混杂因子。例如,在短视频平台的示例中,用户交互历史可以是观看短视频,用户特征可以是用户的学历、年龄等,用户反馈可以是用户是否会给短视频点赞。在此示例中,混杂因子例如可以是用户的视野或见识开阔程度,由于短视频平台不会向用户直接收集他们的视野开阔程度,因此该混杂因子是不可观察的。在用户学历较高或年龄较大时,用户更有可能具有较高的视野开阔程度,从而影响用户对特定短视频的交互和反馈。
在框306,方法300基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。由于在在生成该推荐模型时引入了在框304中确定的原本不可观察的混杂因子,因此使得推荐模型可以将混杂因子作为训练数据的部分,从而训练出可以去除混杂因子影响的推荐模型。
方法300能够利用用户特征中包含的信息,使得推荐模型能够更好地从用户与对象的交互历史中识别混杂因子,所识别的混杂因子可以帮助推荐模型更好地实现推荐。
图4A至4B示出了根据本公开的一些实施例的具有代理变量的推荐模型105的因果图示400和因果图示440。图4A中所示的因果图400示出了用户交互历史402、406和410、用户反馈404、408和412、混杂因子420以及代理变量422之间的因果关系。交互历史402、406和410分别表示不同用户的交互历史。用户反馈404、408和412分别表示不同用户的用户反馈。例如,交互历史402和用户反馈404表示用户1的交互历史和用户反馈,交互历史406和用户反馈408表示用户2的交互历史和用户反馈,交互历史410和用户反馈412表示用户N的交互历史和用户反馈。为了清晰,图中仅示出了三个用户的交互历史和用户反馈,但其可以代表任何数目的用户的交互历史和用户反馈。
交互历史402、406和410、用户反馈404、408和412以及代理变量408是可以从数据集中观察到的变量。混杂因子420是无法从数据集中直接观察到的变量。代理变量422是从数据集中可观察的用户特征中选择出来的一部分用户特征,因此代理变量422也是可观察的。在一些实施例中,可以由推荐模型的管理员从多个用户特征中选择一部分用户特征作为代理变量422。在另一些实施例中,可以由推荐模型105通过一些算法或机器学习模型来自动地从多个用户特征中确定一部分用户特征作为代理变量422。在上文所描述的示例中,代理变量422例如可以是用户的学历或年龄。在图4A中,变量之间的箭头表示两者之间的因果效应。如图4A所示,交互历史402可以影响用户反馈404,混杂因子420可以同时影响交互历史402和用户反馈404,混杂因子420还可以影响代理变量422。
为了便于说明,在图4A所示的因果图400中,可以将表示不同用户的交互历史(402、406、410)的多个节点合并为一个节点,该节点表示多个用户的交互历史;将表示不同用户的用户反馈(404、408、412)的多个节点合并为一个节点,该节点表示多个用户的用户反馈,从而得到图4B所示的因果图440。在图4B所示的因果图440中,交互历史442表示多个用户的交互历史,用户反馈444表示多个用户的用户反馈。
在上文所描述的现有方案中,由于观察到的用户交互历史和用户反馈无法为求解等式(4)提供足够的约束(为了求解四个输入至少需要四个约束,但是基于用户交互历史和用户反馈仅能提供三个约束),使得无法唯一地确定用户真实喜好P(Ra)。因此,需要附加的信息来帮助提供更多的约束。附加的代理变量W(如图4B所示的代理变量422)可以被当做隐藏的混杂因子420的代理,从而提供附加的信息。如图4B所示,假设存在可观察的二元变量W,W是不可观察的混杂因子Z(如图4B所示的混杂因子420)的后代,目标仍然是识别用户真实喜好P(Ra)。在一些实施例中,代理变量W指示用户的学历或年龄,混杂因子Z表示用户的视野开阔程度,则代理变量W可以是混杂因子Z的代理,因为高学历或年龄较大通常意味着视野开阔程度更高。假设代理变量W遵从伯努利分布:
W:=Bernoulli(fW(Z)),W⊥R|(A,Z) (7)
其中fW(。)是非平凡函数,即,0<fW(z)<1。进一步假设在交互历史A的情况下,代理变量W与混杂因子Z相关。由于交互历史A、代理变量W和用户喜好R是可以同时被观察到的,因此P(R|A=a,W=w)是可识别的,使得πR|a,W=w:=P(R|A=a,W=w)。应当注意的是,P(R|A=a,W=0)≠P(R|A=a,W=1),因为为此,原始的联合概率得到了扩展,并且用表1来表示:
表1.联合概率扩展示例
R=0 | R=1 | P(Z|A=a) | |
Z=0 | p00|a | p01|a | 1-πZ|a |
Z=1 | p10|a | p11|a | πZ|a |
P(R|A=a,W=0) | 1-πR|a,W=0 | πR|a,W=0 | |
P(R|A=a,W=1) | 1-πR|a,W=1 | πR|a,W=1 |
在表1中,仍然有四个未知的输入,即,pzr|a,z∈{0,1},r∈{0,1},但是约束的数目从三个增加到了四个,因为两个条件边际分布P(R|A=a,W=0)和P(R|A=a,W=1)意味着两个不同的约束:
由于通过四个约束能够获得针对四个未知输入的唯一解,因此可以唯一地识别潜在结果分布P(R(A=a))。
上述实施例可以在存在不可观察的混杂因子的情况下识别潜在结果分布。其中代理变量Wu是可观察的变量,其直接受到不可观察的混杂因子的影响,并且代理变量Wu在不可观察的混杂因子Zu和用户交互历史Au的条件下,独立于用户反馈。代理变量Wu可以用以下等式表示:
Wu=g(Zu),Wu⊥Ru|(Zu,Au) (9)
其中g是将混杂因子Zu映射到代理变量Wu的函数。在一些实施例中,隐藏的混杂因子Zu可以是用户的视野开阔程度,代理变量可以是用户的学历或年龄。
由于P(Au,Wu)可以直接从数据集中识别,因此还需要学习不可观察的混杂因子的分布信息P(z|a,w)。在一些实施例中,可以使用因子模型来获得P(z|a,w),即:
P(Au=a|Wu=w)=∫zP(a|z)P(z|a,w)dz (12)
在一些实施例中,可以使用深度生成模型来估计P(z|a,w)和P(a|z)。
回到等式(10),还需要得到P(r|a,w)隐式地提供了附加信息以用于唯一地识别因果效应(Au,Zu)→Ru。例如,在上述示例中,代理变量Wu根据P(R|a,W=1)和P(R|a,W=0)提供了两个约束,使得可以得到唯一解pzr|a。更一般地,利用代理变量Wu的信息,根据本公开的实施例可以从以下等式中获得唯一的P(r|a,z):
P(Ru=r|Au=a,Wu=w)=∫zP(r|z,a)P(z|a,w)dz (13)
根据本公开的实施例,通过利用代理变量322,可以得到以下结论:在一致性、可忽略性、正性、排除限制、等价性和完整性假设下,对于求解P(Au=a|Wu=w)=∫zP(a,z|w)dz的任何可接受的联合分布P(a,z|w),存在对以下等式的唯一解P(r|z,a):
P(Rui=r|Au=a,Wu=w)=∫zP(r|z,a)P(z|a,w)dz (14)
并且潜在结果分布可以通过以下等式来识别:
其中P(z)是根据P(a,z|w)和P(w)获得的。
图5示出了根据本公开的一些实施例的用于实现预测用户反馈的方法的框架500的示意图。根据本公开的实施例,框架500包括两个顺序执行的阶段,分别是推断混杂因子阶段502和预测用户反馈阶段510。在推断混杂因子阶段502中,框架500基于用户交互历史504和代理变量506来学习混杂因子的后验分布P(z|a,w)。在一些实施例中,框架500利用因子模型来学习不可观察的混杂因子,直到实现一对一的转换。在一些实施例中,框架500利用深度生成模型,例如,iVAE模型(即可识别的VAE模型),来学习不可观察的混杂因子,因为诸如iVAE模型的深度生成模型可以解决无法识别隐变量的问题。本公开还将学习到的混杂因子称作可接受的混杂因子。在一些实施例中,框架500针对每个用户u应用iVAE模型来推断可接受的混杂因子的后验分布P(z|a,w)。
在一些实施例中,框架500使用iVAE模型来推断可接受混杂因子的分布信息。在一些实施例中,使用表示似然log pθ(a|w)的证据下界,框架500通过最大化证据下界来同时学习深度生成模型和真实后验pθ(z|a,w)的近似后验qφ(z|a,w)。该过程可以用以下表达式表示:
其中可以基于图3中所示的因果图300来进一步将log pθ(a,z|w)分解成:
log pθ(a,z|w)=log pθ(a|z,w)+log pθ(z|w)
=log pθ(a|z)+log pθ(z|w) (17)
框架500使用先验pθ(z|w)作为高斯位置尺度族,并且使用重参数化技巧来从近似后验qφ(z|a,w)采样z。在一些实施例中,pθ(z|w)和qφ(z|a,w)可以被表示为:
pθ(z|w):=N(μw(w),υw(w)),
qφ(z|a,w):=N(μaw(a,w),vaw(a,w)) (18)
由于隐藏混杂因子直接影响到交互历史中的每个元素,因此框架500使用如pλ(a|z)的因子化逻辑模型,即,其中仍然使用MLP模型μz(z)来对pλ(a|z)建模。然后,对于对数似然log pθ(a|z)的计算变成了对负二元交叉熵的计算:
在预测用户反馈阶段510中,框架500初始化推荐模型512,并基于在推断混杂因子阶段502获得的可接受的混杂因子来训练推荐模型512,以用于预测用户反馈P(r|a,z),这样就可以得到已经消除混杂因子偏差的预测的用户反馈516。
在一些实施例中,基于学习到的可接受混杂因子的后验qφ(z|a,w),框架500可以识别用户的真实喜好/>实际上,对于现实世界中的推荐数据集来说,代理变量Wu在训练集和测试集中均是不变的,因此对于每个用户u来说,P(Ru(a))=∑wP(Ru(a)|Wu=w)P(Wu=w),并且P(Wu=wu)=1,从而识别/>实际上相当于识别/>
在图5所示的实施例中,训练推荐模型512的目标是学习P(r|a,z)。可以根据等式(14)并利用P(r|a,w)和P(z|a,w)来学习P(r|a,z),其中P(r|a,w)可以从数据集中直接获得,并且P(z|a,w)可以利用在推断混杂因子阶段502中获得的后验qφ(z|a,w)来近似。
在一些实施例中,框架500可以使用由η参数化的推荐模型fui(au,zu,η)来估计交互历史Au和混杂因子的估计对用户反馈Ru的影响。例如,框架500可以使用加法模型fui(au,zu,η)=f1(au)+f2(z),该加法模型可以分开估计交互历史对用户反馈的影响和可接受的混杂因子对用户反馈的影响。对应的损失函数可以表示为:
其中l(·,·)可以是任何推荐损失函数,例如,MSE损失或BCE损失。
在图5所示的实施例中,在完成对推荐模型512的训练之后,框架500可以应用等式(15)来去除混杂因子偏差。该过程可以表示为:
在以上描述的实施例中,框架500首先基于交互历史504和代理变量506,应用深度生成模型508(例如,iVAE模型)来针对每个用户u学习可接受的混杂因子的后验分布P(z|au,wu),然后利用该后验分布来训练用于预测用户反馈的推荐模型512(fui(au,zu,η)),最终应用等式(22)来获得经去除混杂因子偏差的预测用户反馈516。
根据图5所示的实施例,在训练推荐模型512时,框架500使用的数据集可以包括用户的信息、对象的信息、用户对于对象的交互历史和用户对于对象的反馈。用户的信息可以包括多个用户特征。另一方面,框架500使用的数据集包括有混杂因子偏差的数据集和无混杂因子偏差的数据集。在有混杂因子偏差的数据集中,用户正常地与对象进行交互,该数据集中的用户交互历史和用户反馈均会受到混杂因子的影响。在无混杂因子偏差的数据集中,推荐模型向用户随机推荐对象,用户可以与这些随机推荐的对象进行交互。由于对象时随机推荐的,因此用户与对象的交互不再受混杂因子的影响。在一些实施例中,框架500可以将有混杂因子偏差的数据集中的全部数据用作训练集;将无混杂因子偏差的数据集中的部分数据(例如,30%)用作验证集;以及将无混杂因子偏差的数据集中的剩余数据用作测试集。
图6示出了根据本公开的某些实施例的用于推荐的装置600的框图。如图6所示,装置600包括用户信息获取模块,被配置为获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对多个对象的用户反馈。装置600还包括混杂因子确定模块,被配置为基于用户交互历史和用户特征,确定混杂因子,其中混杂因子同时影响用户针对对象的交互和反馈。装置600还包括推荐模型生成模块,被配置为基于混杂因子、用户交互历史以及用户反馈,生成用于推荐的推荐模型。装置600还可以包括其他模块,实现根据本公开的实施例的方法300的步骤,为了简洁,在此不再赘述。
可以理解,通过本公开的装置600,可以实现如上文描述的方法或过程所能够实现的诸多优点中的至少一个。例如,可以利用用户特征中包含的信息,使得推荐模型能够更好地从用户与对象的交互历史中识别混杂因子。所识别的混杂因子可以帮助推荐模型更好地实现在去除混杂因子偏差的情况下预测用户的真实喜好和对于对象的反馈。
图7示出了根据本公开的某些实施例的电子设备700的框图,设备700可以是本公开的实施例所描述的设备或装置。如图7所示,设备700包括中央处理单元(CPU)和/或图形处理单元(GPU)701,其可以根据存储在只读存储器(ROM)702中的计算机程序指令或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序指令,来执行各种适当的动作和处理。在RAM 703中,还可以存储设备700操作所需的各种程序和数据。CPU/GPU 701、ROM702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。虽然未在图7中示出,设备700还可以包括协处理器。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如互联网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个方法或过程可以由CPU/GPU 701来执行。例如,在一些实施例中,方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序被加载到RAM 703并由CPU/GPU 701执行时,可以执行上文描述的方法或过程中的一个或多个步骤或动作。
在一些实施例中,以上所描述的方法和过程可以被实现为计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如互联网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言,以及常规的过程式编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用互联网服务提供商来通过互联网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这取决于所涉及的功能。也要注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中技术的技术改进,或者使得本技术领域的其它普通技术人员能理解本文公开的各实施例。
以下列出了本公开的一些示例实现。
示例1.一种用于推荐的方法,包括:
获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈;
基于所述用户交互历史和所述用户特征,确定混杂因子,其中所述混杂因子同时影响用户针对对象的交互和反馈;以及
基于所述混杂因子、所述用户交互历史以及所述用户反馈,生成用于推荐的推荐模型。
示例2.根据示例1所述的方法,其中获取多个用户的用户特征包括:
从所述多个用户的多个用户特征中选择所述用户特征,作为用于确定所述混杂因子的代理变量。
示例3.根据示例1-2中任一项所述的方法,其中确定所述混杂因子包括:
确定所述混杂因子的近似后验概率分布;
基于真实后验概率分布和所述近似后验概率分布,训练深度生成模型;以及
通过所述深度生成模型确定所述混杂因子的概率分布。
示例4.根据示例1-3中任一项所述的方法,其中训练深度生成模型包括:
使用因子模型来确定所述真实后验概率分布与所述近似后验概率分布之间的离散度;以及
通过最小化所述离散度来优化深度生成模型。
示例5.根据示例1-4中任一项所述的方法,其中生成用于推荐的推荐模型包括:
基于所述用户交互历史、所述混杂因子、所述代理变量、以及所述用户反馈,生成用于所述推荐模型的损失函数;以及
使用所述损失函数来训练所述推荐模型。
示例6.根据示例1-5中任一项所述的方法,其中使用所述损失函数来训练所述推荐模型包括:
通过最小化所述损失函数来调整所述推荐模型中的参数集。
示例7.根据示例1-6中任一项所述的方法,其中生成用于推荐的推荐模型还包括:
基于所述用户交互历史,生成用于表示所述用户交互历史对所述用户反馈的因果效应的第一模型;
基于所述混杂因子,生成用于表示所述混杂因子对所述用户反馈的因果效应的第二模型;以及
基于所述第一模型和所述第二模型,生成所述推荐模型。
示例8.根据示例1-7中任一项所述的方法,其中所述用户交互历史包括受混杂因子影响的用户交互历史和不受混杂因子影响的用户交互历史。
示例9.根据示例1-8中任一项所述的方法,其中生成用于推荐的推荐模型包括:
使用所述受混杂因子影响的用户交互历史来训练初始推荐模型;
基于所述混杂因子和所述初始推荐模型,生成所述推荐模型;以及
使用所述不受混杂因子影响的用户交互历史来验证所述推荐模型。
示例10.根据示例1-9中任一项所述的方法,还包括:
获得目标用户的用户特征和用户交互;以及
由所述推荐模型基于所述混杂因子以及所述目标用户的用户特征和用户交互,向所述目标用户推荐一个或多个对象。
示例11.根据示例1-10中任一项所述的方法,其中向所述目标用户推荐一个或多个对象包括:
基于所述混杂因子以及所述目标用户的用户特征和用户交互,计算所述目标用户对于所述多个对象的预测用户反馈;以及
基于所述目标用户对于所述多个对象的预测用户反馈,向所述目标用户推荐一个或多个对象。
示例12.一种用于推荐的装置,包括:
用户信息获取模块,被配置为获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈;
混杂因子确定模块,被配置为基于所述用户交互历史和所述用户特征,确定混杂因子,其中所述混杂因子同时影响用户针对对象的交互和反馈;以及
推荐模型生成模块,被配置为基于所述混杂因子、所述用户交互历史以及所述用户反馈,生成用于推荐的推荐模型。
示例13.根据示例12所述的装置,其中所述用户信息获取模块包括:
用户特征选择模块,被配置为从所述多个用户的多个用户特征中选择所述用户特征,作为用于确定所述混杂因子的代理变量。
示例14.根据示例12-13中任一项所述的装置,其中所述混杂因子确定模块包括:
近似后验确定模块,被配置为确定所述混杂因子的近似后验概率分布;
生成模型训练模块,被配置为基于真实后验概率分布和所述近似后验概率分布,训练深度生成模型;以及
生成模块使用模块,被配置为通过所述深度生成模型确定所述混杂因子的概率分布。
示例15.根据示例12-14中任一项所述的装置,其中所述生成模型训练模块包括:
分布离散确定模块,被配置为使用因子模型来确定所述真实后验概率分布与所述近似后验概率分布之间的离散度;以及
生成模型优化模块,被配置为通过最小化所述离散度来优化深度生成模型。
示例16.根据示例12-15中任一项所述的装置,其中所述推荐模型生成模块包括:
损失函数生成模块,被配置为基于所述用户交互历史、所述混杂因子、所述代理变量、以及所述用户反馈,生成用于所述推荐模型的损失函数;以及
损失函数使用模块,被配置为使用所述损失函数来训练所述推荐模型。
示例17.根据示例12-16中任一项所述的装置,其中所述损失函数使用模块包括:
参数集调整模块,被配置为通过最小化所述损失函数来调整所述推荐模型中的参数集。
示例18.根据示例12-17中任一项所述的装置,其中所述推荐模型生成模块还包括:
第一模型生成模块,被配置为基于所述用户交互历史,生成用于表示所述用户交互历史对所述用户反馈的因果效应的第一模型;
第二模型生成模块,被配置为基于所述混杂因子,生成用于表示所述混杂因子对所述用户反馈的因果效应的第二模型;以及
模型结合使用模块,被配置为基于所述第一模型和所述第二模型,生成所述推荐模型。
示例19.根据示例12-18中任一项所述的装置,其中所述用户交互历史包括受混杂因子影响的用户交互历史和不受混杂因子影响的用户交互历史。
示例20.根据示例12-19中任一项所述的装置,其中所述推荐模型生成模块还包括:
初始模型训练模块,被配置为使用所述受混杂因子影响的用户交互历史来训练初始推荐模型;
初始模型使用模块,被配置为基于所述混杂因子和所述初始推荐模型,生成所述推荐模型;以及
推荐模型验证模块,被配置为使用所述不受混杂因子影响的用户交互历史来验证所述推荐模型。
示例21.根据示例12-20中任一项所述的装置,还包括:
特征交互获得模块,被配置为获得目标用户的用户特征和用户交互;以及
目标用户推荐模块,被配置为由所述推荐模型基于所述混杂因子以及所述目标用户的用户特征和用户交互,向所述目标用户推荐一个或多个对象。
示例22.根据示例12-21中任一项所述的装置,其中所述目标用户推荐模块包括:
预测反馈确定模块,被配置为基于所述混杂因子以及所述目标用户的用户特征和用户交互,计算所述目标用户对于所述多个对象的预测用户反馈;以及
预测反馈使用模块,被配置为基于所述目标用户对于所述多个对象的预测用户反馈,向所述目标用户推荐一个或多个对象。
示例23.一种电子设备,包括:
处理器;以及
与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述处理器执行时使所述电子设备执行动作,所述动作包括:
获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈;
基于所述用户交互历史和所述用户特征,确定混杂因子,其中所述混杂因子同时影响用户针对对象的交互和反馈;以及
基于所述混杂因子、所述用户交互历史以及所述用户反馈,生成用于推荐的推荐模型。
示例24.根据示例23所述的电子设备,其中获取多个用户的用户特征包括:
从所述多个用户的多个用户特征中选择所述用户特征,作为用于确定所述混杂因子的代理变量。
示例25.根据示例23-24中任一项所述的电子设备,其中确定所述混杂因子包括:
确定所述混杂因子的近似后验概率分布;
基于真实后验概率分布和所述近似后验概率分布,训练深度生成模型;以及
通过所述深度生成模型确定所述混杂因子的概率分布。
示例26.根据示例23-25中任一项所述的电子设备,其中训练深度生成模型包括:
使用因子模型来确定所述真实后验概率分布与所述近似后验概率分布之间的离散度;以及
通过最小化所述离散度来优化深度生成模型。
示例27.根据示例23-26中任一项所述的电子设备,其中生成用于推荐的推荐模型包括:
基于所述用户交互历史、所述混杂因子、所述代理变量、以及所述用户反馈,生成用于所述推荐模型的损失函数;以及
使用所述损失函数来训练所述推荐模型。
示例28.根据示例23-27中任一项所述的电子设备,其中使用所述损失函数来训练所述推荐模型包括:
通过最小化所述损失函数来调整所述推荐模型中的参数集。
示例29.根据示例23-28中任一项所述的电子设备,其中生成用于推荐的推荐模型还包括:
基于所述用户交互历史,生成用于表示所述用户交互历史对所述用户反馈的因果效应的第一模型;
基于所述混杂因子,生成用于表示所述混杂因子对所述用户反馈的因果效应的第二模型;以及
基于所述第一模型和所述第二模型,生成所述推荐模型。
示例30.根据示例23-29中任一项所述的电子设备,其中所述用户交互历史包括受混杂因子影响的用户交互历史和不受混杂因子影响的用户交互历史。
示例31.根据示例23-30中任一项所述的电子设备,其中生成用于推荐的推荐模型包括:
使用所述受混杂因子影响的用户交互历史来训练初始推荐模型;
基于所述混杂因子和所述初始推荐模型,生成所述推荐模型;以及
使用所述不受混杂因子影响的用户交互历史来验证所述推荐模型。
示例32.根据示例23-31中任一项所述的电子设备,还包括:
获得目标用户的用户特征和用户交互;以及
由所述推荐模型基于所述混杂因子以及所述目标用户的用户特征和用户交互,向所述目标用户推荐一个或多个对象。
示例33.根据示例23-32中任一项所述的电子设备,其中向所述目标用户推荐一个或多个对象包括:
基于所述混杂因子以及所述目标用户的用户特征和用户交互,计算所述目标用户对于所述多个对象的预测用户反馈;以及
基于所述目标用户对于所述多个对象的预测用户反馈,向所述目标用户推荐一个或多个对象。
示例34.一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中所述一条或多条计算机指令被处理器执行以实现根据示例1至11中任一项所述的方法。
示例35.一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在由设备执行时使所述设备执行根据示例1至11中任一项所述的方法。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本公开,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (14)
1.一种用于推荐的方法,包括:
获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈;
基于所述用户交互历史和所述用户特征,确定混杂因子,其中所述混杂因子同时影响用户针对对象的交互和反馈;以及
基于所述混杂因子、所述用户交互历史以及所述用户反馈,生成用于推荐的推荐模型。
2.根据权利要求1所述的方法,其中获取多个用户的用户特征包括:
从所述多个用户的多个用户特征中选择所述用户特征,作为用于确定所述混杂因子的代理变量。
3.根据权利要求2所述的方法,其中确定所述混杂因子包括:
确定所述混杂因子的近似后验概率分布;
基于真实后验概率分布和所述近似后验概率分布,训练深度生成模型;以及
通过所述深度生成模型确定所述混杂因子的概率分布。
4.根据权利要求3所述的方法,其中训练深度生成模型包括:
使用因子模型来确定所述真实后验概率分布与所述近似后验概率分布之间的离散度;以及
通过最小化所述离散度来优化深度生成模型。
5.根据权利要求2所述的方法,其中生成用于推荐的推荐模型包括:
基于所述用户交互历史、所述混杂因子、所述代理变量、以及所述用户反馈,生成用于所述推荐模型的损失函数;以及
使用所述损失函数来训练所述推荐模型。
6.根据权利要求5所述的方法,其中使用所述损失函数来训练所述推荐模型包括:
通过最小化所述损失函数来调整所述推荐模型中的参数集。
7.根据权利要求2所述的方法,其中生成用于推荐的推荐模型还包括:
基于所述用户交互历史,生成用于表示所述用户交互历史对所述用户反馈的因果效应的第一模型;
基于所述混杂因子,生成用于表示所述混杂因子对所述用户反馈的因果效应的第二模型;以及
基于所述第一模型和所述第二模型,生成所述推荐模型。
8.根据权利要求1所述的方法,其中所述用户交互历史包括受混杂因子影响的用户交互历史和不受混杂因子影响的用户交互历史。
9.根据权利要求8所述的方法,其中生成用于推荐的推荐模型还包括:
使用所述受混杂因子影响的用户交互历史来训练初始推荐模型;
基于所述混杂因子和所述初始推荐模型,生成所述推荐模型;以及
使用所述不受混杂因子影响的用户交互历史来验证所述推荐模型。
10.根据权利要求1-9中任一项所述的方法,还包括:
获得目标用户的用户特征和用户交互;以及
由所述推荐模型基于所述混杂因子以及所述目标用户的用户特征和用户交互,向所述目标用户推荐一个或多个对象。
11.根据权利要求10所述的方法,其中向所述目标用户推荐一个或多个对象包括:
基于所述混杂因子以及所述目标用户的用户特征和用户交互,计算所述目标用户对于所述多个对象的预测用户反馈;以及
基于所述目标用户对于所述多个对象的预测用户反馈,向所述目标用户推荐一个或多个对象。
12.一种用于推荐的装置,包括:
用户信息获取模块,被配置为获取多个用户的用户特征、针对多个对象的用户交互历史、以及针对所述多个对象的用户反馈;
混杂因子确定模块,被配置为基于所述用户交互历史和所述用户特征,确定混杂因子,其中所述混杂因子同时影响用户针对对象的交互和反馈;以及
推荐模型生成模块,被配置为基于所述混杂因子、所述用户交互历史以及所述用户反馈,生成用于推荐的推荐模型。
13.一种电子设备,包括:
处理器;以及
与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被处理器执行时,使得所述电子设备执行根据权利要求1至11中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机可执行指令,其中所述计算机可执行指令被处理器执行以实现根据权利要求1至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310108943.5A CN116245573A (zh) | 2023-01-31 | 2023-01-31 | 用于推荐的方法、装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310108943.5A CN116245573A (zh) | 2023-01-31 | 2023-01-31 | 用于推荐的方法、装置、电子设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116245573A true CN116245573A (zh) | 2023-06-09 |
Family
ID=86625570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310108943.5A Pending CN116245573A (zh) | 2023-01-31 | 2023-01-31 | 用于推荐的方法、装置、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116245573A (zh) |
-
2023
- 2023-01-31 CN CN202310108943.5A patent/CN116245573A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11109083B2 (en) | Utilizing a deep generative model with task embedding for personalized targeting of digital content through multiple channels across client devices | |
CN107463701B (zh) | 基于人工智能推送信息流的方法和装置 | |
US11436434B2 (en) | Machine learning techniques to identify predictive features and predictive values for each feature | |
EP4181026A1 (en) | Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium | |
CN112100489B (zh) | 对象推荐的方法、装置和计算机存储介质 | |
US20230117499A1 (en) | Systems and Methods for Simulating a Complex Reinforcement Learning Environment | |
US10936601B2 (en) | Combined predictions methodology | |
US11100406B2 (en) | Knowledge network platform | |
JP2024503774A (ja) | 融合パラメータの特定方法及び装置、情報推奨方法及び装置、パラメータ測定モデルのトレーニング方法及び装置、電子機器、記憶媒体、並びにコンピュータプログラム | |
US10754860B2 (en) | Apparatus and method for ranking content categories | |
CN115841366B (zh) | 物品推荐模型训练方法、装置、电子设备及存储介质 | |
CN114036398A (zh) | 内容推荐和排序模型训练方法、装置、设备以及存储介质 | |
CN111783810A (zh) | 用于确定用户的属性信息的方法和装置 | |
Ranjbar Kermany et al. | Fair-SRS: a fair session-based recommendation system | |
US20180225685A1 (en) | Identifying impending user-competitor relationships on an online social networking system | |
US10050911B2 (en) | Profile completion score | |
WO2024051707A1 (zh) | 训练推荐模型的方法、推荐资源的方法及其装置 | |
KR20220137943A (ko) | 패턴 기반 분류 | |
CN116113959A (zh) | 评估对搜索查询的解释 | |
CN112269942B (zh) | 一种推荐对象的方法、装置、系统及电子设备 | |
CN116245573A (zh) | 用于推荐的方法、装置、电子设备和介质 | |
US20180293611A1 (en) | Targeting content based on inferred user interests | |
CN114580652A (zh) | 应用于自动人工智能的项目推荐的方法和系统 | |
US11204965B2 (en) | Data analytics and insights brokerage service | |
CN116720003B (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 |