CN108470052B - 一种基于矩阵补全的抗托攻击推荐算法 - Google Patents
一种基于矩阵补全的抗托攻击推荐算法 Download PDFInfo
- Publication number
- CN108470052B CN108470052B CN201810200894.7A CN201810200894A CN108470052B CN 108470052 B CN108470052 B CN 108470052B CN 201810200894 A CN201810200894 A CN 201810200894A CN 108470052 B CN108470052 B CN 108470052B
- Authority
- CN
- China
- Prior art keywords
- matrix
- user
- attack
- item
- algorithm
- 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
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 128
- 238000005457 optimization Methods 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 15
- 238000000034 method Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- JGTNAGYHADQMCM-UHFFFAOYSA-N perfluorobutanesulfonic acid Chemical compound OS(=O)(=O)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F JGTNAGYHADQMCM-UHFFFAOYSA-N 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 206010027951 Mood swings Diseases 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于矩阵补全的抗托攻击推荐算法,首先统计用户对项目的评分,提取用户的属性特征和项目的属性特征,分别构建用户‑项目评分矩阵,用户属性特征矩阵和项目属性特征矩阵;然后将用户‑项目评分矩阵中的托攻击评分建模为矩阵补全模型中的结构化噪声;然后采用分块坐标下降算法对各变量进行迭代更新,求得结构化行噪声矩阵;随后根据结构化行噪声矩阵剔除用户‑项目评分矩阵中的托攻击评分;最后使用传统推荐算法进行评分预测,求得预测评分矩阵。本发明提供的推荐算法能够有效地检测出推荐系统中的托攻击用户,在托攻击干扰下可取得比传统推荐算法更精确的个性化评分预测效果,有效提高了推荐算法的鲁棒性。
Description
技术领域
本发明属于计算机技术领域中的信息安全领域,具体涉及一种基于矩阵补全的抗托攻击推荐算法。
背景技术
面对信息过载问题,推荐系统应运而生。推荐系统是一种软件系统,它通过收集用户信息,项目信息以及用户与项目的交互信息,了解用户的偏好,从而将用户可能感兴趣的项目推荐给用户,在一定程度上解决困扰用户的信息过载问题。当前实现推荐系统的一种主流算法是协同过滤(collaborative filtering)算法。它依赖于用户的历史行为,分析过去的用户-项目交互,建立新的用户-项目联系。然而,用户-项目交互数据的产生者是所有用户,并没有设置准入门槛,这种数据来源的开放性导致协同过滤推荐系统极易受到恶意用户的干扰,这种现象称为托攻击(shilling attack)。
托攻击是当前推荐系统遇到的严峻挑战之一。恶意商家或用户为了达成其特殊目的,往往是为了经济利益,冒充正常用户,在与项目交互的过程中,向推荐系统注入精心设计的虚假用户概貌,从而影响正常的推荐结果。这种攻击的存在会严重干扰推荐系统的正常运转,误导用户接受或购买并非真正所需的信息或项目,使用户逐渐丧失对此推荐系统的信任,造成客户群的流失,推荐系统会蒙受信誉与利润的双重损失。
当前,针对无托攻击评分数据集已经有了很多行之有效的高精度推荐算法,但在含托攻击数据集上,这些传统推荐算法往往会面临性能下降的问题。
发明内容
发明目的:本发明基于结构化噪声矩阵补全技术提出一种鲁棒的抗托攻击个性化推荐算法以提高推荐系统抵御托攻击能力,首先检测出推荐系统中的托攻击用户并剔除相应攻击评分再进行推荐,从而解决推荐系统中存在的托攻击问题,将合适的项目推荐给相应用户。实验表明,该推荐算法在托攻击下可取得比传统推荐算法更精确的个性化评分预测效果,有效提高推荐算法的鲁棒性。
技术方案:为实现上述目的,本发明采用如下技术方案:一种基于矩阵补全的抗托攻击推荐算法,包括如下步骤:
1)建立用户-项目评分矩阵:
其中,用户u对项目i的评分记作ri,j,“*”表示已知评分,“?”表示未知评分。由于每个用户只可能对有限的项目进行评分,而每件项目也仅可能收到有限用户的评分,故这个评分矩阵通常包含大量的空缺评分,是一个稀疏矩阵。
2)根据步骤一的用户-项目评分矩阵建立基于矩阵补全的推荐系统模型:
在推荐系统中,大量的用户之间和大量的项目之间必然存在着偏好相近的用户和属性相近的项目,这种相近性使得用户-项目评分矩阵往往具有近似低秩性,故推荐系统问题可利用低秩矩阵补全技术进行评分预测。用R表示当前观察到的评分矩阵,则推荐系统问题可建模为:
但是,秩函数rank(X)是非凸的,直接使用秩函数建模得到的是一个NP-Hard问题,其计算代价会随着问题规模的扩大而急剧增大。因此,往往将秩函数松弛化为核范数来解决此问题:
3)建立基于属性优化矩阵补全的托攻击检测模型:
在实际应用中,推荐系统往往会遭受恶意用户的托攻击。面对托攻击干扰,标准矩阵补全模型的推荐精度将严重降低。因此,为了保证推荐的质量,有必要抵御这些攻击数据的影响。通过对托攻击特点进行分析可知,托攻击的目的是更改原来自然情况下的评分情况,假如在自然情况下的评分情况已经符合攻击者的意图,则没有进行攻击的必要,故托攻击用户的评分与自然状态下正常用户的评分存在不一致性。另外,托攻击用户的评分通常是机械填充的,这也会与基于兴趣偏好而形成的正常用户评分具有相异之处。基于以上分析,本发明将用户-项目评分矩阵中的托攻击评分建模为结构化行噪声,这些结构化行噪声与正常用户评分的潜在规律相违背,打破了评分矩阵的近似低秩性。对于评分矩阵中存在的结构化行噪声,可利用矩阵L2,1范数对其进行解析。在剔除攻击评分之后,再进行评分预测,将有效提高推荐精度,此时,基于属性优化矩阵补全的托攻击检测模型为:
此外,用户往往会出于情绪波动而打出不太精确的评分,为了平滑评分的这种细微波动,可引入矩阵的Frobenius范数,将式(5)改写成罚函数形式:
正如之前所叙述的,评分矩阵通常是稀疏矩阵,能够收到的评分数远小于评分矩阵元素个数。在MovieLens的ml-20m数据集中,138493名用户对于27278部电影仅有20000263个评分;在EachMovie数据集中,72916个用户对l628部电影仅进行了2811983次评分。基于稀疏数据求取高维未知矩阵很难确保求解的准确性。为解决数据稀疏性问题[16],我们考虑引入属性特征信息,将简单的评分矩阵R细化为三个矩阵的乘积R=APXB,其中,A和B分别是用户特征矩阵和项目特征矩阵,矩阵列向量分别是用户特征向量和项目特征向量,即量化了的属性信息;X矩阵是低维未知矩阵,此时,托攻击检测模型可改为:
然而,由于rank(ATXB)≤min{rank(A),rank(B)},即只要特征矩阵A与B其中之一的秩足够小,比如A或B的维度过小,包含信息过少等,则无论X矩阵取何值,乘积ATXB的秩都必然会更小,将直接满足低秩条件。为避免这种解的任意性,我们仅对待求变量X进行低秩约束。综上所述,基于属性优化矩阵补全的托攻击检测模型为:
4)采用分块坐标下降算法迭代求解公式(8)中的基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z。具体步骤如下:
步骤4.1):在公式(8)中引入变量C并令C=ATXB,将公式转换为:
利用Frobenius范数将其进一步改写成相应的罚函数形式:
步骤4.2):采用分块坐标下降算法求解罚函数问题(10),不妨令:
则可对各个变量做如下的迭代更新:
步骤4.3):采用近邻前向后向分裂技术对其式(12)中的子问题进行优化求解,各变量迭代更新公式如下:
步骤4.3.1)X的迭代更新公式求解如下:
采用近邻前向后向分裂(proximal forward backward splitting,PFBS)技术对其进行优化求解,令:
其中函数F2(X)的导数为:
为简化公式,方便求解,引入一个新变量Y,令:
其中,根据PFBS规则,引入参数δX用于对X进行迭代更新。则:
因此,X的更新可按如下步骤迭代进行:
步骤4.3.2)Z的迭代更新公式求解如下,令:
其导数为:
为简化公式,方便求解,引入一个新变量V,令:
则:
对于Z矩阵内每一行:
因此,Z的更新可按照如下步骤迭代进行:
步骤4.3.3)对于变量C的迭代更新公式求解,令:
此时有:
C1+1=4(ρ+β)ATX1+1B+βPΩ(R-Zk+1-ATX1+1B)]/(ρ+β) (28)
至此,我们可得到基于属性优化矩阵补全的托攻击检测模型的求解步骤,并求得噪声矩阵Z:
5)根据结构化行噪声矩阵Z从用户-项目评分矩阵中剔除托攻击评分;
6)采用传统推荐算法对修正后的用户-项目评分矩阵中的缺失值进行评分预测,求得完整的用户-项目评分矩阵,基于完整的用户-项目评分矩阵中的预测评分对目标用户进行项目推荐。
有益效果:本发明针对个性化推荐系统面临的托攻击问题,从矩阵补全角度出发,将托攻击用户评分建模为干扰了自然状态下评分矩阵近似低秩性的结构化行噪声,并利用范数正则化对这些托攻击评分进行解析,本发明在攻击检测过程中融入用户与物品的属性特征信息,提出了基于属性优化矩阵补全的托攻击检测模型,提高了攻击检测精度。最后,本发明基于所提出的基于属性优化矩阵补全的托攻击检测模型,改进了传统的不具备抗托攻击能力的推荐算法,提出了一种基于属性优化矩阵补全的抗托攻击个性化推荐算法。实验结果证明,在托攻击干扰下,本发明所提供的推荐算法依旧可以产生鲁棒的评分预测结果,在推荐系统的实际应用中具有现实意义。
附图说明
图1是本发明提供的基于矩阵补全的抗托攻击推荐算法的流程示意图。
具体实施方式
一种基于矩阵补全的抗托攻击推荐算法,包括如下步骤:
1)建立用户-项目评分矩阵:
其中,用户u对项目i的评分记作ri,j,“*”表示已知评分,“?”表示未知评分。
2)建立推荐系统模型:
推荐系统问题可利用低秩矩阵补全技术进行评分预测。用R表示当前观察到的评分矩阵,则推荐系统问题可建模为:
3)根据步骤2)建立基于属性优化矩阵补全的托攻击检测模型:
对于用户-项目评分评分矩阵中存在的结构化行噪声,即托攻击评分,利用矩阵L2,1范数对其进行解析。在剔除攻击评分之后,再进行评分预测,将有效提高推荐精度,此时,基于属性优化矩阵补全的托攻击检测模型为:
4)采用分块坐标下降算法迭代求解公式(32)中的基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z。具体步骤如下:
步骤4.1):在公式(32)中引入变量C并令C=ATXB,利用Frobenius范数将其进一步改写成相应的罚函数形式,公式转换为:
步骤4.2):采用分块坐标下降算法求解罚函数问题(33),不妨令:
初始化变量X、Z、C,令变量X0=0,Z0=0,C0=0,则可对各个变量做如下的迭代更新:
步骤4.3):采用近邻前向后向分裂技术对其式(35)进行优化求解,各变量迭代更新公式如下:
X的更新按照如下公式(36)迭代进行:
类似于X的更新过程Z的更新按照如下公式(37)迭代进行:
C的更新按照如下公式(38)迭代进行:
Ck+1=[(ρ+β)ATXk+1B+βPΩ(R-Zk+1-ATXk+1B)]/(ρ+β) (38)
5)根据步骤4)中计算得到的结构化行噪声矩阵Z从用户-项目矩阵中剔除托攻击评分;
6)采用传统推荐算法对修正后用户-项目评分矩阵进行缺失评分预测,求得完整的用户-项目评分矩阵,基于完整的用户-项目评分矩阵中的预测评分对目标用户进行项目推荐。
至此,我们可整理得到基于矩阵补全的抗托攻击个性化推荐的算法步骤:
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员所具备的知识范围内,在不脱离本发明宗旨的前提下,可以进行若干改进和润饰,这些改进和润饰也应视为本发明的保护范围内。
Claims (5)
1.一种基于矩阵补全的抗托攻击推荐算法,其特征在于:包括如下步骤:
1)建立用户-项目评分矩阵R:
其中,第i个用户Ui对第j件项目Ij的评分记作Rij,“*”表示已知评分,“?”表示未知评分;
2)建立基于矩阵补全的推荐模型:
基于矩阵补全的推荐模型建模为:
3)根据步骤2)建立基于属性优化矩阵补全的托攻击检测模型:
基于属性优化矩阵补全的托攻击检测模型为:
其中,A、B分别是用户特征矩阵和项目特征矩阵,Z表示结构化噪声矩阵,||X||*和||Z||2,1分别表示对X矩阵进行低秩性约束以及对Z矩阵进行行稀疏性约束,是为了平滑评分细微波动的正则化项,λ,β为可调参数,表示评分矩阵中已反馈的评分元素下标集合;
4)求解基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z;
5)根据步骤4)中计算得到的结构化噪声矩阵Z从用户-项目矩阵R中剔除托攻击评分;
6)采用传统推荐系统对修正后用户-项目评分矩阵进行评分预测,求得完整的用户-项目评分矩阵,基于完整的用户-项目评分矩阵中的预测评分对目标用户进行项目推荐。
2.根据权利要求1所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述步骤4)采用分块坐标下降算法求解基于属性优化矩阵补全的托攻击检测模型,得到结构化行噪声矩阵Z,具体步骤如下:
步骤4.1):在基于属性优化矩阵补全的托攻击检测模型中引入变量C并令C=ATXB,利用Frobenius范数将其进一步改写成相应的罚函数形式,公式转换为:
步骤4.2):采用分块坐标下降算法求解步骤4.1)中的罚函数,令:
初始化变量X、Z、C,令变量X0=0,Z0=0,C0=0,则可对各个变量做如下的迭代更新:
X的迭代更新公式为:
类似于X的更新过程Z的迭代更新公式为:
C的迭代更新公式为:
Ck+1=[(ρ+β)ATXk+1B+βPΩ(R-Zk+1-ATXk+1B)]/(ρ+β)
其中β为可调参数。
5.根据权利要求1所述的一种基于矩阵补全的抗托攻击推荐算法,其特征在于:所述步骤6)采用的推荐算法为不具备抗托攻击能力的传统推荐算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810200894.7A CN108470052B (zh) | 2018-03-12 | 2018-03-12 | 一种基于矩阵补全的抗托攻击推荐算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810200894.7A CN108470052B (zh) | 2018-03-12 | 2018-03-12 | 一种基于矩阵补全的抗托攻击推荐算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108470052A CN108470052A (zh) | 2018-08-31 |
CN108470052B true CN108470052B (zh) | 2021-03-19 |
Family
ID=63265276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810200894.7A Active CN108470052B (zh) | 2018-03-12 | 2018-03-12 | 一种基于矩阵补全的抗托攻击推荐算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108470052B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197215A (zh) * | 2017-12-28 | 2018-06-22 | 努比亚技术有限公司 | 一种推荐方法、服务器及计算机可读存储介质 |
CN109509051B (zh) * | 2018-09-12 | 2020-11-13 | 北京奇艺世纪科技有限公司 | 一种物品推荐方法及装置 |
CN110417765B (zh) * | 2019-07-22 | 2021-10-26 | 南京邮电大学 | 一种基于信任的托攻击用户的检测方法及系统 |
CN110602090B (zh) * | 2019-09-12 | 2021-11-23 | 天津理工大学 | 一种基于区块链的托攻击检测方法 |
CN112039843B (zh) * | 2020-07-24 | 2024-02-02 | 中国人民解放军陆军工程大学 | 基于矩阵补全的用户多域权限联合估计方法 |
CN112785331A (zh) * | 2021-01-07 | 2021-05-11 | 之江实验室 | 一种结合评价文本的抗注入攻击的鲁棒推荐方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017027480A (ja) * | 2015-07-24 | 2017-02-02 | 大学共同利用機関法人情報・システム研究機構 | アイテム推薦システム及びアイテム推薦方法 |
CN106874427A (zh) * | 2017-01-23 | 2017-06-20 | 华南理工大学 | 基于项目关联的托攻击检测方法 |
CN107689960A (zh) * | 2017-09-11 | 2018-02-13 | 南京大学 | 一种针对无组织恶意攻击的攻击检测方法 |
-
2018
- 2018-03-12 CN CN201810200894.7A patent/CN108470052B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017027480A (ja) * | 2015-07-24 | 2017-02-02 | 大学共同利用機関法人情報・システム研究機構 | アイテム推薦システム及びアイテム推薦方法 |
CN106874427A (zh) * | 2017-01-23 | 2017-06-20 | 华南理工大学 | 基于项目关联的托攻击检测方法 |
CN107689960A (zh) * | 2017-09-11 | 2018-02-13 | 南京大学 | 一种针对无组织恶意攻击的攻击检测方法 |
Non-Patent Citations (2)
Title |
---|
Recommender systems—beyond matrix completion;Dietmar Jannach等;《Communications of the ACM》;20131231;第59卷(第11期);第94-102页 * |
矩阵补全模型及其算法研究综述;陈蕾等;《软件学报》;20171231;第28卷(第6期);第1547-1564页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108470052A (zh) | 2018-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108470052B (zh) | 一种基于矩阵补全的抗托攻击推荐算法 | |
CN110162593B (zh) | 一种搜索结果处理、相似度模型训练方法及装置 | |
CN109933721B (zh) | 一种融合用户隐式物品偏好与隐式信任的可解释推荐方法 | |
CN110633421B (zh) | 特征提取、推荐以及预测方法、装置、介质和设备 | |
CN111797321A (zh) | 一种面向不同场景的个性化知识推荐方法及系统 | |
CN110889747B (zh) | 商品推荐方法、装置、系统、计算机设备及存储介质 | |
Liu et al. | Cot: Contextual operating tensor for context-aware recommender systems | |
CN110837603B (zh) | 一种基于差分隐私保护的集成推荐方法 | |
CN112800344B (zh) | 一种基于深度神经网络的电影推荐方法 | |
CN116010684A (zh) | 物品推荐方法、装置及存储介质 | |
CN113918834B (zh) | 融合社交关系的图卷积协同过滤推荐方法 | |
Chen et al. | Improving one-class collaborative filtering via ranking-based implicit regularizer | |
Duong et al. | An effective similarity measure for neighborhood-based collaborative filtering | |
Kuang et al. | Data-driven variable decomposition for treatment effect estimation | |
CN111311324B (zh) | 基于稳定神经协同过滤的用户-商品偏好预测系统和方法 | |
CN111125428B (zh) | 基于评分预测函数拟合结构的时间相关电影推荐方法 | |
Yu et al. | Deep metric learning with dynamic margin hard sampling loss for face verification | |
CN115147192A (zh) | 基于双视角纠偏的推荐方法及推荐系统 | |
Chen et al. | Sparse general non-negative matrix factorization based on left semi-tensor product | |
CN116910375B (zh) | 一种基于用户偏好多样性的跨域推荐方法及系统 | |
CN109902169B (zh) | 基于电影字幕信息提升电影推荐系统性能的方法 | |
CN111198991A (zh) | 一种基于信任度和专家用户的协同过滤推荐方法 | |
Compiani et al. | Demand estimation with text and image data | |
CN112966732B (zh) | 具有周期属性的多因素交互行为异常检测方法 | |
CN112650869B (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 |