掌桥专利:专业的专利平台
掌桥专利
首页

一种基于PSOTVCF-Kmeans算法的意见领袖群识别方法

文献发布时间:2023-06-19 10:38:35


一种基于PSOTVCF-Kmeans算法的意见领袖群识别方法

技术领域

本发明涉及一种识别方法,特别是涉及一种基于PSOTVCF-Kmeans算法的意见领袖群 识别方法。

背景技术

微博不仅是舆论流传的一个独立源头,也参与舆论的形成、发展与引导的进程中。微博 平台中存在各种意见领袖,他们能影响其他人的观点与行为,令话题不断升温。因此,如何 精确识别意见领袖群,对于政府高效疏导群众突发事件舆论走向,具有重大意义。

目前社会网络分析法、PageRank法及指标分析法等技术得到广泛应用。依据“粉丝量”、“转 发量”、“点赞量”以及“是否认证”等指标加权,对用户影响力进行排序,是现今大多数意见领 袖识别模型的基础,虽然实现了对用户影响力的衡量,但在确定意见领袖范围时一般采用自 定义排名阈值方式,偶然性强。李熠辉等

发明内容

针对现有技术的不足,本发明提出了一种基于PSOTVCF-Kmeans算法的意见领袖群识 别方法,具体包括如下步骤:

步骤1,利用网络爬虫工具,从互联网中采集实际的社交网络数据;

步骤2,基于“用户影响力”和“话题影响力”计算意见领袖值;所述用户影响力包括粉丝量、 原创微博量和是否认证,话题影响力包括博文评论量、转发量和点赞量;

步骤3,依意见领袖值高低排序得到预判的意见领袖群簇P和普通用户群簇Q,作为粒子 群的初始扰动场,基于PSOTVCF-Kmeans算法对意见领袖群簇P和普通用户群簇Q进行聚 类,具体实现方式如下,

(1)粒子种群初始扰动:首先随机在簇P和簇Q中选取一个初始聚类簇心,然后依据最大距离原则选取剩余的聚类簇心,重复操作n次,产生n个粒子,计算每个初始簇心与所在簇其他节点的距离;

(2)计算n个粒子的适应度值fit,并寻找每个粒子的个体极值pbest和群体极值gbest;

(3)更新粒子的速度与位置;

(4)以更新后的粒子为聚类中心重新聚类,并计算每个粒子的适应度值;

(5)判断当前种群适应度方差Var是否低于某个阈值Thre或者达到最大迭代次数,如 果是,则转向(6);否则转向(3);

(6)以PSOTVCF算法得到的簇P和簇Q的最佳位置[p

(7)对每个数据,分别计算其与当前迭代的簇P和簇Q的簇心C

(8)记录每一次的簇心C

进一步的,步骤2中意见领袖值的计算公式如下,

I=w

T=w

L=I+T (3.3)

其中,公式(3.1)为用户影响力计算公式,其中,w

进一步的,w

进一步的,(5)中适应度方差Var的计算公式如下;

其中,f

进一步的,(3)中更新粒子的速度与位置的计算公式如下,

得到系统矩阵:

时变压缩因子计算公式为:

其中,压缩因子χ是一个正实数,ITER为当前进化代数,MAXITER为最大迭代数,C

与现有技术相比,本发明的优点和有益效果:本文利用时变双重压缩因子粒子群优化算 法(Particle Swarm Optimizer with Time Varying Constrict Factor,PSOTVCF),建立 PSOTVCF-KMeans聚类模型,通过PSOTVCF寻找全局最优解的优势,确定最佳聚类初始簇 心,提高K-means算法的聚类效果和效率,并通过实验验证了PSOTVCF-KMeans算法意见 领袖群识别的有效性。

附图说明

图1为本发明实施例流程图。

图2为K-means算法200次实验结果。

图3为PSO-Kmeans算法200次实验结果。

图4为PSOTVCF-Kmeans算法200次实验结果。

具体实施方式

下面结合附图和实施例对本发明的技术方案作进一步说明。

1、时变双重压缩因子粒子群算法

粒子群算法(PSO)是由R.C.Eberhart以及J.Kennedy等设计的一种进化算法[1]。由于 在解决实际问题中展示了其易实现、精度高、收敛快的特点,很快引起了研发人员的重视。 由于PSO容易

PSOTVCF时变压缩因子计算公式为:

其中,ITER为当前进化代数,MAXITER为最大迭代数,C

PSOTVCF的速度更新公式可变形为:

得到系统矩阵:

压缩因子χ是一个正实数,PSOCF升级粒子和速度的公式如下:

k为迭代次数,Rand表示随机数,P

加速因子取初始值为2.05,所以公式2.10中的压缩因子为常数;公式2.11连续使用第二 个加速因子χ

设循环次数为M,简化的粒子速度为:

2、微博KOL群识别指标分析模型构建

为了比较聚类效果与效率,本文结合指标分析法,提出了基于“用户影响力”和“话题影响 力”的KOL指标分析模型。

(1)用户影响力

用户影响力烘托用户的社会影响力和对其他用户在情感和观点上产生影响的可能性。微 博平台KOL的用户影响力可用粉丝量(F

(2)话题影响力

话题影响力刻画了用户自身在特定话题上的张力,不同话题有不同意见领袖,针对突发 事件,意见领袖大多都有独特或影响力的看法,可带动用户的观点和情感走势。微博意见领 袖的话题影响力可通过博文评论量(F

本文引用德尔菲法构造判别矩阵,构建基于“用户影响力”和“话题影响力”的意见领袖群 识别指标分析体系,确定F

表3.1微博意见领袖指标权重

I=w

T=w

L=I+T (3.3)

公式(3.1)为用户影响力计算公式。其中,w

3、PSOTVCF-Kmeans算法模型

针对K-means算法因初始簇心选取不确定,易陷入局部最优,且耗费时间长等缺点,本 文将时变双重压缩因子粒子群算法运用到聚类前最佳初始簇心的选取中,建立了PSOTVCF-Kmeans算法模型:通过PSOTVCF算法提前找到最优聚类初始簇心,从而防止 K-means算法陷入局部最优的可能性,以提高微博平台KOL群识别的识别效率。算法伪代码 如下:

(1)初始化种群,随机选取一个粒子为聚类簇心,依据最大距离原则选取剩余的聚类簇 心;重复操作n次,产生n个粒子(每个粒子为一个k×col维向量,k是聚类簇群数,col为 数据集中属性的个数)。

(2)依据粒子选取的中心,通过每个粒子的fit值,寻找粒子的个体极值pbest

这里k为簇群数,

距离公式如下:

C表示聚类中心集合,x

(3)根据公式(2.3)、(2.4)动态调整因子,按照公式(2.5)、(2.6)更新粒子单体 所对应的速度与位置。

(4)选取更新后的粒子为聚类中心,对数据集重新聚类,计算每个粒子的fit值。

(5)判断当前种群适应度方差(Var)是否低于阈值(Thre)或是否达到最大迭代次数, 如果是,则跳至(6);否则跳至(3)。

其中,f

(6)选用PSOTVCF的最佳位置作为初始中心,建立类别矩阵U

(7)按”最近距离原则”重新聚类划分,并按下式更新U

(8)如果U

(9)根据划分结果计算每个聚类的平均值作为新的聚类中心点,如果存在某个簇类为 空,则删除该簇类,同时簇群数量k的值-1。

(10)令当前迭代次数t+1,若t≥t

其中,

4、基于PSOTVCF-Kmeans算法的意见领袖群识别模型

本文搭建了一种新的微博用户影响力的指标体系,用来完成微博用户的影响力评估。识 别意见领袖时,用户被划分为意见领袖和非意见领袖,K-means中的K值为2。根据公式(3.1) 通过指标加权计算出用户节点的影响力I和话题影响力T,I和T值越大,影响力越大,排名 越高。将用户群按照排名(即微博KOL群识别指标L)提前平均分为两簇,排名高的一簇被 提前预判为意见领袖群簇P,排名低的为普通用户群簇Q。用PSOTVCF在簇P、Q中随机扰 动,通过粒子群的速度与位移更新,不断迭代,寻找目标函数的最优解,即为K-means算法 的最佳初始簇心。

基于PSOTVCF-KMeans的KOL群识别模型伪代码如下:

(1)粒子种群初始扰动:分别在簇P和簇Q中选取聚类簇心p,q,然后依据最大距离原 则选取剩余的聚类簇心,重复操作n次,产生n个粒子,其中每个粒子为2×1维向量,即[p

(2)根据公式(3.9)计算n个粒子的适应度值,寻找每个粒子的个体极值pbest和群体 极值gbest,适应度函数采用聚类指标DBI指数;

(3)根据公式(2.3)、(2.4)动态调整因子,按照公式(2.5)、(2.6)更新粒子的速 度与位置。

(4)以更新后的粒子为聚类中心重新聚类,计算每个粒子的适应度值。

(5)判断当前种群适应度方差Var是否低于某个阈值Thre或者达到最大迭代次数,如 果是,则转向(6);否则转向(3)。

(6)以PSOTVCF算法得到的簇P和簇Q的最佳位置[p

(7)对数据集的每个数据,计算其与当前迭代的簇P和簇Q的簇心C

(8)记录每一次的簇心C

本文基于新浪微博开放API,以“某话题”作为话题关键词,通过Python Scrapy爬取2020 年5月17日—5月19日的话题相关博文数据,共收集微博12249条。用正则表达式处理后 的量化数据包括博文的转发数、评论数和点赞数,以及用户基础信息:粉丝数、认证信息和 原创微博数。首先用excel对量化后的“用户影响力”与“话题影响力”的数据根据公式3.1-3.3计 算意见领袖值,依意见领袖值高低排序得到预判的意见领袖群簇P和普通用户群簇Q,作为粒 子群的初始扰动场,用Python Jupiter Lab对数据进行扰动,再根据模型展开数值实验。

实验中,PSOTVCF的参数为:第一个压缩因子为常量,C

3.2实验结果与分析

本文对KOL群识别的对比方法,通过DBI指标和聚类时间对比PSOTVCF-KMeans、PSO-Kmeans和标准K-means的聚类效果,以验证PSOTVCF-KMeans算法的有效性。由于PSO 是随机算法,本实验对每种算法共进行200次数值试验,统计最优值、最差值和平均值作为最终的对比数据。实验结果如图2~4及表4.1、4.2所示。图中横坐标表示试验次数,纵坐标表示 每次试验所测得聚类结果的DBI值。

表4.1三种算法的DBI数据

表4.2三种算法的聚类时间

由图2~4和表4.1所示,对于DBI,Kmeans算法最大,PSOTVCF-KMeans最小,说明PSOTVCF-KMeans的聚类效果最佳,其原因在于:PSOTVCF的双重压缩因子使粒子初期和后期的搜索范围更大,找到的全局最优解质量更高,获得更优质的初始聚类簇心。表4.2说明,在聚类时间上,PSOTVCF所消耗的时间比PSOK-means和K-means更短,这是因为良好的初始簇心使聚类过程中达到阈值的速度更快。

综上,PSOTVCF-Kmeans算法由于其自身双重压缩因子对粒子速度的调节,提高了初始 聚类簇心的优越性,增强了KOL群识别的聚类效果,缩短了KOL群识别的聚类时间,从而KOL 群识别聚类模型的效率。

本文中所描述的具体实施例仅仅是对本发明作举例说明。本发明所属技术领域的技术人 员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏 离本发明的精神或者超越所附权利要求书所定义的范围。

相关技术
  • 一种基于PSOTVCF-Kmeans算法的意见领袖群识别方法
  • 一种基于先验信息和并行二进制微粒群算法的肿瘤关键基因识别方法
技术分类

06120112623723