推荐系统三十六式
刑无刀
“贝壳找房”资深算法专家,8年推荐系统工程师
立即订阅
11389 人已学习
课程目录
已完结 39 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 用知识去对抗技术不平等
免费
第1章 概念篇 (3讲)
【概念篇】你真的需要个性化推荐系统吗?
【概念篇】个性化推荐系统那些绕不开的经典问题
【概念篇】这些你必须应该具备的思维模式
第2章 原理篇 (20讲)
【内容推荐】画鬼容易画人难:用户画像的“能”和“不能”
【内容推荐】从文本到用户画像有多远
【内容推荐】超越标签的内容推荐系统
【近邻推荐】人以群分,你是什么人就看到什么世界
【近邻推荐】解密“看了又看”和“买了又买”
【近邻推荐】协同过滤中的相似度计算方法有哪些
【矩阵分解】那些在Netflix Prize中大放异彩的推荐算法
【矩阵分解】Facebook是怎么为十亿人互相推荐好友的
【矩阵分解】如果关注排序效果,那么这个模型可以帮到你
【模型融合】经典模型融合办法:线性模型和树模型的组合拳
【模型融合】一网打尽协同过滤、矩阵分解和线性模型
【模型融合】深度和宽度兼具的融合模型 Wide and Deep
【MAB问题】简单却有效的Bandit算法
【MAB问题】结合上下文信息的Bandit算法
【MAB问题】如何将Bandit算法与协同过滤结合使用
【深度学习】深度学习在推荐系统中的应用有哪些?
【深度学习】用RNN构建个性化音乐播单
【其他应用算法】构建一个科学的排行榜体系
【其他应用算法】实用的加权采样算法
【其他应用算法】推荐候选池的去重策略
第3章 工程篇 (10讲)
【常见架构】典型的信息流架构是什么样的
【常见架构】Netflix个性化推荐架构
【常见架构】总览推荐架构和搜索、广告的关系
【关键模块】巧妇难为无米之炊:数据采集关键要素
【关键模块】让你的推荐系统反应更快:实时推荐
【关键模块】让数据驱动落地,你需要一个实验平台
【关键模块】 推荐系统服务化、存储选型及API设计
【效果保证】推荐系统的测试方法及常用指标介绍
【效果保证】道高一尺魔高一丈:推荐系统的攻防
【开源工具】和推荐系统有关的开源工具及框架介绍
第4章 产品篇 (3讲)
【产品篇】推荐系统在互联网产品商业链条中的地位
【产品篇】说说信息流的前世今生
【团队篇】组建推荐团队及工程师的学习路径
尾声与参考阅读 (2讲)
推荐系统的参考阅读
【尾声】遇“荐”之后,江湖再见
推荐系统三十六式
登录|注册

【效果保证】道高一尺魔高一丈:推荐系统的攻防

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

攻和防

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

攻击

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

精选留言(4)

  • shangqiu86
    我也用协同过滤,但是之前从来没有考虑过攻防,听了老师的课,我要考虑咯~
    2019-05-09
    1
  • 日暮_卍解,小狗狗!
    这课有意思,以前没有考虑过

    作者回复: 多多分享。

    2019-05-12
  • shangqiu86
    记得之前听过风控的讲座,感觉黑产真的无孔不入啊,不过风控也很有意思,他们并不是完全的打压黑产,而是把黑产控制在一个他们能够掌握的渠道中,即不赶尽杀绝,而是知道他们是怎么玩的,给其留一条路。也许就是防止道高一尺魔高一丈吧。
    2019-05-09
  • 大马猴
    有实际案例吗?这样做的黑产收益是什么?
    2018-12-15
收起评论
4
返回
顶部