CN117540096A - 改进用于推荐***的数据子采样 - Google Patents
改进用于推荐***的数据子采样 Download PDFInfo
- Publication number
- CN117540096A CN117540096A CN202311602829.4A CN202311602829A CN117540096A CN 117540096 A CN117540096 A CN 117540096A CN 202311602829 A CN202311602829 A CN 202311602829A CN 117540096 A CN117540096 A CN 117540096A
- Authority
- CN
- China
- Prior art keywords
- negative
- training data
- user
- importance
- instances
- 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
- 238000005070 sampling Methods 0.000 title claims abstract description 152
- 238000012549 training Methods 0.000 claims abstract description 122
- 238000000034 method Methods 0.000 claims abstract description 115
- 238000012360 testing method Methods 0.000 claims abstract description 42
- 230000003993 interaction Effects 0.000 claims abstract description 28
- 238000003860 storage Methods 0.000 claims description 51
- 238000009499 grossing Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 description 24
- 230000010354 integration Effects 0.000 description 21
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 9
- 238000002474 experimental method Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000001131 transforming effect Effects 0.000 description 4
- 238000002679 ablation Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000004020 conductor Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001152 differential interference contrast microscopy Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005295 random walk Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- 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/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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/903—Querying
- G06F16/9035—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/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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开描述了用于改进用于推荐***的数据子采样的技术。可以构建与训练数据相关联的用户项目图。用户项目交互的重要性可以基于用户项目图而经由图电导来估计。训练数据的重要性可以通过使用预训练的试验模型的样本硬度来测量。可以基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性而生成子采样率。
Description
背景技术
机器学习模型越来越多地在各个行业中使用,以执行各种不同的任务。这类任务可包括对数据进行预测或推荐。用于利用机器学习模型的改进技术是合乎需要的。
附图说明
当结合附图阅读时,可更好地理解以下详细描述。出于说明的目的,在附图中示出了本公开的各个方面的示例实施例;然而,本发明不限于所公开的具体方法和手段。
图1示出了可根据本公开使用的示例***。
图2示出了根据本公开的示例训练数据集。
图3示出了根据本公开的用于估计用户项目交互的重要性的示例框架。
图4示出了根据本公开的使用预训练的试验模型测量训练数据的重要性的示例框架。
图5示出了根据本公开的用于平滑硬度评分的示例框架。
图6示出了根据本公开的用于确定与训练数据中的负实例相关联的最终硬度评分的示例框架。
图7示出了根据本公开的示例子采样的训练数据集。
图8示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图9示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图10示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图11示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图12示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图13示出了根据本公开的用于改进推荐***的数据子采样的示例过程。
图14示出了图示与根据本公开的推荐***相关联的实验结果的箱线图。
图15示出了图示与根据本公开的推荐***相关联的实验结果的一组箱线图。
图16示出了图示与根据本公开的推荐***相关联的实验结果的箱线图。
图17a示出了图示与根据本公开的推荐***相关联的实验结果的一组箱线图。
图17b示出了图示与根据本公开的推荐***相关联的实验结果的一组箱线图。
图18示出了图示与根据本公开的推荐***相关联的实验结果的一组曲线图。
图19示出了可用来执行本文所公开的任何技术的示例计算设备。
具体实施方式
推荐***可以通过用户项目交互(例如,用户点击各种项目)了解用户偏好。例如,用户点击可以被认为是指示用户对所点击的项目感兴趣的正样本。相反,如果用户未点击一个项目,诸如不点击,则可以被认为是负样本。点击率(CTR)预测模型可以被配置成输出用户项目对的点击概率,并且这类概率可以被用来响应于用户请求来对针对用户的推荐项目进行排名。这类CTR模型可以使用从在线平台收集的数据来训练,其中“无点击”用户项目对占主导地位。由于训练数据集的这种不平衡,可以执行负采样。负采样可以对负样本进行下采样。对负样本进行下采样可以显著降低模型训练成本。
在一些实施例中,非均匀数据子采样旨在保留更多信息样本(并且忽略信息较少的样本),而不是将所有数据点视为同等重要。先前用于非均匀数据子采样的技术利用试验模型来评估数据的重要性。当试验模型被正确地预训练时,可以实现最佳的采样率。这类试验模型技术可以被配置成使用试验预测评分以及损失函数的一阶和二阶导数来测量数据的重要性。由于最佳负采样率与试验模型的预测评分成比例,因此高采样率可指示不准确的模型预测。采样策略可以解释为使用硬负样本(HNS)。
基于模型的采样算法可以不适用于现实生活场景中。现实生活中推荐***可以响应于用户发起对在线服务模型的请求来部署数据子采样。用户可以接收由服务器返回的推荐。如果用户点击特定的推荐项目,则可以收集与该推荐项目相关联的正实例。否则,如果用户在一段时间内未点击特定的推荐项目,则可以收集与该推荐项目相关联的负实例。可以在每个实例中记录试验预测评分和其他统计数据,以计算用于数据子采样的采样率。所有实例均可以在输入/输出(I/O)之前由数据子采样模块过滤,以减少I/O和网络带宽瓶颈。一个或多个离线模型可以在被在线部署之前利用历史数据来被训练。然而,对于基于模型的方法,因为子采样率是由在线模型确定的,所以这类子采样率对于离线训练目的来说可能是次优的。当使用这类子采样率离线训练的模型被在线部署时,数据子采样受到影响。结果,可以产生不一致的子采样率。
在这些现实生活场景中,基于模型的采样的应用存在两个不可避免的障碍。首先,离线模型训练容易受到模型不规范的影响。模型不规范可能引起较差的结果。不幸的是,由于在线离线的差异,模型不规范是持久的,特别是在真实***的持续集成和部署(CI/CD)中。其次,数据子采样和模型训练的耦合引入了跨***模块的额外依赖性。这类额外的依赖性可能会增加***维护成本,并且引起额外的技术债务。因此,需要用于改进推荐***的数据子采样的技术。
本文描述了使用模型不可知的数据子采样方法来改进推荐***的数据子采样的技术。用户项目图的拓扑可以用来估计每个用户项目交互的重要性(用户项目图中的边),诸如经由图电导。在估计了每个用户项目交互的重要性之后,可以执行传播步骤来平滑所估计的重要性值。因为本文所描述的技术是模型不可知的,所以在某些实施例中,可以组合模型不可知的和基于模型的子采样方法两者的优点。
图1图示了可以根据本公开使用的示例数据子采样***100。***100可以包括用户项目图子***104、试验模型子***106、平滑子***108和整合子***110。***100可以被配置成生成子采样率,该子采样率可以用来对用于训练离线推荐模型的训练数据集进行采样。
用户项目图子***104可以被配置成接收训练数据集102。该训练数据集102可以与用户项目交互相关联。该训练数据集102可以包括多个正实例和多个负实例。例如,如果用户与特定项目交互(例如,点击),则可以收集与该项目相关联的正实例。否则,如果用户在一段时间内未点击特定项目,则可以收集与该项目相关联的负实例。
例如,***100可以被配置成解决二元分类问题,其中 是大小为N的训练集(例如,训练数据集102),并且xn和yn分别是实例n的特征向量和标签。广义逻辑回归(GLM)模型(其中目标模型对应于离线模型(在部署之前))可以表示为其中对数比率(log-odd)g(x;θ)由预测模型实施。N0可以指代训练数据集102中的负实例的数目,并且N1=N-N0可以指代训练数据集102中的正实例的数目。训练数据集102可以为不平衡的,其中负实例的数目可以大大超过正实例的数目(例如,N0>>N1)。
图2更详细地示出了训练数据集102。如图2的示例所示,训练数据集102包括五个实例。该训练数据集102中的前三个实例是正实例。例如,第一个实例指示用户u1点击了项目v1。第二个实例指示用户u2点击了项目v1。第三个实例指示用户u1点击了项目v2。训练数据集102中的最后两个实例是负实例。例如,第四个实例指示用户u2点击了项目v2。第五个实例指示用户u3点击了项目v2。虽然图2的示例中所示的训练数据集102仅包括五个实例,但是应理解,训练数据集102中的实例数目可以包括更多数目的实例,诸如数百个、数千个或数百万个实例。该训练数据集102中的负实例的数目可以大大超过该训练数据集102中的正实例的数目。
返回参考图1,由于信息稀疏地分布在大量的负实例上,负采样可以用来减小数据集大小并提高训练效率。负采样算法可以被配置成利用其重要性的某种测量来对每个负实例进行加权。例如,负实例x的重要性的测量可以表示为π(x)。负实例的重要性可以用作负实例的负采样率。
在一些实施例中,重要性的测量可以通过利用“硬负样本”被分配给负实例。采样率可以与非负硬度评分h(·)成比例:
其中α∈(0,1]是负实例的预设平均子采样率。在线试验模型可以等于f(·;θ*)。例如,在线试验模型可以具有与目标模型相同的函数形式,并且θ*可以为真实参数。因此,基于模型的硬度评分/> 可以被设置为通过等式1获得接近最优的采样率π(xn)。由试验模型/>预测的具有较高评分的负实例更“令人惊讶”,因此对于目标模型f(·;θ)来说更硬。对于一个正示例,π(x)可以用来指代其反事实负采样率。硬负采样过程可以演示如下:
由于子采样后数据分布发生变化,可以对对数比率进行校正,以获得无偏估计:
其中δn∈{0,1}是子采样指示符,并且ln:=logπ(xn)。对数比率校正可以比逆概率加权估计器更有效。然而,当试验模型是不规范时,试验模型的最佳负采样可能无法实现。如上所述,部署基于模型的硬负采样方法可能容易出错,这是因为由于在线-离线模型差异以及持续集成和部署,模型不规范问题持续地存在。
因此,模型不可知的硬度评分ha(·)可以用于维护可扩展和可持续的数据子采样服务。在上述二元分类问题中,每个特征其中cn表示上下文特征,并且实例n的标签是yn。负样本的模型不可知的硬度评分ha(·)可以在不参考试验模型的情况下确定。
为了在不参考试验模型的情况下确定负样本的模型不可知的硬度ha(·),样本硬度可以与图形拓扑相关。用户项目图子***104可以被配置成基于训练数据集102而生成用户项目二分图。用户项目二分图可以包括两组节点。两组节点中的一组可以表示用户,而两组节点中的另一组可以表示项目。用户项目二分图可以包括边,每条边表示用户节点与项目节点之间的交互。例如,用户项目二分图可以表示为(U,V,E),其中节点集表示M个用户,节点集/>表示Q个项目,并且边集/>表示N个用户项目对。对于每个节点对n,yn∈{0,1}表示/>与/>之间是否存在正的交互。
在一些实施例中,用户项目图子***104可以被配置成确定与用户项目二分图中的边相关联的有效电导。用户项目二分图的边可以被视为子采样的实例。在二分图的上下文中,可以使用有效电导的概念来执行硬负采样。
例如,用户项目二分图可以想象成一个电力网络,其中每条边是电导为的导体。电导测量边传递“电流”的能力。当用户/>表达对项目/>的直接偏好时,/>可能较大。特别地,/>可以被设置为等于yn。因此,如果存在直接偏好,电导可以等于1,并且如果不存在表达的直接偏好,则电导可以等于0。/>与/>之间的有效电导/>可以表示网络将“电流”从/>传递到/>的能力(反之亦然)。有效电导/>是有效电阻/>的倒数。/>和/>可以定义如下:
其中e[·]∈{0,1}M+Q是用户项目二分图中的节点的独热编码,并且L+是用户项目二分图的拉普拉斯算子(Laplacian)的伪逆。如果与/>之间有多条导电路径,则有效电导/>可能较大。
图3示出了用于解释二分图302上的有效电导的示例框架300。二分图302可以包括两组节点。一组节点{u1,u2,u3}可以表示用户,而另一组节点{v1,v2}可以表示项目。用户项目二分图可以包括边(标记为1-5),五条边中的每一条表示用户节点与项目节点之间的交互。例如,标记为1的边表示用户节点u1与项目节点v1之间的交互。标记为2的边表示用户节点u2与项目节点v1之间的交互。标记为3的边表示用户节点u1与项目节点v2之间的交互。标记为4的边表示用户节点u2与项目节点v2之间的交互。标记为5的边表示用户节点u3与项目节点v1之间的交互。正边(标记为1-3)可以指示对应的用户点击了对应的项目,而负边(标记为4-5)可以指示对应的用户未点击对应的项目(诸如在某个时间帧内)。
可以确定与用户项目二分图302中的每条边相关联的有效电导。图3的表304示出了与用户项目二分图302中的五条边中的每一条相关联的有效电导。例如,表304示出了标记为1的边具有0.18的有效电导。标记为2的边具有0.21的有效电导。标记为3的边具有0.68的有效电导。标记为4的边具有0.39的有效电导。标记为5的边具有0.12的有效电导。
例如,每个正边可以被分配电导G=1,并且所有负边可以被分配电导G=0。用户项目对(u2,v2)可以具有有效电导Geff(u2,v1)=1/3,并且用户项目对(u3,v2)可以具有有效电导Geff(u3,v2)=0。有效电导可以展示用户偏好。u2与v2之间存在3跳路径(u2→v1→u1→v2),但是u3与v2之间不存在路径。因此,u3可以更偏好v2,而不是u2更偏好v2。由负边表示的用户项目对(u2,v2)可以对应于比同样由负边表示的(u3,v2)更硬的负样本。
返回参考图1,可以经由有效电导来估计样本硬度。有效电导与样本硬度呈正相关。硬度评分可以定义为:
对于负样本,当存在从/>到/>的多条高电导路径时,有效电导可能较高,展示用户对该项目的间接偏好。当间接偏好较高但是/>结果为负时,该实例可以被标识为硬负样本。对于正样本,ha(xn)通过从/>中减去直接导体/>来指代其反事实硬度评分,以消除由标签给出的先验信息。硬度评分可以用来计算等式2中对数比率校正的反事实负采样率。可以不丢弃正样本。
在实施例中,有效电导的直接计算可能是耗时的。代替直接计算有效电导,通勤时间距离comm(u,v)可以首先通过使用科学计算工具的随机行走来近似。则变换Geff(u,v)=2|E|/comm(u,v)可用来将通勤时间转化成有效电导。
模型不可知的方法可能忽略一些硬实例。例如,以上述方式(例如,模型不可知的方法)经由有效电导来估计样本硬度可能使一些困难实例被忽略。可能被模型不可知的方法忽略的硬实例可以被基于模型的方法捕获,诸如通过预训练的试验模型。在一些实施例中,试验模型子***106可以被配置成将试验预测确定为硬度评分。在图4所示的示例框架400中,试验模型子***106可以使预训练的试验模型402生成作为针对每个用户项目对的硬度评分的试验预测。图4的表404将试验预测示为针对训练数据集102中的每个用户项目对的硬度评分。例如,表404示出了用户项目对(u1,v1)具有0.24的试验硬度评分。用户项目对(u2,v1)具有0.96的试验硬度评分。用户项目对(u1,v2)具有0.41的试验硬度评分。用户项目对(u2,v2)具有0.18的试验硬度评分。用户项目对(u3,v2)具有0.29的试验硬度评分。
返回参考图1,在实施例中,平滑子***108可以被配置成平滑硬度评分。平滑子***108可以被配置成平滑与模型不可知的和基于模型的方法两者相关联的硬度评分。平滑子***108可以被配置成基于用户项目二分图的线图变换和图传播来平滑与模型不可知的和基于模型的方法两者相关联的硬度评分。
在一些实施例中,平滑与模型不可知的方法相关联的硬度评分可以包括平滑与负实例中的每个负实例相关联的硬度评分。平滑与负实例中的每个负实例相关联的硬度评分可以包括确定与每个负边的相邻负边相关联的平均有效电导。然后,对于每个负边,可以计算平均有效电导和对应有效电导的加权和。加权和可以等于针对该负边的最终模型不可知的硬度评分。
如图5的示例框架500所示,平滑子***108可以生成用户项目二分图(例如,图302)的线图变换502。平滑子***108可以使用用户项目二分图的线图变换502来平滑模型不可知的硬度评分(例如,图3的表304中所示的有效电导评分)。表504示出了由平滑子***108生成的平滑的模型不可知的硬度评分(例如,最终模型不可知的硬度评分)。同样,平滑子***108可以使用用户项目二分图的线图变换502来平滑基于模型的硬度评分(例如,作为图4的表404中所示的硬度评分的试验预测)。表格506示出了由平滑子***108生成的平滑的基于模型的硬度评分(例如,最终的基于模型的硬度评分)。
为了平滑与模型不可知的和基于模型的方法两者相关联的硬度评分,平滑子***108可以利用图传播技术。从图中得到的边有效电导可能有噪声,从而导致对硬度评分的不准确估计。图传播可以用来平滑硬度评分。通过将用户项目二分图(U,V,E)变换成其对应的线图L(U,V,E)=(VL,EL),可以将边传播简化成节点传播,其中VL=E,并且EL是共享相同节点的边对的集合。
在一些实施例中,模型不可知的硬度评分可以通过传播不确定性来平滑。和/>分别被表示为有效电导评分和边标签的向量。有效电导Geff可以归一化为估计评分Z,并且不确定性评分B可以被计算为Z与Y之间的绝对残差:
最小最大归一化可以用来将硬度评分限制在范围[0,1]内。该最小最大归一化可以被表示为其中AL和DL分别是线图的邻接矩阵和度矩阵。不确定性可以通过解决以下优化问题来平滑:
等式6中的第一项目限制了相邻节点中不确定性的差异。等式6中的第二项目将平滑后的不确定性约束为接近初始不确定性,系数μ控制约束的强度。利用平滑的不确定性向量硬度估计可以通过颠倒等式5来校正。
可以使用迭代近似方法。如果γ=1/(1+μ)且Bt+1=(1-γ)B+γSBt,B0=B,则当t→∞时然而,这种迭代方法是不可扩展的,这是因为变换后的线图总共具有条边,其中Deg(·)表示节点度。替代地,边不确定性可以直接沿着原始图(U,V,E)传播,原始图总共仅含有条边。在边之上的传播规则如下:
其中使用消息传递机制,聚集的不确定性mt(u)可以存储在u中,然后不确定性Bt+1可以通过应用上述规则来更新。
在一些实施例中,与模型不可知的和基于模型的方法两者相关联的硬度评分可以通过传播评分来平滑。我们可以通过迭代Zt+1=(1-γ)直到收敛来直接传播评分/>而不是传播不确定性。在获得最终硬度评分之后,最终硬度评分可以被重新调整以匹配平均子采样率α。
在一些实施例中,整合子***110可以被配置成基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性来生成子采样率。例如,整合子***110可以使用最终模型不可知的硬度评分和最终的基于模型的硬度评分两者来确定最终子采样率。如图6的示例框架600所示,整合子***110可以被配置成确定表504中所示的最终模型不可知的硬度评分与表506中所示的最终基于模型的硬度评分之间的最大值。例如,对于每个实例,整合子***110可以被配置成确定最终模型不可知的硬度评分还是最终的基于模型的硬度评分更大。对于标记为“1”的实例,整合子***110可以被配置成确定最终模型不可知的硬度评分0.21还是最终的基于模型的硬度评分0.29更大。由于最终的基于模型的硬度评分0.29更大,最终硬度评分0.29可以用来计算与标记为“1”的实例相关联的子采样率。整合子***110可以被配置成针对每个实例做出这类确定。整合子***110可以被配置成基于与每个实例相关联的最终硬度评分来生成子采样率。
在一些实施例中,最终子采样率可以基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性来确定。例如,给定样本x,模型不可知的和基于模型的子采样方法两者均可以分别用来计算它们对应的采样率πD(x)和πφ(x)。特别地,πφ(x)是通过使用预训练的试验模型诸如预训练的试验模型402。πD(x)可以为使用等式4中的模型不可知的硬度评分ha(·)的子采样率:
其中是最小采样率,并且(pφ,pD)是满足平均子采样率α的可调线性缩放参数。
在一些实施例中,三种简单而有效的启发式策略可以用来组合模型不可知的和基于模型的子采样方法,以生成最终采样率:最大值、平均值和乘积。
πmax(x)=pmaxmax(πD(x),πφ(x));
πmean(x)=(πD(x)+πφ(x))/2;
等式8
其中是应用乘积组合时使用的额外超参数,并且pmax和pprod被调节到将平均采样率归一化为α。在子采样率组合之后,可以用等式8中的概率对每个x进行采样。每个采样实例均可以遵循正常的训练协议来优化训练目标,如等式2所示,这保证了最终结果被很好地校准。
在实施例中,最终采样率可以用来对训练数据102中的负实例进行子采样。训练数据102中的负实例可以基于最终采样率进行子采样。训练数据102中的子采样负实例和所有正实例可以共同构成最终子采样训练集112。图7示出了示例子采样训练集112。如图7的示例所示,训练数据102中标记为“5”的负实例不再出现在子采样训练集112中。因此,在子采样期间,没有选择训练数据102中标记为“5”的负实例。训练数据102中标记为“4”的负实例和训练数据102中标记为“1-3”的正实例仍然存在于子采样训练集112中。
在一些实施例中,可以使用训练数据102中的正实例和子采样的负实例来训练离线推荐模型。例如,可以使用子采样训练集112来训练离线推荐模型102。可以部署经训练的离线推荐模型。所部署的离线推荐模型可以被配置成向用户推荐项目。
图8图示了改进用于推荐***的数据子采样的示例过程800。例如,***100可以执行过程800。尽管在图8中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
训练数据集可以与用户项目交互相关联。该训练数据集可以包括多个正实例和多个负实例。例如,如果用户与特定项目交互(例如,点击),则可以收集与该项目相关联的正实例。否则,如果用户在一段时间内未点击特定项目,则可以收集与该项目相关联的负实例。训练数据集可以是不平衡的,其中负实例的数目可以大大超过正实例的数目。
在802,可以构建与训练数据相关的用户项目图。用户项目二分图可以包括两组节点。两组节点中的一组可以表示用户,并且两组节点中的另一组可以表示项目。用户项目二分图可以包括边,其中每条边表示用户节点与项目节点之间的交互。正边可以指示对应的用户点击了对应的项目,而负边可以指示对应的用户未点击对应的项目(例如在某个时间帧内)。
由于信息稀疏地分布在大量负实例上,负采样可以用来减小数据集大小并且提高训练效率。负采样算法可以被配置成利用其重要性的某种测量来对每个负实例进行加权。例如,负实例x的重要性的测量可以表示为π(x)。负实例的重要性可以用作负实例的负采样率。在804,可以基于用户项目图,经由图电导来估计用户项目交互的重要性。模型不可知的方法可能忽略一些硬实例。可能被模型不可知的方法忽略的硬实例可以通过基于模型的方法被捕获,诸如通过预训练的试验模型。在806,可以使用预训练的试验模型,经由样本硬度来测量训练数据的重要性。预训练的试验模型可以生成作为针对训练数据中的每个用户项目对的硬度评分的试验预测。
在一些实施例中,最终子采样率可以基于从用户项目图中估计的重要性和由预训练的试验模型测量的重要性来确定。在808,可以基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性来生成子采样率。例如,给定样本x,模型不可知的和基于模型的子采样方法两者均可以分别用来计算它们对应的采样率πD(x)和πφ(x)。在一些实施例中,三种简单而有效的启发式策略可以用来组合模型不可知的和基于模型的子采样方法,以生成最终采样率:最大值、平均值和乘积。在子采样率组合之后,可以用等式8中的概率对每个x进行采样。每个采样实例均可以遵循正常的训练协议来优化训练目标,如等式2所示,这保证了最终结果被很好地校准。
图9图示了改进用于推荐***的数据子采样的示例过程900。例如,***100可以执行过程900。尽管在图9中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
在一些实施例中,最终子采样率可以基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性来确定。在902,可以基于从用户项目图估计的重要性和由预训练的试验模型测量的重要性来生成子采样率。例如,给定样本x,模型不可知的和基于模型的子采样方法两者均可以分别用来计算它们对应的采样率πD(x)和πφ(x)。在一些实施例中,三种简单而有效的启发式策略可以用来组合模型不可知的和基于模型的子采样方法,以生成最终采样率:最大值、平均值和乘积。在子采样率组合之后,可以用等式8中的概率对每个x进行采样。每个采样实例均可以遵循正常的训练协议来优化训练目标,如等式2所示,这保证了最终结果被很好地校准。
最终采样率可以用来对训练数据中的负实例进行子采样。在904,可以基于最终子采样率,对训练数据中的负实例进行子采样。训练数据中的子采样负实例和所有正实例可以共同构成最终子采样训练集。可以使用训练数据中的正实例和子采样的负实例来训练离线推荐模型。在906,可以使用训练数据中的正实例和子采样的负实例来训练离线推荐模型。例如,可以使用子采样训练集来训练离线推荐模型。可以部署经训练的离线推荐模型。所部署的离线推荐模型可以被配置成向用户推荐项目。
图10图示了改进推荐***的数据子采样的示例过程1000。例如,***100可以执行过程1000。尽管在图10中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
训练数据集可以与用户项目交互相关联。该训练数据集可以包括多个正实例和多个负实例。例如,如果用户与特定项目交互(例如,点击),则可以收集与该项目相关联的正实例。否则,如果用户在一段时间内未点击特定项目,则可以收集与该项目相关联的负实例。训练数据集可以是不平衡的,其中负实例的数目可以大大超过正实例的数目。
在1002,可以构建与训练数据相关联的用户项目图。用户项目二分图可以包括两组节点。两组节点中的一组可以表示用户,并且两组节点中的另一组可以表示项目。用户项目二分图可以包括边,每条边表示用户节点与项目节点之间的交互。正边可以对应于训练数据中的正实例,并且负边可以对应于训练数据中的负实例。
在1004,可以通过计算对应于每个负边的有效电导来估计与负实例中的每个负实例相关联的硬度评分。例如,用户项目二分图可以想象成一个电力网络,其中每条边是电导为/>的导体。电导测量边传递“电流”的能力。当用户/>表达对项目/>的直接偏好时,/>可能较大。特别地,/>可以被设置为等于yn。因此,如果存在直接偏好,电导可以等于1,并且如果不存在表达的直接偏好,电导可以等于0。与/>之间的有效电导/>可以表示网络将“电流”从/>传递到/>的能力(反之亦然)。如果/>与/>之间有多条导电路径,则有效电导/>可能较大。有效电导可以展示用户偏好。样本硬度可以经由有效电导来估计。有效电导与样本硬度呈正相关。
在1006,可以使用图传播来平滑与负实例中的每个负实例相关联的硬度评分。从图中得到的边有效电导可能有噪声,从而导致对硬度评分的不准确估计。图传播可以用来平滑硬度评分。通过将用户项二分图(U,V,E)变换成其对应的线图L(U,V,E)=(VL,EL),可以将边传播简化成节点传播,其中VL=E,并且EL是共享相同节点的边对的集合。
图11图示了改进推荐***的数据子采样的示例过程1100。例如,***100可以执行过程1100。尽管在图11中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
从图中得出的边有效电导可能有噪声,从而导致硬度评分的不准确估计。图传播可以用来平滑硬度评分。通过将用户项二分图(U,V,E)变换成其对应的线图L(U,V,E)=(VL,EL),可以将边传播简化成节点传播,其中VL=E,并且EL是共享相同节点的边对的集合。
与负实例中的每个负实例相关联的硬度评分可以使用图形传播进行平滑。平滑与负实例中的每个负实例相关联的硬度评分可以包括确定与每个负边的相邻负边相关联的平均有效电导。在1102,可以确定与每个负边的相邻负边相关联的平均有效电导。然后,对于每个负边,可以计算平均有效电导和对应有效电导的加权和。在1104,可以针对每个负边计算平均有效电导和对应有效电导的加权和。加权和可以等于针对该负边的最终的模型不可知的硬度评分。
图12图示了改进用于推荐***的数据子采样的示例过程1200。例如,***100可以执行过程1200。尽管在图12中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
模型不可知的方法可以忽略一些硬实例。例如,以上述方式(例如,模型不可知的方法)经由有效电导来估计样本硬度可能使一些硬实例被忽略。可能被模型不可知的方法忽略的硬实例可以被基于模型的方法被捕获,诸如通过预训练的试验模型。在1202,可以生成与训练数据中的每个负实例相关联的硬度评分。可以使用预训练的试验模型来生成与训练数据中的每个负实例相关联的硬度评分。在1204,可以平滑与负实例中的每个负实例相关联的硬度评分。例如,可以基于用户项目二分图的线图变换和图传播来平滑与负实例中的每个负实例相关联的硬度评分。
图13图示了改进用于推荐***的数据子采样的示例过程1300。例如,***100可以执行过程1300。尽管在图13中被描绘为操作序列,但是本领域普通技术人员将会理解,各种实施例可以添加、移除、重新排序或修改所描绘的操作。
用户项目二分图的线图变换可以用来平滑模型不可知的硬度评分和基于模型的硬度评分。为了平滑与模型不可知的和基于模型的方法两者相关联的硬度评分,可以利用图传播技术。从图中得到的边有效电导可能有噪声,从而导致对硬度评分的不准确估计。图传播可以用来平滑硬度评分。
在1302,可以确定与训练数据中的每个负实例相关联的最终硬度评分。最终硬度评分可以基于依据用户项目图确定的对应平滑硬度评分和由预训练的试验模型确定的对应平滑硬度评分来被确定。例如,可以确定最终的模型不可知的硬度评分与最终的基于模型的硬度评分之间的最大值。例如,对于每个实例,可以确定最终的模型不可知的硬度评分还是最终的基于模型的硬度评分更大。
可以基于与每个实例相关联的最终硬度评分来生成子采样率。在1304,可以基于与负实例中的每个负实例相关联的最终硬度评分来生成训练数据中的负实例的子采样率。可以基于子采样率来对训练数据中的负实例进行子采样。可以使用训练数据中的正实例和子采样的负实例来训练离线推荐模型。
如上所述,对于基于模型的采样,试验不规范可能导致模型性能差异。下面描述的是实验结果,示出了试验不规范可能导致模型性能的差异。下面还描述了对两个数据集的实验结果,这些实验结果展示了本文所描述的模型不可知的子采样方法的优越性。为调查模型不可知的硬度评分的有效性、评分传播以及整合模型不可知的和基于模型的方法的益处而进行的广泛消融研究的结果也将在下文描述。最后,下面论述有效电阻及其与负采样的关系。
使用第一数据集(例如,KuaiRec)和第二数据集(例如,微软新闻数据集(MIND))展示下述经验结果。对于这两个数据集,80%的数据用于训练,10%用于验证,并且10%用于测试。所有的实验结果均是在一次随机数据分割中随机初始化的8次运行后报告的。两个数据集的训练数据的平均子采样率为α=0.2。
第一数据集是从视频共享移动应用程序收集的推荐数据集。第一数据集一般是具有完全观察到的小型子矩阵的稀疏的用户项目交互矩阵。对完全观察到的子矩阵进行裁剪,并且只考虑稀疏矩阵中的其余条目,这是因为那些数据是在自然设置下收集的。标签“观看率”被使用,其表示用户观看视频的总持续时间除以视频持续时间。在实验中,如果“观看率”大于3,则认为用户喜欢一段视频(正实例)。第二数据集是大规模的新闻推荐数据集,其具有指示用户对推荐新闻的印象的二进制标签。每个新闻语料库中的内容数据在实验期间没有被使用。第二数据集不需要额外的预处理。
关于实验的基线和模型选择,考虑了两种基线子采样方法。第一种基线子采样方法是模型不可知的均匀负采样,并且第二种是基于模型的近似最优采样方法(Opt采样),该方法依赖于试验模型的预测评分作为硬度评分来计算采样率。关于模型架构,选择广度和深度模型作为训练目标模型,以验证本文所描述的模型不可知的方法的有效性。
对于基于模型的子采样方法,预训练试验模型以估计样本硬度。为了测试试验不规范的影响,考虑了五种类型的试验模型。这些试验模型是:广度和深度模型(W&D)、线性逻辑回归模型(LR)、自动特征交互选择模型(AFI)、神经分解机器模型(NFM)和深度分解机器模型(DFM)。在实验描述的其余部分中,除非另有规定,否则W&D用作试验模型,这是因为它与目标模型共享相同的架构(一致性试验)。所有试验模型均使用10%的训练数据进行训练。
如上所述,基于模型的子采样可以依赖于正确指定的试验模型。当在改变试验模型架构时,通过使用相同的基于模型的子采样方法来不规范试验模型时,在第一数据集上研究了这个概念。图14示出了报告目标模型性能的箱线图1400。如图1400所示,从不同的试验模型获得的目标模型的曲线下面积(AUC)从0.8557(AFI)变化到0.8577(LR)。由于标准偏差约为0.001,AUC差异显著,展示了在每天处理数百万个数据点的大规模推荐***中存在潜在损失。这一结果巩固了试验不规范的影响,这证明了使用模型不可知的子采样方法(诸如本文所描述的技术)的合理性。
利用不同的数据采样策略训练目标模型。图15示出了一组箱线图1500,其示出了两个数据集上所有训练配置的AUC性能。左边的图示出了第一数据集上所有训练配置的AUC性能,而右边的图示出了第二数据集上所有训练配置的AUC性能。如图15所示,在两个数据集之上,模型不可知的有效电导(MA-EC)采样策略始终优于均匀采样基线。在第一数据集中,MA-EC获得了与Opt采样相当的结果。在第二数据集中,Opt采样与均匀采样相比没有改进,而且比MA-EC更差。同样如图15所示,通过经由传播平滑硬度估计,获得了额外的性能。图15中还示出了经由最大策略整合模型不可知的方法和基于模型的方法的性能(在该组箱形图1500中称为“Comb(Max.))。图15示出了在两个数据集上,整合比每个单独的方法执行得更好。类似地,来自Opt采样和MA-EC的平滑评分可以被整合,实现在该组箱线图1500的最后一列中展示的最佳性能。
第一数据集用来进行广泛的消融研究。关于子采样率,通过整合来自Opt采样和MA-EC的平滑评分,将均匀采样与本文所描述的最佳方法进行比较。图16示出了箱线图1600。箱线图1600展示了本文所描述的方法在不同的子采样率下始终优于均匀采样。例如,箱线图1600示出本文所描述的方法的AUC始终高于不同子采样率下均匀采样的AUC。
关于整合策略,为了调查来自MA-EC和Opt采样的硬度评分是否互补,设计了对照实验。为实例分配了每个方法的子采样率。对于两种方法之间的子采样率不一致的实例,将它们的子采样率翻转到另一种方法。例如,向πD(x)<0.2且πφ(x)>0.8的实例分配了子采样率πφ(x),并且向其余实例分配给子采样率πD(x)。实验结果示出了,通过向大部分样本分配一组评分并翻转样本评分的部分,可以获得更好的模型性能。这证实了某些硬负实例可能被一种方法忽略,并且被另一种方法发现。
控制实验证明了整合MA-EC和Opt采样的合理性。对整合策略(最大值、平均值和乘积)进行了实验。图17a示出了三种整合方法的一组箱线图1700。对于每种方法,给出了超参数的九种配置,其中/>和/>对于产品策略,所有实验的超参数/>从箱线图1700中,可以观察到最大值策略始终给出与Opt采样和MA-EC相当或更好的结果。而在手段和产品策略上没有观察到显著的改进。对于产品策略,模型性能甚至恶化。MA-EC需要计算有效电导来计算子采样率。有效电导计算不是一个瓶颈,这是因为它可以在计算后重复使用。MA-EC是模型不可知的,因此可以支持不同目标模型的训练。
调查了经由图传播校正硬度评分的有效性。评分校正在Opt采样和MA-EC及其整合中的应用是令人感兴趣的。此外,在应用评分校正和评分整合两者时,可以尝试整合校正的评分或校正整合评分。后者总是导致更差的性能,因此本文中呈现的只是前者的结果。图17b示出了报告消融研究的模型性能的一组箱线图1702。对于由Opt采样和MA-EC估计的校正评分的实验,探索了传播系数γ∈{0.05,0.1,0.2,0.3,0.4}。对于每个系数,进行迭代以平滑评分,直到收敛。不确定性传播显著提高了两种子采样方法的模型性能。在评分传播中,即在通过不确定性传播校正的评分上运行,模型性能在Opt采样中略有改进,而在MA-EC中恶化。在校正评分的整合中,来自两种方法的最佳配置的硬度评分经由上述最大策略组合。箱线图1702中报告的结果展示,整合策略不仅在原始评分上而且在校正评分上提高了模型性能。
等式3中为有效阻力Reff提供的定义通常用于图形稀疏化。具有高有效电阻的边被认为对维持图拓扑相当重要。由于使用有效电导和有效电阻的边重要性的定义相互抵触,因此可以看出,定义使用有效电阻的边重要性不适用于本文所描述的场景。例如,比较了以有效电阻(MA-ER)和有效电导(MA-EC)作为硬度评分的两种模型不可知的子采样方法。在所有边均有单位电阻的图上计算有效电阻。MA-ER无法捕获到硬负实例。在第一数据集上,MA-ER产生了0.8535的平均测试AUC,这比均匀采样(0.8553)差。为了揭示MA-ER和MA-EC如何影响模型训练,随机选择每种方法中的一个运行来可视化模型训练指标。如图18的一组曲线图1800所示,当使用MA-ER时,训练AUC保持与收敛前测试AUC相同。此外,模型收敛较早。与此形成鲜明对比的是,在MA-EC中,训练AUC与测试AUC的差距巨大。这一差距示出,训练实例总体上比测试集中的实例更硬。这证实了MA-EC发现了硬负实例,而MA-ER没有。
图19图示了可以用于各种方面的计算设备,诸如图1所示的服务、网络、模块和/或设备。关于图1的示例架构,云网络(及其任何组件)、客户端设备和/或网络均可以由图19的计算设备1900的一个或多个实例来实施。图19所示的计算机架构示出了常规的服务器计算机、工作站、台式计算机、膝上型电脑、平板电脑、网络设备、PDA、电子阅读器、数字蜂窝电话或其他计算节点,并且可以用于实行本文所描述的计算机的任何方面,诸如实施本文所描述的方法。
计算设备1900可以包括基板或“主板”,这是一种印刷电路板,许多组件或设备可以借助于***总线或其他电气通信路径连接到该印刷电路板。一个或多个中央处理单元(CPU)1904可以结合芯片集1906操作。CPU 1904可以为执行计算设备1900的操作所需的算术和逻辑运算的标准可编程处理器。
(一个或多个)CPU1904可以通过操纵开关元件从一个离散物理状态转变到下一个离散物理状态来执行必要的操作,这些开关元件可以区分并改变这些状态。开关元件一般可以包括保持两个二进制状态之一的电子电路,诸如触发器,以及基于一个或多个其他开关元件的状态的逻辑组合提供输出状态的电子电路,诸如逻辑门。这些基本开关元件可以被组合以创建更复杂的逻辑电路,包括寄存器、加法器-减法器、算术逻辑单元、浮点单元和类似项。
(一个或多个)CPU1904可以扩充或替换为其他处理单元,诸如GPU(一个或多个)1905。(一个或多个)GPU1905可以包括专用于但是不必限于高度并行计算的处理单元,诸如图形和其他可视化相关处理。
芯片集1906可以在(一个或多个)CPU1904和基板上的其余组件与设备之间提供接口。芯片集1906可以提供到用作计算设备1900中的主存储器的随机存取存储器(RAM)1908的接口。芯片集1906可以另外提供到诸如只读存储器(ROM)1920或非易失性RAM(NVRAM)(未示出)的计算机可读存储介质的接口,用于存储可以帮助启动计算设备1900并在各种组件与设备之间传递信息的基本例程。ROM 1920或NVRAM也可以存储根据本文所描述的方面的计算设备1900的操作所必需的其他软件组件。
计算设备1900可以通过局域网(LAN)使用与远程计算节点和计算机***的逻辑连接部在网络环境中操作。芯片集1906可以包括用于通过网络接口控制器(NIC)1922(诸如千兆以太网适配器)提供网络连接部的功能性。NIC 1922能够通过网络1916将计算设备1900连接到其他计算节点。应理解,多个NIC 1922可以存在于计算设备1900中,将计算设备连接到其他类型的网络和远程计算机***。
计算设备1900可以连接到为计算机提供非易失性存储的大容量存储设备1928。大容量存储设备1928可以存储***程序、应用程序、其他程序模块和数据,这些已在本文中更详细地描述。大容量存储设备1928可以通过连接到芯片集1906的存储控制器1924连接到计算设备1900。大容量存储设备1928可以由一个或多个物理存储单元组成。大容量存储设备1928可以包括管理组件。存储控制器1924可以通过串行连接SCSI(SAS)接口、串行高级技术附件(SATA)接口、光纤通道(FC)接口或用于在计算机与物理存储单元之间物理连接和传递数据的其他类型的接口与物理存储单元对接。
计算设备1900可以通过变换物理存储单元的物理状态以反映所存储的信息,将数据存储在大容量存储设备1928上。物理状态的具体变换可以取决于各种因素和本描述的不同实施方式。这些因素的示例可以包括但不限于,用来实施物理存储单元的技术以及大容量存储设备1928是被表征为主存储器还是次存储器和类似项。
例如,计算设备1900可以通过存储控制器1924发出指令,将信息存储到大容量存储设备1928,以改变磁盘驱动单元中特定位置的磁性特性、光学存储单元中特定位置的反射或折射特性,或固态存储设备中特定电容器、晶体管或其他分立元件的电气特性。在不脱离本描述的范围和精神的情况下,物理介质的其他变换是可能的,提供前述示例只是为了便于本描述。计算设备1900可以另外通过检测物理存储单元内的一个或多个特定位置的物理状态或特性来从大容量存储设备1928读取信息。
除了上述大容量存储设备1928之外,计算设备1900可以访问其他计算机可读存储介质,以存储和检索信息,诸如程序模块、数据结构或其他数据。本领域技术人员应理解,计算机可读存储介质可以为提供非暂时性数据存储且可以由计算设备1900访问的任何可用介质。
作为示例而非限制,计算机可读存储介质可以包括以任何方法或技术实施的易失性和非易失性、暂时性计算机可读存储介质和非暂时性计算机可读存储介质,以及可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、可擦除可编程ROM(“EPROM”)、电可擦除可编程ROM(“EEPROM”)、闪存或其他固态存储技术、光盘ROM(“CD-ROM”)、数字多功能盘(“DVD”)、高清晰度DVD(“HD-DVD”)、BLU-RAY或其他光存储件、磁带盒、磁带、磁盘存储件、其他磁存储设备或可以用来以非暂时性方式存储期望的信息的任何其他介质。
大容量存储设备,诸如图19所示的大容量存储设备1928,可以存储用于控制计算设备1900操作的操作***。操作***可以包括LINUX操作***的一个版本。操作***可以包括来自微软公司(MICROSOFT Corporation)的WINDOWS服务器操作***的版本。根据另外的方面,操作***可以包括UNIX操作***的版本。也可以使用各种移动电话操作***,诸如IOS和ANDROID。应理解,也可以利用其他操作***。大容量存储设备1928可以存储由计算设备1900使用的其他***或应用程序和数据。
大容量存储设备1928或其他计算机可读存储介质也可以用计算机可实行指令编码,这些计算机可实行指令在加载到计算设备1900时,可以将计算设备从通用计算***变换为能够实施本文所描述的方面的专用计算机。这些计算机可实行指令通过指定(一个或多个)CPU1904如何在状态之间转变来变换计算设备1900,如上所述。计算设备1900可以访问存储计算机可实行指令的计算机可读存储介质,这些计算机可实行指令在由计算设备1900实行时,可以执行本文所描述的方法。
计算设备,诸如图19所示的计算设备1900,还可以包括输入/输出控制器1932,用于接收和处理来自多个输入设备,诸如键盘、鼠标、触摸板、触摸屏、电子笔或其他类型的输入设备的输入。类似地,输入/输出控制器1932可以向显示器,诸如计算机监视器、平板显示器、数字投影仪、打印机、绘图仪或其他类型的输出设备提供输出。应理解,计算设备1900可以不包括图19所示的所有组件,可以包括图19中未明确示出的其他组件,或者可以利用与图19所示完全不同的架构。
如本文所述,计算设备可以为物理计算设备,诸如图19的计算设备1900。计算节点还可以包括虚拟机主机进程和一个或多个虚拟机实例。计算机可实行指令可以由计算设备的物理硬件通过解释和/或执行在虚拟机的上下文中存储和实行的指令来间接实行。
应理解,该方法和***不限于特定方法、特定组件或特定实施。还应理解,本文所使用的术语仅仅是为了描述特定的实施例,而不旨在为了限制。
如说明书和所附权利要求书中所用,单数形式“一(a)”、“一个(an)”和“该(the)”包括复数指示物,除非上下文另有明确规定。范围在本文中可以表示为从“约(about)”一个特定值,和/或到“约”另一个特定值。当表达这类范围时,另一个实施例包括从一个特定值和/或到另一个特定值。类似地,当通过使用先行词“约”将值表示为近似值时,将理解该特定值形成了另一个实施例。还应理解,范围中的每一个的端点相对于另一个端点和独立于另一个端点均是重要的。
“任选的(Optional)”或“任选地(optionally)”意指随后描述的事件或情况可以发生或可以不发生,该描述包括所述事件或情况发生的实例和不发生的实例。
在本说明书的整个描述和权利要求中,词语“包括(comprise)”及其变体,诸如“包括(comprising)”和“包括(comprises)”,意指“包括但不限于”,并且不旨在排除例如其他组件、整体或步骤。“示例性的(Exemplary)”意指“的一个示例(an example of)”,并不旨在传达优选或理想实施例的指示。“诸如(such as)”不是在限制性的意义上使用,而是用于解释的目的。
描述了可以用来执行所描述的方法和***的组件。当描述这些组件的组合、子集、相互作用、组等时,应理解,虽然没有明确描述这些组件的各种单独和集体的组合和排列中的每一个的具体引用,但是对于所有的方法和***,每一个均在本文中被具体考虑和描述。这适用于本申请的所有方面,包括但不限于所描述的方法中的操作。因此,如果存在可执行的各种附加操作,应理解,这些附加操作中的每一个均可以用所描述的方法的任何特定实施例或实施例的组合来执行。
通过参考以下优选实施例的详细说明和其中包括的示例以及附图及其说明,可以更容易理解本方法和***。
如本领域技术人员所知,该方法和***可以采用全硬件实施例、全软件实施例或软件和硬件相结合的实施例的形式。此外,该方法和***可以采取计算机可读存储介质上的计算机程序产品的形式,该计算机可读存储介质中体现有计算机可读程序指令(例如,计算机软件)。更具体地,本方法和***可以采取网络实施的计算机软件的形式。可以利用任何合适的计算机可读存储介质,包括硬盘、CD-ROM、光存储设备或磁存储设备。
下文参考方法、***、装置和计算机程序产品的框图和流程图示说明,描述这些方法和***的实施例。应理解,框图和流程图示中的每个框以及框图和流程图示中的框的组合可以分别由计算机程序指令来实施。这些计算机程序指令可以被加载到通用计算机、专用计算机或其他可编程数据处理装置上以产生机器,使得在计算机或其他可编程数据处理装置上实行的指令创建用于实施流程图的一个或多个框中指定的功能的手段。
这些计算机程序指令也可以存储在计算机可读存储器中,其可以引导计算机或其他可编程数据处理装置以特定方式运行,使得存储在计算机可读存储器中的指令产生制造品,包括用于实施流程图的一个或多个框中指定的功能的计算机可读指令。计算机程序指令也可以被加载到计算机或其他可编程数据处理装置上,以促使在计算机或其他可编程装置上执行一系列操作步骤,从而产生计算机实施的过程,使得在计算机或其他可编程装置上实行的指令提供用于实施流程图的一个或多个框中指定的功能的步骤。
上述各种特征和过程可以相互独立地使用,或者以各种方式组合使用。所有可能的组合和子组合均旨在落入本公开的范围内。此外,在一些实施方式中,可以省略某些方法或过程框。本文所描述的方法和过程也不限于任何特定的顺序,并且与其相关的框或状态可以按其他适当的顺序来执行。例如,所描述的框或状态可以按不同于具体描述的顺序来执行,或者多个框或状态可以组合在单个框或状态中。示例框或状态可以串行、并行或以某种其他方式执行。可以向所描述的示例实施例添加或从中移除框或状态。本文所描述的示例***和组件可以与所描述的不同地配置。例如,与所描述的示例实施例相比,可以添加、移除或重新排列元件。
还应理解,各种项目被图示为在使用时存储在存储器中或存储件上,并且出于存储器管理和数据完整性的目的,这些项目或其部分可以在存储器与其他存储设备之间传递。另选地,在其他实施例中,软件模块和/或***中的一些或所有可以在另一设备上的存储器中实行,并且经由计算机间通信与所图示的计算***通信。此外,在一些实施例中,***和/或模块中的一些或所有可以按其他方式实施或提供,诸如至少部分地以固件和/或硬件实施或提供,包括但不限于一个或多个专用集成电路(“ASIC”)、标准集成电路、控制器(例如,通过实行适当的指令,并且包括微控制器和/或嵌入式控制器)、现场可编程门阵列(“FPGA”)、复杂可编程逻辑器件(“CPLD”)等。模块、***和数据结构中的一些或所有也可以存储(例如,作为软件指令或结构化数据)在计算机可读介质上,诸如硬盘、存储器、网络或便携式媒体制品,以由适当的设备或经由适当的连接部读取。***、模块和数据结构也可以作为生成的数据信号(例如,作为载波或其他模拟或数字传播信号的一部分)在各种计算机可读传输介质上传输,包括基于无线和基于有线/电缆的介质,并且可以采取各种形式(例如,作为单个或多路复用模拟信号的一部分,或者作为多个离散的数字分组或帧)。在其他实施例中,这类计算机程序产品也可以采取其他形式。因此,本发明可以用其他计算机***配置来实施。
虽然已结合优选实施例和特定实例对方法和***进行了描述,但是并不旨在将范围限制在所阐述的特定实施例中,因为本文实施例在所有方面均旨在说明性而非限制性。
除非另有明确说明,否则不得将本文所阐述的任何方法解释为要求以特定顺序执行其操作。因此,在方法权利要求实际上没有陈述其操作所遵循的顺序,或者在权利要求或说明书中没有以其他方式具体说明操作将限于特定顺序的情况下,在任何方面均不旨在推断顺序。这适用于任何可能的非明示的解释基础,包括:关于步骤安排或操作流程的逻辑事项;源自语法组织或标点符号的朴素含义;以及说明书中描述的实施例的数目或类型。
对于本领域技术人员显而易见的是,在不脱离本公开的范围或精神的情况下可以进行各种修改和变更。考虑到本文所描述的说明书和实践,其他实施例对于本领域技术人员来说将是显而易见的。其意图是,说明书和示例性附图仅被认为是示例性的,真正的范围和精神由所附权利要求指示。
Claims (20)
1.一种改进用于推荐***的数据子采样的方法,包括:
构建与训练数据相关联的用户项目图;
基于所述用户项目图,经由图电导来估计用户项目交互的重要性;
使用预训练的试验模型,经由样本硬度来测量所述训练数据的重要性;以及
基于从所述用户项目图估计的所述重要性和由所述预训练的试验模型测量的所述重要性,生成子采样率。
2.根据权利要求1所述的方法,还包括:
基于所述子采样率,对所述训练数据中的负实例进行子采样。
3.根据权利要求2所述的方法,还包括:
使用所述训练数据中的正实例和子采样的所述负实例来训练离线推荐模型。
4.根据权利要求1所述的方法,其中构建与所述训练数据相关联的所述用户项目图还包括:
从所述训练数据构建二分图,其中所述二分图包括正边和负边,所述正边对应于所述训练数据中的正实例,并且所述负边对应于所述训练数据中的负实例。
5.根据权利要求4所述的方法,其中基于所述用户项目图,经由图电导来估计所述用户项目交互的重要性还包括:
通过计算对应于每个负边的有效电导,估计与所述负实例中的每个负实例相关联的硬度评分;以及
使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分。
6.根据权利要求5所述的方法,其中使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分还包括:
确定与每个负边的相邻负边相关联的平均有效电导;以及
对于每个负边,计算所述平均有效电导和对应有效电导的加权和。
7.根据权利要求1所述的方法,其中使用预训练的试验模型,经由样本硬度来测量所述训练数据的重要性还包括:
使用所述预训练的试验模型生成与所述训练数据中的每个负实例相关联的硬度评分;以及
平滑与所述负实例中的每个负实例相关联的所述硬度评分。
8.根据权利要求1所述的方法,其中基于从所述用户项目图估计的所述重要性和由所述预训练的试验模型测量的所述重要性,生成子采样率还包括:
基于依据所述用户项目图确定的对应平滑硬度评分和由所述预训练的试验模型确定的对应平滑硬度评分,确定与所述训练数据中的每个负实例相关联的最终硬度评分;以及
基于与所述负实例中的每个负实例相关联的所述最终硬度评分,生成训练数据中的负实例的所述子采样率。
9.一种***,包括:
至少一个处理器;以及
至少一个存储器,包括计算机可读指令,所述计算机可读指令在由所述至少一个处理器执行时使所述***执行操作,所述操作包括:
构建与训练数据相关联的用户项目图;
基于所述用户项目图,经由图电导来估计用户项目交互的重要性;
使用预训练的试验模型,经由样本硬度来测量所述训练数据的重要性;以及
基于从所述用户项目图估计的所述重要性和由预训练的所述试验模型测量的所述重要性,生成子采样率。
10.根据权利要求9所述的***,其中构建与所述训练数据相关联的所述用户项目图还包括:
从所述训练数据构建二分图,其中所述二分图包括正边和负边,所述正边对应于所述训练数据中的正实例,并且所述负边对应于所述训练数据中的负实例。
11.根据权利要求10所述的***,其中基于所述用户项目图,经由图电导来估计所述用户项目交互的所述重要性还包括:
通过计算对应于每个负边的有效电导,估计与所述负实例中的每个负实例相关联的硬度评分;以及
使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分。
12.根据权利要求11所述的***,其中使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分还包括:
确定与每个负边的相邻负边相关联的平均有效电导;以及
对于每个负边,计算所述平均有效电导和对应有效电导的加权和。
13.根据权利要求9所述的***,其中使用预训练的试验模型,经由样本硬度来测量所述训练数据的重要性还包括:
使用所述预训练的试验模型生成与所述训练数据中的每个负实例相关联的硬度评分;以及
平滑与所述负实例中的每个负实例相关联的所述硬度评分。
14.根据权利要求9所述的***,其中基于从所述用户项目图估计的所述重要性和由所述预训练的试验模型测量的所述重要性,生成子采样率还包括:
基于依据所述用户项目图确定的对应平滑硬度评分和由所述预训练的试验模型确定的对应平滑硬度评分,确定与所述训练数据中的每个负实例相关联的最终硬度评分;以及
基于与所述负实例中的每个负实例相关联的所述最终硬度评分,生成所述训练数据中的负实例的所述子采样率。
15.一种非暂时性计算机可读存储介质,存储有计算机可读指令,所述计算机可读指令在由处理器执行时使所述处理器实施操作,所述操作包括:
构建与训练数据相关联的用户项目图;
基于所述用户项目图,经由图电导来估计用户项目交互的重要性;
使用预训练的试验模型,经由样本硬度来测量所述训练数据的重要性;以及
基于从所述用户项目图估计的所述重要性和由所述预训练的试验模型测量的所述重要性,生成子采样率。
16.根据权利要求15所述的非暂时性计算机可读存储介质,其中构建与训练数据相关联的用户项目图还包括:
从所述训练数据构建二分图,其中所述二分图包括正边和负边,所述正边对应于所述训练数据中的正实例,并且所述负边对应于所述训练数据中的负实例。
17.根据权利要求16所述的非暂时性计算机可读存储介质,其中基于所述用户项目图,经由图电导来估计用户项目交互的所述重要性还包括:
通过计算对应于每个负边的有效电导,估计与所述负实例中的每个负实例相关联的硬度评分;以及
使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分。
18.根据权利要求17所述的非暂时性计算机可读存储介质,其中使用图传播来平滑与所述负实例中的每个负实例相关联的所述硬度评分还包括:
确定与每个负边的相邻负边相关联的平均有效电导;以及
对于每个负边,计算所述平均有效电导和对应有效电导的加权和。
19.根据权利要求15所述的非暂时性计算机可读存储介质,其中使用所述预训练的试验模型,经由所述样本硬度来测量所述训练数据的所述重要性还包括:
使用所述预训练的试验模型生成与所述训练数据中的每个负实例相关联的硬度评分;以及
平滑与所述负实例中的每个负实例相关联的所述硬度评分。
20.根据权利要求15所述的非暂时性计算机可读存储介质,其中基于从所述用户项目图估计的所述重要性和由所述预训练的试验模型测量的所述重要性,生成子采样率还包括:
基于依据所述用户项目图确定的对应平滑硬度评分和由预训练的所述试验模型确定的对应平滑硬度评分,确定与所述训练数据中的每个负实例相关联的最终硬度评分;以及
基于与所述负实例中的每个负实例相关联的所述最终硬度评分,生成所述训练数据中的负实例的所述子采样率。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/070,461 | 2022-11-28 | ||
US18/070,461 US20230098656A1 (en) | 2022-11-28 | 2022-11-28 | Data subsampling for recommendation systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117540096A true CN117540096A (zh) | 2024-02-09 |
Family
ID=85718590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311602829.4A Pending CN117540096A (zh) | 2022-11-28 | 2023-11-28 | 改进用于推荐***的数据子采样 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230098656A1 (zh) |
CN (1) | CN117540096A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210287136A1 (en) * | 2020-03-11 | 2021-09-16 | Synchrony Bank | Systems and methods for generating models for classifying imbalanced data |
-
2022
- 2022-11-28 US US18/070,461 patent/US20230098656A1/en active Pending
-
2023
- 2023-11-28 CN CN202311602829.4A patent/CN117540096A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230098656A1 (en) | 2023-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8983888B2 (en) | Efficient modeling system for user recommendation using matrix factorization | |
CN112307214A (zh) | 一种基于深度强化学习的推荐方法及推荐装置 | |
US11366990B2 (en) | Time-series representation learning via random time warping | |
US20170109642A1 (en) | Particle Thompson Sampling for Online Matrix Factorization Recommendation | |
US11468492B2 (en) | Decentralized recommendations using distributed average consensus | |
US20150347905A1 (en) | Modeling user attitudes toward a target from social media | |
JP7513804B2 (ja) | 強化学習を用いたデータ評価 | |
CN117540096A (zh) | 改进用于推荐***的数据子采样 | |
CN112184391A (zh) | 一种推荐模型的训练方法、介质、电子设备和推荐模型 | |
US20230106448A1 (en) | Diversifying recommendations by improving embedding generation of a graph neural network model | |
WO2020173270A1 (zh) | 用于分析数据的方法、设备和计算机存储介质 | |
Bui et al. | Gaussian process for predicting CPU utilization and its application to energy efficiency | |
Dolui et al. | Towards privacy-preserving mobile applications with federated learning: The case of matrix factorization (poster) | |
WO2022174343A1 (en) | Recommendation with neighbor-aware hyperbolic embedding | |
WO2022265573A2 (en) | Automatically and efficiently generating search spaces for neural network | |
US20220253426A1 (en) | Explaining outliers in time series and evaluating anomaly detection methods | |
CN114139593A (zh) | 一种去偏差图神经网络的训练方法、装置和电子设备 | |
CN110717116A (zh) | 关系网络的链接预测方法及***、设备、存储介质 | |
CN107644147B (zh) | 从多个结果确定充分原因的***和方法 | |
US20230169389A1 (en) | Domain adaptation | |
JP7359206B2 (ja) | 学習装置、学習方法、及びプログラム | |
WO2022074711A1 (ja) | 学習方法、推定方法、学習装置、推定装置、及びプログラム | |
US20230376761A1 (en) | Techniques for assessing uncertainty of a predictive model | |
WO2023228314A1 (ja) | 仕様対応データ推定装置、機械学習方法、仕様対応データ推定方法、及びプログラム | |
US20230306312A1 (en) | Stable local interpretable model for prediction |
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 |