CN115309813A - 基于用户语义、属性和邻域信息的社交机器人检测算法 - Google Patents
基于用户语义、属性和邻域信息的社交机器人检测算法 Download PDFInfo
- Publication number
- CN115309813A CN115309813A CN202210940789.3A CN202210940789A CN115309813A CN 115309813 A CN115309813 A CN 115309813A CN 202210940789 A CN202210940789 A CN 202210940789A CN 115309813 A CN115309813 A CN 115309813A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- node
- graph
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 37
- 238000001514 detection method Methods 0.000 title claims abstract description 34
- 239000013598 vector Substances 0.000 claims abstract description 63
- 238000005070 sampling Methods 0.000 claims abstract description 17
- 238000004364 calculation method Methods 0.000 claims abstract description 4
- 238000013434 data augmentation Methods 0.000 claims abstract description 3
- 238000000034 method Methods 0.000 claims description 39
- 238000012549 training Methods 0.000 claims description 38
- 239000011159 matrix material Substances 0.000 claims description 28
- 238000007781 pre-processing Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 25
- 239000013604 expression vector Substances 0.000 claims description 17
- 238000009826 distribution Methods 0.000 claims description 15
- 230000003190 augmentative effect Effects 0.000 claims description 11
- 230000004931 aggregating effect Effects 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 6
- 230000001502 supplementing effect Effects 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 230000006399 behavior Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 239000000126 substance Substances 0.000 claims description 4
- 241001235534 Graphis <ascomycete fungus> Species 0.000 claims description 3
- 238000013479 data entry Methods 0.000 claims description 3
- 230000008034 disappearance Effects 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000005259 measurement Methods 0.000 claims description 3
- 238000009827 uniform distribution Methods 0.000 claims description 3
- 230000004927 fusion Effects 0.000 claims description 2
- 238000005457 optimization Methods 0.000 claims description 2
- 230000002452 interceptive effect Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000007418 data mining Methods 0.000 abstract description 3
- 230000008485 antagonism Effects 0.000 abstract description 2
- 238000011161 development Methods 0.000 abstract description 2
- 238000002474 experimental method Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 3
- 238000002679 ablation Methods 0.000 description 2
- 230000003042 antagnostic effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000013106 supervised machine learning method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于大数据挖掘技术领域,具体为基于用户语义、属性和邻域信息的社交机器人检测算法。本发明算法包括:通过BERT模型对文本内容进行编码,建模用户的语义表示,并联合用户属性和邻域特征,以用户为节点,转发关系为连边构建用户关系网络。将构建好的图数据使用改进的图注意力网络模型进行自监督训练来学习社交用户表示。模型通过子图采样的方式来进行并行化计算,并使用多任务学习设置辅助任务。为了解决数据不平衡问题,采用条件对抗生成网络进行数据增广,对最终得到的用户向量表示进行基于密度的聚类,得到是否是社交机器人的鉴别结果。本发明算法采用自监督技术并引入对抗性思路,可推广性强,迎合未来技术发展趋势。
Description
技术领域
本发明属于大数据挖掘技术领域,具体涉及一种基于用户语义、属性和邻域信息的社交机器人检测算法。
背景技术
随着网络不断深入人们生活,在线社交平台已成为人们发表言论的公共平台,以国外的 Facebook、Twitter以及国内的新浪微博为代表的社交媒体已经在全球范围内吸引了数十亿的用户。截止2021年5月,Facebook已经拥有了29亿的月度活跃用户,接近世界人口的40%,与此带来的是社交机器人技术的蓬勃发展。社交机器人通过模仿和模拟人类在社交媒体中的行为,有组织地与人类用户交互,依照人类操纵者的意图影响目标受众,它们就像人一样参与社会热点事件的扩散、讨论,并出于某种商业等目的参与传播,而广大受众被蒙在鼓里。自在线社交网络早期以来,社交机器人就与人类共存,然而对于什么是社交机器人,一直缺乏一个准确且一致的定义,究其原因是由于研究它们的人们分属不同的学科,导致了不同的定义,而每个定义侧重于不同的特征。如今社交机器人已成为网络空间尤其是社交媒体平台的又一行动者,已有研究显示,社交机器人占所有Twitter账户的9%-15%。
社交机器人是指在社交网络中扮演人的身份、拥有不同程度人格属性,且与人进行互动的人工智能应用。根据自动化程度可以分为全自动机器人与半自动机器人;根据用途可以分为垃圾信息机器人、舆论机器人等。
近十年来针对社交机器人的检测技术不断涌现,从最开始的人工识别发展到利用特征工程进行机器学习,从基于个体的分析到基于组的分析,从有监督到无监督方法。尽管检测技术在不断的完善进步,但其可推广性和泛化能力一直得不到提升。这一方面是由于社交机器人在不断进化中导致的,另一方面则是由于大多数检测技术采用的是监督模型,受到样本集多样性和大小的限制,很容易导致模型过拟合;此外对于监督模型的社交机器人样本标签采集也是一个难点。因此近年来研究人员开始考虑远离监督模型,采用无监督或对抗性的方法来提高模型的泛化能力[1]。
发明人在进行社交机器人检测研究时发现,现有利用无监督或对抗性方法对于社交机器人的行为特征提取不够全面,导致现有方法在面对新型社交机器人的泛化能力达不到预期水平。
发明内容
鉴于以上情况,本发明的目的在于提供一种泛化能力强、无需样本标签的基于用户语义、属性和邻域信息的社交机器人检测算法。
本发明提出的基于用户语义、属性和邻域信息的社交机器人检测算法,其整体流程如图 1所示,包括:对待鉴别的社交账户数据集进行数据预处理;采用BERT模型对账户文本特征进行编码得到文本特征向量,并对用户邻域特征和属性特征进行编码嵌入,最后通过联合编码来构建一个完整地社交用户表示向量。为了解决原数据集中样本不平衡问题,本发明采用条件生成对抗网络来进行数据增广:将用户表示向量进行密度峰值聚类并去除噪音和较小的用户集,以聚类序列标记并作为每个节点用户的标签,将标签用户表示向量输入到改进的条件对抗生成网络模型,经过训练生成的样本与原始数据合并得到增广后的数据。将增广后的数据作为节点的初始隐藏向量输入一个改进的图注意力网络中,通过子图采样的方式来进行并行化计算,利用基于pagerank算法的图亲密度矩阵计算节点亲密度并选取邻居节点。模型采用多任务学习方式构建辅助任务来进行自监督训练,对最终训练好的判别模型输出进行 HDBSCAN聚类,得到是否是社交机器人的鉴别结果。具体步骤为:
步骤1:对待鉴别的社交账户信息进行数据预处理;社交账户信息包括用户文本、属性信息和邻域信息。文本信息来源于账户近期发布的推文;属性信息则来自公开的社交账户基本信息;邻域信息包含了目标账户与其他账户的交互关系,可以是转发、评论、关注等行为。预处理过程包括:
(1)文本数据预处理,将文本切分为语义单元,方便于下游任务的处理;
(2)属性数据预处理,对原数据可能存在的缺失值、异常点问题进行数据处理来改善数据质量、提升分析可靠性;
(3)邻域数据预处理,对账户之间的关系进行建模得到关系图网络,并对网络中的异常节点进行删除或补齐,以方便后续对用户领域信息的进一步分析。
步骤2:对步骤1中预处理好的数据进行嵌入并聚合,以得到一个完整地用户向量表示。具体包括:
(1)将预处理好的文本数据输入到预训练的RoBERTa模型[2],得到用户语义特征向量;
(2)对预处理好的属性数据进行编码得到用户语义特征向量;
(3)对处理好的邻域数据进行编码得到用户邻域特征向量;
(4)对用户语义特征向量、用户属性特征向量和用户邻域特征向量进行聚合,得到最终的用户表示向量。
步骤3:将步骤2得到的用户表示向量进行密度峰值聚类,去除噪音和较小的用户集后,以聚类序列标记并作为标签分配给每个节点用户。具体地,将标签用户表示向量输入到一个改进的条件生成对抗网络模型[3]中,该模型通过引入Wasserstein距离,并以梯度惩罚来提高条件生成对抗网络收敛判断条件。经过多轮训练后,将生成的样本与原始数据合并得到增广后的数据,以此来解决原数据分布不平衡问题。
步骤4:对步骤3得到的增广后数据构建输入图并输入到图嵌入模型中进行训练。本发明采用的图嵌入模型是以Graph-bert模型[4]为基础的优化模型,Graph-bert模型采用子图采样的方式来优化复杂度,利用节点亲密度来选取邻居节点。本发明在模型的预训练过程中引入与下游社交机器人检测任务相关的辅助信号,采用多任务学习方式来进行自监督训练。对最终训练好的模型的输出进行HDBSCAN聚类,根据聚类结果来判别是否是社交机器人。
本发明中,步骤1具体流程为:
步骤1-1:对待鉴别的社交账户信息中的文本信息进行预处理,包括:对文本内容进行分词,过滤停用词,删除所有的无意义符号,删除所有缺失的行等,最终得到处理好的用户文本数据;
步骤1-2:对待鉴别的社交账户信息中的属性信息进行预处理,包括:对一些非数值特征使用独热编码,对缺失的数据进行补齐,删除重复数据等,最终得到处理好的用户属性数据;
步骤1-3:对待鉴别的社交账户信息中的邻域信息进行预处理,包括:以用户为节点,转发关系为边构建转发关系网络;对缺失的用户节点进行补齐,删除网络中重复与孤立的节点以及自环等,最终得到处理好的用户邻域数据。
本发明中,步骤2具体的具体流程为:
步骤2-1:对于预处理好的用户文本数据,使用预训练的RoBERTa模型对其进行编码,得到用户语义特征向量:
其中,D是嵌入维度,hi是用户文本数据。
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量:
其中,D是嵌入维度,pi是用户属性数据。
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法[5]对其进行嵌入:
其中,D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数。
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量。
本发明中,步骤3具体流程为:
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,可以将聚类得到的不同簇标为负例样本,而将聚类噪音划分为正例样本。通过分析聚类结果发现数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,因此在将数量偏少的负例用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列。
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个改进的条件对抗生成网络中进行训练。传统对抗生成网络由生成器G和判别器D两部分组成,整个训练过程的损失函数为:
其中,D是判别器,G是生成器,pz(z)是输入噪音分布,pdata(x)是原始数据分布。改进的模型为了解决传统生成对抗网络中模型崩溃和梯度消失等问题,通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,可以采用线性插值的方法构造“任意点”:
此时生成器G和判别器D的损失函数分别为:
最后将训练生成的新样本与原始样本融合得到增广后的数据,并根据邻域信息构建输入图其中,和ε分别表示图G中的节点和边的集合,映射和分别是节点对其特征和标签的投影,符号x和y分别表示特征空间和标签空间,对于节点vi,其特征向量和标签向量分别可以表示为和图的大小可以由其节点数量来表示。
本发明中,步骤4具体流程为:
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为|v|个无边子图每个子图部包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表了中心节点的上下文信息。本发明采用top-k亲密度的采样方法,该方法基于图亲密度矩阵进行采样的,其中S(i,j)度量了节点vi和节点vj之间的亲密度分数;而对于节点亲密度的衡量指标上,本发明采用的是基于PageRank算法的图亲密度矩阵[4],具体为:
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,取值为从大到小排列的第k个邻居节点的亲密度得分。通过选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图即表示为以vi为目标节点采样的一个子图,然后依次对输入图进行|v|次采样,最终可以得到子图集合
步骤4-2:对步骤4-1中得到的子图集合中的节点进行网络特征的嵌入表示,本发明采用的是Graph-Bert模型中的图嵌入方式[4],在进行位置编码融合后对子图中节点vi的嵌入向量可以表示为则对于子图可以构建矩阵:
并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示,最终模型的输出zi即为学习到的节点特征表示。本发明通过设计并融合三个不同的任务进行模型的预训练:其中:
任务一,为节点属性重建任务,对于子图中的目标节点vi,在通过Graph-Bert模型训练后得到了新的节点特征表示zi,再通过全连接层后可以得到重构后的原始特征为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,可以构建损失函数如下:
其中,xi为节点vi的原始特征向量。
任务二,为图结构恢复任务,为了确保新的节点特征表示也能够捕捉到图形结构信息,可以对其构建新的节点相似度矩阵采用余选相似度来计算节点间的亲密度得分即并通过与步骤4-1得到的真值亲密度矩阵S做比较,可以构建损失函数如下:
任务三,为节点分类任务,为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签作为自监督信号来进行训练,具体来说在节点特征表示zi后连接一层softmax层,其输出为:
其中,D是标签类别总数。
本发明通过联合上述三个自监督任务来进行预训练,具体为构建联合损失函数:
其中,λ1,λ2,λ3均为可学习参数,为了找到合适的权重,本发明使用DWA算法[10]进行优化。
步骤4-3:将预训练后模型输出的节点特征表示使用HDBSCAN算法[5]进行聚类,将聚类结果中的噪音标记为自然用户;排除过小的簇与噪音干扰,把剩余的可疑节点簇标记为机器人账户,最终得到是否是社交机器人的鉴别结果。
本发明的创新点在于:本发明提出了一种基于用户语义、属性和邻域信息联合编码的自监督社交用户表示方法,并将其用到社交机器人检测中。与以往基于用户语义和属性信息的社交机器人检测模型偏向于使用有监督的机器学习方法不同,本方法更为重视用户的邻域信息并以此构造用户关系图,通过图嵌入的方式来学习网络中潜在的用户邻域特征。针对以往基于图的社交机器人检测方法不能处理大规模图的缺点,本发明采用优化的Graph-bert图嵌入模型来进行并行化运算。通过对数据进行基于密度的聚类并对节点分配聚类簇标签,一方面可以作为样本标签输入到条件生成对抗网络中进行负样本的生成,以此来解决样本不均衡的问题;另一方面可以作为自监督标签来进行模型的预训练以提高模型的泛化能力。整个模型框架无需原始标签数据,通过引入对抗性思路来增强模型鲁棒性;同时模型考虑了在大规模数据上的应用,充分迎合了未来社交机器人检测技术的发展趋势。
附图说明
图1为本发明基于用户语义、属性和邻域信息的社交机器人检测算法的整体流程图。
图2为本发明基于用户语义、属性和邻域信息的社交机器人检测算法中模型结构图。
具体实施方式
为了使本方面的上述目的和创新点能够更加容易理解,下面结合附图和具体实施方式对本发明作进一步详细的说明。
步骤1:对待鉴别的社交用户信息进行数据预处理,包括:文本数据预处理,属性数据预处理,邻域数据预处理;其中:
步骤1-1:对待鉴别的社交账户信息中的文本信息进行预处理,包括:对文本内容进行分词,过滤停用词,删除所有的无意义符号,删除所有缺失的行;最终得到处理好的用户文本数据;
步骤1-2:对待鉴别的社交账户信息中的属性信息进行预处理,包括:对一些非数值特征使用独热编码,对缺失的数据进行补齐,删除重复数据等;最终得到处理好的用户属性数据;
步骤1-3:对待鉴别的社交账户信息中的邻域信息进行预处理,包括:以用户为节点,转发关系为边构建转发关系网络;对缺失的用户节点进行补齐,删除网络中重复与孤立的节点以及自环等,最终得到处理好的用户邻域数据。
步骤2:对于处理好的文本数据,通过预训练的RoBERTa模型进行编码训练,得到用户语义特征向量;对构建好的用户转发网络提取节点度、转发层级等网络特征特征向量,将用户语义特征向量与用户属性、网络特征向量进行聚合:
步骤2-1:对于预处理好的用户文本数据,使用预训练的RoBERTa模型对其进行编码,得到用户语义特征向量:
其中D是嵌入维度,hi是用户文本数据。
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量:
其中D是嵌入维度,pi是用户属性数据。
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法[5]对其进行嵌入:
其中D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数。
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量。
步骤3:将步骤2得到的用户表示向量进行基于密度峰值的聚类,去除噪音和较小的用户集,以聚类序列标记并作为每个节点用户的标签,将标签用户表示向量输入到一个改进的条件生成对抗网络模型,进行标签样本的生成。
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,可以将聚类得到的不同簇标为负例样本,而将聚类噪音划分为正例样本。通过分析聚类结果发现数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,因此在将数量偏少的负例用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列。
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个改进的条件对抗生成网络中进行训练。改进的模型为了解决传统生成对抗网络中模型崩溃和梯度消失等问题,通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,可以采用线性插值的方法构造“任意点”:
此时生成器G和判别器D的损失函数分别为:
最后将训练生成的新样本与原始样本融合得到增广后的数据,并根据邻域信息构建输入图其中和ε分别表示图G中的节点和边的集合;映射和分别是节点对其特征和标签的投影;符号x和y分别表示特征空间和标签空间;对于节点vi,其特征向量和标签向量分别可以表示为和图的大小可以由其节点数量来表示。
步骤4:对步骤3中得到的输入图G进行子图采样后输入到图嵌入模型,利用基于pagerank算法的亲密度矩阵选取邻居节点来学习邻域信息,训练采用多任务学习方式,构建辅助任务来进行自监督训练。具体流程如图2,基于用户语义和邻域信息的社交机器人检测算法中模型结构图所示。
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为个无边子图每个子图都包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表了中心节点的上下文信息。本发明采用top-k亲密度的采样方法,该方法基于图亲密度矩阵进行采样的,其中S(i,j)度量了节点vi和节点vj之间的亲密度分数,而对于节点亲密度的衡量指标上,本发明采用的是基于PageRank算法的图亲密度矩阵[4],具体为:
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,即从大到小排列的第k个邻居节点的亲密度得分。选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图表示为以vi为目标节点采样的子图。然后依次对输入图进行次采样,最终可以得到子图集合
步骤4-2:对步骤4-1中得到的子图集合中的节点进行网络特征的嵌入表示,本发明采用的是Graph-Bert模型中的图嵌入方式[4],在进行位置编码融合后对子图中节点vi的嵌入向量可以表示为则对于子图可以构建矩阵 并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示;最终模型的输出zi即为学习到的节点特征表示。本发明通过设计并融合三个不同的任务进行模型的预训练:
任务一为节点属性重建任务;对于子图中的目标节点vi,在通过Graph-Bert模型训练后得到了新的节点特征表示zi,再通过全连接层后可以得到重构后的原始特征为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,可以构建损失函数如下:
其中,xi为节点vi的原始特征向量。
任务二为图结构恢复任务;为了确保新的节点特征表示也能够捕捉到图形结构信息,可以对其构建新的节点相似度矩阵采用余选相似度来计算节点间的亲密度得分即 并通过与步骤4-1得到的真值亲密度矩阵S做比较,可以构建损失函数如下:
任务三为节点分类任务;为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签作为自监督信号来进行训练,具体来说在节点特征表示zi后连接一层softmax层,其输出为:
其中,D是标签类别总数。
本发明通过联合上述三个自监督任务来进行预训练,具体为构建联合损失函数:
其中λ1,λ2,λ3均为可学习参数,为了找到合适的权重,本发明使用DWA算法[10]进行优化。
步骤4-3:将预训练后模型输出的节点特征表示使用HDBSCAN算法进行聚类,以往研究 [7]表明:由于社交机器人自动化与协同性质,社交机器人往往在网络上聚集为社团形式。因此聚类结果中噪声被标记为自然用户,在排除过小的簇与噪音干扰后,把剩余的节点簇标记为机器人账户,得到最终鉴别结果。
本发明以一个非公开数据集作为实验对象,利用本发明算法进行评估。数据集来自微博数据挖掘竞赛数据集。为了便于数据集模型评估,人工标注了500个账户,其中数据集的统计如下表1:
表1
实验采用的机器配置如下表2:
表2
操作系统 | Window10 |
内存 | 32768MB |
CPU型号 | AMD Ryzen 7 5800X 8-Core 3.80GHZ |
CPU数量 | 8 |
是否GPU加速 | 是 |
GPU型号 | NVIDIA GeForce RTX 3060Ti |
。
设定的训练轮数为100轮,采用的标准是精准率precision,召回率recall,F1-score;计算公式如下:
其中,TP,TN,FP,FN分别代表真正例数量、真负例数量、假正例数量和假负例数量。
实验中,将本发明模型与先前的几种方法进行对比,此外为了验证模型部件的必要性还进行了消融实验,分别为删减了对抗生成网络的(dg)版本和删减了多任务预训练的(dt) 版本。
最终实验结果如下表3:
表3
与最新的有监督学习算法SATAR、Ha-bot和Botometer,及无监督算法RTbust进行性能比较,我们发现AbertBot呈现了更好的社交机器人检测准确率和更高的F1值,AbertBot的召回率与Ha-bot接近。这表明AbertBot在社交机器人检测的任务中的有效性。此外, AbertBot算法明显优于单纯利用语义信息或是属性信息的社交机器人检测方法,例如 Botometer等。这表明AbertBot更充分的挖掘了社交用户的潜在信息。此外,我们设置了消融实验,发现在对生成对抗网络和多任务训练模块进行删减后,模型性能会有显著下降,这证明了模型各个组件的必要性。
参考文献:
[1]Feng S,Wan H,Wang N,et al.Satar:A self-supervised approach totwitter account representation learning and its application in bot detection[C]//Proceedings of the 30th ACM International Conference on Information&Knowledge Management.2021:3808-3817.
[2]Liu Y,Ott M,Goyal N,et al.Roberta:A robustly optimized bertpretraining approach[J]. arXiv preprint arXiv:1907.11692,2019.
[3]Wu B,Liu L,Yang Y,et al.Using improved conditional generativeadversarial networks to detect social bots on twitter[J].IEEE Access,2020,8:36664-36680.
[4]Zhang J,Zhang H,Xia C,et al.Graph-bert:Only attention is neededfor learning graph representations[J].arXiv preprint arXiv:2001.05140,2020.
[5]Vaswani A,Shazeer N,Parmar N,et al.Attention is all you need[J].Advances in neural information processing systems,2017,30.
[6]McInnes L,Healy J,Astels S.hdbscan:Hierarchical density basedclustering[J].J.Open Source Softw.,2017,2(11):205.
[7]Mazza M,Cresci S,Avvenuti M,et al.Rtbust:Exploiting temporalpatterns for botnet detection on twitter[C]//Proceedings of the 10th ACMconference on web science.2019:183-192.
[8]Feng S,Tan Z,Li R,et al.Heterogeneity-aware Twitter Bot Detectionwith Relational Graph Transformers[J].arXiv preprint arXiv:2109.02927,2021.
[9]Clayton Allen Davis,OnurVarol,Emilio Ferrara,Alessandro Flammini,andFilippoMenczer. 2016.BotOrNot:A System to Evaluate Social Bots.In ACMWWWCompanio
[10]Liu S,Johns E,Davison A J.End-to-end multi-task learning withattention[C]//Proceedings of the IEEE/CVF conference on computer vision andpattern recognition.2019:1871-1880。
Claims (5)
1.一种基于用户语义、属性和邻域信息的社交机器人检测算法,其特征在于,包括:对待鉴别的社交账户数据集进行数据预处理;采用BERT模型对账户文本特征进行编码得到文本特征向量;并对用户邻域特征和属性特征进行编码嵌入;最后通过联合编码来构建一个完整地社交用户表示向量;其中,采用条件生成对抗网络来进行数据增广,以解决原数据集中样本不平衡问题:将用户表示向量进行密度峰值聚类并去除噪音和较小的用户集,以聚类序列标记并作为每个节点用户的标签,将标签用户表示向量输入到改进的条件对抗生成网络模型;经过训练生成的样本与原始数据合并得到增广后的数据;将增广后的数据作为节点的初始隐藏向量输入一个改进的图注意力网络中,通过子图采样的方式来进行并行化计算,利用基于pagerank算法的图亲密度矩阵计算节点亲密度并选取邻居节点;模型采用多任务学习方式构建辅助任务来进行自监督训练,对最终训练好的判别模型输出进行HDBSCAN聚类,得到是否是社交机器人的鉴别结果;具体步骤为:
步骤1:对待鉴别的社交账户信息进行数据预处理;其中,所述社交账户信息包括用户文本、属性信息和邻域信息;文本信息来源于账户近期发布的推文;属性信息则来自公开的社交账户基本信息;邻域信息包含目标账户与其他账户的交互关系,包括转发、评论、关注行为,预处理过程包括:
(1)文本数据预处理,将文本切分为语义单元,方便于下游任务的处理;
(2)属性数据预处理,对原数据可能存在的缺失值、异常点问题进行数据处理来改善数据质量、提升分析可靠性;
(3)邻域数据预处理,对账户之间的关系进行建模得到关系图网络,并对网络中的异常节点进行删除或补齐,以方便后续对用户领域信息的进一步分析;
步骤2:对步骤1中预处理好的数据进行嵌入并聚合,以得到一个完整地用户向量表示;具体包括:
(1)将预处理好的文本数据输入到预训练的RoBERTa模型,得到用户语义特征向量;
(2)对预处理好的属性数据进行编码得到用户语义特征向量;
(3)对处理好的邻域数据进行编码得到用户邻域特征向量;
(4)对用户语义特征向量、用户属性特征向量和用户邻域特征向量进行聚合,得到最终的用户表示向量;
步骤3:将步骤2得到的用户表示向量进行密度峰值聚类,去除噪音和较小的用户集后,以聚类序列标记并作为标签分配给每个节点用户;具体地,将标签用户表示向量输入到一个条件生成对抗网络模型中,该模型通过引入Wasserstein距离,并以梯度惩罚来提高条件生成对抗网络收敛判断条件;经过多轮训练后,将生成的样本与原始数据合并得到增广后的数据,以此来解决原数据分布不平衡问题;
步骤4:对步骤3得到的增广后数据构建输入图并输入到图嵌入模型中进行训练;采用的图嵌入模型是以Graph-bert模型为基础的优化模型;在模型的预训练过程中引入与下游社交机器人检测任务相关的辅助信号,采用多任务学习方式来进行自监督训练;对最终训练好的模型的输出进行HDBSCAN聚类,根据聚类结果来判别是否是社交机器人。
2.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤1所述的对待鉴别的社交账户信息进行数据预处理的具体流程为:
步骤1-1:对待鉴别的社交账户信息中的文本信息进行预处理,包括:对文本内容进行分词,过滤停用词,删除所有的无意义符号,删除所有缺失的行,最终得到处理好的用户文本数据;
步骤1-2:对待鉴别的社交账户信息中的属性信息进行预处理,包括:对一些非数值特征使用独热编码,对缺失的数据进行补齐,删除重复数据,最终得到处理好的用户属性数据;
步骤1-3:对待鉴别的社交账户信息中的邻域信息进行预处理,包括:以用户为节点,转发关系为边构建转发关系网络;对缺失的用户节点进行补齐,删除网络中重复与孤立的节点以及自环,最终得到处理好的用户邻域数据。
3.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤2所述对预处理好的数据进行嵌入并聚合,以得到一个完整地用户向量表示,具体流程为:
步骤2-1:对于预处理好的用户文本数据,使用预训练的RoBERTa模型对其进行编码,得到用户语义特征向量,表示为:
其中,D是嵌入维度,hi是用户文本数据;
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量,表示为:
其中,D是嵌入维度,pi是用户属性数据;
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法对其进行嵌入,表示为:
其中,D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数;
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量:
4.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤3中所述将得到的用户表示向量进行密度峰值聚类,去除噪音和较小的用户集后,以聚类序列标记并作为标签分配给每个节点用户,具体流程为:
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,将聚类得到的不同簇标为负例样本,将聚类噪音划分为正例样本;聚类结果中数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,在将数量偏少的负例样本用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列;
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个条件对抗生成网络中进行训练;对抗生成网络由生成器G和判别器D两部分组成,整个训练过程的损失函数为:
其中,D是判别器,G是生成器,pz(z)是输入噪音分布,pdata(x)是原始数据分布;为了解决传统生成对抗网络中模型崩溃和梯度消失问题,模型通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,采用线性插值的方法构造“任意点”:
此时生成器G和判别器D的损失函数分别为:
5.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤4的具体流程为:
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为个无边子图每个子图都包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表中心节点的上下文信息;采用top-k亲密度的采样方法,该方法基于图亲密度矩阵进行采样,其中图亲密度矩阵的元素S(i,j)度量了节点vi和节点vj之间的亲密度分数;而对于节点亲密度的衡量指标上,采用的是基于PageRank算法的图亲密度矩阵S,具体表示为:
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,取值为从大到小排列的第k个邻居节点的亲密度得分;通过选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图即表示为以vi为目标节点采样的一个子图,然后依次对输入图进行|v|次采样,最终得到子图集合
并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示,最终模型的输出zi即为学习到的节点特征表示;
通过设计并融合三个不同的任务进行模型的预训练:其中:
任务一,为节点属性重建任务,对于子图中的目标节点vi,在通过Graph-Bert模型训练后得到新的节点特征表示zi,再通过全连接层后得到重构后的原始特征为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,构建损失函数如下:
其中,xi为节点vi的原始特征向量;
任务二,为图结构恢复任务,为了确保新的节点特征表示也能够捕捉到图形结构信息,对其构建新的节点相似度矩阵采用余弦相似度来计算节点间的亲密度得分,即 并通过与步骤4-1得到的真值亲密度矩阵S做比较,构建损失函数如下:
任务三,为节点分类任务,为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签作为自监督信号来进行训练,具体地,在节点特征表示zi后连接一层softmax层,其输出为:
其中,D是标签类别总数;
通过联合上述三个自监督任务来进行预训练,联合损失函数为:
其中,λ1,λ2,λ3均为可学习参数;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210940789.3A CN115309813A (zh) | 2022-08-07 | 2022-08-07 | 基于用户语义、属性和邻域信息的社交机器人检测算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210940789.3A CN115309813A (zh) | 2022-08-07 | 2022-08-07 | 基于用户语义、属性和邻域信息的社交机器人检测算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115309813A true CN115309813A (zh) | 2022-11-08 |
Family
ID=83860678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210940789.3A Pending CN115309813A (zh) | 2022-08-07 | 2022-08-07 | 基于用户语义、属性和邻域信息的社交机器人检测算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115309813A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116628358A (zh) * | 2023-05-30 | 2023-08-22 | 青海师范大学 | 基于多视图Graph Transformer的社交机器人检测系统及方法 |
CN116861923A (zh) * | 2023-04-04 | 2023-10-10 | 大连理工大学 | 多视图无监督图对比学习模型构建方法、系统、计算机、存储介质及应用 |
CN117034094A (zh) * | 2023-10-10 | 2023-11-10 | 连连银通电子支付有限公司 | 一种账户类型预测方法及账户类型预测装置 |
CN117540232A (zh) * | 2023-09-13 | 2024-02-09 | 广州大学 | 基于上下文路径的在线社交网络用户表示方法及装置 |
-
2022
- 2022-08-07 CN CN202210940789.3A patent/CN115309813A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116861923A (zh) * | 2023-04-04 | 2023-10-10 | 大连理工大学 | 多视图无监督图对比学习模型构建方法、系统、计算机、存储介质及应用 |
CN116628358A (zh) * | 2023-05-30 | 2023-08-22 | 青海师范大学 | 基于多视图Graph Transformer的社交机器人检测系统及方法 |
CN116628358B (zh) * | 2023-05-30 | 2024-04-12 | 青海师范大学 | 基于多视图Graph Transformer的社交机器人检测系统及方法 |
CN117540232A (zh) * | 2023-09-13 | 2024-02-09 | 广州大学 | 基于上下文路径的在线社交网络用户表示方法及装置 |
CN117034094A (zh) * | 2023-10-10 | 2023-11-10 | 连连银通电子支付有限公司 | 一种账户类型预测方法及账户类型预测装置 |
CN117034094B (zh) * | 2023-10-10 | 2024-03-12 | 连连银通电子支付有限公司 | 一种账户类型预测方法及账户类型预测装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chiroma et al. | Progress on artificial neural networks for big data analytics: a survey | |
CN115309813A (zh) | 基于用户语义、属性和邻域信息的社交机器人检测算法 | |
CN110119449B (zh) | 一种基于序列增强胶囊网络的刑事案件罪名预测方法 | |
Jha et al. | Extracting low‐dimensional psychological representations from convolutional neural networks | |
Sun et al. | Contamination source identification in water distribution networks using convolutional neural network | |
CN115659966A (zh) | 基于动态异构图和多级注意力的谣言检测方法及系统 | |
Sun et al. | Image steganalysis based on convolutional neural network and feature selection | |
Li et al. | Birds of a feather rumor together? Exploring homogeneity and conversation structure in social media for rumor detection | |
CN115292568B (zh) | 一种基于联合模型的民生新闻事件抽取方法 | |
Wang et al. | An enhanced multi-modal recommendation based on alternate training with knowledge graph representation | |
Li et al. | Zero-shot surface defect recognition with class knowledge graph | |
Sharma et al. | Construction of large-scale misinformation labeled datasets from social media discourse using label refinement | |
Cheng et al. | An Image‐Based Deep Learning Approach with Improved DETR for Power Line Insulator Defect Detection | |
Rijal et al. | Integrating Information Gain methods for Feature Selection in Distance Education Sentiment Analysis during Covid-19. | |
Zheng et al. | Learning to detect texture objects by artificial immune approaches | |
Sukel et al. | Multimodal classification of urban micro-events | |
CN117763151A (zh) | 一种低资源多领域的假新闻检测方法及系统 | |
Wang et al. | Enhancing rumor detection in social media using dynamic propagation structures | |
Li et al. | Zero-shot learning for intrusion detection via attribute representation | |
Liu et al. | Simple primitives with feasibility-and contextuality-dependence for open-world compositional zero-shot learning | |
CN117033626A (zh) | 一种文本审核方法、装置、设备及存储介质 | |
He et al. | Semi-supervised internet water army detection based on graph embedding | |
ABBAS | A survey of research into artificial neural networks for crime prediction | |
Hu et al. | An attention-mechanism-based traffic flow prediction scheme for smart city | |
CN114238738A (zh) | 一种基于注意力机制与双向gru的谣言检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |