APP下载

基于用户行为的社交网络人格特质识别方法

2023-01-27谢柏林黎琦魏娜邝建

计算机工程 2023年1期
关键词:人格特质词典社交

谢柏林,黎琦,魏娜,邝建

(广东外语外贸大学 信息科学与技术学院,广州 510006)

0 概述

社交网络已经深度融入到人们生活的多个方面,并成为人们获取信息和发布信息的一个重要平台。截至2021 年12 月,我国网民规模达10.32 亿,其中95%以上的网民使用即时通信,80%以上的网民频繁使用微信,将近50%的网民频繁使用微博。

黑客可以从社交网络上获取大量用户的个人信息,目前,社交网络已成为黑客发起网络诈骗的主要场地。例如,2021 年我国将近20%的网民遭遇过网络诈骗,其中大部分网络诈骗由黑客通过社交网络发起。

近年来,随着《网络安全法》的实施,国家网络安全宣传周等一系列活动的持续开展,以及媒体对一些网络诈骗手段的报道,使我国网民的整体网络安全意识有所提升,大部分网民能够辨别一些简单的网络诈骗。为了提高社交网络诈骗的成功率,黑客在发起诈骗之前,通常会判别目标用户的主要人格特质类型,根据目标用户的主要人格特质类型制定与其交流的策略和诈骗手段。这类诈骗危害大,且大部分网民难以识别出这类诈骗。

为提高用户识别社交网络诈骗的能力,面向社交网络用户的人格特质识别方法的研究具有重要意义,以便自动识别用户拥有的主要人格特质类型,进而得到用户的主要人格特点,根据用户的主要人格特点,提醒用户黑客可能采取的攻击策略,进而提高用户识别社交网络诈骗的能力,最终达到防御社交网络诈骗的目的。另外,社交网络用户人格特质识别的研究在其他方面也有广泛的应用前景,例如用户心理预警、个性化推荐[1-2]、网络不良言论治理等。

大五人格理论[3]是目前最流行的人格理论,该理论从宜人性(Agreeableness)、开放性(Openness)、尽责性(Conscientiousness)、神经质(Neuroticism)和外向性(Extraversion)五个维度来刻画用户的人格。基于人格特质词典和隐半马尔可夫模型(Hidden semi-Markov Model,HsMM),本文提出面向社交网络的人格特质识别方法。设计一种人格特质词典构建方法,根据现有的心理学词典和社交网络上能反映用户主要人格特质类型的高频词来构建基准词典,基于社交网络语料,采用word2vec、增量聚类算法、HowNet来扩展基准词典。通过对用户发表或转发的文本信息进行动态分析,提取能反映用户人格特质类型的人格特质词,采用隐半马尔可夫模型从用户发表或转发文本信息的行为过程中判别用户拥有的主要人格特质类型。

1 相关工作

在社交网络用户人格特质识别方面,文献[4]提出一种面向Twitter 用户的人格特质识别系统。该系统首先从用户发表的所有文本信息中提取特征值,然后利用多层感知器神经网络、朴素贝叶斯、支持向量机(Support Vector Machine,SVM)分类算法来识别Twitter 用户的主要人格特质类型,即判别Twitter用户主要拥有人格特质类型。该系统选用的文本特征包括用户朋友数或粉丝数,以及每次发表博文时,博文中包含的链接、单词、负向情感词、正向情感词、情感符号、逗号、冒号、引号的平均个数等。GOLBECK 等[5]提出根据用户的语言特征,以及用户发表的平均每条博文包含的单词、链接、标签个数等特征,并基于回归分析算法来识别Twitter 用户的主要人格特质类型。ADALI 等[6]提出利用用户发表的博文内容特征,以及用户的网络特征,并基于回归分析算法来识别Twitter 用户的主要人格特质类型。SKOWRON 等[7]提出一种同时面向Twitter 和Instagram 用户的人格特质识别方法,该方法首先把用户分别在Twitter 和Instagram 上产生的数据进行集成,然后根据用户的粉丝数、朋友数、用户分享图片的亮度或色素等特征,以及用户的语言特征,并基于随机森林回归算法来识别用户的主要人格特质类型。

LI 等[8]提出根据用户的静态特征和动态特征,并基于SVM 分类算法来识别微博用户的主要人格特质类型,其中静态特征包括用户性别、朋友数、粉丝数等,动态特征包括单位时间内用户被提及的次数、发表博文的次数等。WEI 等[9]提出利用用户的头像、发表的博文、表情符号,以及用户与朋友或粉丝的互动模式中的信息,并基于深度学习算法来识别微博用户的主要人格特质类型。XUE 等[10]提出利用用户的个人信息和发表博文中的113个特征,并基于标签分布学习(Label Distribution Learning,LDL)算法来识别新浪微博用户的主要人格特质类型。LIU 等[11]提出一种面向微博用户的人格特质识别方法,该方法利用用户发表的博文语言行为特征,并基于深度学习算法来识别微博用户的主要人格特质类型。

WANG 等[12]提出一种面向Facebook 用户的人格特质识别方法,该方法利用用户的社会网络特征、语言特征、情感统计特征、话题特征,并基于Kendall相关系数来识别用户的主要人格特质类型。MARKOVIKJ等[13]提出利用用户的语言特征、社会网络特征、属性统计特征,并基于SMO 分类算法来识别Facebook 用户的主要人格特质类型。FERWERDA 等[14]提出使用径向基函数,以及用户个人简介中的一些特征,例如工作类型、受教育程度、工作城市、居住城市、移动电话、出生日期、性别、宗教信仰、家庭成员等,识别Facebook 用户的主要人格特质类型。BACHRACH 等[15]提出利用用户简介中的一些特征,例如用户的朋友数、获得的点赞数、上传的照片数等,并基于多元线性回归模型来识别Facebook 用户的主要人格特质类型。ORTIGOSA 等[16]提出利用用户的社交互动特征,基于分类算法来识别Facebook 用户的主要人格特质类型,其中社交互动特征包括:最近1 个月在Facebook 上发表信息的不同朋友的个数、用户使用Facebook 的时间等。LIU 等[17]提出利用用户发表的所有文本的话题信息,基于扩展的隐含狄利克雷分布(Latent Dirichlet Allocation,LDA)模型来识别Facebook 用户的主要人格特质类型。ZHENG 等[18]基于用户的个人信息,利用半监督分类算法来识别Facebook 用户的人格特质类型。

BAI 等[19]提出一种面向人人网用户的人格特质识别方法,该方法根据用户的41 个特征,例如用户的性别、年龄、家乡所在地、平均每次发表信息所包含的单词个数等,然后基于C4.5 分类算法来识别用户的主要人格特质类型。王萌萌等[20]考虑到用户人格特质间的相关性对用户人格特质识别的影响,提出一种基于加权非负矩阵分解的用户人格特质识别模型,以识别社交网络用户的主要人格特质类型。XUE 等[21]提出利用深度学习方法和语义分析来识别社交网络用户的人格特质类型。ZHU 等[22]基于用户喜爱的图片,利用卷积神经网络来识别社交网络用户的人格特质类型。TAREAF 等[23]提出利用用户的喜爱和机器学习分类算法来识别Facebook 用户的人格特质类型。LAI 等[24]基于学生的在线学习行为和扩展的最近邻算法来识别学生的人格特质类型。GUAN 等[25]基于用户发表的文本信息和Skipgram 算法来识别社交网络用户的人格特质类型。KUMAR 等[26]提出一种基于语言特征、内容特征,并利用决策树和SVM 分类算法来识别用户人格特质类型的系统。YUAN 等[27]利用博文的中文语言特征和机器学习分类算法来识别新浪微博用户的人格特质类型。YANG 等[28]提出一种基于图卷积网络的人格特质识别方法。MAROUF 等[29]对比分析了5 种用于人格特质识别的特征选择算法。另外,张磊等[30]综合分析了现有的一些社交网络用户人格特质识别方法,指出了未来研究需要解决的一些问题。

以上大部分方法通过挑选一些属性,并基于训练好的分类模型来识别用户拥有的主要人格特质类型。这些方法没有考虑用户在社交网络上发表或转发文本信息的行为过程,而用户的这种行为过程更能体现用户的主要人格特质类型。本文通过构建面向社交网络的人格特质词典,结合隐半马尔可夫模型[31-32]来刻画用户在社交网络上发表或转发文本信息的行为过程,以识别用户的主要人格特质类型。

本文提出的社交网络人格特质识别方法,通过对用户发表或转发的文本信息进行动态分析,提取出能反映用户人格特质类型的人格特质词,同时采用隐半马尔可夫模型刻画用户发表或转发文本信息的行为过程,以判别用户拥有的主要人格特质类型。当用户的主要人格特质类型发生变化时,该方法也可以动态识别出用户最新的人格特质类型。

2 社交网络用户人格特质识别方法

在社交网络上,用户发表或转发的文本信息能反映出用户的主要人格特质类型,当社会上发生某件大事时,大部分具有相同主要人格特质类型的用户会发表或转发相似的文本信息。本文使用人格特质词典来获取用户发表或转发的文本信息中能反映用户主要人格特质类型的观测值,然后采用隐半马尔可夫模型来刻画用户在社交网络上发表或转发文本信息的行为过程。

本文的人格特质词典把常用的能反映用户主要人格特质类型的词分为神经质、宜人性、开放性、尽责性和外向性。为此,本文提出一种面向社交网络的人格特质词典构建方法。人格特质词典的构建流程如图1 所示。其中最初的人格特质基准词典是根据现有的心理学词典和社交网络上一些能反映用户主要人格特质类型的高频词来建立。

图1 人格特质词典的构建流程Fig.1 Construction process of personality trait dictionary

具有相同主要人格特质类型的用户在使用社交网络过程中,其发表或转发的文本信息中人格特质词的统计特征一般会随着时间发生变化。例如,主要拥有开放性人格特质的用户在发表或转发某个文本信息过程中,开放类型人格特质词的加权和较大,而在另一个文本信息中开放类型的人格特质词加权和的值较小。本文将人格特质词的不同类型统计特征作为状态,令不同状态的个数为I(k),即由于状态与用户在发表或转发文本信息中产生的观测值不具有一一对应的关系,因此本文假定状态的转移过程服从隐马尔可夫过程。

隐马尔可夫模型[33]的状态持续时间概率必须服从指数分布,隐半马尔可夫模型对此进行了扩展,使其状态持续时间概率服从任何分布。因此,用户在发表或转发文本信息过程中反映其人格特质类型的行为状态转移过程实际是一个隐半马尔可夫模型。

主要拥有第k类人格特质的某个用户在社交网络上发表或转发文本信息时,其行为的状态跳转过程如图2 所示。其中表示第t个观测值,表示状态转移概率,表示不同状态,表示不同状态的持续时间。

图2 状态跳转过程Fig.2 State transition process

本文提出的人格特质识别方法分为模型训练和人格特质识别两个阶段。

2.1 模型训练阶段

本文首先在社交网络上采集大量用户产生的相关数据,然后根据现有的人格特质识别方法选用一些特征,并使用K-means 聚类算法把用户划分成5 个不同的簇,并对每个簇中的用户进行人工检验和筛选,使得每一个簇中的用户拥有相同的主要人格特质类型。在第k个簇中,提取出用户在发表或转发文本信息时产生的能反映用户主要拥有第k种人格特质类型的观测序列,并作为同一模型的训练数据集。本文采用多序列和基于文献[32]中的前向-后向算法来训练模型。

其中:平滑系数ρ=I(k)D(k)(I(k)D(k)+V-2)。

在模型训练结束后,得到λ(1)、λ(2)、λ(3)、λ(4)、λ(5)的值,分别表示主要拥有不同人格特质类型的用户在发表或转发文本信息时的行为模型。

2.2 人格特质识别阶段

当某个用户在社交网络上发表或转发文本信息时,采用以下步骤对该用户的主要人格特质类型进行识别,其中t的初始值为0:

1)在当前时刻,如果该用户在社交网络上发表或转发某条文本信息,则令t=t+1,并使用人格特质词典统计的值,1≤k≤5。

3)得到使E(l)≥E(k)成立的l,1≤l≤5。当E(l)大于某个阈值时,则得到该用户拥有的主要人格特质类型l,否则跳转到第1 个步骤。

3 实验测试与结果分析

新浪微博是我国最大的微博网站,截至2021 年4 月,其日活跃用户数已达到2.3 亿。本文在新浪微博上选择42 210 个活跃用户(其发表或转发博文的数量大于1 000 条),使用新浪微博的API 采集这些用户发表或转发的所有博文,并保存在数据库中作为构建人格特质词典的语料库。

3.1 人格特质词典构建

本文利用现有的停用词表和一些过滤规则去除语料库中的停用词和无意义的词,其中无意义的词分为纯数字的词语和由非表情符的纯标点符号组成的字符串两种。本文把预处理后语料库中的词语等分为Y个互不相交的子集,令y的初始值为1,则人格特质词典的构建主要分为以下4 个步骤:1)使用word2vec 计算第y个子集的词语与基准词典各个类别下词语的相似度;2)基于词语的相似度,使用增量式聚类算法扩展每类人格特质词语的规模;3)使用HowNet 与人工相结合的方式来筛选词语,并更新基准词典;4)如果y=Y,结束循环;否则令y=y+1,并跳转到第1 个步骤。

经过人工筛选,本文得到的基于新浪微博语料的人格特质词典包含2 390 个词语。该词典中各人格特质类别的词语数量分布如表1 所示,其数据格式如表2 所示。

表1 人格特质词典的词语数量分布Table 1 Word quantity distribution of personality trait dictionary

表2 人格特质词典的词语数据格式示例Table 2 Data format example of word of personality trait dictionary

3.2 人格特质识别方法测试

在采集到的新浪微博数据集中,人工筛选出主要拥有神经质、宜人性、开放性、尽责性、外向性人格特质类型的用户各3 000 名,使用本文构建的人格特质词典提取能反映其主要人格特质类型的观测序列,并分别标注为Data(N)、Data(A)、Data(O)、Data(C)、Data(E)。

为了训练得到主要拥有神经质人格特质类型的用户行为模型(用N-HsMM 代表该模型),本文在Data(N)中随机抽取2/3 的观测序列用于模型训练,剩余1/3 的观测序列用于模型测试。此外,本文在Data(A)中随机抽取1/3 的观测序列用于测试N-HsMM 的性能。同理,采用相同的方式来训练、测试A-HsMM、O-HsMM、C-HsMM、E-HsMM 的性能。A-HsMM 表示主要拥有宜人性人格特质类型的用户行为模型,O-HsMM 表示主要拥有开放性人格特质类型的用户行为模型,C-HsMM表示主要拥有尽责性人格特质类型的用户行为模型,E-HsMM 表示主要拥有外向性人格特质类型的用户行为模型。各个HsMM 的训练集和测试集信息如表3 所示。N-HsMM 模型的ROC 曲线如图3 所示。

表3 HsMM 模型的训练集和测试集Table 3 Training and testing sets of HsMM model

当本文选择模型的真正率(True Positive Rate,TPR)为0.913 时,模型的假正率(False Positive Rate,FPR)为0.1。真正率TTPR、假正率FFPR的计算分别如式(25)和式(26)所示:

其中:user(N)表示主要拥有神经质人格特质类型的用户;user(A)表示主要拥有宜人性人格特质类型的用户。

A-HsMM 模型的ROC 曲线如图4 所示,当模型的FPR 为0.1 时,模型的TPR 为0.907。

图4 A-HsMM 模型ROC 曲线Fig.4 ROC curve of A-HsMM model

O-HsMM 模型的ROC 曲线如图5 所示,当模型的FPR 为0.1 时,模型的TPR 为0.946。C-HsMM 模型的ROC 曲线如图6 所示,当模型的FPR 为0.1 时,模型的TPR 为0.928。

图5 O-HsMM 模型的ROC 曲线Fig.5 ROC curve of O-HsMM model

图6 C-HsMM 模型ROC 曲线Fig.6 ROC curve of C-HsMM model

E-HsMM 模型的ROC 曲线如图7 所示,当模型的FPR 为0.1 时,模型的TPR 为0.965。

图7 E-HsMM 模型ROC 曲线Fig.7 ROC curve of E-HsMM model

各个HsMM 模型的训练时间和测试时间对比如表4 所示。

表4 各个HsMM 模型的训练时间与测试时间对比Table 4 Training time and testing time comparison among each HsMM model 单位:s

本文提出的方法分为模型训练和人格特质识别两个阶段,其中模型训练阶段可以线下进行。在人格特质识别阶段中,前向变量每次更新的复杂度为O(I(k)D(k)+I(k)I(k)),每次更新观测序列相对模型的平均对数似然概率时仅涉及到几十次乘法和几十次加法,因此该方法具有较快的识别速度。

实验结果表明,本文提出的方法具有较优的识别性能,通过选取合适的阈值,具有较高的真正率和较低的假正率。

4 结束语

本文提出一种基于用户发表或转发文本信息行为的人格特质识别方法。通过构建人格特质词典,提取用户在发表或转发文本信息时产生的人格特质词,使用隐半马尔可夫模型刻画用户的行为过程,通过对拥有不同人格特质类型的用户在发表或转发文本信息时的行为模型进行训练,并计算每个用户产生的观测序列相对于每个模型的平均对数似然概率。实验结果表明,该方法能准确识别用户的人格特质类型。下一步将优化隐半马尔可夫模型,以提高人格特质识别性能并降低误报率,使本文方法适用于实际的社交网络平台。

猜你喜欢

人格特质词典社交
人格特质对企业员工时间侵占行为的影响
社交牛人症该怎么治
聪明人 往往很少社交
近视患者人格特质与近视矫正手术意向的关系研究
社交距离
米兰·昆德拉的A-Z词典(节选)
米沃什词典
选择一张神奇的行为艺术照片,秒测你的真实人格特质
词典引发的政治辩论由来已久 精读
你回避社交,真不是因为内向