CN115309813A - 基于用户语义、属性和邻域信息的社交机器人检测算法 - Google Patents

基于用户语义、属性和邻域信息的社交机器人检测算法 Download PDF

Info

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
Application number
CN202210940789.3A
Other languages
English (en)
Inventor
李聪
陈诺
李翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fudan University
Original Assignee
Fudan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fudan University filed Critical Fudan University
Priority to CN202210940789.3A priority Critical patent/CN115309813A/zh
Publication of CN115309813A publication Critical patent/CN115309813A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/26Visual data mining; Browsing structured data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social 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模型对其进行编码,得到用户语义特征向量:
Figure BDA0003785534140000031
其中,D是嵌入维度,hi是用户文本数据。
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量:
Figure BDA0003785534140000032
其中,D是嵌入维度,pi是用户属性数据。
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法[5]对其进行嵌入:
Figure BDA0003785534140000041
其中,D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数。
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量。
Figure BDA0003785534140000042
本发明中,步骤3具体流程为:
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,可以将聚类得到的不同簇标为负例样本,而将聚类噪音划分为正例样本。通过分析聚类结果发现数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,因此在将数量偏少的负例用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列。
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个改进的条件对抗生成网络中进行训练。传统对抗生成网络由生成器G和判别器D两部分组成,整个训练过程的损失函数为:
Figure BDA0003785534140000043
其中,D是判别器,G是生成器,pz(z)是输入噪音分布,pdata(x)是原始数据分布。改进的模型为了解决传统生成对抗网络中模型崩溃和梯度消失等问题,通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,可以采用线性插值的方法构造“任意点”:
Figure BDA0003785534140000044
其中,ε是服从(0,1)间均匀分布的随机数,xr表示真实数据,xg表示生成的数据。通过混合样本产生的
Figure BDA0003785534140000045
来替代表示“任意点”以满足梯度约束条件。
此时生成器G和判别器D的损失函数分别为:
Figure BDA0003785534140000046
Figure BDA0003785534140000047
其中,pdata是真实样本的分布,pg是由生成器G学习到的分布,
Figure BDA0003785534140000048
是“任意”点
Figure BDA0003785534140000049
的分布,
Figure BDA00037855341400000410
为函数的梯度。
最后将训练生成的新样本与原始样本融合得到增广后的数据,并根据邻域信息构建输入图
Figure BDA0003785534140000051
其中,
Figure BDA0003785534140000052
和ε分别表示图G中的节点和边的集合,映射
Figure BDA0003785534140000053
Figure BDA0003785534140000054
分别是节点对其特征和标签的投影,符号x和y分别表示特征空间和标签空间,对于节点vi,其特征向量和标签向量分别可以表示为
Figure BDA0003785534140000055
Figure BDA0003785534140000056
图的大小可以由其节点数量
Figure BDA0003785534140000057
来表示。
本发明中,步骤4具体流程为:
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为|v|个无边子图
Figure BDA0003785534140000058
每个子图
Figure BDA0003785534140000059
部包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表了中心节点的上下文信息。本发明采用top-k亲密度的采样方法,该方法基于图亲密度矩阵
Figure BDA00037855341400000510
进行采样的,其中S(i,j)度量了节点vi和节点vj之间的亲密度分数;而对于节点亲密度的衡量指标上,本发明采用的是基于PageRank算法的图亲密度矩阵[4],具体为:
Figure BDA00037855341400000511
其中A是输入图的邻接矩阵,
Figure BDA00037855341400000512
是邻接矩阵A列归一化的结果,α∈[0,1],一般取值为0.15。对于任意目标节点
Figure BDA00037855341400000513
基于亲密度矩阵S,可以定义邻居节点集合为:
Figure BDA00037855341400000514
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,取值为从大到小排列的第k个邻居节点的亲密度得分。通过选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图
Figure BDA00037855341400000515
即表示为以vi为目标节点采样的一个子图,然后依次对输入图进行|v|次采样,最终可以得到子图集合
Figure BDA00037855341400000516
步骤4-2:对步骤4-1中得到的子图集合
Figure BDA00037855341400000517
中的节点进行网络特征的嵌入表示,本发明采用的是Graph-Bert模型中的图嵌入方式[4],在进行位置编码融合后对子图
Figure BDA00037855341400000518
中节点vi的嵌入向量可以表示为
Figure BDA00037855341400000519
则对于子图
Figure BDA00037855341400000520
可以构建矩阵:
Figure BDA00037855341400000521
并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示,最终模型的输出zi即为学习到的节点特征表示。本发明通过设计并融合三个不同的任务进行模型的预训练:其中:
任务一,为节点属性重建任务,对于子图
Figure BDA00037855341400000522
中的目标节点vi,在通过Graph-Bert模型训练后得到了新的节点特征表示zi,再通过全连接层后可以得到重构后的原始特征
Figure BDA00037855341400000523
为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,可以构建损失函数如下:
Figure BDA00037855341400000524
其中,xi为节点vi的原始特征向量。
任务二,为图结构恢复任务,为了确保新的节点特征表示也能够捕捉到图形结构信息,可以对其构建新的节点相似度矩阵
Figure BDA0003785534140000061
采用余选相似度来计算节点间的亲密度得分即
Figure BDA0003785534140000062
并通过与步骤4-1得到的真值亲密度矩阵S做比较,可以构建损失函数如下:
Figure BDA0003785534140000063
其中,
Figure BDA0003785534140000064
任务三,为节点分类任务,为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签
Figure BDA0003785534140000065
作为自监督信号来进行训练,具体来说在节点特征表示zi后连接一层softmax层,其输出为:
Figure BDA0003785534140000066
其中,zi为学习得到的用户表示向量,Wf和bf为可学习参数,
Figure BDA0003785534140000067
是对每个类别的预测概率。在对用户的标签
Figure BDA0003785534140000068
进行独热编码可以得到真值y=[y1,y2,...,yD],以最小化交叉熵来构建损失函数如下:
Figure BDA0003785534140000069
其中,D是标签类别总数。
本发明通过联合上述三个自监督任务来进行预训练,具体为构建联合损失函数:
Figure BDA00037855341400000610
其中,λ1,λ2,λ3均为可学习参数,为了找到合适的权重,本发明使用DWA算法[10]进行优化。
步骤4-3:将预训练后模型输出的节点特征表示
Figure BDA00037855341400000611
使用HDBSCAN算法[5]进行聚类,将聚类结果中的噪音标记为自然用户;排除过小的簇与噪音干扰,把剩余的可疑节点簇标记为机器人账户,最终得到是否是社交机器人的鉴别结果。
本发明的创新点在于:本发明提出了一种基于用户语义、属性和邻域信息联合编码的自监督社交用户表示方法,并将其用到社交机器人检测中。与以往基于用户语义和属性信息的社交机器人检测模型偏向于使用有监督的机器学习方法不同,本方法更为重视用户的邻域信息并以此构造用户关系图,通过图嵌入的方式来学习网络中潜在的用户邻域特征。针对以往基于图的社交机器人检测方法不能处理大规模图的缺点,本发明采用优化的Graph-bert图嵌入模型来进行并行化运算。通过对数据进行基于密度的聚类并对节点分配聚类簇标签,一方面可以作为样本标签输入到条件生成对抗网络中进行负样本的生成,以此来解决样本不均衡的问题;另一方面可以作为自监督标签来进行模型的预训练以提高模型的泛化能力。整个模型框架无需原始标签数据,通过引入对抗性思路来增强模型鲁棒性;同时模型考虑了在大规模数据上的应用,充分迎合了未来社交机器人检测技术的发展趋势。
附图说明
图1为本发明基于用户语义、属性和邻域信息的社交机器人检测算法的整体流程图。
图2为本发明基于用户语义、属性和邻域信息的社交机器人检测算法中模型结构图。
具体实施方式
为了使本方面的上述目的和创新点能够更加容易理解,下面结合附图和具体实施方式对本发明作进一步详细的说明。
步骤1:对待鉴别的社交用户信息进行数据预处理,包括:文本数据预处理,属性数据预处理,邻域数据预处理;其中:
步骤1-1:对待鉴别的社交账户信息中的文本信息进行预处理,包括:对文本内容进行分词,过滤停用词,删除所有的无意义符号,删除所有缺失的行;最终得到处理好的用户文本数据;
步骤1-2:对待鉴别的社交账户信息中的属性信息进行预处理,包括:对一些非数值特征使用独热编码,对缺失的数据进行补齐,删除重复数据等;最终得到处理好的用户属性数据;
步骤1-3:对待鉴别的社交账户信息中的邻域信息进行预处理,包括:以用户为节点,转发关系为边构建转发关系网络;对缺失的用户节点进行补齐,删除网络中重复与孤立的节点以及自环等,最终得到处理好的用户邻域数据。
步骤2:对于处理好的文本数据,通过预训练的RoBERTa模型进行编码训练,得到用户语义特征向量;对构建好的用户转发网络提取节点度、转发层级等网络特征特征向量,将用户语义特征向量与用户属性、网络特征向量进行聚合:
步骤2-1:对于预处理好的用户文本数据,使用预训练的RoBERTa模型对其进行编码,得到用户语义特征向量:
Figure BDA0003785534140000071
其中D是嵌入维度,hi是用户文本数据。
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量:
Figure BDA0003785534140000072
其中D是嵌入维度,pi是用户属性数据。
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法[5]对其进行嵌入:
Figure BDA0003785534140000081
其中D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数。
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量。
Figure BDA0003785534140000082
步骤3:将步骤2得到的用户表示向量进行基于密度峰值的聚类,去除噪音和较小的用户集,以聚类序列标记并作为每个节点用户的标签,将标签用户表示向量输入到一个改进的条件生成对抗网络模型,进行标签样本的生成。
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,可以将聚类得到的不同簇标为负例样本,而将聚类噪音划分为正例样本。通过分析聚类结果发现数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,因此在将数量偏少的负例用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列。
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个改进的条件对抗生成网络中进行训练。改进的模型为了解决传统生成对抗网络中模型崩溃和梯度消失等问题,通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,可以采用线性插值的方法构造“任意点”:
Figure BDA0003785534140000083
其中ε是服从(0,1)间均匀分布的随机数,xr表示真实数据,xg表示生成的数据。通过混合样本产生的
Figure BDA0003785534140000084
来替代表示“任意点”以满足梯度约束条件。
此时生成器G和判别器D的损失函数分别为:
Figure BDA0003785534140000085
Figure BDA0003785534140000086
其中pdata是真实样本的分布,pg是由生成器G学习到的分布,
Figure BDA0003785534140000087
是“任意”点
Figure BDA0003785534140000088
的分布,
Figure BDA0003785534140000089
为函数的梯度。
最后将训练生成的新样本与原始样本融合得到增广后的数据,并根据邻域信息构建输入图
Figure BDA0003785534140000091
其中
Figure BDA0003785534140000092
和ε分别表示图G中的节点和边的集合;映射
Figure BDA0003785534140000093
Figure BDA0003785534140000094
分别是节点对其特征和标签的投影;符号x和y分别表示特征空间和标签空间;对于节点vi,其特征向量和标签向量分别可以表示为
Figure BDA0003785534140000095
Figure BDA0003785534140000096
图的大小可以由其节点数量
Figure BDA0003785534140000097
来表示。
步骤4:对步骤3中得到的输入图G进行子图采样后输入到图嵌入模型,利用基于pagerank算法的亲密度矩阵选取邻居节点来学习邻域信息,训练采用多任务学习方式,构建辅助任务来进行自监督训练。具体流程如图2,基于用户语义和邻域信息的社交机器人检测算法中模型结构图所示。
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为
Figure BDA0003785534140000098
个无边子图
Figure BDA0003785534140000099
每个子图
Figure BDA00037855341400000910
都包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表了中心节点的上下文信息。本发明采用top-k亲密度的采样方法,该方法基于图亲密度矩阵
Figure BDA00037855341400000911
进行采样的,其中S(i,j)度量了节点vi和节点vj之间的亲密度分数,而对于节点亲密度的衡量指标上,本发明采用的是基于PageRank算法的图亲密度矩阵[4],具体为:
Figure BDA00037855341400000912
其中A是输入图的邻接矩阵,
Figure BDA00037855341400000913
是邻接矩阵A列归一化的结果,α∈[0,1],一般取值为0.15。对于任意目标节点
Figure BDA00037855341400000914
基于亲密度矩阵S,可以定义邻居节点集合为:
Figure BDA00037855341400000915
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,即从大到小排列的第k个邻居节点的亲密度得分。选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图
Figure BDA00037855341400000916
表示为以vi为目标节点采样的子图。然后依次对输入图进行
Figure BDA00037855341400000917
次采样,最终可以得到子图集合
Figure BDA00037855341400000918
步骤4-2:对步骤4-1中得到的子图集合
Figure BDA00037855341400000919
中的节点进行网络特征的嵌入表示,本发明采用的是Graph-Bert模型中的图嵌入方式[4],在进行位置编码融合后对子图
Figure BDA00037855341400000920
中节点vi的嵌入向量可以表示为
Figure BDA00037855341400000921
则对于子图
Figure BDA00037855341400000922
可以构建矩阵
Figure BDA00037855341400000923
Figure BDA00037855341400000924
并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示;最终模型的输出zi即为学习到的节点特征表示。本发明通过设计并融合三个不同的任务进行模型的预训练:
任务一为节点属性重建任务;对于子图
Figure BDA00037855341400000925
中的目标节点vi,在通过Graph-Bert模型训练后得到了新的节点特征表示zi,再通过全连接层后可以得到重构后的原始特征
Figure BDA00037855341400000926
为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,可以构建损失函数如下:
Figure BDA0003785534140000101
其中,xi为节点vi的原始特征向量。
任务二为图结构恢复任务;为了确保新的节点特征表示也能够捕捉到图形结构信息,可以对其构建新的节点相似度矩阵
Figure BDA0003785534140000102
采用余选相似度来计算节点间的亲密度得分即
Figure BDA0003785534140000103
Figure BDA0003785534140000104
并通过与步骤4-1得到的真值亲密度矩阵S做比较,可以构建损失函数如下:
Figure BDA0003785534140000105
其中,
Figure BDA0003785534140000106
任务三为节点分类任务;为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签
Figure BDA0003785534140000107
作为自监督信号来进行训练,具体来说在节点特征表示zi后连接一层softmax层,其输出为:
Figure BDA0003785534140000108
其中,zi为学习得到的用户表示向量,Wf和bf为可学习参数,
Figure BDA0003785534140000109
是对每个类别的预测概率。在对用户的标签
Figure BDA00037855341400001010
进行独热编码可以得到真值y=[y1,y2,...,yD],以最小化交叉熵来构建损失函数如下:
Figure BDA00037855341400001011
其中,D是标签类别总数。
本发明通过联合上述三个自监督任务来进行预训练,具体为构建联合损失函数:
Figure BDA00037855341400001012
其中λ1,λ2,λ3均为可学习参数,为了找到合适的权重,本发明使用DWA算法[10]进行优化。
步骤4-3:将预训练后模型输出的节点特征表示
Figure BDA00037855341400001013
使用HDBSCAN算法进行聚类,以往研究 [7]表明:由于社交机器人自动化与协同性质,社交机器人往往在网络上聚集为社团形式。因此聚类结果中噪声被标记为自然用户,在排除过小的簇与噪音干扰后,把剩余的节点簇标记为机器人账户,得到最终鉴别结果。
本发明以一个非公开数据集作为实验对象,利用本发明算法进行评估。数据集来自微博数据挖掘竞赛数据集。为了便于数据集模型评估,人工标注了500个账户,其中数据集的统计如下表1:
表1
Figure BDA00037855341400001014
Figure BDA0003785534140000111
实验采用的机器配置如下表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;计算公式如下:
Figure BDA0003785534140000112
Figure BDA0003785534140000113
其中,TP,TN,FP,FN分别代表真正例数量、真负例数量、假正例数量和假负例数量。
实验中,将本发明模型与先前的几种方法进行对比,此外为了验证模型部件的必要性还进行了消融实验,分别为删减了对抗生成网络的(dg)版本和删减了多任务预训练的(dt) 版本。
最终实验结果如下表3:
表3
Figure BDA0003785534140000114
Figure BDA0003785534140000121
与最新的有监督学习算法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模型对其进行编码,得到用户语义特征向量,表示为:
Figure FDA0003785534130000021
其中,D是嵌入维度,hi是用户文本数据;
步骤2-2:对于预处理好的用户属性数据,进行归一化操作后连接一个全连接层作为用户的属性特征向量,表示为:
Figure FDA0003785534130000022
其中,D是嵌入维度,pi是用户属性数据;
步骤2-3:对于预处理好的用户邻域数据,为了获取节点全局位置的信息,采用WL算法对其进行嵌入,表示为:
Figure FDA0003785534130000023
其中,D是嵌入维度,WL(vj)是使用WL算法对用户领域数据vj编码后得到的向量,i是数据条目数;
步骤2-4:对用户的语义特征向量、属性特征向量和网络特征向量进行聚合,得到完整的用户表示向量:
Figure FDA0003785534130000031
4.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤3中所述将得到的用户表示向量进行密度峰值聚类,去除噪音和较小的用户集后,以聚类序列标记并作为标签分配给每个节点用户,具体流程为:
步骤3-1:对步骤2中得到的用户表示向量进行基于密度的聚类,将聚类得到的不同簇标为负例样本,将聚类噪音划分为正例样本;聚类结果中数据存在正例样本远远多于负例样本的样本不平衡问题;为了减少模型学习样本比例的先验信息,在将数量偏少的负例样本用户数据提取出来后,以聚类簇标记序列标签,并分配给簇中的每个节点用户;对于剩余的节点则统一标为一个聚类簇序列;
步骤3-2:将步骤3-1中得到的带有簇序列标签的用户的表示向量作为少数类样本,输入到一个条件对抗生成网络中进行训练;对抗生成网络由生成器G和判别器D两部分组成,整个训练过程的损失函数为:
Figure FDA0003785534130000032
其中,D是判别器,G是生成器,pz(z)是输入噪音分布,pdata(x)是原始数据分布;为了解决传统生成对抗网络中模型崩溃和梯度消失问题,模型通过引入Wasserstein距离,并以梯度惩罚来提高对抗生成网络收敛判断条件,为了满足一阶利普西茨连续条件,需要函数在任意位置的梯度长度不能超过一个定值,采用线性插值的方法构造“任意点”:
Figure FDA0003785534130000033
其中,ε是服从(0,1)间均匀分布的随机数,xr表示真实数据,xg表示生成的数据;通过混合样本产生的
Figure FDA0003785534130000038
来替代表示“任意点”以满足梯度约束条件;
此时生成器G和判别器D的损失函数分别为:
Figure FDA0003785534130000034
Figure FDA0003785534130000035
其中,pdata是真实样本的分布,pg是由生成器G学习到的分布,
Figure FDA0003785534130000036
是“任意”点
Figure FDA0003785534130000039
的分布,
Figure FDA0003785534130000037
为函数的梯度;
最后将训练生成的新样本与原始样本融合得到增广后的数据,并根据邻域信息构建输入图
Figure FDA0003785534130000041
其中,
Figure FDA0003785534130000042
和ε分别表示图G中的节点和边的集合,映射x:
Figure FDA0003785534130000043
Figure FDA0003785534130000044
Figure FDA0003785534130000045
分别是节点对其特征和标签的投影,符号
Figure FDA0003785534130000046
Figure FDA0003785534130000047
分别表示特征空间和标签空间,对于节点vi,其特征向量和标签向量分别可以表示为
Figure FDA0003785534130000048
Figure FDA0003785534130000049
图的大小可以由其节点数量
Figure FDA00037855341300000410
来表示。
5.根据权利要求1所述的社交机器人检测算法,其特征在于,步骤4的具体流程为:
步骤4-1:对步骤3中得到的输入图G进行子图采样,将输入图G分解为
Figure FDA00037855341300000411
个无边子图
Figure FDA00037855341300000412
每个子图
Figure FDA00037855341300000413
都包含一个中心节点和固定数量的邻居节点,其中邻居节点就代表中心节点的上下文信息;采用top-k亲密度的采样方法,该方法基于图亲密度矩阵
Figure FDA00037855341300000414
进行采样,其中图亲密度矩阵的元素S(i,j)度量了节点vi和节点vj之间的亲密度分数;而对于节点亲密度的衡量指标上,采用的是基于PageRank算法的图亲密度矩阵S,具体表示为:
Figure FDA00037855341300000415
其中,A是输入图的邻接矩阵,
Figure FDA00037855341300000416
是邻接矩阵A列归一化的结果,α∈[0,1],对于任意目标节点
Figure FDA00037855341300000417
基于亲密度矩阵S,定义邻居节点集合为:
Figure FDA00037855341300000418
其中,“A\B”表示集合A减去集合B的差集,“∧”表示并集,θi为最小亲密度分数阈值,取值为从大到小排列的第k个邻居节点的亲密度得分;通过选取中心节点vi与亲密度得分最高的k个邻居节点Γ(vi)共同组成一个无边子图
Figure FDA00037855341300000419
即表示为以vi为目标节点采样的一个子图,然后依次对输入图进行|v|次采样,最终得到子图集合
Figure FDA00037855341300000420
步骤4-2:对步骤4-1中得到的子图集合
Figure FDA00037855341300000421
中的节点进行网络特征的嵌入表示,具体采用Graph-Bert模型中的图嵌入方式,在进行位置编码融合后对子图
Figure FDA00037855341300000422
中节点vi的嵌入向量表示为
Figure FDA00037855341300000423
则对于子图
Figure FDA00037855341300000424
构建矩阵:
Figure FDA00037855341300000425
并将其输入到图Transformer编码器中,通过多层迭代的方式更新节点的表示,最终模型的输出zi即为学习到的节点特征表示;
通过设计并融合三个不同的任务进行模型的预训练:其中:
任务一,为节点属性重建任务,对于子图
Figure FDA00037855341300000426
中的目标节点vi,在通过Graph-Bert模型训练后得到新的节点特征表示zi,再通过全连接层后得到重构后的原始特征
Figure FDA00037855341300000427
为了保证学习后的节点特征表示能够捕捉到节点的原始属性信息,构建损失函数如下:
Figure FDA00037855341300000428
其中,xi为节点vi的原始特征向量;
任务二,为图结构恢复任务,为了确保新的节点特征表示也能够捕捉到图形结构信息,对其构建新的节点相似度矩阵
Figure FDA0003785534130000051
采用余弦相似度来计算节点间的亲密度得分,即
Figure FDA0003785534130000052
Figure FDA0003785534130000053
并通过与步骤4-1得到的真值亲密度矩阵S做比较,构建损失函数如下:
Figure FDA0003785534130000054
其中,
Figure FDA0003785534130000055
任务三,为节点分类任务,为了确保学习后的节点特征能够更好的用于下游社交机器人检测任务,将与下游社交机器人检测任务相关的标签
Figure FDA0003785534130000056
作为自监督信号来进行训练,具体地,在节点特征表示zi后连接一层softmax层,其输出为:
Figure FDA0003785534130000057
其中,zi为学习得到的用户表示向量,Wf和bf为可学习参数,
Figure FDA0003785534130000058
是对每个类别的预测概率;在对用户的标签
Figure FDA0003785534130000059
进行独热编码,得到真值y=[y1,y2,…,yD],以最小化交叉熵来构建损失函数如下:
Figure FDA00037855341300000510
其中,D是标签类别总数;
通过联合上述三个自监督任务来进行预训练,联合损失函数为:
Figure FDA00037855341300000511
其中,λ1,λ2,λ3均为可学习参数;
步骤4-3:将预训练后模型输出的节点特征表示
Figure FDA00037855341300000512
使用HDBSCAN算法进行聚类,将聚类结果中的噪音标记为自然用户;排除过小的簇与噪音干扰,把剩余的可疑节点簇标记为机器人账户,最终得到是否是社交机器人的鉴别结果。
CN202210940789.3A 2022-08-07 2022-08-07 基于用户语义、属性和邻域信息的社交机器人检测算法 Pending CN115309813A (zh)

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)

* Cited by examiner, † Cited by third party
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 广州大学 基于上下文路径的在线社交网络用户表示方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
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