通过专业分类器的组合来检测社交机器人--(Detection o
摘要
监督学习技术进行机器人检测的技术的性能受制于之前训练模型中的训练数据里是否有能够表征新的机器人特征或者行为的数据。如果想要调整模型来重新识别新奇的机器人需要用大量的带标注数据来对模型进行重新训练。
为了解决这个问题,本文提出来一个新的监督学习方法,对每一类机器人训练一种特定的分类器,将其组合起来通过“最大化规则”来判别机器人 。继承分类器能够更好的实现通用性,在跨数据集没训练过的数据中在F1 score上有56%的提升。并且在部署成为Botormeter的第四个版本,在实战中AUC指标能达到0.99。
简介
我们聚焦于监督学习方法,特别是Botometer,一个广泛被采用进行推特账户检测的工具。监督方法只对于训练数据集中相似分布的数据很有效。没有在训练集中出现的新型特征的机器人很容易规避掉检测。而想要使用带标注的新的数据集训练模型,成本昂贵。
我们在数据集中发现不同数据集中人类账户保持了高度的一致性,而机器人账户却表现出了一定程度的异质性。也是根据这个特征,我们提出了一种新奇的检测方法。
泛化性的挑战
数据集
image.png表一是本论文中所使用的数据集。从数据中从六种类型抽取了超过1200种特征。
跨域性能检测
image.png为了检测跨域的性能,使用带有100棵决策树的随机森林分类器,从挑选的一个数据集上训练,到其他数据集上测试,得到的结果如图1。并且还是用了Platt的放缩技术将分类阈值变成0.5。图一可以看出在一个数据集上训练的模型,泛化性不是很好。而当在其他数据集上训练后,每一个模型都对一个数据集分类效果很好,说明这个数据集的分类较为简单。
image.png
为了解释上述结果的原因,将机器人和人类的得分分布做成了图二。可以看出不同数据集中机器人得分的分布是不同的,有的跟人类得分已经接近重叠。所以呈现了一种不太可分的性质。
预测不同机器人种类
image.png在实验中还发现,不同种类的机器人,对其分类最重要的几个特征是不同的,如表2。于是我们特意挑选了在caverlee数据集上很重要的两个特征对varol-icwsm数据集进行分类,可以看出效果不是很好。所以可以得出一个信息,就是不同种类的机器人分类所需要的特征不同,那么就可以根据这个提出本文的分类方法。
image.png
方法
机器人检测baseline
第一个使用了botormeter-v3版本,这个版本使用所有混合起来的数据进行训练得到的模型,第二个使用了tweetbotornot2作为基线,本方法从主要三类特征(用户级别属性,推特统计,文本模式)中抽取了100多种特征。其工作已经开源。(tweetbotornot2.mikewk.com)
提出的方法
image.png提出的方法就是一个继承分类器,有一个随机森林专门用来判别人类账号,联合其他多个随机森林,每个都用来判别每一个特定种类的机器人账号,将所有这些得分通过最大值规则进行联合投票得出分类结果。
image.png
结果
image.png使用本方法和botometer-v3分别对cresci-17的数据集进行分类,得到的分类结果图如上:可以看出两个方法的域内一致性还是很高的。至于为什么分错了一部分账号,第一个原因可能是,ESC方法分类错了。第二个原因对于这些账号中的50个进行分析,发现很多账号已经很久不活跃了,并且已经被其他平台用来发信息,表现出了机器人特征,所以表明本方法对于噪音数据还有一定的泛化性。
跨域性能
image.png从图6可以看出ESC方法对于判定得分的分布有很好的分离性,比botometer方法要好,从图七上看出ESC方法也是很好的。
模型适应性
image.png保留数据集中保留800个样本,每次抽取50个对模型进行训练,可以看到ESC新检测一种机器人学习要比Botormeter快很多,表明其适应性也要好很多。
总结
本文部署成了botometer-V4
总结自--Sayyadiharikandeh等, 《Detection of Novel Social Bots by Ensembles of Specialized Classifiers》.