社交机器人检测的算法分为三类:基于社交网络信息的检测算法、基于众包和发挥人类智能杠杆作用的检测算法、基于高度可辨识特征的机器学习算法。还有一些算法结合了多种算法模型,很难将其强行划分到某一类算法,本文也列举了部分结合以上三种算法来实现社交机器人检测的方法。检测社交机器人的挑战在于网络环境中同时存在多个不同的攻击者。一个有代表性的框架是脸谱(Facebook)公司所设计的反垃圾系统:一个攻击者能控制多个社交机器人作为虚假用户(sybils),它们扮演多重身份,在社交网络中发动攻击或渗透。通常推荐的一种策略是通过用户的社交关系图的结构来判断该用户是否为机器人。比如SybilRank假设一个机器人与合法用户间的联系很少,而它与其他机器人之间的联系很多,因为它们需要以众多的用户间联系来使自己看起来真实可信。通过探查这一特征可以识别网络上局部紧密联系的机器人群体。一个常见的策略是采用现成的社区检测的新方法来揭示这些紧密纠集在一起的局部社区。然而,这种策略的有效性强烈依赖于社区检测算法的选择。聪明的攻击者往往可以使他的机器人伪装彼此的社交关系图,看上去与活跃合法用户的社交关系图并无二致。这将使得仅仅依靠社区检测的方法无法发现其攻击。为客服上述缺点,包括SybilRank在内的一些检测系统采用了下述范式:与合法用户有交互的用户,其本身也是合法的(innocent-by-association paradigm)。Souche和Anti-Reconnaissance这两种工具还利用了“社交网络结构本身就能将合法用户同机器人区分开来”的这样一个假设。然而,这一方法的效力受到了限制,因为该方法对合法用户的行为预设了一个前提:合法用户会拒绝与未知用户进行互动。很多实验证明这种前提与实际不符:脸谱的一次大规模社交机器人渗透实验表明,超过20%的合法用户会来者不拒地接受他人的加好友请求;如果请求者与自己至少有一个共同好友,则超过60%的用户会接受其加好友请求。在其他社交平台,如推特和汤博乐(Tumblr),与不认识的人联系和交互是他们吸引人的一大特色。在这种情况下,若机器人与合法用户有交互,系统会将机器人判断为合法用户,造成很高的漏报率。部分学者发现仅仅区分合法用户群体和社交机器人群体的算法具有局限性:现实中的社交平台包含社交机器人和被其“俘获”的合法用户混合组成的群体。高级的机器人可能大规模成功渗入,这使我们没办法仅使用社交网络图来找出社交机器人。针对这一问题,阿尔维斯(Alvisi)等人提出了一个互相补充的多种检测技术的组合,将人工识别社交网络中合法用户的结果用于有监督学习算法的训练。
2. 基于众包的检测算法王刚(Wang G,音译)等人提出了基于众包的检测算法,把检测工作分配给大量的工作人员来完成这项工作。作为概念验证,他们实现了一种线上社交图灵测试平台。他们基于这样一个假设:对人而言,检测用户是否为社交机器人是很容易的工作,因为人能够轻易察觉交流中的细微差别,比如讽刺、诱导、新出现的表达模式、反常,而机器在这方面的能力无法与人类相提并论。基于脸谱和人人网的数据,他们组织数据标注专家和在线雇用人员仅利用个人主页上的自我介绍所包含的信息来识别社交机器人,测试这些人进行识别的工作效率。根据结果得出,在线雇用人员的检测准确率会随上班时间增加而下降,不过检測准确率尚可接受,最终数据可通过多数投票法进行改善:请一组人员标注同一个个人主页,以多数人的标注作为最终检测结果。这种方法能够使误报率接近于零。基于众包的检测有三个使其难以实际应用的缺陷:第一,虽然有的人觉得这种算法在社交平台建立早期介入是可行的,但是对于已拥有大规模客户群体的社交平台,如脸谱和推特,这种方法成本过高;第二,为了尽可能减少相关成本,就必须使雇用标注者人数尽量少,但仍须雇用有经验的标注者因为“中等水准”的人员独自工作很难保证质量。因此,为了建立标注机器人的标准数据集,大型社交平台,如脸谱和推特,被迫雇用专业的分析师团队,而这样的做法因为成本问题并不适合小规模的和初创的社交平台(这与刚才提及的有的人觉得“众包适于小型平台”的观点相左);第三,将用户的私人信息暴露给外部的工作人员又产生了隐私保护问题。虽然一般而言,用户在推特上的自我介绍比在脸谱和人人网上的更开放,但是推特的用户自我介绍所含的信息量少,标注者判断起来很难项针对推特上叙利亚社交僵尸网产生的内容和互动所进行的长达35周的人工标注分析表明,某些先进的社交机器人的目标可能不再是模仿人类行为,而是将人们的注意转移至不相关的信息上。这种烟雾弹策略需要社交机器人之间的高度配合。这个现象与早期发现的社交机器人精心策划政治运动是一致的。它们不仅建立了特有的网络连接模式,而且提高了机器人间协调合作的水平。目前,利用账户活动的同步信息检测社交机器人的思路成为一些系统的基础,如Copy Catch,SynchroTrap和RenRen Sybil detector等都是通过合作行为来检测机器人。3. 基于特征的检测算法集中关注用户行为模式的好处是行为易于表示为特征,能够使用机器学习算法获取机器人行为和真实人类行为的区别所在,进而通过观察社交网络中用户的行为来分辨其是否为机器人。我们一般利用各种不一样的特征构建用户行为的正交空间。2014年发布的Bot or Not?系统是一个基于特征的机器人检测算法的例子。该系统是推特公开的第一个社交机器人检测接口,旨在促使大众对社交机器人的存在引起重视。类似其他基于特征的检测系统例, Bot or Not?系统实现了一个检测算法,该算法基于可以抓取一系列用户可疑行为,很好区分机器人与人类的高度可预测特征群。该系统在A&M训练集上训练现有的监督学习算法,其中训练集包含正负样本各15000例以及成百万条用户推文,在AUBOC交叉验证集上取得的检测准确率为95%。除了提供分类结果,Bot or Not?系统还提供一系列交互式可视化工具,帮助用户深入理解系统挖掘的特征。