面向新一代调控系统的应用个性化推荐技术*

2023-06-04 06:24吴冠宇
计算机与数字工程 2023年2期
关键词:标签调控特征

邹 庆 吴冠宇 黄 昆,4 余 璟 高 原,4

(1.南瑞集团有限公司(国网电力科学研究院有限公司) 南京 211106)(2.国电南瑞科技股份有限公司 南京 211106)(3.国网江苏省电力公司 南京 210024)(4.智能电网保护和运行控制国家重点实验室 南京 211106)

1 引言

为适应新一代电力系统发展的需要,国家电网公司提出建成具有“共享、智能、开放、安全”特征的新一代调控系统[1]。建立适用电网调控业务的应用商店,是打造新一代调控系统开放生态的重要手段。新一代调控系统应用商店为国网公司各调控业务用户,提供监视控制、分析预警、计划决策、仿真模拟、综合评估及自动化业务等六大类场景数千个应用。如何帮助电网调控用户,从应用商店中快速、高效的获取到需要的应用功能,是新一代调控系统应用商店需要解决的一个重要问题。

目前,互联网各类应用商店常用的应用推荐方式:专家推荐[2]、基于用户社交关系的推荐、基于数据挖掘和机器学习技术的推荐。苹果公司App-Store 各类应用榜单是专家推荐的典型代表,苹果公司为此组建了专职的编辑团队,为用户进行筛选推荐。这类方法需要较大的人员投入,并且推荐结果单一,难以反映用户的个性化需求。基于用户社交关系的推荐[3~4],利用系统内用户之间的社交关系数据,为用户推荐“朋友们正在使用的应用”。在企业应用场景中,用户缺少社交属性,难以直接应用该推荐技术。基于数据挖掘和机器学习技术的推荐,又可以分为:基于项目的协同过滤推荐技术[5]、基于人员的协同过滤推荐技术[6]、基于内容的推荐技术[7]等。这类推荐技术,基本原理都是基于用户行为历史数据,分析用户兴趣特征和项目特征,建立用户和项目偏好关系,为用户进行个性化推荐。项目的特征有多种构建方式[8],包括物品的属性集合[9]、隐语义向量[10]、标签等。标签是能够准确的表达物品内容特征的关键词[11],按生成方式一般有两种:一种是专家标签(Professionally-generated Content,PGC)[12],由项目创建者或者审核编辑,根据项目特点给物品定义的特性关键词;另一种是用户自定义标签(User-generated Content,UGC)[13],由使用者根据个人感受为物品定义的个性关键词标签。基于标签的推荐算法[14~15]大多是基于UGC 标签进行特征分析和推荐,基于PGC 标签进行推荐的研究较少。

新一代调控系统应用商店作为一个企业内部系统,用户社交频率不高,难以获得足够的UGC 标签;另一方面,应用开发商提交应用时,提供了应用的关键词和应用分关键类信息,并经过管理员的审核,信息比较准确,可以作为PGC的来源。因此,本文提出一种基于专家标签的推荐技术,通过用户留存应用包含的专家标签,分析用户对专家标签的兴趣特征,建立基于标签的用户应用的兴趣度计算公式,并利用相同专业的用户兴趣,补充目标用户对其他应用的兴趣度,实现面向新一代调控系统应用的个性化推荐。最后,基于实验数据集进行了多轮测试,实验结果验证了本文提出的算法对应用个性化推荐的效果。

2 基于专家标签多维特征的内容推荐和同类用户协同推荐技术

2.1 构建应用的多维特征向量

新一代调控系统应用商店中的应用集合A 和用户集合U可分别表示为

式中:N为应用总数,M为系统用户数。

我们把用户已下载安装且未卸载的应用,称为用户留存应用,用户um留存应用集合可以定义为

式中:N'为用户um留存应用个数。

其中,Ti表示应用ai的特征向量,ki,1、ki,2、ki,3分别表示应用ai上的3 个关键词,ci表示应用ai属于的分类,由于1个应用可以同时属于1个或多个分类,应用ai特征可进一步表示为

式中:J为应用ai的应用分类个数。

2.2 构建用户对标签的偏好特征

用户um留存应用,包含的标签集合表示为

式中:P 为用户um留存的应用包含的PGC 标签个数。基于TF-IDF 算法[16],用户um对Rm中某个标签tm,p的偏好可表示为

式中:Num(rm,p)为用户um留存的应用中包含标签tm,p的应用个数,Num(Rm)为用户um留存的应用包含的标签数,Num(tA,m,p)为所有应用中包含标签tm,p的应用个数。用户留存应用中,包含某个标签的应用越多,说明该标签对用户的选择偏好影响越大;同时,在所有应用中,越多的应用包含某个标签,该标签能够反映用户兴趣的区分度越低。

2.3 预测用户对应用的兴趣度

基于式(7),用户um对应用ai的偏好,可以通过用户um对应用ai上的多维标签的偏好,按照权重叠加计算,表示为

式中:Pm,k表示用户um对应用ai的关键词ki标签的兴趣度,Pm,c表示用户um对应用ai的分类标签ci的兴趣度,l为应用分类特征相对于关键词特征的权重。

基于式(8),为目标用户um计算所有待预测应用的兴趣度并进行排名,选择兴趣度Top-N应用集合,作为推荐候选集RAm,N。

2.4 同类用户协同推荐

式(8)是建立在基于目标用户um历史行为,分析用户留存应用标签基础上计算用户对应用的兴趣度。对于那些不包含目标用户um喜好标签的应用,可以参考与目标用户um兴趣度相似的用户进行推荐。传统基于用户的协同过滤,主要通过统计用户的历史行为,挖掘出行为特征类似的用户,确定为同类用户,进行协同推荐[17]。整个过程计算复杂,花费时间长。在新一代调控系统场景中,企业用户有显著的专业特性,同一专业岗位的用户,工作职责和工作范围都比较相似,其选择的应用具有很大的参考性,所以本文利用这一特点,基于式(8)计算同一专业岗位的用户的平均兴趣度,选择兴趣度Top-N应用集合,作为用户um推荐候选集RA'm,N。

2.5 为用户进行推荐

合并推荐候选集RAm,N与RA'm,N,按照兴趣度选择Top-N作为用户um最终的推荐结果Wm,N。

3 算法设计

本文提出的推荐算法,利用应用包含的多维特征专家标签,建立用户和应用之间的关联关系,通过用户对应用标签的偏好分析,预测用户对其他未知应用的兴趣度,结合目标用户以及目标用户相似用户的偏好,生成Top-N推荐。具体算法如下:

算法1

输入:训练集,测试集,l值,N值

输出:目标用户um的Top-N推荐集Wm,N

步骤1:根据训练集中用户留存应用信息A',厂商标注的应用标签(关键词和应用分类)信息T,计算出用户um留存的应用标签集合Rm

步骤2:根据式(3)计算用户um对标签的偏好矩阵Pm

步骤3:根据式(4)计算用户um对应用的偏好矩阵Im

步骤4:按照目标用户um对应用的偏好值排序,选择Top-N应用候选推荐集RAm,N

步骤5:根据用户岗位属性,选择同一岗位的用户,根据同类用户对应用的偏好值排序,选择Top-N应用,构建应用候选推荐集RA'm,N

步骤6:合并候选推荐集RAm,N和RA'm,N按照偏好值排序,从中选择Top-N推荐应用集Wm,N。

4 实验结果分析

4.1 实验数据来源

新一代调控系统目前正处于试点建设阶段,应用商店还缺少足够的应用信息和用户行为数据。为了验证本文提出的推荐算法,我们从互联网公开数据集中选择了GroupLens 实验室2000 年发布的MovieLens 1M 电影评级数据集[18],该数据集包含的用户和电影数量,与新一代调控系统的用户和应用规模比较接近。由于MovieLens 1M[19]数据集并没有包含电影标签数据,我们从MovieLens 10M[20]数据集中筛选出了MovieLens 1M 数据集中所有电影所对应的标签数据,加入到实验数据。实验数据包括:

电影数据([“movies”]):包括电影标记、电影名称及电影类别(可多选)。

用户数据([“users”]):用户标记、用户职业。

电影评分数据([“ratings”]):用户标记、电影标记、用户对电影评分(1-5分)。

电影标签数据([“tags”]):用户标记、电影标记、用户对电影所打标签。

4.2 实验数据预处理

GroupLens 发布的电影数据集,其场景与本文的新一代调控系统应用商店的场景有所差异,无法直接应用于算法1,需要进行必要的数据预处理。GroupLens 数据集中电影标签属于UGC 标签,来源于用户对电影的个性化标签操作,同一部电影不同用户根据个人感受可能会打出多个不同的标签,这与新一代调控系统应用商店中,由开发厂商提交关键词、应用分类等应用专家标签不同,为此我们对GroupLens中电影标签数据([“tags”])进行了处理:从每部电影的用户个性化标签数据中,筛选出使用频率最高的三个标签,作为该电影的“关键词”标签,电影数据([“movies”])中的分类信息作为分类标签,共同构成电影的“专家”标签。同时,对应新一代调控系统中应用是/否留存的状态,基于电影的评分数据([“ratings”]),先统计出平均值M,作为电影平均质量的评判标准,用户对电影的评分大于等于M时,定义为用户“留存”电影A'。

4.3 实验方法

将实验数据集中电影评分数据([“ratings”]),按照80/20 比例随机分成两部分:训练数据集T1包含评分数据其中的80%,测试数据集V1包含剩余的20%。为了保证实验结果的客观性,分为5 轮进行重复测试,每轮保持80/20 比例重新随机划分训练数据集Ti和测试数据集Vi,1 ≤i≤5。

根据算法1,通过训练数据Ti为用户um生成的推荐集合Ri。通过测试数据验证,计算推荐集合Ri中应用的正负反馈比,在测试数据Vi中评分大于应用商店平均分M 的应用判定为正反馈,评分低于M的判定为负反馈。正负反馈比越高,证明应用留存的概率越大,即应用推荐的质量越高。

4.4 实验结果

根据算法1,在每轮试验中,λ值依次为1、2、0.5、0.2,N 值依次为10、20、30、40、50。5 轮试验结果对比如图1所示。

图1 不同l值、N值对应的推荐列表正负反馈比较

由图1可以看出,5轮试验,随着训练数据集和测试数据集的随机划分,推荐结果虽有一定波动,但推荐结果表现出类似的变化趋势。在同一l 值时,Top-N推荐N值取10时,取得最好的推荐效果,推荐的准确性最高;随着N 值范围越大,推荐的准确性越低,推荐结果中出现负反馈的比例越大。

此外,不同λ值对于推荐结果的表现为,λ值为1时表现相对更好,λ值为0时,有一定程度降低,其余λ值表现变化不大。所以再考虑应用的标签数据时,应用的关键词标签、分类标签不同维度的标签,都应该纳入推荐依据,根据试验结果,两个维度权重相等时,取得最好的推荐结果。

本文在基于专家标签多维特征的内容推荐上,采用同类用户协同推荐,对推荐结果进行优化。下表对本文方法和基于标签的内容推荐方法进行了推荐质量采用每轮实验正负反馈比平均值进行对比。

由表1 可以看出,本文方法相对于基于标签的推荐算法有了明显的改进,在多维标签特征对推荐结果的基础上,结合用户的工作属性,根据同类用户喜好进行协同过滤,对推荐结果的准确度有进一步提升。

表1 2种算法的推荐质量比较

5 结语

实验结果显示,本文提出的面向新一代调控系统的应用个性化推荐技术,在传统基于用户标签的推荐技术基础上,充分利用新一代调控系统的场景特性,基于专家标签建立多维特征用户兴趣度模型,利用相同专业用户兴趣偏好进行协同推荐,为用户实现了应用个性化推荐,提高了用户应用选择效率。后续将在新一代调控系统上线运行过程中,通过采集用户操作数据,进一步完善推荐算法,实现更高质量的推荐结果。

猜你喜欢
标签调控特征
如何调控困意
如何表达“特征”
经济稳中有进 调控托而不举
不忠诚的四个特征
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
抓住特征巧观察
顺势而导 灵活调控
标签化伤害了谁
基于多进制查询树的多标签识别方法