一种新型电力大数据协同过滤推荐算法的设计与应用

2021-11-02 11:53杨凯利张其静娄红红张雪清瞿强
电力大数据 2021年6期
关键词:关联度相似性物品

杨凯利,张其静,娄红红,张雪清,瞿强

(贵州电网有限责任公司六盘水供电局,贵州 六盘水 553000)

随着智能电网时代的到来,电力系统正在朝着数字化、信息化的方向快速发展,电力系统运行数据也越来越快地产生与积累,如何基于用户需求来高效地将海量数据中的有用信息提炼挖掘出来,如何精准地向用户发送个性化的信息推荐,以便更好地提高电力系统的服务质量,已经成为当前电力系统亟待思考的问题[1-3]。推荐系统一直以来都是人工智能、数据挖掘、信息检索等领域的“热点”研究课题[4-7],电力系统也不例外。近年来国内外先后出现了多种推荐算法,为电力大数据的个性化推荐打下坚实的基础,包括混合推荐算法、基于图结构的推荐算法、协同过滤推荐算法、基于内容的推荐算法等等。协同过滤推荐由于具备较佳的共享性与普适性,且推荐精度较高而被电力系统大规模应用[8]。

传统协同过滤推荐算法通常都是对物品的相似性进行计算,以计算结果为基准来向用户推荐,虽然推荐结果可对不同目标之间的相似性进行体现,但并未考虑知识关联度,而知识关联度与目标相似性没有直接联系[9]。基于传统协同过滤推荐算法来看,与目标相似的物品通常会取得较高的排名,而与目标相关联、但并不相似的物品则较易被忽略[10],这样一来,导致推荐结果的准确度较低。有鉴于此,本文设计了一种新型电力大数据协同过滤推荐算法,有机融合了协同过滤技术与关联规则挖掘技术,将目标之间的相似度与关联度均纳入到影响因素之中,推荐结果既存在着关联性,又具备相似性。

1 传统协同过滤算法分类

传统协同过滤推荐算法通常可分为Item CF与User CF两大类[11-12],其中,User CF是基于用户的协同过滤推荐算法,更新次数较多、更新周期较短;其侧重点在于对聚类组与用户和的相似性进行考虑,只要物品与用户喜欢的类似物品相似,那么就会向用户进行推荐,其推荐顺序往往是按照评分高低来确定[13-15],例如,若用户曾经在网上商城购买或者搜索过洗衣机的网页,那么网站就会在短时间内自动向用户发送大一堆与洗衣机相关的广告和链接。

Item CF则是基于物品的协同过滤推荐算法,它往往需要长时间的在线计算才可获得不同用户之间的相似度关系,其计算复杂度并不会与用户数量的多少直接相关,故而可离线计算得出用户相似度,准确性更易于用户接受。再加上物品数量要远小于用户数量,且物品数据的稳定性较强,故而其计算复杂度要远低于User CF,再加上Item CF又能够为推荐做出合理的解释,具有很多优势,故而被市场所大规模应用,但是也存在着较大的改进空间[16]。

1.1 基于用户的协同过滤推荐算法User CF

基于用户的协同过滤推荐算法User CF通常是以用户所评分项目为基础来对相似邻居集进行搜寻,再将相似邻居集中的项目推荐给用户。其计算原理为:在对不同用户之间的相似度进行计算时,往往会将用户对全部评分项目的偏好来作为计算向量,待将K邻居找出来之后,再基于用户对物品的偏好程度,以及邻居的相似度权重来开展预测。所形成的项目序列作为用户推荐序列[17]。

协同过滤推荐算法User CF的主要优点有三点:第一,基于用户的协同过滤推荐算法User CF特别适用于较为完整的用户评分矩阵,可获得较高的推荐精度;第二,基于用户的协同过滤推荐算法User CF不需要对项目本身进行深入分析,较好地适用于难以分析、结构复杂的项目[18];第三,基于用户的协同过滤推荐算法User CF可将目标用户的潜在兴趣偏好进行挖掘,所推荐的部分项目很有可能就会涵盖用户之前并未意识到的兴趣偏好[19]。但是协同过滤推荐算法User CF也具有较为明显的缺点:第一,其扩展性不太强,若用户数量越来越多,那么User CF的计算量异常庞大,计算复杂度很高;第二,矩阵稀疏性问题较为严重,若存在着用户-项目矩阵评分数据稀疏的情况,那么就会直接导致用户相似度计算结果出现严重失真的情况,难以向目标用户实现精准推荐;第三,在新用户刚加入系统时,由于可用于评分的数据数量较少,甚至完全没有评分数据,那么就较易出现“冷启动”现象,根本不能向目标用户进行要推荐,就需要通过热点推荐的方式来解决这一问题,但效果并不太好[20]。

1.2 基于物品的协同过滤推荐算法Item CF

基于物品的协同过滤推荐算法Item CF并不从用户角度来考虑计算问题,而是从物品本身出发来进行考虑。换而言之,就是通过用户对物品的偏好程度来搜索出相似物品,而后再基于用户历史偏好来有针对性地推荐相似物品。例如,基于用户历史偏好购买物品来看,偏好购买物品A的用户也倾向于喜欢物品C,那么就可得出:物品C与物品A之间的相似程度较高,而某一用户C喜欢物品A,那么就可自然而然地判断出它也有可能会偏好购买物品C,那么就可向用户C推荐其可能感兴趣的物品。基于物品的协同过滤推荐算法Item CF可离线计算得出用户相似度,准确性更易于用户接受,计算复杂度要远低于User CF,再加上Item CF又能够为推荐做出合理的解释,具有很多优势,市场应用效果较佳。但是基于物品的协同过滤推荐算法Item CF也存在着较多的避免,主要体现在:第一,Item CF算法并不会对不同用户之间的差异进行考虑,但实际上不同的用户往往会具有不同的特点及偏好,再加上使用者并不能予以确定,这样一来,就会造成推荐精度不高的现象[21]。第二,在新物品刚加入系统时,由于可用于评分的数据数量较少,甚至完全没有评分数据,那么必然很容易在很长时间内都难以向目标用户进行推荐。

2 基于知识关联度的电力大数据个性化推荐

2.1 知识树的构建

电网领域知识主要分为两大类,分别是动态知识与静态知识,其中,动态知识既包括了电力系统运行过程中所形成的实时数据,又包括了以时间为关键属性的预测型知识;静态知识则涵盖了电力故障诊断知识、电力运行决策知识、电力规程类知识、电力设备知识等。不同知识之间的联系通常并不明显,往往会让用户难以理解,且不会给用户提供易于查询的推荐信息[22]。由此可见,选择一种较佳的知识表示方法就显得极为重要,既有利于构建清晰的知识结构,又有利于提高知识检索效率与知识存储效率,还有利于缩短数据挖掘时间,进而可在很大程度上增强数据挖掘效率。

将电网领域知识划分为粒度不同的知识项,再采用知识树结构将其贯穿起来,实现知识的可视化、关联化、体系化,必然可较好地符合当前知识表示的需求。本文以知识点为单元来分解电网数据,使之形成若干个知识项,通过构建知识树模型KT来将不同的知识项关联起来,如公式(1)。

式中,KP为知识点属性,KR为知识点关系。

2.1.1 知识点属性KP

KP可通过五元组{KID,KN,KW,KI,KP}来进行描述,其中,KP为与知识点相互对应的资源路径,KI为知识点的重要程度,KID为知识点的编号,KN为知识点的名称,KW为知识点的关键字。

KI是知识点属性的关键性因素,重要程度与其被引用次数直接挂钩,若被引用次数越多,那么说明该知识点越重要。假设x为某知识点的被引用次数,那么可用隶属函数公式(2)来描述其重要程度:

2.1.2 知识点关系KR

KP可通过四元组{RN,KPN,Relation,Degree}来进行描述,其中,KPN为关联知识点编号及主知识点编号,RN为关系编号,Relation为相关知识点与主知识点关系类型,Degree为相关知识点与主知识点关系程度。

2.2 知识项相似度矩阵的生成

从目前来看,电力系统的用户数据存在着明显的多变特征,而领域知识则要相对稳定的多[23],所以,本文有机融合了协同过滤技术与关联规则挖掘技术,形成了一种新型电力大数据协同过滤推荐算法,即:联合算法AR-Item CF。联合算法AR-Item CF以电力运行系统日志为载体,深入挖掘用户评价、用户关注、用户收藏、用户浏览等知识项行为;按照不同知识项行为的轻重程度来划分为不同的权重,以此来计算得出用户评分,在吸取Item CF算法优点的态势,又将知识关联度作为影响推荐结果排名的主要因素之一,同时融合了协同过滤技术与关联规则挖掘技术,将目标之间的相似度与关联度均纳入到影响因素之中,推荐结果既存在着关联性,又具备相似性,所形成的用户-知识评分矩阵如表1所示。

表1 用户-知识评分矩阵Tab.1 Scoring matrix of user-knowledge

(1)训练集选取用户-知识评分矩阵中前四分之三的知识数据项集,测试集则选取用户-知识评分矩阵中余下的后四分之一的知识数据项集;用户兴趣模型在训练集上进行构建,预测工作则在测试集上开展。

(2)对知识项的相似性进行计算。不同知识项之间的相似度可通过余弦相似性方法来进行计算,以知识项i和知识项j为例,二者所能形成的相似性计算公式为(3):

(3)以公式(3)为基准,可形成知识项余弦相似度矩阵ASK,如表2所示。

2.3 关联矩阵生成

知识项与最近邻知识项之间的关系属于典型的显性关系,紧紧围绕着“以知识项为中心”;而知识项与非最近邻知识项之间的关系以及不同知识项组合而衍生出来的新知识点等等均属于典型的隐性关系,只有通过深入地挖掘与剖析之后才可显现出来,其关联性通常是通过置信度来进行表示。纵观国内外关联规则挖掘技术领域,最常用的经典算法当属Apriori算法;无论是在置信度,还是在关联支持度计算方面,Apriori算法均有较佳的应用优势[24-25]。有鉴于此,本文在对不同知识项之间的关联度进行计算时,所选用的算法依然为Apriori算法,其计算步骤为:第一,Apriori算法的输入项为知识树中的知识项;第二,对数据集进行逐一单遍扫描,进而得出每个知识项的支持度,形成频繁1-项集;第三,采用Apriori算法来扫描全部的数据集,候选2-项集的支持度计数通过子集函数来进行计算;第四,为了防止出现低置信度的计算结果及高相似性的计算结果,只要候选项集的支持度计数低于minsup,那么则将其置信度设定为0;第五,对候选2-项集的置信度conf进行计算,进而形成如表3所示的知识项关联矩阵。

表2 知识项余弦相似度矩阵Tab.2 Cosine similarity matrix of knowledge term

表3 知识项关联矩阵Tab.3 Association matrix of knowledge item

2.4 产生推荐

(1)通过将知识项关联矩阵与知识项余弦相似度矩阵进行求和计算,那么就可形成计算用户对知识项兴趣度的矩阵ASRK。

(2)基于用户的目标知识项,可在计算用户对知识项兴趣度的矩阵ASRK中查找与其密切相关的前K个知识项。

(3)用户对知识项兴趣度的计算公式为(4),由公式(4)可见,若知识项与用户历史上所查找的知识项较为相似,且关联度较高,也就是同时兼具相似度与关联度,那么就能够在用户推荐列表中位列前茅[26-29]。

式中,Rui为对知识项i的兴趣程度;N(u)为用户历史上所查找的知识项集合;ASRK(j,k)为K个知识项之集合,且这些知识项均与知识项j存在和较高的相似性与关联度;Wji为知识项在K个知识项之集合的对应值。

3 实验分析

3.1 测试指标

本文通过MAE(平均绝对偏差)来对实际用户评分与预测用户评分的偏差程度进行计算和预算,以此为依据来评价推荐结果的精度,若平均绝对偏差越小,那么就表明推荐结果的精度越高、推荐质量越高;若平均绝对偏差越大,那么就表明推荐结果的精度越低、推荐质量越低。假定预测用户评分的集合为{p1,p2,…,pN},实际用户评分的集合为{q1,q2,…,qN},那么就可通过公式(4)来计算MAE(平均绝对偏差):

假定某用户的待推荐项目集为W={ω1,ω2,…,ωN},令N为待推荐项目数,ωi为待推荐项目;若用户的全部最近邻居中均无与ωk相关的实际评估记录,这样一来,就会出现ωk未能够被推荐的情况,那么就会导致有M个项目未被推荐,当然M的取值应该要不大于N,那么该用户的项目推荐率(IRR)就可通过(N-M)/N来进行计算。项目推荐率(IRR)大多都用于对用户周围最近邻居的查找效率进行衡量,并且还可从另外一个角度来体现出用户评分数据库的离散度。在平均绝对偏差MAE相同的情况下,项目推荐率(IRR)与算法的推荐效率呈现出较为明显的正比关系,若项目推荐率(IRR)越高,那么就表明算法的推荐效率越高;若项目推荐率(IRR)越低,那么就表明算法的推荐效率越差。

3.2 实验结果

本实验所采用的数据集来自电力安全规程系统的资源库,从中随机选择1000条数据,涵盖700条知识、300个用户。训练集选取实验数据集中前四分之三的数据,测试集则选取实验数据集中余下的后四分之一的数据,分别采用本文所提出的新型电力大数据协同过滤推荐算法(联合算法AR-Item CF)与传统的Item CF算法进行对比,所得出的平均绝对偏差MAE实验结果对比如图1所示,所得出的项目推荐率IRR实验结果对比如图2所示。

图1 平均绝对偏差MAE实验结果对比Fig.1 Comparison of the results of the average absolute deviation MAE experiment

图2 项目推荐率IRR实验结果对比Fig.2 Comparison of IRR experiment results of project recommendation rate

由图1可知,无论是联合算法AR-Item CF,还是与传统Item CF算法,平均绝对偏差MAE均会随着最近邻居数的增大而小幅下降,而后其值又基本保持不变的状态,但在最近邻居数不变的前提下,联合算法AR-Item CF的平均绝对偏差MAE明显要低于传统Item CF算法,如前所述,若平均绝对偏差越小,那么就表明推荐结果的精度越高、推荐质量越高;若平均绝对偏差越大,那么就表明推荐结果的精度越低、推荐质量越低。由此可见,联合算法ARItem CF推荐结果的精度更高、推荐质量更高。由图2可知,无论是联合算法AR-Item CF,还是与传统Item CF算法,项目推荐率IRR均随着最近邻居数的增大而逐渐增大,但在最近邻居数不变的前提下,联合算法AR-Item CF的项目推荐率IRR明显要高于传统Item CF算法,如前所述,若项目推荐率(IRR)越高,那么就表明算法的推荐效率越高;若项目推荐率(IRR)越低,那么就表明算法的推荐效率越差。由此可见,联合算法AR-Item CF的推荐效率更高。综合可知:本文所提出的新型电力大数据协同过滤推荐算法(联合算法AR-Item CF)能够在很大程度上增强推荐系统的推荐效率与推荐质量,取得较佳的效果。

4 结论

(1)联合算法AR-Item CF以电力运行系统日志为载体,深入挖掘用户评价、用户关注、用户收藏、用户浏览等知识项行为;按照不同知识项行为的轻重程度来划分为不同的权重,以此来计算得出用户评分,在吸取Item CF算法优点的态势,又将知识关联度作为影响推荐结果排名的主要因素之一,同时融合了协同过滤技术与关联规则挖掘技术,将目标之间的相似度与关联度均纳入到影响因素之中,推荐结果既存在着关联性,又具备相似性。

(2)本实验所采用的数据集来自电力安全规程系统的资源库,从中随机选择1000条数据,涵盖700条知识、300个用户。训练集选取实验数据集中前四分之三的数据,测试集则选取实验数据集中余下的后四分之一的数据,分别采用本文所提出的新型电力大数据协同过滤推荐算法(联合算法ARItem CF)与传统的Item CF算法进行对比。实验结果表明:本文所提出的新型电力大数据协同过滤推荐算法(联合算法AR-Item CF)能够在很大程度上增强推荐系统的推荐效率与推荐质量,取得较佳的效果。

猜你喜欢
关联度相似性物品
基于熵值法与灰色关联度分析法的羽毛球技战术综合评价分析
基于熵权TOPSIS法和灰色关联度分析的藤茶药材等级研究
称物品
隐喻相似性问题的探讨
中国制造业产业关联度分析
中国制造业产业关联度分析
12个毫无违和感的奇妙动物组合
基于隐喻相似性研究[血]的惯用句
图画捉迷藏
谢文骏与刘翔110m栏分段成绩与总成绩的灰色关联度对比分析