CN116664226A - 一种推荐系统流行度去偏方法和系统、存储介质 - Google Patents
一种推荐系统流行度去偏方法和系统、存储介质 Download PDFInfo
- Publication number
- CN116664226A CN116664226A CN202310504694.1A CN202310504694A CN116664226A CN 116664226 A CN116664226 A CN 116664226A CN 202310504694 A CN202310504694 A CN 202310504694A CN 116664226 A CN116664226 A CN 116664226A
- Authority
- CN
- China
- Prior art keywords
- recommendation
- training
- commodity
- model
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012549 training Methods 0.000 claims abstract description 105
- 230000028161 membrane depolarization Effects 0.000 claims abstract description 50
- 238000001914 filtration Methods 0.000 claims abstract description 20
- 238000012795 verification Methods 0.000 claims abstract description 18
- 238000012360 testing method Methods 0.000 claims abstract description 12
- 230000002452 interceptive effect Effects 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000005070 sampling Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 49
- 238000011156 evaluation Methods 0.000 claims description 29
- 230000003993 interaction Effects 0.000 claims description 29
- 241000347889 Debia Species 0.000 claims description 12
- 230000000694 effects Effects 0.000 description 20
- 238000005457 optimization Methods 0.000 description 13
- 238000010200 validation analysis Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 241000531116 Blitum bonus-henricus Species 0.000 description 1
- 235000008645 Chenopodium bonus henricus Nutrition 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
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/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Pure & Applied Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Strategic Management (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种推荐系统流行度去偏方法和系统、存储介质,包括:数据集处理步骤,对商品i的交互记录进行随机采样划分,得到所述的训练集验证集和测试集推荐模型预训练步骤,使用该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;推荐模型去偏训练步骤,对预训练完成的推荐模型,使用去偏损失函数完成去偏训练;推荐步骤,对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
Description
技术领域
本发明涉及推荐系统,尤其是一种推荐系统流行度去偏方法和系统、存储介质。
背景技术
推荐系统是一种信息过滤系统,用于预测用户对商品的评分或偏好,例如根据用户和商品间的交互记录,学习用户与哪些商品有过交互,从而预测这些用户还会与其他哪些商品交互。协同过滤是推荐系统生成推荐列表的一类基础和最常用的方式,他们根据用户历史行为结合其他用户的相似决策建立模型来预测用户对哪些商品可能感兴趣。
近年来基于协同过滤的推荐系统已被广泛应用于线上购物,社交网络等诸多线上服务场景并取得了较高的推荐准确率。随着推荐系统在生活中的广泛应用,其在推荐公平性和无偏性问题正在获得越来越多的关注,其中一个重要的问题是推荐的流行度偏差。流行度偏差指的是:原本流行的商品会获得过度推荐,而不流行的小众商品几乎不会被推荐。有研究表明,对于用户同样喜欢的两件商品,传统基于协同过滤的推荐系统会对更流行的商品打出更高的预测分数,因此更有可能对其做出推荐。这种流行度偏差会导致马太效应的加剧,即更少的商品占有了绝大多数的推荐资源,这会损害整个推荐系统环境的长期可持续发展。在推荐系统流行度偏差问题中,明确流行度偏差的评估指标是一个重要的前置性问题,针对流行度偏差不合理的评估指标不仅会导致推荐系统流行度偏差评估的不准确,也会对去偏的目标造成错误的引导,可能会导致去偏优化无法达到好的去偏效果,或者与推荐系统的准确性有很大的冲突。
很多研究致力于去除流行度偏差,现有的推荐系统流行度偏差的评估指标主要包含针对推荐数量和推荐质量的评估指标等:
其中,针对推荐数量的流行度偏差评估指标关注流行商品和非流行商品被推荐的给的用户数量是否符合无偏的条件。根据无偏条件的不同,又会衍生出不同的流行度偏差指标。无偏条件一般可以分为:均等,即要求商品被推荐的数量相等;等比,即要求商品被推荐的数量应当与该商品本身的流行度成正比。针对推荐数量的流行度偏差评估指标仅关注了商品所获得的推荐量,往往会导致非流行商品获得过多低质量的推荐从而使得推荐结果依然对不同流行度的商品不公平。
其中,针对推荐质量的流行度偏差评估指标关注的是流行商品和非流行商品获得的推荐质量是否相同。最常用的针对推荐质量的流行度偏差评估指标是流行商品与非流行商品推荐召回率是否相同。以此为目标的去偏通过减小不同流行度商品推荐质量的差距,可以一定程度上减少非流行商品的低质量推荐,但可能会导致对非流行商品的总体推荐数量减少。
其他的流行度偏差评估指标有:推荐排序公平的流行度去偏评估,希望商品流行度与商品所获得的偏好分数在所有商品中的位次的互信息尽可能小;用户角度的流行度去偏评估,希望每个用户获得的推荐列表中流行商品与非流行商品所占比例能够符合无偏条件。两者都是从更细粒度的角度约束商品推荐结果的流行度偏差,但是他们的要求过于严格,可能会导致对推荐性能的较大损害。
根据不同的流行度偏差评估指标,现有研究通常以正则化、对抗训练、因果干预等方法去除推荐系统中的流行度偏差,但是由于优化目标的问题往往导致去偏结果不佳,或对推荐准确性的损害较大,并且也难以合理地量化评估去偏的程度以及推荐结果中残余的偏差多少。此外还有一部分去偏方法并没有明确提出流行度去偏的评估指标,这类方法往往只希望非流行的商品推荐量提升,但并不规定非流行商品在无偏的状态下应当获得多少推荐,因此他们的去偏结果更加难以评估,甚至会引入更多的偏差。
现有研究虽然给出了一些对流行度偏差的评估指标和去偏优化方法,但是仍存在一些明显的不足,包括:
现有的流行度偏差评估指标大多只关注了不同流行度的商品推荐的数量或质量的其中一个方面,这会导致对应的量化指标无法完整地刻画推荐结果中的流行度偏差,对应的去偏优化方法也只能去除推荐数量或质量一方面中的偏差,从而导致推荐结果仍然有偏;
现有的主流流行度偏差评估指标将推荐量均等作为无偏的条件,这忽略了商品本身的质量不一等固有区别,而强行要求所有商品的推荐量一致,这种要求会导致去偏方法对非流行商品过度推荐,而占用过多推荐资源,影响推荐质量;
现有的主流评估指标将流行度偏差定义在群体粒度上,即需要将商品划分为流行与不流行的组别,再度量不同组之间推荐结果分布的差异,这样的群体指标依赖人为划分指定哪些商品为流行商品或非流行商品,使得同一组推荐结果面对不同的商品划分时可能会出现不同的流行度偏差值,去偏优化的结果也会随商品分组的不同产生较大的变化而不稳定;
现有的评估指标大多与推荐系统的推荐准确性目标有较大的冲突。这种冲突会导致推荐系统的去偏不得不以降低推荐准确性为代价,这是难以接受的。
本发明在进行推荐系统流行度偏差研究时,发现现有的流行度偏差评估指标无法完整刻画商品推荐结果的流行度偏差。同时,这些评估指标往往不能刻画商品本身固有性质,依赖于对数据的人工划分,而且对应的优化目标会使得去偏后的推荐系统造成很大的推荐性能损失。
发明内容
针对现有技术的不足,本发明提供一种推荐系统流行度去偏方法,包括以下步骤:
数据集处理步骤,对商品i的交互记录进行随机采样划分,得到所述的训练集验证集/>和测试集/>所述交互记录为多个二元组(u,i),(u,i)代表用户u与商品i产生交互;
推荐模型预训练步骤,使用该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;当所述推荐模型在所述验证集上推荐结果的NDCG指标稳定时,表示推荐模型完成预训练;
推荐模型去偏训练步骤,对预训练完成的推荐模型,使用下式去偏损失函数Ldebias完成去偏训练:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数,LAEP是去偏正则项:
其中,M指商品的总数,I指所有商品构成的集合,I集合的大小是m,表示商品i的潜在用户被满足的比例;
当模型在验证集上的推荐结果的NDCG指标稳定时,保存当前推荐模型作为最终模型;
推荐步骤,对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
上述的推荐系统训练常用的损失函数包括:
贝叶斯个性化排序损失函数BPR loss:由下式表示,
或二元交叉熵损失函数BCE loss:由下式表示,
或均方误差损失函数MSE loss:
其中yu,i代表用户u对商品i的真实评分,Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中e是自然常数,指推荐系统预测的用户u对商品i的偏好分数,
其中,对于参数为Θ的推荐模型的推荐结果有式:
其中表示商品i推荐给用户u的概率,在模型训练过程中D表示训练数据,表示训练数据D与商品i有交互的用户集合,/>表示商品i被推荐给的用户集合。
上述的推荐系统流行度去偏方法,还包括:
将推荐模型流行度无偏状态下的推荐结果满足下式:
式中i,j为推荐系统中任意商品i,j,商品获得的有效推荐数量与其潜在用户数量成正比;表示商品i的潜在用户集合,/>表示商品i被推荐给的用户集合;/>即商品i所获得的有效推荐数量。
上述的推荐系统流行度去偏方法,更包括:
借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量 和潜在用户数量/>对于数据集D,其中与商品i有交互的用户集合记为/>假设商品与潜在用户交互的概率为p,可以得到:
因此可以使用作为/>的无偏估计;由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,表示商品j的潜在用户被满足的比例低于商品i的潜在用户被满足的比例,即推荐系统对商品i和j的推荐存在流行度偏差。
本发明还提出一种推荐系统流行度去偏系统,包括以下模块:
数据集处理模块,对商品i的交互记录进行随机采样划分,得到所述的训练集验证集/>和测试集/>所述交互记录为多个二元组(u,i),(u,i)代表用户u与商品i产生交互;
推荐模型预训练模块,使用该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;当所述推荐模型在所述验证集上推荐结果的NDCG指标稳定时,表示推荐模型完成预训练;
推荐模型去偏训练模块,对预训练完成的推荐模型,使用下式去偏损失函数Ldebias完成去偏训练:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数,LAEP是去偏正则项:
其中,M指商品的总数,I指所有商品构成的集合,I集合的大小是M,表示商品i的潜在用户被满足的比例;
当模型在验证集上的推荐结果的NDCG指标稳定时,保存当前推荐模型作为最终模型;
推荐模块,对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
其中,上述的推荐系统训练常用的损失函数包括:
贝叶斯个性化排序损失函数BPR loss:由下式表示,
或二元交叉熵损失函数BCE loss:由下式表示,
或均方误差损失函数MSE loss:
其中yu,i代表用户u对商品i的真实评分,Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中e是自然常数,指推荐系统预测的用户u对商品i的偏好分数,
其中,对于参数为Θ的推荐模型的推荐结果有式:
其中表示商品i推荐给用户u的概率,在模型训练过程中D表示训练数据,表示训练数据D与商品i有交互的用户集合,/>表示商品i被推荐给的用户集合。
上述的推荐系统流行度去偏系统,还包括:
将推荐模型流行度无偏状态下的推荐结果满足下式:
式中i,j为推荐系统中任意商品i,j,商品获得的有效推荐数量与其潜在用户数量成正比;表示商品i的潜在用户集合,/>表示商品i被推荐给的用户集合;/>即商品i所获得的有效推荐数量。
上述的推荐系统流行度去偏系统,更包括:
借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量 和潜在用户数量/>对于数据集D,其中与商品i有交互的用户集合记为/>假设商品与潜在用户交互的概率为p,可以得到:
因此可以使用作为/>的无偏估计;由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,表示商品j的潜在用户被满足的比例低于商品i的潜在用户被满足的比例,即推荐系统对商品i和j的推荐存在流行度偏差。
由以上方案可知,本发明的优点在于:
本发明所述方法关注商品所获得的有效推荐数量,并通过估计商品潜在用户的数量要求有效推荐数量与潜在用户数成正比刻画了其固有性质的差异。由于所述方法的评价与去偏操作不需要对商品进行分组,因此也解决了依赖人为划分组别带来的问题。此外,本发明所述方法能够在保证推荐准确性的前提下有较好的去偏效果。
附图说明
图1为本发明以MF为基础模型时λf的变化对推荐效果的影响示意图;
图2为本发明以LightGCN为基础模型时λf的变化对推荐效果的影响示意图;
图3为本发明一实施例的推荐系统流行度去偏方法的执行流程。
具体实施方式
本发明为了实现上述技术方案,主要包括下述技术效果:
关键点1,本发明提出了推荐系统在没有流行度偏差时的推荐结果形式的定义,即商品获得的有效推荐的数量应当与其潜在用户的个数成正比。该定义的约束对象是商品的有效推荐数量,而有效推荐数量能够更好的代表商品在推荐系统中所获得的收益,因此约束有效推荐数量的合理分配能够避免对商品的盲目过多或过少推荐;同时由于该无偏定义是对商品个体层面的约束,不需要人为划分流行与非流行商品;且该定义在约束推荐偏差的同时也考虑到了商品之间如质量等的固有差异,并可以与推荐质量的目标很好地兼容。具体来说,我们可以将推荐系统在流行度无偏状态下的推荐结果形式化为式:对推荐系统中的任意商品i,j
其中,代表商品i的潜在用户集合,/>代表商品i被推荐给的用户集合。即商品i所获得的有效推荐的个数。该形式化定义可以为推荐系统流行度去偏任务提供明确的去偏优化目标,同时也可以作为流行度偏差的评估的基准。
该定义约束有效推荐数量与潜在用户数量成正比有三方面的效果:
(1)该定义的关注点从商品的推荐数量转变为商品的有效推荐数量,因为商品获得推荐并不意味着商品可以从这个推荐中获得收益,相反,商品被推荐给不喜欢该商品的用户并不会使得该商品在推荐系统中获得更多的交互。因此有效推荐可以更好地代表商品在推荐系统中所获得的真正收益,要求不同流行度的商品有效推荐数量的合理分配能够更好地达成去偏的目标。
(2)该定义要求商品的有效推荐数量与商品的潜在用户数量成正比,而不是要求所有商品的有效推荐数量一致,这考虑到了商品本身固有特性,比如商品本身的质量越高,那么它的潜在用户数量往往也会越多。商品的潜在用户数量能够代表商品在推荐资源充足时再推荐系统中应得的收益。因此商品的获得的有效推荐数量应当正比于商品的潜在用户数量。
(3)该定义的要求是对每个个体商品的要求,这避免了现有技术中常用的人为划分流行与非流行商品组别,从而不会因为不合理的划分导致不合理的优化目标出现。
关键点2,本发明提出了推荐系统流行度偏差的评估指标;该评估指标给出了度量流行度偏差大小的量化指标有效推荐分配偏移(Allocation Deviation of Effectiverecommendation,ADE),借助观测数据中用户与商品的交互记录估计商品的有效推荐数量和潜在用户数量的比值,并在全体商品范围计算该比值的相对标准差作为评估指标ADE。
具体来说,本发明借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量和潜在用户数量/>对于数据D,其中与商品i有交互的用户集合/>假设商品与潜在用户交互的概率为p,可以得到:
因此我们可以使用作为/>的无偏估计。由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,意味着商品j的潜在用户被满足的比例比商品i的潜在用于被满足的比例低,其“潜力”获得了更小程度的满足。ri当在全体商品上的分布越不平均,ADE越大,意味着推荐系统中存在着更大的偏差。
关键点3,本发明提出针对有效推荐数量等比分配目标的优化方法;技术效果:通过正则化损失函数针对有效推荐数量等比分配的去偏优化目标进行优化,在不损害推荐系统的推荐效果的基础上减小推荐系统带来的流行度偏差,并可以通过调整系数的方式调整去偏效果;同时作为一个通用的优化框架,可以应用于MF、LightGCN等主流的协同过滤推荐系统中。
具体来说,对于参数为Θ的模型的推荐结果,有
其中是商品i推荐给用户u的概率,在模型训练过程中D表示训练数据。进一步可以写出针对有效推荐数量等比分配目标的损失函数:
所以模型最终的去偏损失函数形式为:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数。
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下:
图3为本发明一实施例的推荐系统流行度去偏方法执行流程。如图所示实施例,包括以下步骤:数据集处理步骤;推荐模型预训练步骤;推荐模型去偏训练步骤;推荐步骤。
在本实施例中,上述之数据集处理包括:本发明使用估计/>是基于在观测数据D中所有商品与潜在用户交互的概率均为p的假设,本发明希望模型训练使用的数据依然可以满足这个假设。因此本发明从每个商品的交互记录中随机选取相同比例的交互数据作为模型的训练数据。由于模型验证和测试的需要,本发明同样也希望以上假设可以在验证和测试数据集上得到满足。
具体来说,记商品i在全体观测数据、训练集、验证集和测试集上有交互的用户集合分别为本发明希望/>对于所有的商品来说都相等。因此本发明对每个商品的交互记录进行随机采样划分,以相应比例可例如以70%,10%和20%的比例划分入训练集、验证集和测试集。
在本实施例中,上述推荐模型预训练使用贝叶斯个性化排序损失函数BPR loss:由下式表示,
其中Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中e是自然常数,指推荐系统预测的用户u对商品i的偏好分数。
当模型在验证集上推荐结果的NDCG指标稳定时,意味着已经得到了一个预训练完成的推荐模型。
在本实施例中,上述步骤推荐模型去偏训练包括:使用去偏损失函数对预训练得到的推荐模型进行去偏训练,其中偏损失函数有下式表示:
Ldebias=Ltrain+λfLAEP,
其中LAEP是去偏正则项
当模型在验证集上的推荐结果的NDCG指标稳定不变时,意味着已经得到了一个去偏训练完成的推荐模型。
在本实施例中,上述去偏正则项是针对有效推荐数量等比分配写出,对于参数为Θ的模型的推荐结果,有
其中是商品i推荐给用户u的概率,在模型训练过程中D即训练数据。
在本实施例中,上述推荐步骤包括:对完成去偏训练的模型在上述的测试集上的推荐结果计算ADE指标,由下式表示
其中是商品i在测试集上正确推荐数与交互记录数的比,上述的ADE指标越小代表去偏效果越好。
在本实施例中,使用协同过滤场景下的四个常用公开数据集(MovieLens-1M、Gowalla、Yelp、Amazon book)来验证去偏的效果。本发明的去偏及优化方法框架分别实现了以协同过滤的经典模型MF作为基础模型的版本AEP_MF和以先进协同过滤模型LightGCN作为基础模型的版本AEP_LGCN。在基线方法的选择上,除了基础的MF和LightGCN外,本发明还选用以下方法作为对照包括:使用逆倾向分数加权去偏的方法IPW;正则化约束流行度与商品推荐排序的方法PO;通过因果干预的方式去偏的方法MACR以及基于对抗训练的去偏方法DPR。对于上述基线方法,本发明同样对比了他们基于MF和LightGCN的两套实现方式。
为了对比不同方法的推荐准确性和去偏效果,本发明选择推荐系统常用指标NDCG@20作为推荐准确性的指标,NDCG越大代表推荐准确性越好。实验结果如表1。
表1本发明推荐效果与基线方法的对比
表1展示了本发明的推荐效果与基线方法的对比结果。在所有的实验设置下,本发明的方法都达到了最优的推荐去偏效果。与此同时,本发明的方法相比基线方法也有着更高的推荐准确性。并且本发明的方法是左右对比方法中唯一同时做到提升推荐准确性与降低推荐流行度偏差的方法。
图1和图2分别展示了在以MF和LightGCN为基础模型时去偏正则项权重系数λf的变化对推荐准确性和去偏效果的影响。可以看出,当λf增大时,流行度偏差逐渐减小,同时推荐准确性提升,当λf达到0.01后变化趋于稳定,这说明去偏正则项权重的增大并不会导致推荐准确性的下降,印证了本发明的流行度偏差评价和优化与推荐准确性目标不存在冲突。
以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。
本发明还提出了一种推荐系统流行度去偏系统,包括以下模块:
数据集处理模块,对商品i的交互记录进行随机采样划分,得到所述的训练集验证集/>和测试集/>所述交互记录为多个二元组(u,i),(u,i)代表用户u与商品i产生交互;
推荐模型预训练模块,使用该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;当所述推荐模型在所述验证集上推荐结果的NDCG指标稳定时,表示推荐模型完成预训练;
推荐模型去偏训练模块,对预训练完成的推荐模型,使用下式去偏损失函数Ldebias完成去偏训练:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数,LAEP是去偏正则项:
其中,M指商品的总数,I指所有商品构成的集合,I集合的大小是M;
当模型在验证集上的推荐结果的NDCG指标稳定时,保存当前推荐模型作为最终模型;
推荐模块,对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
其中,上述的推荐系统训练常用的损失函数包括:
贝叶斯个性化排序损失函数BPR loss:由下式表示LBPR,
或二元交叉熵损失函数BCE loss:由下式表示,
或均方误差损失函数MSE loss:
其中yu,i代表用户u对商品i的真实评分,Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中e是自然常数,指推荐系统预测的用户u对商品i的偏好分数,
其中,对于参数为Θ的推荐模型的推荐结果有式:
其中表示商品i推荐给用户u的概率,在模型训练过程中D表示训练数据,表示训练数据D与商品i有交互的用户集合,/>表示商品i被推荐给的用户集合。
上述的推荐系统流行度去偏系统,还包括:
将推荐模型流行度无偏状态下的推荐结果满足下式:
式中i,j为推荐系统中任意商品i,j,商品获得的有效推荐数量与其潜在用户数量成正比;表示商品i的潜在用户集合,/>表示商品i被推荐给的用户集合;/>即商品i所获得的有效推荐数量。
上述的推荐系统流行度去偏系统,更包括:
借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量 和潜在用户数量/>对于数据集D,其中与商品i有交互的用户集合记为/>假设商品与潜在用户交互的概率为p,可以得到:
因此可以使用作为/>的无偏估计;由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,表示商品j的潜在用户被满足的比例低于商品i的潜在用户被满足的比例,即推荐系统对商品i和j的推荐存在流行度偏差。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护的内。
Claims (10)
1.一种推荐系统流行度去偏方法,其特征在于,包括以下步骤:
数据集处理步骤,对商品i的交互记录进行随机采样划分,得到训练集验证集和测试集/>所述交互记录为多个二元组(u,i),(u,i)代表用户u与商品i产生交互;
推荐模型预训练步骤,使用该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;当所述推荐模型在所述验证集上推荐结果的NDCG指标稳定时,表示推荐模型完成预训练;
推荐模型去偏训练步骤,对预训练完成的推荐模型,使用下式去偏损失函数Ldebias完成去偏训练:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数,LAEP是去偏正则项:
其中,M指商品的总数,I指所有商品构成的集合,I集合的大小是M,表示商品i的潜在用户被满足的比例;
当模型在验证集上的推荐结果的NDCG指标稳定时,保存当前推荐模型作为最终模型;
推荐步骤,对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
2.根据权利要求1所述的推荐系统流行度去偏方法,其特征在于,所述推荐系统训练常用的损失函数包括:
贝叶斯个性化排序损失函数LBPR,
或二元交叉熵损失函数LBCE,
或均方误差损失函数LMSE:
其中yu,i代表用户u对商品i的真实评分,Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中e是自然常数,指推荐系统预测的用户u对商品i的偏好分数,
其中,对于参数为Θ的推荐模型的推荐结果有式:
其中表示商品i推荐给用户u的概率,在模型训练过程中D表示训练数据,/>表示训练数据D中与商品i有交互的用户集合,/>表示商品i被推荐给的用户集合。
3.根据权利要求1所述的推荐系统流行度去偏方法,其特征在于,还包括:
将推荐模型流行度无偏状态下的推荐结果满足下式:
式中i,j为推荐系统中任意商品i,j,商品获得的有效推荐数量与其潜在用户数量成正比;表示商品i的潜在用户集合,/>表示商品i被推荐给的用户集合;/>即商品i所获得的有效推荐数量。
4.根据权利要求1所述的推荐系统流行度去偏方法,其特征在于,
借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量 和潜在用户数量/>对于数据集D,其中与商品i有交互的用户集合记为/>假设商品与潜在用户交互的概率为p,可以得到:
因此可以使用作为/>的无偏估计;由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,表示商品j的潜在用户被满足的比例低于商品i的潜在用户被满足的比例,即推荐系统对商品i和j的推荐存在流行度偏差。
5.一种推荐系统流行度去偏系统,其特征在于,包括以下步骤:
数据集处理模块,用于对商品i的交互记录进行随机采样划分,得到所述的训练集验证集/>和测试集/>所述交互记录为多个二元组(u,i),(u,i)代表用户u与商品i产生交互;
推荐模型预训练模块,用于以该训练集预训练基于协同过滤模型的推荐模型,预训练选用协同过滤推荐系统常用的训练损失函数;当所述推荐模型在所述验证集上推荐结果的NDCG指标稳定时,表示推荐模型完成预训练;
推荐模型去偏训练模块,用于对预训练完成的推荐模型,使用下式去偏损失函数Ldebias完成去偏训练:
Ldebias=Ltrain+λfLAEP,
其中Ltrain表示推荐系统常用的训练损失函数,λf表示控制去偏正则项权重的系数,LAEP是去偏正则项:
其中,M指商品的总数,I指所有商品构成的集合,I集合的大小是M,表示商品i的潜在用户被满足的比例;
当模型在验证集上的推荐结果的NDCG指标稳定时,保存当前推荐模型作为最终模型;
推荐模块,用于对于系统中的任意用户,模型预测该用户对系统中全部商品的偏好分数,并在该用户未交互过的商品中选择预测的偏好分数最高的若干个商品,作为给该用户的推荐结果。
6.根据权利要求5所述的推荐系统流行度去偏系统,其特征在于,所述推荐系统训练常用的损失函数包括:
贝叶斯个性化排序损失函数BPR loss:由下式表示,
或二元交叉熵损失函数BCE loss:由下式表示,
或均方误差损失函数MSE loss:
其中yu,i代表用户u对商品i的真实评分,Θ是推荐系统的模型参数,‖Θ‖2是用于约束模型参数二范数的正则项,λΘ是控制该正则项权重的系数,U指所有用户构成的集合,I指所有商品构成的集合,Iu指训练集中与u有交互的商品集合,i+是其中的一个商品,I/Iu指除去Iu之外的其他商品集合,i-是其中的一个商品,σ(x)=1/(1+e-x)是sigmoid函数,其中s是自然常数,指推荐系统预测的用户u对商品i的偏好分数,
其中,对于参数为Θ的推荐模型的推荐结果有式:
其中表示商品i推荐给用户u的概率,在模型训练过程中D表示训练数据,/>表示训练数据D与商品i有交互的用户集合,/>表示商品i被推荐给的用户集合。
7.根据权利要求5所述的推荐系统流行度去偏系统,其特征在于,还包括:
将推荐模型流行度无偏状态下的推荐结果满足下式:
式中i,j为推荐系统中任意商品i,j,商品获得的有效推荐数量与其潜在用户数量成正比;表示商品i的潜在用户集合,/>表示商品i被推荐给的用户集合;/>即商品i所获得的有效推荐数量。
8.根据权利要求5所述的推荐系统流行度去偏系统,其特征在于,
借助观测数据中用户与商品i的交互记录估计商品i的有效推荐数量 和潜在用户数量/>对于数据集D,其中与商品i有交互的用户集合记为/>假设商品与潜在用户交互的概率为p,可以得到:
因此可以使用作为/>的无偏估计;由此可以计算得到推荐系统流行度偏差的评估指标:
对于两个商品i和j,当ri>rj时,表示商品j的潜在用户被满足的比例低于商品i的潜在用户被满足的比例,即推荐系统对商品i和j的推荐存在流行度偏差。
9.一种存储介质,用于存储执行如权利要求1到4所述任意一种推荐系统流行度去偏方法的程序。
10.一种客户端,用于权利要求5至8中任意一种推荐系统流行度去偏系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310504694.1A CN116664226A (zh) | 2023-05-06 | 2023-05-06 | 一种推荐系统流行度去偏方法和系统、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310504694.1A CN116664226A (zh) | 2023-05-06 | 2023-05-06 | 一种推荐系统流行度去偏方法和系统、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116664226A true CN116664226A (zh) | 2023-08-29 |
Family
ID=87719791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310504694.1A Pending CN116664226A (zh) | 2023-05-06 | 2023-05-06 | 一种推荐系统流行度去偏方法和系统、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116664226A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216392A (zh) * | 2023-09-19 | 2023-12-12 | 北京大学 | 一种基于缺失数据填补的推荐方法和系统 |
CN117522532A (zh) * | 2024-01-08 | 2024-02-06 | 浙江大学 | 一种流行度纠偏推荐方法、装置、电子设备及存储介质 |
-
2023
- 2023-05-06 CN CN202310504694.1A patent/CN116664226A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216392A (zh) * | 2023-09-19 | 2023-12-12 | 北京大学 | 一种基于缺失数据填补的推荐方法和系统 |
CN117522532A (zh) * | 2024-01-08 | 2024-02-06 | 浙江大学 | 一种流行度纠偏推荐方法、装置、电子设备及存储介质 |
CN117522532B (zh) * | 2024-01-08 | 2024-04-16 | 浙江大学 | 一种流行度纠偏推荐方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116664226A (zh) | 一种推荐系统流行度去偏方法和系统、存储介质 | |
Allenby et al. | Economic valuation of product features | |
CN106022508A (zh) | 预测线上理财平台的用户邀请好友行为的方法和装置 | |
CN110084670B (zh) | 一种基于lda-mlp的货架商品组合推荐方法 | |
KR101403836B1 (ko) | 소비자 행동을 금융 상품으로서 가상화하기 | |
CN107256241B (zh) | 基于网格与差异替换改进多目标遗传算法的电影推荐方法 | |
CA2566943A1 (en) | Determining design preferences of a group | |
CN111784486A (zh) | 业务风险预测模型的构建方法、装置和计算机设备 | |
CN113158024B (zh) | 一种纠正推荐系统流行度偏差的因果推理方法 | |
Kohli et al. | Construction and analysis of a global GDP growth model for 185 countries through 2050 | |
CN108446350A (zh) | 一种基于主题模型分析与用户长短兴趣的推荐方法 | |
CN116578726B (zh) | 一种个性化图书推荐系统 | |
CN104766219B (zh) | 基于以列表为单位的用户推荐列表生成方法及系统 | |
Huettner et al. | Consumer choice under limited attention when alternatives have different information costs | |
US20230376981A1 (en) | Predictive systems and processes for product attribute research and development | |
CN110838043A (zh) | 商品推荐方法及装置 | |
US8429175B2 (en) | Method and apparatus for default rating estimation | |
CN112200665A (zh) | 一种授信额度的确定方法及装置 | |
Dwivedi et al. | An Item-based Collaborative Filtering Approach for Movie Recommendation System | |
CN116739665A (zh) | 信息投放方法、装置、电子设备及存储介质 | |
Kwon | Improving top-n recommendation techniques using rating variance | |
CN109145207B (zh) | 一种基于分类指标预测的信息个性化推荐方法及装置 | |
CN115146455B (zh) | 一种计算实验支持的复杂供应链多目标决策方法 | |
Mohammad et al. | Movie recommender system using content-based and collaborative filtering | |
Hazrati et al. | Analysing Recommender Systems Impact on Users' Choices. |
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 |