微博环境中的机器人账户检测综述

时间:2023-07-12 14:45:07  来源:网友投稿

张 玄,李保滨

(中国科学院大学 计算机科学与技术学院,北京 100049)

微博(Microblog)是一种广播式的社交媒体和网络平台,用户可以在平台中发布、获取和传播信息,并通过关注和好友机制进行公开或私密的信息分享。相比于传统社交媒体平台,微博的写作时间更加灵活,信息发布更加便利,信息沟通更加迅速,浏览和发布方式更加自由,任何人都可以通过网页、手机客户端、短信、第三方应用等不同方式随时随地发送和阅读微博、即时上传图片和视频。基于上述优势,微博逐渐成为人们日常生活中重要的社交工具和信息平台。据统计,截至2019年,全球总共有超过35亿人参与到微博平台主导的社交活动中[1]。

在微博普及和发展的过程中,出于信息发布的现实需求,微博平台内逐渐出现了一些机器人账户,它们的背后并不是真实的人类使用者,而是受个人或团体操纵的自动化程序[2]。机器人账户能够按照操纵者的设定自动发布推文,可以自动生成并定时发布天气和路况预报等规律性信息,也可以自动收集整理新闻时事、突发事件和用户创作作品等内容以供其他用户获取和使用,这些由机器人账户开展的自动化业务大大降低了人力成本,有效地提升了信息发布的时效性,客观上促进了信息的传播和交流。

然而,有些机器人账户也被用于传播虚假信息和操纵话题讨论等不良用途,给微博的信息传播环境带来了巨大的负面影响。由于机器人能在短时间内自动发布大量内容,因此一些机器人账户被应用于广告营销[3]、推广恶意网站[4]、传播虚假信息[5]、煽动负面情绪[6]等场景,造成了有害信息的扩散。除影响信息传播外,更进一步地,机器人账户还会影响网络群体用户的观点和意见的形成。机器人账户可以伪装成正常用户加入一个群体,影响和改变该群体对于某些事物和事件的认知,左右相关意见的形成过程。在特定话题中,机器人账户只需要占据足够大的比重,就能改变公众意见,从而使其传播的观点最终成为主流观点[7]。一旦虚假信息或错误观点在微博社区中大范围传播开来,就会形成谣言,危害公共安全。

调查表明,各种微博平台上活跃的真实用户数量与注册用户数量严重不符,大量账户被恶意注册或劫持并运作为机器人账户[8]。这些机器人账户不仅严重影响了正常用户的使用,也极大地妨碍了网络空间的信息治理,危害了信息安全。因此,研究微博环境中机器人账户的检测,对于舆情监测、网络治理等方面具有重要意义。

以此为背景,微博平台不断提高检测能力;
但相对地,机器人账户的信息发布和伪装技术也在与微博平台检测的对抗中不断演进,其隐匿性越来越高,行为表现越来越接近真人用户,检测难度也越来越高。如何在如此复杂的环境中实现准确而高效的微博机器人账户检测已经成为当前学术界和商业界普遍关注的研究热点。有鉴于此,许多研究者已经提出了表现优异的检测方法,但这些研究成果尚缺系统性整理。在已有的综述类文献中,对现有成果的分类要么基于检测方法采用的模型框架(监督/无监督,传统统计方法/深度学习等),要么基于选取的数据特征(依据推文/依据账户等),但单一的分类法仅能提供研究领域的一个剖面,欠缺综观;
另一方面,领域内的一些新的成果和新的突破也尚缺进一步的跟进。本文将尝试从多角度区分和比对不同的检测方法,更细致地归类和列举现有成果,以期对机器人账户检测的研究现状给出一个比较全面的梳理。

本文的以下内容分为五节。第1节简要介绍了微博平台和微博账户活动,并描述了微博中机器人账户的类型和每一类机器人的行动模式,以此为基础给出了机器人账户检测的整体模型。第2节主要描述了微博机器人账户检测领域中获取数据的一般方法,并介绍了一些公开的数据集。第3节描述了基于统计方法和传统机器学习的机器人账户检测方法。第4节描述了基于深度学习的机器人账户检测方法。第5节总结了目前关于机器人账户检测的研究中面临的突出困难,并展望未来可能的发展方向。

1.1 微博平台和微博账户活动

许多网站提供了微博服务,其中最知名的是Twitter(推特)和Weibo(微博)。Twitter是当今世界上使用最为广泛的微博社交网站,截至2021年第三季度,Twitter的平均日活跃用户为2.11亿,每日发送的推文总数累计在5亿以上[9]。Weibo是最大的中文微博社区,其前身是新浪网旗下的新浪微博,截至2021年第三季度,Weibo的月活跃用户达到5.73亿,平均日活跃用户为2.48亿[10]。除Twitter和Weibo外,许多国家和地区也有更本地化的微博社区,如俄罗斯的VKontakte、日本的LINE等[11]。

在Twitter与Weibo中,用户可以设置自己的个人资料,包括昵称、头像、个人简介、个人网站等。用户可以发布不超过280个字符或140个中文字符的文本信息,并在信息中附带图片、视频、超链接等多媒体元素。这则信息在Twitter中被称为一条“推文(tweet)”,在Weibo中则被称为一条“微博”,为避免混淆以下均称为“推文”。用户可以在推文中通过“@”字符+用户名的方式来“提及”其他人,被提及的用户会收到一条通知。用户可以在推文中通过“#”字符+描述的方式来把这条推文置于一个或多个“话题”中,并可以访问某个话题页面来查看属于该话题的全部推文。用户可以“关注”另一个账户,当被关注账户发布推文时,这条推文会被推送给所有关注了他的人。用户关注的人称为该用户的“关注”或“朋友(friend)”,关注用户的人称为他的“粉丝”或“关注者(follower)”,用户的关注数和粉丝数同样显示在个人资料中。用户可以“点赞”“转发”或“评论”其他人发布的推文。用户可以向其他用户发送“私信”来向该用户发送一条第三方不可见的消息。

1.2 平台政策

微博平台以用户协议的方式规定了用户享有的权利和需要履行的义务[12-13]。用户在注册账户时需要签署用户协议,承诺在日后的使用中遵循微博平台给出的使用规则。如果用户违背了协议,微博平台可能暂停该账户在一段时间内的使用,或者彻底封禁该账户。

不同微博平台对于机器人账户的政策是不同的。Twitter鼓励开发者运营自动化的机器人账户来构建信息解决方案,开展创意活动,高效率地回复用户,或者进行其他有价值的社区活动,前提是开发者及其运营的机器人不违反用户协议,不破坏网站稳定,不干扰其他用户的正常使用[14]。在这样的氛围中,Twitter上活跃着许多有益无害的机器人账户,例如Botwiki.org网站中收录了大量的这类账户。

与Twitter不同,Weibo对于机器人账户的政策相当严格。Weibo的用户协议中规定:
“未经微博运营方事先书面许可,任何人不得擅自在微博平台上实施自动化行为或发布垃圾信息。”[12]其中,“自动化行为”是指用户采用自动化手段或“明显异于常人地、远高于正常用户频率地”发布微博、评论、私信或对其他用户关注、点赞等的行为。以此为背景,Weibo平台内鲜见名义上的机器人账户,但可以观察到一些事实上的机器人账户同样活跃在Weibo社区中[15]。一些机器人账户或许能够为正常用户提供有帮助的信息服务,另一些则影响了正常用户的使用体验。

1.3 机器人账户的类型

按照设计的功能与影响其他用户的方式,微博平台中的机器人账户大致可以分为五类:
无害的机器人,公开广告机器人,定向广告机器人,僵尸粉丝机器人和热点推手机器人,以下分别介绍这几类机器人的特点。

无害的机器人:
这类机器人账户通常围绕某个主题或按照某个预设的计划发送或转发推文,如图1(a)中的Twitter账户@representabot自动收集并发布美国国会的投票结果。这些机器人不仅没有干扰其他用户的正常使用,而且有时能够提供有价值或者有娱乐性的内容,对于微博社区的整体环境是有益无害的。

图1 Twitter中的机器人

公开广告机器人:
这类机器人账户同样围绕某个主题发送或转发推文,但发布的内容主要为广告,如图1(b)展示了一个为公司定时发布商务合作广告的机器人。这类机器人并不一定会干扰其他用户,一些由正规公司运营的机器人账户可能为其他用户提供有价值的商业信息或购物指南。这类机器人对其他用户的负面影响在于: 一方面,有些机器人账户发布色情、赌博、诈骗等非法广告,影响网络环境;
另一方面,有些机器人账户会在热门话题下发布广告以获得更高的曝光度,污染了其他用户所见的信息内容。

定向广告机器人:
这类机器人账户通过在推文中提及、转发、评论或发送私信的方式定向地向其他用户发送广告。由于用户在收到消息时会收到提醒,因此定向广告机器人相较于公开广告而言会更严重地影响其他用户的正常使用。

僵尸粉丝机器人:
这类机器人账户会有计划地对其他账户及其创作内容进行关注、点赞、评论或转发,为其他账户创造虚假的热度和人气。如图1(c)中的账户至今从未发布原创推文,关注数异常多而粉丝数极少,极有可能是僵尸粉丝机器人。被僵尸粉丝机器人操纵的热度和人气将会影响正常用户对某一账户或消息的可信程度的判断,对整个社区的信息安全有巨大的损害。僵尸粉丝现象普遍存在于各个微博社区中,一些个人或组织豢养着大量的机器人账户并且出售给其他人,如Cresci等人报告他们购买了3 351个Twitter上的机器人账户[16]。

热点推手机器人:
这类机器人账户会在个人或组织的控制下参与热点事件,发布、点赞、评论或转发特定立场的信息,从而影响和操纵舆论方向。例如,一些Twitter机器人试图在社区中宣扬某些政治观点,或在选举期间支持某些政治候选人[17];
另一些机器人污染网络舆论生态[15],或者左右社区投票结果[18]。随着微博逐渐成为公共意见的表达平台,这些机器人越来越严重地影响了网络空间的舆论安全。

1.4 机器人账户检测模型

机器人账户检测的主要目的是,以微博平台中的账户活动行为为依据,识别出平台中的机器人、特别是有害的机器人,及时限制其活动,以免对微博社区环境造成危害。一种限制机器人活动的方案是检测账户发布的推文并及时删除有害推文。有害的推文包括违规广告、极端言论、不当内容等,通过推文的发布时间、发布设备等元数据和推文的文本内容可以完成检测。另一种限制机器人活动的方案是对整个账户的行为进行检测,及时封禁有害的机器人账户。对整个账户的检测可以综合考虑账户产生的各种数据,如个人资料、发布推文、与其他用户的互动关系等。

图2描述了机器人账户检测的一般流程:
从微博平台中采集若干账户的活动数据构建数据集,根据使用场景的具体要求,提取用户特征、推文特征或其他所需特征,利用统计方法、机器学习或深度学习等方法,训练从提取的特征到检测结果的映射,并将训练好的模型应用到待检测的账户上,判断该账户是人类还是机器人。

图2 机器人账户检测的一般流程

对于一个训练好的机器人账户检测模型,应当以一定方法对它的检测性能进行评价。准确率(Accuracy)和精确率(Precision)是微博环境中的机器人账户检测相关研究中常用的分类模型评估指标[19]。准确率和精确率的定义如式(1)、式(2)所示。

(1)

(2)

准确率反映检测模型整体的正确程度,但在样本不均衡时单独的准确率并不一定能如实反映模型性能。精确率反映了模型检测机器人的正确程度,在微博环境中,如果人类用户经常被错误地识别为机器人并遭到错误惩罚,将会极大地影响人类用户的使用体验,因此在训练机器人账户检测模型时应当着重考虑如何保证高水平的精确率。性能良好的机器账户检测模型可以为微博平台提供具有参考价值的检测结果,以便对可疑账户及时做出处理,从而防止机器人账户危害社区环境。

1.5 小结

微博平台以用户生成内容为主体、鼓励用户之间的互动,在为正常用户提供一个低门槛、高效率的信息交流渠道的同时,也为形形色色的机器人账户铺设了一个理想的运作环境。一部分机器人对平台内的沟通和交流有所贡献,另一部分机器人则可能危害网络空间的信息安全。微博平台往往对机器人账户的活动有所限制,一些机器人为了达成信息传播的目的而与平台的审查机制进行着对抗。在这样的对抗中,机器人运行机制的隐蔽性正变得越来越强,发布信息的种类和机制也变得更加繁杂[20]。当然,机器人账户存在无害与有害的区别,有害的机器人账户是需要重点关注与检测的对象。机器人账户检测的一般流程如图2所示,下文将对每个环节展开具体说明。

微博平台的数据是机器人账户识别研究的基础。研究者可以自行获取并标注数据,以Twitter为例,Twitter向开发人员提供了丰富的API资源[21]。利用Twitter提供的API,研究者可以方便地批量下载需要的数据,包括用户发布的推文、用户的个人资料、用户的具体行为等。对于Weibo而言,研究者则可能需要从平台中自行获取数据。

围绕一个微博账户收集到的数据特征可以概括为三类:
资料、推文和关注关系(图3)。资料包括用户的昵称、头像、个人简介和账号创建时间等;
推文由文本数据和发布时间、地点、设备、点赞和转发人数等元数据组成;
关注关系指用户之间关注和被关注的情况。一些数据集收集了用户的关注人数和粉丝人数[22],另一些数据集则进一步记录了某一用户关注和关注这一用户的用户ID或用户名[16,23-24]。

图3 一个微博账户的数据特征

为了训练和评价检测模型,需要将收集到的用户数据标注为机器人账户和人类账户。常用的标注策略可大致分为人工标注和自动标注两类。人工标注是最直观的标注方法,通过检查用户的个人资料、发布的推文、与其他用户的互动等特征,人工识别出机器人账户和人类账户。人工标注的主要问题是标注效率,逐个识别账户种类需要花费大量时间,例如Cresci团队的两名成员标注1 481个账户花费了两个月以上[16]。一种常见的提高标注效率的方法是多人合作或使用众包平台,例如Feng等人介绍了在Appen平台上发起众包业务进行数据标注的具体策略[23]。多人合作不仅可以提高效率,通过引入多数裁决的方法也可以提高标注的准确性。然而,人工对于账户的分类能力始终存在一定局限,例如Chavoshi等人报告了一种抄袭其他用户发送的推文的机器人[25],人工几乎不可能分辨出这种机器人账户。

除人工标注外,一些研究人员在已有资源的基础上,自动地捕获了已标注的数据。例如,Cresci等人募集了真人账户志愿者[16]、购买了第三方市场豢养的机器人账户[24],Yang等人收集了认证账户作为人类用户的实例、利用了现有识别系统的识别结果[26]等。采纳这些自动标注的数据能够扩大数据集的规模,但如此获得的用户往往具有相当程度的相似性、无法更广泛地代表机器人账户或人类账户,因此这些自动标注的数据更适合作为人工标注数据的补充,而不宜作为训练模型的主要依据。

考虑到数据捕获和数据标注的客观困难,一些研究者分享了他们的数据集,为其他研究者提供了数据获取方面的帮助。表1列举了Twitter环境下一部分常用的公开数据集,并简要描述了它们的数据规模和包含的数据特征,这些数据集大部分可以联机下载[27]。对于Weibo平台而言,公开数据集相对较为缺乏,且未经过系统的整理,但也同样存在一些公开数据集,如“Weibo-COV” 数据集收集了2020年新冠肺炎疫情期间的数千万条相关推文[28],“Double 11 Shopping Day”数据集收集了2013年至2017年“双十一购物节”时Weibo用户创建的文本[29],“中文社交评论类事件标注数据”数据集收集了2013年Weibo平台中的热门新闻和关于热门新闻的用户评论[30]等。

表1 Twitter平台的部分公开数据集

续表

利用统计和机器学习方法进行机器人账户检测可以分为两个步骤:
①根据已有的研究结果和先验知识,从数据集中手工计算一些特征;
②利用统计和机器学习方法,建立从提取的特征到检测结果的映射模型。根据不同需求,可选择的特征包括推文信息、账户信息、账户活动等,可使用的模型则包括监督学习的SVM、LR、朴素贝叶斯、决策树,以及无监督的聚类模型等。

3.1 基于推文信息的机器人账户检测

一条推文由元数据和文本数据组成。元数据包含与内容无关的信息,文本数据则描述推文的内容。可使用的元数据特征包括推文ID、用户ID、创建时间、是否原创、地理位置、点赞数、转发数、评论数等;
可使用的文本特征包括推文内容、推文字数、构成推文的字词计数、推文长度、是否提及他人、是否引用话题、是否包含URL等。

通过对文本数据进一步的技术分析又可以得到更高级的分析特征,例如:

文法特征:
分析推文的文法和措辞习惯,如缩略语比例、标点符号比例、各词性的词汇比例等。

语义特征:
分析推文表达的具体语义,判断是否为广告、无用内容、骚扰信息等低质量推文。

情感特征:
分析推文中蕴含的观点和情绪,如是否客观、是否友好、是否自信、心情状态等。

相似度:
分析一条推文与该用户先前发布推文或其他用户推文的相似程度,判断是否重复。

利用基于推文提取的特征,可以解决推文级的检测问题[37]。Lundberg等人[38]提出了一种仅利用推文元数据的多语言Twitter机器人账户检测方法,他们收集了5 000多条英语、瑞典语和法语的推文,利用4 000多条推文的元数据训练了多个决策树,报告称J48-HP分类器对1 000条测试推文的分类精确率超过99%。金丹等人[39]捕获了Weibo平台的数据,提取了推文的转发率和重复率、发布账户的名誉度、发布设备等特征,依据这些特征使用单一决策树C4.5和组合决策树的随机森林构建了机器人账户的识别模型,二者均有良好的检测效果,准确率达到94%以上。

除监督学习的方法外,通过计算文本的相似度来进行无监督的聚类,同样可以检测出可疑的机器人账户。Chen等人[40]针对Twitter上重复发布带有短URL内容的机器人提出了一种无监督的检测方法,他们根据推文的文本内容和发布推文的时间信息对账户进行聚类,对发布URL的机器人起到了相当良好的检测效果。Abu等人[41]收集了大量活跃在政治话题中的机器人账户,他们对机器人发布的推文基于发布时间和文本内容进行多方位的聚类,并对聚类进行组合以确定机器人账户的行为模式。他们观察到,机器人账户在许多方面存在相似性,如同步的发布时间、相近的文本情感、一致的文本主题等,利用这种共通的模式可以识别机器人账户。徐帅帅等人[42]提出了一种无监督的微博评论分析方法,利用搜索引擎扩展微博文本,通过比较评论与扩展后文本的相似性评估评论的价值,可以检测发布广告和垃圾信息等低价值内容的机器人账户。

尽管基于推文信息的机器人账户检测主要实现推文级别的检测,但在实际使用中,可以逐条分析一个账户发布的全部推文并综合出对账户的评价,实现账户级别的检测,Sneha等人[43]报告了一个相当好的使用案例。

面对推文相关的识别问题,研究者既可以只凭借元数据和简单数据训练简单的统计模型,也可以引入自然语言处理、情感计算等复杂的任务来更多样、更深入地对推文进行处理,可见基于推文的识别方法仍然有十分广阔的发展前景。

3.2 基于账户信息的机器人账户检测

账户信息可分为静态信息和动态信息,二者均体现在用户主页上。静态信息往往由用户主动设置,反映了与用户身份相关的基本信息;
动态信息是用户在微博活动中产生的信息,反映了用户的使用情况和使用偏好。具体而言,静态信息包括用户名、昵称、是否经过验证、自我介绍、头像、个人背景图像、生日、主页、所在地、账户的创建时间等;
动态信息包括推文数、关注数、粉丝数、点赞数、转发数、收藏数、时间线等。

利用基于账户信息提取的特征,可以解决账户级的检测问题。李赫元等人[44]在Weibo环境中提取了推文内容和用户个人资料,并根据提取到的信息额外定义了用户权威度、近期活跃度、粉丝质量等特征,利用这些特征训练了SVM分类器。他们使用Wrapper策略寻找最优的特征组合,最终使用不含URL微博的百分比、纯粉丝度、近期活跃度等7个特征构造了分类器,识别准确率达到94.4%。Efthimion等人[45]基于Cresci-2017数据集训练了一个LR分类器。他们注意到机器人账户具有的可疑特征——没有头像、没有昵称、粉丝太少、推文太少等,试图利用这些特征来判断账户种类。此外,他们还计算了用户各条推文之间的Levenshtein距离,将推文的重复度纳入模型考量。每个特征被当作布尔类型的变量,训练得到的LR模型识别准确率为97.75%。

无监督的方法同样适用于基于账户信息的检测。Adewole等人[46]基于广告机器人之间的相似性提出了一种检测Twitter机器人账户的方法,他们在200 000个账户上应用主成分分析和K-means对收集到的账户进行聚类,依据聚类得到的特征训练了随机森林、MLP和SVM三个分类器,其准确率分别达到96.30%、96.00%和95.60%。Williom等人[47]利用两种改良的无监督流聚类算法StreamKM++和DenStream依据账户信息对Twitter账户进行实时聚类,将异常值视为机器人账户。他们报告,在他们的数据集上StreamKM++和DenStream的准确率都超过98%。

一些作者进一步讨论了选择哪些特征能更加鲜明地区分机器人和人类账户,为模型提供了更高的可解释性。Loyola等人[48]从大量推文和账户特征中挖掘了更加鲜明的“对比模式”,并基于对比模式使用PBC4cip决策树作为分类器。他们比较了挖掘对比模式的不同方法(LCMine和RFm),评估了构造决策树的不同分裂标准(Hellinger距离、巴氏距离和信息增益),最终报告随机森林模型是分类结果最好的方案。Qi等人[49]基于Cresci-2017数据集训练了一个LR分类器,他们试图解释特定账户为何被归类为机器人,因此他们对数据集中的每一类机器人账户都讨论了每个账户特征在LR模型中的贡献。作为结果,他们具体报告了机器人账户与真人、不同种类机器人账户之间的行为差异,并证实可以通过机器人与人类的不同特征来推断账户是否为机器人。

许多基于账户信息的分类模型收获了相当好的分类结果,这是因为机器人账户与真人账户在账户信息方面经常存在许多不同。机器人账户可能缺少个人资料、粉丝太少、推文太少、关注-粉丝比例异常等,使用统计方法和传统机器学习方法可以敏锐地捕获到这些差异。即便是在更复杂的深度学习模型中,账户信息也是重要的分类依据。但随着机器人技术的发展,一些与真人账户相差无几的机器人账户逐渐出现,这些机器人账户对基于账户信息的检测方法具有致命的混淆能力。以此为背景,如何更好地使用采集到的账户信息、如何设计效果更好的分类特征,愈发值得考量。

3.3 基于账户活动的机器人账户检测

账户活动包括对推文的发布、转发、点赞、评论、收藏和对其他账户的关注、被关注、屏蔽、互动等。真人用户拥有灵活的活动内容,而机器人往往只在操纵者的设计下以特定方式活动,因此基于账户活动可以构建效果良好的检测方法。

机器人与真人的账户活动往往存在显著差异,据此可以对机器人账户与真人进行分类。李自豪[50]收集并分析了Weibo中的用户数据,发现机器人账户与正常用户对于 “收藏”功能的使用习惯有着较大的差别:
正常用户会灵活使用这一功能,而机器人账户则仅会机械地使用或完全不使用。因此他们将“收藏数量”及“收藏速度”作为特征训练了C4.5决策树与随机森林,其中随机森林的识别准确率超过90%。Gobriela等人[51]注意到了人类和机器人发布推文时间和频率上的差异:
机器人发推更频繁、时间分布更随机,而且经常在人类工作和睡觉的时间发布推文。他们发现人类用户的发布行为明显符合幂律,而机器人账户则并未表现出显著特征。据此他们训练了一个NB分类器,具有84.6%的准确率。

同一操纵者控制的机器人则可能表现出相似的账户活动,据此可以聚类并识别出可疑的用户。Chavoshi等人[25]提出了DeBot,一个无监督的机器人账户检测系统。他们提出了“扭曲相关”来衡量用户行为之间的相似程度,根据这个指标对用户进行层次聚类,把行为高度相似的用户视作由同一个操纵者控制的机器人账户。他们报告称他们的方法有94%的准确率,在某些情况下超过了Twitter的检测算法。Minnich等人[52]提出了BotWalk,一种无监督的、近乎实时的Twitter机器人账户检测算法。他们用一个特征向量来描述用户,该向量由账户信息、推文内容、行为时间线等组成。在进行检测时,他们从预先收集的机器人账户池中随机取出一个作为种子,在Twitter实时数据中寻找与该账户相似的账户,将选出的账户视作潜在的机器人添到种子池中。新种子的不断加入使他们能够识别新的机器人行为。他们报告,使用BotWalk平均每天可以识别6 000个潜在机器人,精确率达到90%。

以上方法往往将微博平台中的账户活动视作时间序列。除此以外,账户活动也可以被表示为一个图结构:
将微博中的实体(用户和推文)表示为节点,将实体间关系(账户活动)表示为节点之间的边,利用图算法基于账户活动实现机器人账户检测。本文将在后续相关小节讨论类似方法。

3.4 小结

为了限制机器人账户的有害活动,可以对机器人账户发布的推文进行检测,或者对整个账户进行检测。检测推文的优势在于具有很强的即时性,每当机器人发布有害推文时便可以立刻删除;
但由于检测对象是推文,对于僵尸粉丝等不以发布推文为主要运作方式的机器人便作用有限,因此推文级的方法往往更适合发布广告或引导舆论的机器人。检测账户的方法对于僵尸粉丝机器人等活动明显异于正常用户的机器人有很好的检测能力,对于其他类型的机器人也有不错的表现,但即时性相对较差,往往需要收集一段时间的数据才能判断一个账户的类别;
同时,账户级的检测有可能会“误伤”到一部分无害机器人和正常用户,且错误结果(封禁账号)明显比推文级的方法(删除一条推文)严重得多。

训练特征可以基于推文信息、账户信息、账户活动信息等提取。在实践中,研究者往往综合多种特征:
在基于推文信息的检测方法中,经常引入发推者的账户信息作为有效的补充;
在基于账户活动的识别方法中,也总是引入推文和账户信息来具体地描述活动中的实体对象。

表2总结了前文所述的统计方法和传统机器学习的机器人账户检测方法。各项研究的创新点大多集中在特征提取和使用的方式上,建模方法则多是采用统计和机器学习领域内一些成熟的工具。各项研究汇报了不同的评价指标:
有些研究报告了准确率和精确率二者其一,有些则列出了两个指标。所有研究均报告了相当理想的识别精度,但应当警惕在给定数据集上的过拟合问题,这一点在下文中会继续进行讨论。

表2 基于传统机器学习的机器人账户检测方法

续表

深度学习已在计算机视觉到自然语言处理等众多领域取得了巨大成功。相较传统的机器学习方法,深度学习可以针对规模更大的数据集,自动地从原始数据中提取目标特征,而不依赖手工计算特征。微博社区中的信息十分丰富,信息之间关联十分密切,利用深度学习能够避免手工提取特征造成的信息损失,更充分地利用原始数据。因此,越来越多的研究者开始引入深度学习,以期实现更高精度的机器人账户检测。

4.1 基于CNN与RNN的方法

深度学习能够有效实现文本分类,它可以处理结构化数据并自动获取特征,从而避免了手工的特征选择[53]。深度神经网络,如循环神经网络(RNN)和卷积神经网络(CNN)经常被用于自然语言处理问题的特征提取器或分类器,推文作为一种文本,也适合这样的分类任务。RNN是一类用于处理序列数据的神经网络,其常见变体包括LSTM、SRV等,这些变体设计了更复杂的计算单元,能够面对要求更高的使用场景[54]。CNN以卷积运算为主要特征,通过对卷积核和信息传播方式的不同设计能够适应文本、图像视频等不同领域的不同任务[55]。考虑到深度神经网络需要结构化的输入,推文文本往往需要用预训练模型(如Word2Vec)转换为网络能接受的形式,然后输入到深度神经网络中,利用产生的特征进行分类。图4显示了一个典型的基于CNN和RNN进行机器人账户检测的检测流程。

图4 一种基于CNN与RNN的机器人账户检测流程[56]

Wei等人[57]用Cresci-2017数据集训练了一个双向LSTM网络,他们宣称这是第一个检测Twitter平台机器人账户的带有词嵌入的RNN模型。每条推文首先经过预处理和标记化以适应词嵌入,然后利用LSTM提取特征并经过softmax进行分类,最终得到了93%的准确度,优于未使用RNN的其他模型。Cai等人[56]提出了一个由LSTM和CNN组合的模型,命名为BeDM。他们宣称这是第一个将CNN应用于机器人账户检测的模型。该模型将推文视为具有时间特征的文本流而不是纯文本,以提取潜在的时间模式。每个用户的推文使用DeepTalk做词嵌入,然后用CNN提取特征,这些特征随后被送入LSTM分析用户的整体行为并进行分类,分类结果具有88.4%的精确率。Färber等人[58]同样使用了CNN,根据Twitter账户的推文内容来检测机器人。他们对比了不同的嵌入方法和不同的CNN架构,并比较了它们的效率。在CLEF 2019 Bots Profiling Subtask数据集上,他们最高达到了90.34%的准确率。

一些研究者继续向模型中引入账户信息以期进一步提高模型的检测水平。Alom等人[59]提出了一种深度学习的方法,他们使用TextCNN从推文中提取特征,并将账户信息和推文元数据附加在后,利用这个组合的特征向量进行分类。他们在Caverlee-2011和Cresci-2017数据集上分别进行了测试,在前者上达到了99.32%的准确率,在后者上则达到93.38%,相较于未引入深度学习的方法有较大提升。Sneha等人[43]提出了一种用于Twitter机器人账户检测的LSTM网络。他们将推文内容输入到处理推文文本的LSTM网络中提取特征,结合元数据进行分类。尽管这一框架是针对推文级的分类设计,但通过分析一个Twitter账户下的全部推文并汇总,他们的方法也可以实现账户级的分类。在Cresci-2017数据集上,他们报告了一个近乎完美的分类结果——推文层面的准确率高于96%,账户层面的准确率高于99%。Wu等人[60]针对Weibo提出了DABot模型,该模型由输入层、残差网络层、GRU层、注意力层和推理层组成。他们在输入层中对用户的元数据和用户的行为序列进行标准化,用残差网络初步分析用户特征向量的时间模式,随后在GRU单元中对时间模式做进一步提取。注意力层用于甄别关键信息和重要模式,这些关键信息最终经由全连接层进行分类,准确率达到98.87%。

除监督学习方法外,深度学习同样为无监督和自监督方法提供了新的可能性。Afzal等人[61]提出了一种检测Twitter推文中恶意URL的方法,命名为URLDeepDetect。他们使用一个LSTM网络对恶意URL进行建模,利用提取出的特征对新的推文进行分类,从而检测推送恶意URL的机器人。Feng等人[62]提出了SATAR,一个学习Twitter账户表示的自监督框架。他们以粉丝数作为训练的自监督信号,将账户依据粉丝数进行自动分类,据此构造了多个网络,分别处理推文时间线、推文语义、账户信息和关注关系,最终综合为一个账户的表示向量。他们证实,引入SATAR的检测模型在不同数据集上的表现均优于基线模型。

4.2 基于对抗学习的方法

对抗学习往往以生成对抗网络(GAN)为基础。GAN包含一个生成器和一个判别器,两个网络在同一时间训练并且进行竞争,在生成图像、视频和自然语言等数据方面有着广泛应用[63]。对抗学习可以生成“虚假”的数据,为其他任务提供丰富的样本资源,从而提高其他任务的表现。这一技术在其他课题中已取得可喜的成果[64],在微博机器人检测领域也有研究者完成了成功的实验。

Najari等人[65]围绕GAN建立了一套机器人检测的框架,命名为GANBOT。他们收集了人类和机器人发布的推文,利用SeqGAN学习这些文本生成虚假的推文。他们构建的机器人检测框架如图5所示:
一个LSTM被用作生成器,经过训练后生成虚假的推文以欺骗判别器;
为了检测人类和机器人账户,他们继续利用同一个LSTM模块提取文本的隐藏状态,最终经由全连接层对文本进行分类。他们报告该框架的检测性能优于现有的仅基于LSTM的方法,并且能够观察到GAN的引入对提高精确率和减少误报有积极作用。

图5 一种基于对抗学习的机器人账户检测流程

4.3 基于图深度学习的方法

图深度学习旨在研究如何应用深度学习技术完成图上的各类任务。目前,图深度学习已经取得了诸多突破,各类图神经网络模型在不同应用场景中纷纷取得成功。例如,Jiang等人[66]总结了一系列将图深度学习应用于分子性质预测课题的具体方法,Diehl等人[67]提出了一种基于图神经网络的车辆调度和交通测试方法,Schilichthrull等人[68]实现了一种将图卷积和网络用于建模知识、图谱的开创性方法等。微博中的用户行为构成了一张图,将图深度学习技术引入机器人账户检测课题中应当有良好的效果。

基于图深度学习的机器人账户检测方法往往将账户表示为节点,将账户之间的关注、被关注、转发、点赞等活动表示为节点之间的边,从而将微博环境中的社群关系表示为图结构;
以此为基础,通过共享参数的局部操作对图进行学习,在相邻节点之间交换信息,以社群为背景捕获某个节点的状态,从而达到更好的检测结果。图6显示了一个典型的基于图深度学习进行机器人账户检测的检测流程:
首先根据推文信息、账户信息、账户活动等特征对节点进行编码,根据用户之间的关注关系绘制有向边,形成一个有向图;
对于每个节点,利用定义的图卷积运算,聚合本节点及邻接节点的特征并不断迭代;
最后,利用更新后的节点特征判断待检测用户是否为机器人。

不同研究可能采取不同方法绘制社群关系的图示(同质图/异质图,有向图/无向图等),并采取不同的方法聚合节点特征(GCN,GAT,图Transformer等)。

图6 一种基于图深度学习的机器人账户检测流程

Kolomeets等人[69]提出了一种只根据用户之间的关注关系进行机器人检测的方法。他们以俄罗斯VKontakte平台中的数据为背景,基于用户之间的关注关系构建了一个图,除此之外并未引入其他任何账户信息或推文信息。他们使用两种方法从图中提取信息:
直接训练一个GNN模型,以及用待检测节点所在子图的图指标训练一个随机森林模型。两种方法均取得了良好的分类结果。

Feng等人[70]提出了BotRGCN,一个使用关系图卷积网络的Twitter机器人账户检测框架。他们将用户视为节点,并将用户之间的关系视为边。各种推文和账户信息被编码并拼接起来作为节点特征。通过将关注和粉丝定义为节点的两种邻居,他们构建了一个反映Twitter用户互动的异质图。他们在这个异质图上使用R-GCN汇总邻接节点的信息以在图中学习用户表征,并应用一个softmax层来基于用户表征进行机器人账户检测。他们在TwiBot-20数据集上训练了BotRGCN,从数据集中获得了一个有229 580个节点和227 979条边的异质图并使用前述方法,最终报告了一个明显优于传统方法的实验结果。

Li等人[71]提出了一个基于图神经网络的异常Twitter用户检测框架,名为RAU-GNN。他们绘制了一组关系图,其中节点代表用户,边代表用户之间的提及、转发、评论关系。他们根据不同的关系绘制了不同的图,使用GCN来学习每个关系图中的用户节点表示,并将学到的特征整合到待检测的中心节点;
为了捕捉更多的关系信息,他们利用一个具有注意力机制的GAT模块来学习社交网络中用户之间不同关系的重要程度。最终他们将不同关系中的输出表示结合起来,得到中心节点的最终表示,利用softmax层进行分类和检测。他们报告,与单独使用GCN、GAT相比,他们采用的RAU-GNN是处理Twitter和Yelp数据集上相关用户数据的最佳方式。

Feng等人[72]提出,他们把Twitter用户作为图中的节点,用不同类型的边代表Twitter上的多样化关系。他们使用一个高度定制的GNN来处理这个图,其中每一层都包含一个关系图Transformer和一个语义注意力网络。关系图Transformer模拟用户之间的影响、学习用户节点的表征,语义注意力网络则衡量特定关系的重要性,并依据不同关系从邻近节点处汇总信息。经过几层GNN,他们得到了节点的最终表示,最后利用softmax完成Twitter机器人账户检测。

4.4 小结

表3总结了前文所述的基于深度学习的机器人账户检测方法。基于深度学习的方法往往比传统的基于统计和机器学习的方法起到更好的效果,尽管一些数据集的提升空间已经不大。应当警惕的是,Yang等人[35]和Feng等人[73]均报告了在某个数据集上表现良好的模型迁移到另一个数据集上时会表现出明显的不适应,这说明现有的训练很容易发生过拟合,不一定具备良好的泛化能力。为了解决这个问题,更健壮的模型和更丰富的数据都是必须的。无监督方法可以作为补充,可以很好地处理数据不足或标注不全的情况。

表3 基于深度学习的机器人账户检测方法

一些研究者在文中评估了使用不同特征训练的模型[45,59,71],实验结果显示,尽管他们引入了推文的文本内容、关系的图结构等相对高级的特征,但对分类结果贡献最大的仍然是推文和账户元数据等传统的特征。如据Alom等人[59]报告,只采用推文的文本内容训练的检测模型仅有61.76%的准确率,而引入元数据后准确率则达到了93.38%。这似乎说明,尽管推文的文本内容、用户间的图结构等高级特征应当对机器人账户检测大有裨益,但是研究者还没有找到一个足够好的方式来妥善使用这些特征。

本文阐述了机器人账户检测的基本方法以及最新进展,包括基于统计和机器学习的方法,以及基于深度学习的方法。许多研究者已经提出了效用良好的机器人账户检测框架,一些方法也已被吸收进Twitter和Weibo等平台,在与机器人账户的对抗中发挥着重要作用。然而,日常使用中仍然能在微博里发现机器人账户,机器人账户仍然影响着微博的社区环境。虽然新成果不断涌现,但机器人账户检测仍然面临着以下问题。

特征选择:
在与检测机制的对抗中,机器人账户的伪装能力越来越强,一些经典的特征逐渐失效。例如,当前很多机器人设置了看起来可信的个人资料,一些基于账户信息的识别方法由此陷入困境。对研究者而言,能否注意到机器人账户与真人账户之间更显著的差异,能否提出一个强有力的模型把握好这些特征,很大程度上决定了机器人账户检测技术的后续发展。

数据标注:
当前数据集的标注在很大程度上依赖人力,而人工标注始终面临着效率低、时效性差、标准不统一的问题,数据集的缺乏制约着机器人账户检测技术的发展。在这样的背景下,一方面,应当鼓励研究者联合起来分享收集到的数据;
另一方面,由于无监督和半监督方法能够很好地利用未标注数据,对无监督和半监督方法的研究或许能为机器人账户检测带来新的突破。

数据集迁移:
数据丰富程度对训练效果的影响是不言而喻的,单一数据集上的训练很容易过拟合。由于微博环境数据获取和标注存在一定的难度,许多研究者使用了相同的公共数据集,这使得一些方法并不具备令人满意的泛化能力。一些研究者尝试寻找解决方法,对抗学习、重采样[73]、迁移学习[74]等技术已被证实能起到一定作用,然而更多处理和使用数据集的方法仍然有待提出。

多语言支持:
推文内容是分辨机器人与真人的重要特征,但一条推文存在一定的语言背景。在英文环境下训练的文法、语义和情感处理方法,并不一定能直接迁移到中文语境。多语言支持对于自然语言处理而言是一个亟待解决的课题,对于机器人账户检测而言则是一个切实存在的客观障碍。如何实现一个多语言的计算模型,或者如何提取出更有效的元数据,对于微博平台中、尤其是对于Twitter这样用户国别复杂的平台中的机器人账户检测具有重要意义。

多样化分类:
传统的机器人账户检测方法将机器人账户检测定义为一个二分类问题,一个用户要么被分类为机器人,要么被分类为真人。但随着技术的发展和微博环境的变化,越来越多的账户逐渐步入了“机器人”和“真人”之间的模糊地带:
自动管理的企业账户、研究团队训练的AI账户、扮演真人的机器人账户甚至扮演机器人的真人账户纷纷出现,二分类课题面临巨大的困难。在这样的背景下,一些研究者重新制定了分类标准,例如进行个人账户、企业账户和机器人账户的三分类[51,75]。构造更复杂的模型、提高分类的多样性,或许可以解决机器人分类的新问题。

总而言之,机器人账户不断提高的伪装水平为机器人账户检测带来了愈发严苛的挑战,但令人欣慰的是,不断发展的信息技术方法也为机器人账户检测创造了越来越强大的武器。提升网络综合治理能力,清朗网络空间,我们仍然在路上。

猜你喜欢账户机器人特征根据方程特征选解法中学生数理化·中考版(2022年9期)2022-10-25离散型随机变量的分布列与数字特征中学生数理化(高中版.高考数学)(2022年3期)2022-04-26如何切换Windows 10本地账户与微软账户电脑知识与技术·经验技巧(2020年9期)2020-01-16探索自由贸易账户体系创新应用中国外汇(2019年17期)2019-11-16外汇账户相关业务中国外汇(2019年10期)2019-08-27不忠诚的四个特征当代陕西(2019年10期)2019-06-03父亲的股票账户特别健康(2018年4期)2018-07-03机器人来帮你少儿科学周刊·少年版(2015年4期)2015-07-07认识机器人少儿科学周刊·少年版(2015年4期)2015-07-07机器人来啦少儿科学周刊·少年版(2015年4期)2015-07-07

推荐访问:账户 机器人 综述

版权所有:上派范文网 2010-2024 未经授权禁止复制或建立镜像[上派范文网]所有资源完全免费共享

Powered by 上派范文网 © All Rights Reserved.。沪ICP备12033476号-1