推荐系统三十六式
刑无刀
“贝壳找房”资深算法专家,8 年推荐系统工程师
43607 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 40 讲
开篇词 (1讲)
原理篇 · 深度学习 (2讲)
原理篇 · 其他应用算法 (3讲)
推荐系统三十六式
15
15
1.0x
00:00/00:00
登录|注册

32 | 道高一尺魔高一丈:推荐系统的攻防

模型融合
限制用户投票权重
引入用户质量
改进基于用户的协同过滤
机器学习思路
识别假数据和假用户
产品教育用户
提高注册成本
分段攻击
热门攻击
平均分攻击
随机攻击
托攻击
扶持或打压物品
攻防是永无止境的过程
基于物品的协同过滤容易被发现
基于用户的协同过滤更容易被攻击
外部攻击常发生在协同过滤算法上
推荐系统的健壮性
算法级
数据级
平台级
攻击手段
目的
总结
防护
攻击
推荐系统的攻防

该思维导图由 AI 生成,仅供参考

毫无疑问,推荐系统是一种流量操控手段,所以其运转需要满足平台方的利益。
为了这个目的,推荐系统通过科学的手段建立起一套运转规则和逻辑,希望平台内的各方能够皆大欢喜,物品生产方能源源不断地生产物品,消费方能孜孜不倦地消费。
当然这里的物品和消费都是泛指,物品可以是内容、商品、娱乐方式、甚至是人等等,消费也不定是直接掏钱,花时间也是一种消费。
既然推荐系统是某一方流量诸侯的运转规则,那么就不能不考虑到在其诸侯封地之内会有刁民闹事、钻营规则的漏洞,从而达到自己的目的。

攻和防

用行话说,就是推荐系统也会受到攻击,推荐系统也是一种软件,只要是软件,就一定有安全问题,推荐系统也不能免俗。
如果推荐系统非常脆弱,容易受到攻击,那么推荐系统就不是为平台利益而运转,而是为攻击者利益而运转,推荐系统不过是个傀儡,前面讲到的那么多酷炫的算法也就成了摆设,想必正在听课的你会瑟瑟发抖吧?
让前面讲到的所有算法、架构起到它该起的作用;让那些指标数据反映真实的效果,这两件事都很重要。推荐系统如果被攻击也就需要被防护,因此,我今天就和你讨论一下推荐系统的攻防这个略带黑色的话题。

攻击

知己知彼,百战不殆。要更好地守护你的推荐系统,就需要先了解别人会怎么攻击你的推荐系统。在推荐系统攻防研究领域,被研究得最为彻底的就是针对协同过滤的攻防。
为什么呢?一方面是协同过滤本身就应用广泛,另一方面是针对协同过滤的攻击容易生效。
我们先概略认识一下推荐系统的攻击是怎么回事,然后再认识一下攻击怎么做。
有人对身为流量控制器的推荐系统攻击,并不是他吃饱了没事做,来帮你测试系统,根据“无利不起早”这条社会公理,攻击方一定是想扶持或者打压某些物品,从而获得他想要的个人利益。
攻击方要扶持一个物品,就想要推荐算法在计算他的评分时给出高分,想要打压一个物品,就要反之行事。
不论目的是扶持还是打压,都需要先达到操纵选民的目的,你知道的,协同过滤,无论是基于物品还是基于用户,都是群体智慧,也就是说需要有投票过程。
所以攻击协同过滤,核心问题在于如何操纵选民。选民有两种,一种是用户,一种是物品,前者是基于用户的协同过滤所需要的,后者是基于物品的协同过滤所需要的。
现在,从一个简单例子开始,你和我一起来思考,如何攻击基于用户的协同过滤算法。
我们先回顾一下它的原理,首先计算出用户之间的相似度,在给一个用户计算推荐结果时,让相似的用户集体决策,其背后的思想也很直接:人以群分,与你口味相似的人给你推荐的结果你会喜欢。
那么攻击任务就是,要让自己扶持的物品在推荐算法决定是否要推荐给一个用户时,得到高分。
方法就是操纵选民,这里的选民就是和被欺骗用户相似的用户,被欺骗用户肯定是吃瓜群众,也是攻击方的利益攫取,所以不会成为被操纵的选民。
通常的手段就是,批量制造假用户资料,并装作是与被欺骗用户兴趣相投的人。这叫做托攻击或者 Shilling Attacks,托也就是水军,名字很形象有没有?
具体怎么制造这批选民呢?首先,攻击者会注册一批用户,这部分用户就是攻击者可以操纵的选民,然后让这批用户去做出和被欺骗用户一样的历史评分行为。
被欺骗的用户打高分的物品,这批水军也打高分,这样一来就可以在计算用户相似度时,这一批新注册的用户都和那个用户有较高的相似度,从而就变成了参与推荐算法计算时的选民,也就可以给扶持的物品打高分或者给打压的物品打低分。
只不过,针对一个吃瓜群众做这些事情显然是一个不划算的事情,所以攻击者会先找到目标用户群体,针对目标用户群体来做这些事,这样一来就可以把扶持的物品推荐给这个群体,让打压的物品从这个群体面前消失。
攻击者在伪造用户兴趣时,除了要做出和被欺骗用户相似的历史行为之外,还要做出掩人耳目的行为,以防止被平台发现,所以还会给一些无关的物品打分。至此,一个简单的攻击过程完成了。
总结一下,攻击手段包含这些元素。
目标物品,就是攻击方要扶持或者打压的那个物品。
助攻物品,就是用来构造假的相似用户所需要的物品。
陪跑物品,就是用来掩饰造假的物品。
三类物品构成一个靶子,靶心是攻击者要拿下的,层层包围,示意如下。
其中,根据对最外环物品的评分构造方法不同,可以把攻击分为两种。
随机攻击。随机攻击就是在上面示意图中,构造最外环“陪跑物品”评分时,采用随机打分方式生成。随机打分就是用全局平均分构造一个正态分布,给无关物品打分时,用这个正态分布产生一个随机分值。
平均分攻击。平均分攻击也是用在最外环物品中,给他们打每个物品的平均分。需要先统计出被打分物品的平均分,然后攻击方给这个物品也打上平均分。
前面举例的这种攻击手段,需要先找到一批被欺骗用户,然后逐一为它们构造相似用户,最后才能如愿地实现扶持或打压目标物品。于是就有更为狡猾的攻击办法,这里举两种,一种是热门攻击,还有一种是分段攻击。
热门攻击就是攻击者会想办法让目标物品和热门物品扯上关系。这样做有事半功倍的效果,热门物品有个特点是:评分用户多。如果和它扯上关系,那就找到了一个数量较大的群体,攻击的影响也会巨大。
和热门物品扯上关系最常用的就是,使用假用户同时给热门物品和目标物品评上高分,这是针对扶持目标物品的做法,如果要打压,则给热门评高分,给目标物品最低分,陪跑物品就采用随机评分的方式。
热门攻击,若干年前在某电商网站真实发生过,攻击者想让自己的图书得到更多推荐,于是大量同时购买畅销书以及那本想得到推荐的图书,最后在畅销书页面的相关推荐中就推出了那本书,攻击者目的达成。
热门攻击有两个“优势”。
如果是扶持目标物品,则经过热门攻击后,基于物品的协同过滤算法会把目标物品计算为热门物品的相似物品,上述实际案例就是如此;
基于用户的协同过滤算法,也会把消费过多个热门物品的用户计算为假用户的相似用户,从而为这些用户推荐出目标物品。
热门攻击有时候并不是攻击者有意发起的,而是一种群体现象,例如粉丝出征,消费者集体维权,都可能产生出热门攻击的效果。
分段攻击就是想办法把目标物品引入到某个群体中,做法就是攻击者先圈定好用户群体,再列出这个群体肯定喜欢的物品集合,然后同时用假用户给目标物品和这批物品集合评分,做法类似热门攻击。
最后的攻击效果就是:如果扶持目标物品,那么这个被圈定的用户群体会看见,如果打压,那么目标物品就会在这群人面前消失。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

推荐系统的安全性一直备受关注,特别是在面对各种攻击手段时。攻击者利用协同过滤的脆弱性,通过托攻击、热门攻击和分段攻击等手段操纵选民,对推荐系统构成威胁。为了保护推荐系统免受攻击,文章提出了多层防护策略。首先是平台级的防护,包括提高注册成本和教育用户积极参与,以提高数据真实性。其次是数据级的防护,通过机器学习和反垃圾系统识别和删除假数据。最后是算法级的防护,建议改进推荐算法设计,如引入用户质量和限制投票权重。总的来说,保护推荐结果符合平台方的利益是关键。文章强调了推荐系统的健壮性,指出协同过滤算法容易受到攻击,尤其基于用户的协同过滤更为脆弱。最后,文章呼吁对推荐系统的攻防问题进行实际分析,因为攻防是一个永无止境的过程。整体而言,本文深入探讨了推荐系统的攻防问题,强调了技术特点和安全性的重要性。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《推荐系统三十六式》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(5)

  • 最新
  • 精选
  • 日暮_卍解,小狗狗!
    这课有意思,以前没有考虑过

    作者回复: 多多分享。

    2019-05-12
    1
  • shangqiu86
    我也用协同过滤,但是之前从来没有考虑过攻防,听了老师的课,我要考虑咯~
    2019-05-09
    3
  • shangqiu86
    记得之前听过风控的讲座,感觉黑产真的无孔不入啊,不过风控也很有意思,他们并不是完全的打压黑产,而是把黑产控制在一个他们能够掌握的渠道中,即不赶尽杀绝,而是知道他们是怎么玩的,给其留一条路。也许就是防止道高一尺魔高一丈吧。
    2019-05-09
    3
  • 晨晓
    高端科普
    2020-03-29
  • 大马猴
    有实际案例吗?这样做的黑产收益是什么?
    2018-12-15
收起评论
显示
设置
留言
5
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部