页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始
Anti-spam

@周源的邀请,我现在才回应,见谅。做反 Spam 工作的人,要禁得住诱惑耐得住寂寞扛得住压力受得了委屈,本想路过算了。但看看互联网上这块内容都比较少,看到有人说自己会说些干货,结果找到很少,做 Anti-spam 的人不多,也时常不受重视,其实交流又非常重要,基于此,我就从产品的角度谈谈这块自己的一点积累,抛砖引玉。

Anti-spam 是数据分析工作的一个方向,非常考验一个产品人员对数据整体和局部的把握,如果对产品无爱,对数据,特别是数据的细节刨根问底不着迷,这事儿做不好。

做 Anti-spam工作,只掌握了数据分析的方法是不够的,还要加入足够的产品市场人员的思维——对用户需求的分析,对用户需求的理解,对人性的理解,多换位思考。有了这些才能真正的把基于XX产品的反 Spam 工作做好。这也是一般做了几年反 Spam 工作后,能力提升瓶颈的关键点。

开始正文,先分4部分:具体工作怎么做,如何进阶,反spam产品经理还需要具备哪些能力,我个人的经验。

1. 具体工作怎么做
1.1 做数据分析
第一次接触这个工作的人,一般压力很大,都是人肉通过后台工具解决spam问题解决不了或者这个问题已经严重的威胁产品安全了,希望你能解决,如果你幸运的解决了一两个问题,更希望你能成为黯淡无光黑夜里的救星。
在很多人指手画脚,投诉各种问题的时候,自己不要乱,一定先只做一件事件——数据分析,抽XX产品10万个数据分析分析。
目的:了解目前整体的情况,对问题严重性,多样性,有足够的认识。
产出:分析报告,列出当前所有问题的分类情况,比例情况,严重性情况,每类呈现出什么特点,给出问题解决的优先级排序。
做完这个事情,整体情况你应该最了解,老板再问你,你就能从全局介绍情况,然后再分类给出优先级。一般老板都关注最关键,最重要,影响最大等关键问题。



1.2 给出XX产品spam的定义
数据分析报告中列出所有问题,而非仅仅是spam问题,因为几乎没有人能在不看大量数据的情况下,就能给出这个产品spam准确的定义,如果有给出的,基本也是拍各种器官拍出来的。
给出XX产品spam的定义很重要,重要的意义有:
1.2.1 明确自己的工作范围
做反spam工作一般开始压力大,万事开头难,千万不要一上来眉毛胡子一把抓,贪多,定位太高,当前具体问题解决不好,赢得不了信任,以后工作很难开展。
跟反spam工作,相关的有很多,黄反监控、账号安全、防攻击防抓站,这每一个都是难度大不好做的工作,反spam没有做好前,不要牵扯精力。
1.2.2 明确自己的工作目标
有了工作范围和工作任务定义,自己的工作目标就容易定出来了,也就是你的KPI,这个很重要,spam问题只要不是瞎子都看得到,不管懂不懂都可以上来说一通自己的策略,如果没有KPI,你就无法证明自己的工作是否有效,无法证明虽然现在问题比较多,但整体情况是在前进,变好的。
1.2.3 指导今后判定问题的标准
今后的工作中,会遇到很多灰色地带和问题,这个定义就是你划分是否属于你工作范围的明灯,也是你在数据分析中,判断具体问题是否是spam的标准。


1.3 发现问题

1.3.1 以spam问题为导向
没啥好说的,初期就是哪里有问题,哪里就有你的分析,研究。
1.3.2 全面掌握spam情况,找出主要问题
面对一个产品的spam问题,首先应从基础数据入手,全面的掌握spam问题的类型、比例情况,最有效的办法是:大量的基础数据标注。这个办法好处非常多,除了能掌握主要问题和全面的情况外,还能对spam的贴子有亲生的体会,了解spamer在想什么,惯用的伎手段有哪些,找出很多典型的例子。
1.3.3 保持发现问题的敏感性,把握spam流行趋势
大型的数据调研有一定的周期性,获得的结论一般关注的是主要问题,由于spam问题有着很强的时效性,反spam系统一旦出现漏洞,某一类之前可能比例较小的spam问题也很容易泛滥起来,因此保持敏感性,把握流行趋势很重要。方法是:
① 关注spam收益高的spam案例;
这个因产品而已,但是每个产品总能找到。
② 注意用户反馈;
任何监控和机制,总免不了有疏漏,我们也要非常注意用户关于spam问题的投诉、反馈,用户深恶痛绝的spam问题,往往也是危害大,容易流行起来的问题。


1.4 分析问题
一个产品中出现的spam行为,也可以看成是一种用户需求,当然这些用户需求从产品官方角度看是不正常的,都是以伤害绝大多数用户体验为代价,满足小部分人赚钱的需求。
反spam中,分析问题最主要的目的,就是把这些一小撮害群之马的行为从绝大多数正常行为中,抽象化、规律化、用机器能执行的语言分离出来,最终变成反spam策略解决掉。主要方法是:
 找碴,找不容易变的碴
反spam就是找出spam行为与正常用户行为之间的不同规律,把这些不同区分出来,区分的办法价值的高低,主要是两点来衡量:spamer的规律是否易变和我们区分的成本是否很低。机器最容易区别的,spamer变化成本高的不同点,就是我们要的点。
常见的4个方向
① 内容;spam行为都是以获利为目的的,在产品里spam,最终spamer都是要把用户、流量导入到目标网站,一般都会在内容中留下spam特征即利益的出口。
② 行为;凡是spam能获利的地方,spamer都希望更快更多的获利,这就注定了spam行为一定会走发的多、发的快的路线,一定会跟正常用户有区别。
③ 社区属性数据,包括:发贴作者注册时间、作者等级(新用户、平民、会员、认证人员),spam贴子发布的连续性,spam用户发贴在贴子页面停留时间等等
④ 用户之间的交互数据,这个不一一列举。

总之,一种类型的数据,就像素描中的笔触,数据越多,意味着你描述犯罪嫌疑人的线条越多,就越能清晰的把spam辨别出来,如果数据很少,那就很难解决复杂问题。另外,数据多了,也应该注意使用最简单有效的数据,RD会感谢你的。

1.5 解决问题

1.5.1 优先解决主要问题

一段时期只能解决一个问题,优先解决影响面最广危害最大的问题,这样获得的收益最大,同时对其他次要问题的解决也非常有帮助,甚至次要问题在解决主要问题的过程中,也会迎刃而解。

1.5.2 小数据量验证策略效果

当spam问题发现和分析完毕后,一般一个解决策略基本成型,这时,一定要先用小规模的数据验证一下策略的效果后,再进行策略的开发和上线。一个反spam策略无论多么的简单或巧妙,都要用数据去验证效果,验证的方法是抽小量的数据去检验,按照这个策略看是否能获得好的准确率和召回率。

1.5.3 坚持低成本、低误伤、高收益,数据说话的原则

很多反spam问题都不止一个解决办法,哪个低成本、低误伤、高收益我们就走哪条路,无论谁提出的想法或策略,用数据检验没有问题后,才进行下一步工作。
不要一上来就想搞个智能分析打分系统,什么贝叶斯,什么离散系统,先一个问题一个问题的解决,一个策略一个策略的上,等你有基础有积淀,如果还需要做这样的系统,那就再做吧。
智能系统很难做,要很高阶的RD和PM搞基一样的配合,才能孕育的出来的生命。Spam变化很快,做智能系统解决很耗时。

1.5.4 解决问题时,以PM还是RD为主导?

一般RD珍贵,事情又多,PM RD 7 3开吧

具体工作怎么做,讲完了,其实,在这个过程中有非常多的难点,定义如何制定,数据怎么分析,excel怎么用等等,欢迎讨论,有空我再续。

2. 如何在反spam业务上进阶

当各类问题和策略的制定,做到两位数的时候,比较少的会碰到无法解决的具体问题时,就可以开始考虑工作的进阶和深入。

2.1 综合问题把握方向

反spam工作是持久战,spam问题也会一直有不断有,头痛医头脚痛医脚只能解决一时局部的问题,要全面彻底做好反spam工作,把spam问题控制在一个相对低的水平,就必须每隔一段时间分析回顾这段时间所作的工作,总结经验把握下一步方向。
一般方法:
2.1.1 首先在解决具体问题中,不断明确解决反spam问题有哪些办法和角度,把这些角度归纳出几个方向。
2.1.2 回顾这一段时间里,我们都是从哪个方向出发的,这个方向我们做的如何?是否已经做的比较彻底了?是否到了瓶颈的地方?是否存在这个方向解决不了的问题。如果有,是否需要换个角度和思路,是数据少了还是方法不对等等。
2.1.3 分析当前面临的主要问题和spam流行趋势
2.1.4 综合过去的经验和当前遇到的问题,系统的完善上一个方向,同时在适当的时候提出和推进下一个方向的开展。



2.2 反 Spam 人才业务上的培养

PM的人才培养,每个产品经理都有自己的特点,我只说一下反 Spam 业务中,如果培养的话,特别需要注意的问题。

(注释:本文的pm不是product manager,而是product marketing的缩写,意思是基于市场需求的产品,(而非创造需求)翻出来说,是提醒新入的pm,别上来就搞什么管理,先把精力投入到产品研究上,product master比别的都有价值。via UBee

2.2.1 解决问题的办法真心不止一条,教给新同学方法,不要总觉得自己的想法最靠谱,都要按照你的意思来。
2.2.2 放权,在背后做支持,发挥新同学的主观能动性吧,做的好是他的功劳,做的不好是他的责任,让新同学尽快的负起责任来,有利于新同学更快的独当一面。
2.2.3 没有做数据分析,就不要乱发表具体策略的建议。经验是个好东西,但会犯错,作为资深人员,仍要注意,没有亲自看数据,不要随便定策略,说出来很容易不靠谱。
2.2.4 把试错的机会留给新人。每个资深产品人员想想自己是怎么成长的,犯了多少错,只要不是方向性的错误,尽量把试错的机会留给别人,在新同学每次犯错后引导他们去思考避免,从错误中学到成长。via 百度产品市场部


3. Anti-spam 产品经理需要具备哪些能力
正如之前所述,解决反 Spam 问题的办法有很多种,所以,成功的反 Spam 产品经理各有千秋,从介绍这个行业或圈子的角度,我列一列众多能力中的几种,大家参考,方便大家了解或招聘时参考。不同的环境导致不同的成长路径,不一定非要照此修炼。
3.1 反 Spam 的数据分析能力
这是实际动手的能力,方法论都可以学可以听,数据分析能力我觉得是一个无法传授,只能自己实践的能力,但在实践过程中,也有一些总结提高的方法。
3.1.1 培养数据亲切感
在热爱这个产品的前提下,数据抽出来时,别人看到的是数据,你看到的是数据背后的用户,用户的需求,他们的种种行为总是给你带来惊喜,他们需求得到满足后,总是能给你带来喜悦。
Spam 各种行为背后都是有着各种各样的联系,产品对他们来说是黑匣子,大量数据放在一起的时候,稍微的排一下顺序,规律就会显现出来。
3.1.2 在数据分析时,不要想当然的给用户打上标签,也就是不要过快的判定非黑即白完事儿,而是不停问自己,他为什么要这样做,是一个还是很多个这样,很多个这样一定有原因,这样原因可以先假设,但一定要用数据验证假设,验证的次数越多下次做建设的时候越容易正确。道理很简单:熟能生巧,简单的东西做到极致,你就像在开外挂一样,别人看不出的规律你总能看出来。

(写到这里说说题外话:写到这的时候,我想起的搜索引擎9238,搜索研究院―,一个超级到不能再超级的超级用户、每天至少搜索上千个词、半夜还在用产品、深夜实在累的不行了摊开睡袋睡下,大家早上上班的时候他去洗手间洗脸刷牙。成功的路上没有捷径,听到、看到或者别人教你关于某个问题如何做跟自己完全掌握,之间还有数以百计个小时。)

3.2 关键问题的把握
做产品做久了,一起讨论问题的时候,你会发现总有那么几个人,他们每次指出的问题都是整个问题的关键点,策略型 PM 这点非常重要。


3.3 全局的产品意识
3.3.1 平台型产品不用在产品设计之初特别在意反 Spam 问题,有这个意识觉悟,不要故意做漏洞,犯低级错误即可。

非小型UGC产品,一般都是先有了这个产品,这个产品发展到一定阶段后,才出现 Spam 问题,所以在产品一开始设计之初,很难有人能考虑到反 Spam,即便有人考虑到这个问题,在产品都不知道以后能否火的前提下,反spam的需求也会因为优先级、资源等问题搁置。再则,平台型产品初期就是要以低门槛来抢用户,成功的运气因素也很重要,在早期做相关的功能或限制没有必要。
另外,反spam是问题导向,问题没有发生,你怎么预设问题然后去控制。

产品人员在分析用户需求,设计产品之初,要心无旁骛的只关注如何更好的满足用户需求,一定要抱有N个假设,这样才能把产品做好。这个 N 个假设里,其中两条是:RD 是万能的,只有成本和收益的权衡;Spam 问题不存在无法解决的问题,只有重视程度和阶段的不同。

3.3.2 能深入细节,更能跳出细节看大局部,看整体。

这句话,看起来比较虚。举个项目例子(我不可以细说),比如你解决某类 Spam 问题,时刻想着做这事儿的目的是什么,有时候解决到80%了,是否可以换个方向审视一下,做一做,可能效果更好。

我一直打一个比方——反 Spam 需要几十个策略,交织在一起想一张网,Spam 来了都要过这张网,当你的网策略少比较稀疏的时候,漏洞就大,Spamer 一试就知道你的大概策略,大概阈值,很容易就钻过去,但是当策略较多,网比较密的时候,钻过去的成本就大大提高,这就要求产品经理能细节能整体。

3.3.3 要共赢,维持生态平衡,不要伤及产品和自身。

Spam与营销有时候只有一线之差

反Spam的目标就是把Spam控制在可以接受的范围内,保持生态平衡,利益链条平衡。做的太狠,也会自损忍受阉割之痛,另外,也会有意想不到的麻烦,你懂的。




4. 我个人的一些经验

4.1 以spam问题为导向
4.2 一段时间只解决一个问题
4.3 优先解决范围最广危害最大的 Spam问题
4.4 策略提出后一定要小数据量验证效果
4.5 发挥每个人的积极性、主观能动性
4.6 坚持低成本、低误伤、高收益,数据说话的原则
4.7 Spam问题具有时效性,反spam更要快速有效
4.8 先下猛药再解决误伤
4.9 不要指望一个策略或一组策略解决所有问题
4.10 勿以善小而不为
当成本也很小的时候,一些收益看起来小的策略,在多个策略综合起效的时候,也能带来很大的收益。例如:在策略很多的前提下(这个前提很重要)解决某些问题的时候,关键词匹配也能很有效。
4.11 人工靠不住,尽量多用机器
4.12 对数据要有亲切感,乐意探究数据背后的故事
4.13 机器不够用,人工过来补。注意是应对图片、视频 Spam,机器识别难度很大的问题。
4.14 注意遗漏,连连看、挖掘召回。
4.15 解决问题的路不止一条。
4.16 PM抽数据困难不畏惧。



========================================================
2016 年 8 月 2 日更新

5. 最近一些时间,在反作弊业务上,自我感觉成长不多,有什么新的感悟,我会逐步更新在下面

5.1 如何解决误伤问题

不同大小体量的平台解决思路不一样

流量、用户群比较大的平台,一般的做法是,周期性的评估误伤,误伤比较高的策略下线掉,再去优化策略,优化到一定程度后再上线;

优化策略一般都会面临挖掘新的数据项的问题,在当前仅有的数据项基础上去优化策略难度比较大,需要很认真细致的看数据,思考策略;而挖掘新的数据项会更容易更有效。新数据项的挖掘,产品最好找到多一些的数据项,预防着有些很好的数据项工程师挖的难度比较大,就需要换。

策略评估误伤,下线,优化,再上线,再评估……,这样的循环做多了,需要思考如何把策略制定变得产品或运营人员可配置化,策略上下线自动化的工作。

策略可配置化,主要是要抽象化策略共同的项,由技术做成模块,新的策略就是由这些通用的模块搭配一些条件生成出来。产品或运营可以去组合出新策略,自由调整关键阈值。

体量小一些的平台,用上述的方法,可能效果不好且成本高,有点像用牛刀杀鸡,而且小体量的平台往往更注重误伤(原因:小平台正常用户本来就少,误伤几个就是大事儿;小平台里当个正常用户影响力更大,十几个核心用户出来反馈误伤,感觉就是大新闻),那怎么办呢?

解决方案是:把处理手段做的有层次些。以前反作弊抓住了,都砍头,砍错了,当然压力大;现在反作弊抓住了都把小拇指的指甲剪了,剪错了,压力不大。但是,剪指甲的手段也要达到反作弊的效果。追求什么效果?第一追求:把人和机器区分开,把机器人干掉;做不到的话,退而求其次,打断 spam 的连续性,提高 spam 的成本吧。


这种手段怎么做?
验证码就别用了,除非是 Google 那种行为验证码,但一般公司做不了也也舍不得花钱做,开源接口被墙了。
三个强
结合性强,要跟自身产品特性结合。Facebook 验证你是不是账户拥有者的时候,会让你填你上传上的照片中,人脸都是谁的脸。
趣味性强,验证有段要有趣,不然正常用户被误伤的时候填起来就会很颓废。我在微博做过把你最近关注的人抽 4 个出来,把名字打乱,让你让头像和名字连线连正确。
安全性强,能真正的把人和机器分开。


5.2 如何挖掘数据项

挖掘数据项是反作弊至关重要的一环,数据项多,解决 Spam 的思路就广。

挖掘数据最关键是两点:好的分类方法和注意细节的能力

好的分类方法:我的经验是,基础数据、社区属性数据、用户之间的交互数据;两个维度:显性数据和隐性数据。

细节数据的分析归纳能力,我的两个经验:多思考如果我是正常用户使用产品一般流程是什么;多思考如果我是作弊的我会怎么作弊,以及多研究各种发帖机、注册机。

目录结构

转载地址:

作者:帅帅
链接:https://www.zhihu.com/question/20103086/answer/14093782
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

 

 


 


Contributor片刻

网站地址: www.apache.wiki

ApacheCN【技术属于世界、欢迎转载传播】


  • 无标签