计算机应用   2017, Vol. 37 Issue (9): 2671-2677  DOI: 10.11772/j.issn.1001-9081.2017.09.2671
0

引用本文 

黄亚坤, 王杨, 王明星. 综合社区与关联序列挖掘的电子政务推荐算法[J]. 计算机应用, 2017, 37(9): 2671-2677.DOI: 10.11772/j.issn.1001-9081.2017.09.2671.
HUANG Yakun, WANG Yang, WANG Mingxing. E-government recommendation algorithm combining community and association sequence mining[J]. Journal of Computer Applications, 2017, 37(9): 2671-2677. DOI: 10.11772/j.issn.1001-9081.2017.09.2671.

基金项目

国家自然科学基金资助项目(61572036);安徽省人文社科重大专项(SK2014ZD033)

通信作者

黄亚坤, hyk_it@foxmail.com

作者简介

黄亚坤(1992-), 男, 安徽合肥人, 硕士研究生, CCF会员, 主要研究方向:个性化推荐、数据挖掘;
王杨(1971-), 男, 安徽灵璧人, 教授, 博士, 主要研究方向:数据挖掘、机器学习、智能Agent;
王明星(1992-), 男, 安徽合肥人, 硕士研究生, CCF会员, 主要研究方向:数据挖掘, 社交网络

文章历史

收稿日期:2017-04-19
修回日期:2017-07-16
综合社区与关联序列挖掘的电子政务推荐算法
黄亚坤1,2, 王杨1, 王明星1    
1. 安徽师范大学 数学计算机科学学院, 安徽 芜湖 241000;
2. 安徽讯飞智能科技有限公司, 安徽 芜湖 241000
摘要: 个性化推荐作为一种有效的信息获取手段已成功应用于电商、音乐和电影等领域。已有研究多数聚焦于推荐的精度,缺乏对推荐结果的多样性考虑,忽略了应用领域中被推荐项目的流程特性(如"互联网+政务"中办事项的推荐)。为此提出一种综合用户社区与关联序列挖掘(CAS-UC)的电子政务推荐算法,优先向用户推送利益关联最大的办事项。首先,对用户和办事项的静态基本属性以及动态行为属性分别进行特征建模;其次,基于用户的历史办事记录和属性相似度进行用户社区发现,预筛选出与目标用户最为相似的用户集,提高推荐结果的多样性,减少核心推荐过程的计算量;最后,办事项的关联序列挖掘充分考虑了电子政务的业务特性,加入时间维度的办事项序列挖掘,进一步提高了推荐结果的精度。以芜湖市易户网为平台载体,基于Spark计算平台对用户脱敏后的信息进行仿真,实验结果表明,CAS-UC适用于被推荐项目具有序列或流程特性领域的推荐,与传统推荐算法如协同过滤推荐、矩阵分解以及基于语义相似度的推荐算法相比,具有更高的推荐精度,用户的多社区归属因素增加了推荐结果的多样性。
关键词: 用户社区    关联序列挖掘    Spark平台    多样性    电子政务推荐    
E-government recommendation algorithm combining community and association sequence mining
HUANG Yakun1,2, WANG Yang1, WANG Mingxing1     
1. School of Mathematics & Computer Science, Anhui Normal University, Wuhu Anhui 241000, China;
2. Anhui IFLYTEK Intelligent Technology Corporation, Wuhu Anhui 241000, China
Abstract: Personalized recommendation as an effective means of information gathering has been successfully applied to e-commerce, music and film and other fields. Most of the studies have focused on the recommended accuracy, lack of consideration of the diversity of recommended results, and neglected the process characteristics of the recommended items in the application area (e. g. "Internet of Things plus E-government"). Aiming at this problem, an e-government recommendation algorithm Combining User Community and Associated Sequence mining (CAS-UC) was proposed to recommend the items most associated with users. Firstly, the static basic attributes and dynamic behavior attributes of the users and items were modeled separately. Secondly, based on the user's historical record and attribute similarity for user community discovery, the user set most similar to the target user was pre-filtered to improve the diversity of the recommended results and reduce the computational amount of the core recommendation process. Finally, the associated sequence mining of the items was taken full account of the business characteristics of e-government, and the item sequence mining with time dimension was added to further improve the accuracy of the recommended results. The simulation experiments were carried out with the information after desensitization of users on the Spark platform of ewoho.com in Wuhu. The experimental results show that CAS-UC is suitable for the recommendation of items with sequence or process characteristics, and has higher recommendation accuracy compared with traditional recommendation algorithms such as cooperative filtering recommendation, matrix factorization and recommendation algorithm based on semantic similarity. The multi-community attribution factor of the user increases the diversity of the recommended results.
Key words: user community    associated sequence mining    Spark framework    diversity    e-government recommendation    
0 引言

随着以互联网为主的信息新技术在经济、社会和生活各部分的扩散与应用,“互联网+政务”以电子政务服务平台为基础,以实现智慧政府为目标,对政府组织结构和办事流程进行优化重组[1-2]。传统电子政务系统缺乏面向用户个性化需求的精准服务,独立、多源、异构的政务信息增加了用户的办事难度。个性化推荐系统作为一种有效的信息过滤手段已在多个领域中取得良好的反馈,如电商网站[3-4]、音乐和电影类网站[5-6],通过分析用户的浏览和购买行为,向该用户推送符合其特征的相关项目,进一步提高了用户体验。传统的协同过滤推荐算法,如基于内容和项目的推荐、基于矩阵分解(Matrix Factorization, MF)以及由其衍生而出的具有偏好的矩阵分解(Preference MF, PMF)算法或结合上下文的MF(Context MF, CMF)推荐算法已在电商、音乐和电影等领域推荐取得一定成果。综合考虑电子政务办事项的序列化特征,设计出符合电子政务业务特点的推荐算法是构建智慧城市的关键技术之一。

国内外相关文献主要从语义相似度、本体理论以及多角度改进的协同过滤算法对电子政务推荐算法进行研究[7-14]。集成语义相似度与协同过滤的推荐算法提供准确性和扩展性更高的个性化推荐服务。从增强语义信息角度来看,文献[7]结合FALC模糊描述逻辑语言提出一种模糊语义的推荐服务来促进电子政务中的资源信息利用;文献[8]设计了一种智能贸易展览的推荐系统,通过集成语义相似性和传统的基于项目的协同过滤解决电子政务服务中唯一项目的推荐问题;文献[9]基于增强推荐中的混合语义信息提出了一种项目语义相关性模型,并开发了智能商业定位器推荐系统原型进行验证。基于本体理论的相关算法提供主动推送、动态、差异的个性化推荐。文献[10]结合合肥市政务信息资源建设和应用实际,基于个性化目录模型和本体理论构建具有个性化、动态化和智能化的电子政务信息个性化服务系统。Al-Hassan等[11]不仅考虑了语义相似性,同时结合本体理论提出了一种新的推理本体的语义相似性方法(Inferential Ontology-Based Semantic Similarity, IOBSS)测量,通过其显式分层关系、共享属性和隐含关系来评估特定域中项目之间的语义相似性,并使用澳大利亚电子政府旅游服务的案例验证所提出的混合方法的有效性。此外,还有针对协同过滤进行改进的相关推荐算法也在一定程度上提高了电子政务推荐系统的准确性[12-14]。Shambour等[14]开发了混合信任增强的协同过滤推荐方法(Trust-enhanced Collaborative Filtering, TeCF),其集成了隐式信任过滤和增强的基于用户的协同过滤(Collaborative Filtering, CF)推荐方法,适用于处理非常稀疏的数据集和冷启动用户。

电子政务办事项的序列化特征难以直接应用传统个性化推荐算法。已有文献主要对推荐算法进行改进优化设计,缺乏结合电子政务办事项的业务特征,进而向用户推荐更精准的服务。本文综合社区与关联序列挖掘提出了一种个性化“互联网+政务”推荐算法——CAS-UC(Combining User Community and Associated Sequence mining)。首先,挖掘用户群社区,对被推荐用户进行社区归属再进行推荐能够有效增加推荐结果的多样性和减少海量用户、办事项引入的计算量;其次,办事项的关联序列挖掘深入业务特点,根据历史办事记录精准预测分析关联性最大的办事项;最后,综合两者的计算结果优化排序向用户推荐最终结果集。

1 CAS-UC推荐模型

图 1描述了CAS-UC算法的推荐流程。推荐主要综合了用户社区的预选推荐集和办事项的关联挖掘推荐集。数据预处理阶段主要是对用户和办事项的原始数据进行清洗和建模,并根据用户的办事记录进行用户社区发现。对于输入的任意目标用户,首先对其进行社区归属计算,然后根据基本静态属性和动态行为属性筛选最相似的K个关联用户,与其关联性不大(即使处于同一社区)的用户办事记录不会入选待推荐办事项集合中,从这K个关联用户预选出目标用户的待推荐办事项集合,最后,基于用户的协同过滤算法建立目标用户与K个关联用户的推荐模型。此外,基于Apriori序列模式挖掘在办事项中产生关联序列推荐集合,基于两部分推荐集获得最终的推荐集。

图 1 CAS-UC推荐流程 Figure 1 Recommendation process of CAS-UC

用户模型描述了用户的静态基本属性和动态行为属性,包括结构化和非结构化的数据信息。静态属性通常有ID、性别、年龄、婚姻、学历等,同时也包含社保、公积金、医保等个人隐私的静态属性;动态行为属性主要指用户的历史行为信息(已办理事项或浏览行为记录)和用户反馈信息(对推送内容反馈的信息)。基于向量空间模型定义四元组User_M=〈BIU, SI, FB, AA〉。其中,用户的基本信息用BIU={uid, age, sex}表示;SI={ss, hi, pf, ho, li, ca}代表社保、公积金、医保等个人隐私的静态属性;FB={as, af}表示用户的评价和行为反馈信息,主要用于模型的调优与校准;n维特征向量AA={a1, a2, …, an}表示行为特征,其中,ai=(kei, wei, τi)为用户的第i个行为;kei为行为信息;wei为行为信息的权重,权值为1或0,表示办理或未办理记录;τi为行为更新的时间戳。

用户模型为用户社区的划分和准确推荐提供计算基础,用户的静态和动态属性是计算用户之间相似程度的主要根据。用户社区划分依据用户自身属性特征,包括BIU, SI有效属性特征向量组合。用户样本可以表示为包含上述属性的n维向量u=(age, sex, ss, hi, pf, sa, ho, li, ca),所有维度的取值范围为0或1,当ss, hi, pf, ho, li, ca取值为1时,表示用户拥有社保、医保、公积金、房产、驾照和车辆;sex取值1表示性别相同;agesa指计算两个不同用户相似度时,考虑年龄或工资等级是否是同一年龄段或工资等级,如age取值为1表示任意两条用户记录的年龄属于同等级,0为否;sa取值为1则表示两条用户记录的工资等级相同,0为否。如存在用户样本A与样本B,其基本属性向量uA=(1, 0, 1, 1, 1, 0, 1, 1, 0) 和uB=(1, 0, 1, 1, 1, 0, 0, 1, 1) 分别表示AB的年龄、性别、社保、医保、公积金、房产、驾照和车辆的相关状态,向量uAuB中第一位均为1表示AB处于同一年龄段,而向量中第六位为0则表示AB工资等级不同;其他位置的1和0分别表示是否拥有改属性。基于上述用户向量,若用M00代表向量A和向量B都是0的维度个数;M01代表向量A是0而向量B是1的维度个数;M10代表向量A是1而向量B是0的维度个数;M11代表向量A和向量B都是1的维度个数,n维向量的每一维都会落入上述向量中的某一类,给出利用Jaccard相似系数计算二者的相似性:

Jaccard系数可定义如下:

$ Jac(\mathit{\boldsymbol{A}}, \mathit{\boldsymbol{B}})\;{\rm{ = }}{M_{11}}/\left( {{M_{01}} + {M_{10}} + {M_{11}}} \right)\; $ (1)

根据式(1) 计算出用户在基础属性BIU和隐私属性SI的相似度,属性的类别区分主要解决不同属性对相似度结果的偏好影响。式(2) 给出融合两种相似度的计算公式:

$ \begin{array}{l} sim({u_i}, {u_j}) = (1 - \alpha ) \cdot b\_sim({u_i}, {u_j}) + \\ \alpha \cdot s\_sim({u_i}, {u_{_j}}) \end{array} $ (2)

其中:b_sim(ui, uj)代表用户uiuj在基础属性上的相似度,s_sim(ui, uj)是用户uiui在隐私属性相似度;α是调节两种相似度的偏好影响,控制不同类别属性在用户相似度所占的比重初始化为0.5,仿真实验表明当α=0.63时,取得最优表现。

用户办事关系网络反映用户办事行为间关联的紧密程度。现实的用户好友关系能够直接表明两者的关系,然而电子政务类的服务型应用难以直接获取用户的好友关系,用户的办事行为记录则提供了隐式的用户关系网络。定义G为无向图表示用户的隐式办事关系网,G中的节点表示拥有不同办事记录的用户,用户之间的链接表示存在办事记录交集,链接上的权值反映用户之间关系强弱,计算方式主要是基于用户的属性相似度和办事行为交集程度。对G的存储采用压缩优化的邻接矩阵V存储。

$ \mathit{\boldsymbol{V}} = \left[\begin{array}{l} {v_{11}}, {v_{12}}, ..., {v_{1m}}\\ {v_{21}}, {v_{22}}, ..., {v_{2m}}\\ \;\;\; \vdots \;\;\;\; \vdots \;\;\;\;\;\;\;\; \vdots \\ {v_{n1}}, {v_{n2}}, ..., {v_{nm}} \end{array} \right] $ (3)

其中:vi, j表示用户uiuj链接之间的关系权值,反映用户之间的相似程度,权值越大表明用户相似关系越紧密。下文使用的电子政务用户办事数据集中,用户办事关系的权值设定不仅仅与办事行为有关,还与用户的基本属性有关,即用户之间的相似程度,对用户的相似度已进行归一化处理,相关规则如下:

1) 用户之间无任何办事行为交集,且用户基础属性相似度低,则判定为无链接行为;

2) 用户间存在办事行为交集,且用户基础属性相似度低,则链接权值为办事记录的相似系数;

3) 用户间存在办事行为交集,且用户基础属性相似度高,则链接权值为两种相似度之和。

为了更好地描述划分社区结构的合理性,式(4) 描述了Newman [15]基于Jaccrad距离模块度:

$ Q = \frac{1}{{2m}}\sum\limits_{ij} {[{{\mathit{A}}_{ij}}-\frac{{{k_i}{k_j}}}{{2m}}]} \cdot \delta ({C_i}, {C_j}) $ (4)

其中:Aij为连接节点ij边的权值,该矩阵元素主要表示不同用户链接之间的权值,综合用户办事记录的相似性与用户自身属性的相似性进行计算,具体的构造基于上述三条基本规则;m为网络中边的数量;ki为节点i的度;kj为节点j的度; Cii所属的社区。δ(Ci, Cj)表示节点i与节点j是否为同一个社区,是为1,否为0。

考虑到本文的核心是办事项推荐,基于办事项的特征分析,快速挖掘出基本的用户社区即可满足后续推荐需求,基于文献[16]提出的一种线性时间内的大规模网络下的社区划分算法,主要采用层次贪心策略进行社区发现,筛选出K个与目标用户相似度最大的用户集合。算法主要包括两个阶段,第一阶段合并社区,初始状态将每个节点视为独立社区,基于最近邻居相似度最大标准决定哪些社区应该被合并;第二阶段,将第一阶段发现的社区重新视为独立节点社区,重复构建。这两个阶段重复进行,直到网络社区划分的模块度趋于稳定。

区别于传统音乐、电影类的评分推荐,用户与办事项之间不存在评分,仅具有办理或未办理的状态值。如表 1表示了用户-办事项的行为记录,1表示用户办理或浏览办事项,状态0表示对办事项无行为记录。

表 1 用户办事行为关系矩阵 Table 1 Behavior matrix of user history record

ri, j={0, 1}表示第i个用户对第j个项目的办事记录行为,由于ri, j取值的特殊性,计算公式采用Jaccard相似度。通常,大多数用户都会办理基础的热门办事项,造成用户的相似度差异较小。考虑在计算行为相似度时,对热门事项进行惩罚,计算公式如下:

$ Sim(u,v)\;{\rm{ = }}\;\frac{{\sum\limits_{i \in N(u) \cap N(v)} {\frac{1}{{\log (1 + |N(i)|)}}} }}{{\sqrt {|N(u)||N(v)|} }} $ (5)

因此,式(6) 度量了用户u关注办事项i的可能性:

$ p(u, i) = \sum\limits_{v \in S(u, K) \cap N(i)} {sim(u, v)} $ (6)

其中:S(u, K)是用户u最相似最高的K个用户,式(5) 中N(u)和N(v)分别表示用户uv的办事记录集合,N(i)是用户uv的共同办事项i存在办事记录的所有用户集合,通过1/log(1+N(i))惩罚了用户uv共同热门办事项记录对相似度计算的影响。通过给定K值,即可获取用户可能性最高的待办事项集合,表示为RSU

算法1  基于用户社区的办事项推荐算法。

1)   ut           //target user

2)   UC      //Pre-process user communities

3)   begin

4)     CtUC{Ci|iN}      //Select the community

5)     for each ut in Ct then

6)       UStUC{Ci|iN}      //Select the items

7)     end for

8)     k, α        //Initialization of parameters

9)     for each ut in USt then    //Calculate the similarity

10)     sim(ut, uj) ← Formula(4);

11)     SelectResuj;

12)   end for

13)    for each ut in USt then      //Select the Pre-result

14)     RSuut

15)   end for

16)   for each item i in RSU then    //Recommendation indexes

17)     PSp(u, i)

18)     end for

19)     Res ← Rank(PS, k)      //Results

20)  end

二元组Item_M=〈BII, AI〉表示办事项特征模型,包括办事项属性和办事记录属性。BII={mid, fm, t, c}描述办事项的编号、所属机构、时间以及类别信息;AI=〈uid, mid〉表示用户产生的办事项行为记录。用户的办事行为记录中包含办理或浏览的时间点可用于标记并挖掘出办事项之间的流程信息。办事项序列模式挖掘能够有效识别出电子政务系统中的动态系统特征,预测用户在未来一段时间内可能的办事项序列信息。

D是包含一个或多个办事项序列,即与单个用户相关联的办事项有序集合。规定IA $ \Rightarrow $ IB在有序办事项集合中成立,改序列具有的支持度为s,其中sD中包含办事项IAIB(即包含办事项IAIB的并)的百分比。它是概率P(IAIB),表示D中序列包含办事项IAIB的并(即序列中包含办事项IAIB)概率。若S的支持度大于或等于阈值minsup,则S即为一个序列模式。序列模式的挖掘可以枚举所有可能的序列,再进行支持度计算,如对于n个办事项,依次对1个办事项,2个办事项,3个办事项直到n个办事项进行枚举。由于先验原理对序列数据成立,因此包含特定k个办事项的任何序列必然包括该k个办事项的所有k-1个办事项的子序列。基于Apriori算法给出挖掘用户办事项记录中的序列模式伪代码描述。

算法2  序列模式挖掘的类Apriori算法。

1)   k=1

2)   Fk={i|iIσ(i)/Nminsup}

            //find out all of 1-sequence

3)   do

4)     k=k+1

5)     Ck=Apriori-generate(Fk-1)    //generate k-sequence

6)     for each sequence k=k+1 then

7)       Ct=Sub(Ck, t)    //identify the subsequence in t

8)       for each k-sequence in cCt then

9)           σ(c)=σ(c)+1    //calculate the support value

10)         end for

11)       end for

12)       Fk={c|cCkσ(c)/Nminsup}

            //extract k-sequence

13)     while Fk≠∅

14)     ResultSet=∪Fk

算法2迭代产生k-序列,通过剪枝(k-1)-序列的非序列模式完成对候选序列的筛选,对留下的候选序列进行支持度计算,最终根据支持度提取序列模式。具体而言,为了避免重复产生候选序列,传统Apriori算法仅当前k-1项相同时才合并一对序列k-项集,类似的思想同样适用于产生候选k-序列(即一对频繁(k-1)-序列合并产生候选k-序列)。对于序列的合并主要步骤如下:假定序列s1与s2进行合并,且从s1去除第一项办事项编号获得的子序列与从s2中去除最后一项办事项编号得到的子序列相同。候选结果集是对s1和s2中最后一项办事项编号进行连接。s2中最后一项办事项编号可以合并至s1中的最后一项办事项中,或者作为一项不同的办事项。此外,若候选k-序列的(k-1)-序列至少有一个非频繁项,那么需要进行剪枝操作。在计算支持度时,可以枚举属于某个特定序列的所有候选k-序列,同时增加选择的支持度值。在此之后,算法将识别出k-序列,并且丢弃其支持度小于最小支持度阈值minsup的候选序列集合。

在完成用户社区挖掘及相似用户预选推荐办事项集合RSU和序列模式的关联挖掘预选推荐办事项集合RSA之后,需要根据两部分结果的重叠程度进行优化筛选,形成最终的办事项推荐结果集合。如图 2所示给出两种集合的3种覆盖情况示例。

图 2 RSURSA集合覆盖示意图 Figure 2 Overlay between RSU and RSA

若假定推送给目标用户的办事项数目为K,对于RSURSA两种结果集的覆盖结果筛选,可细分为图 2所示的三种情况:1) 覆盖结果集能够满足N(RSARSU)≥KTop(RSA)被选择作为最终推荐结果集合;2) 当N(RSARSU)<K,覆盖部分优先作为推荐结果;对于较多未覆盖部分的办事项,在RSURSA中分别选取(KN(RSARSU))/2个结果集作为最终结果集; 3) 完全无覆盖的推荐结果计算采用2) 的未覆盖部分的筛选结果。

2 实验分析

为了评估本文提出的CAS-UC推荐算法在电子政务推荐中的有效性、高效性和应用价值,以芜湖市电子政务综合服务平台易户网(ewoho)为载体,从多个推荐评估指标与传统的推荐算法基于用户的协同过滤(User-based Collaborative Filtering, User-B)、基于项目的协同过滤(Item-based Collaborative Filtering, Item-B)、基于语义的推荐算法和矩阵分解(Matrix Factorization, MF)推荐算法进行对比。电子政务推荐数据集记录的主要是用户办事的状态,单个用户的办事记录较少,且用户的办事行为具有一定的周期性,与传统的评分推荐数据集存在较大差异。实验采用的数据集是截止2017年3月7日芜湖市实有人口389万人共计170多万条办事记录进行验证。对于实验数据集中涉及的用户隐私信息,均已加密处理,数据预处理后的主要形式是加密后的用户ID对于其响应的办事记录编号。

此外,实际应用中,数据的处理效率是影响高效推荐的重要因素。实验环境采用基于Spark的集群计算平台,数据存储形式为HDFS文件形式,CDH部署的集群环境主要为:16台计算节点配置均为32GB内存,磁盘大小为50GB,1台CDH管理机节点配置同上,此外1台服务器主要使用Yarn和Zookeeper进行资源管理调度使用,物理内存大小为32GB,其他配置相同,所有主机的CPU配置均为32核32GB,图 3给出具体的集群组件配置图。

图 3 基于CDH部署的Spark集群组件配置图 Figure 3 Spark cluster component configuration diagram based on CDH deployment
2.1 评估指标

精准率和召回率通常被用于评估Top-N推荐的有效性。通过计算推荐项目与总项目集的比例得到覆盖率,用于评估推荐结果。推荐结果的多样性满足了用户的广泛兴趣,意味着推荐列表可以覆盖用户涉及的不同领域,通常计算推荐结果列表的内相似性。相关指标计算公式如下。

1) 精准率[17]

$ Precision = \frac{{\sum\limits_{u \in U} {\left| {R(u) \cap T(u)} \right|} }}{{\sum\limits_{u \in U} {|R(u)|} }} $ (7)

2) 召回率[17]

$ Recall = \frac{{\sum\limits_{u \in U} {\left| {R(u) \cap T(u)} \right|} }}{{\sum\limits_{u \in U} {|T(u)|} }} $ (8)

其中:R(u)和T(u)分别表示用户在训练集和测试集上得到的推荐列表。此外,F1-Measure通过计算精准率和召回率的比值描述Top-N推荐中的整体性能。

3) 覆盖率[18]

$ Coverage = \left| {\mathop \cup \limits_{u \in U} R(u)} \right|/\left| I \right| $ (9)

假定用户集为U,且I表示项集,R(u)表示为长度为N的推荐列表结果集。

4) 多样性(Intra-list相似度) [19]

$ ILS(R(u)) = \frac{1}{2}\sum\limits_{{b_f} \in R(u)} {\sum\limits_{b \in R(u), {b_f} \ne {b_e}} {g({b_f}, {b_e})} } $ (10)

其中:bfbe为推荐列表Pi中的推荐项目;g(bf, be)定义为bfbe的相似度。ILS(Pi)越小,则表示推荐列表Pi中的项目种类相似度越小,推荐的多样性越好。

2.2 实验分析

仿真实验从精准率(P)、召回率(R)、覆盖率(C)以及多样性(D)四个指标分析CAS-UC与其他推荐算法在电子政务数据集上的性能表现。表 2K表示推荐算法选择K个和目标用户最相似的用户,然后推荐这K个用户关联的办事项。实验中K的初始值定义为5,该值不断倍增至80,共计5组。

表 2 不同推荐算法的实验结果 Table 2 Experimental results of compared algorithms

表 2显示不同推荐算法在给定实验数据集上的推荐结果。在Top-N推荐中,K值的选取影响最终的推荐。对于特定的数据集,不同算法的最优K值存在差异,如CAS-UC和MF的最优K值为20,Item-B和IOBSS算法为10,而User-B则为40,不同算法在推荐过程中的侧重点不同导致最优K值具有一定区别,K值的调整对推荐结果的各项评估指标都会产生一定的影响。对于CAS-UC,推荐结果的精准率和召回率与K值并不呈现出线性关系。随着推荐办事项集的增加,精准率也随之增加,当K=20时,精准率达到最高点0.3020,之后推荐项集的基数增大降低了推荐的精准度,召回率在该K值处达到最大值0.1112,两者呈现出相似的变化趋势。对于多样性,由于K值决定了推荐算法推荐时选取的用户数,因此,用户关联的办事项数量伴随着K的增加而增加,当选取的用户越多,推荐的办事项的多样性则越大,相应的推荐列表内相似性intra-list值则越小,当K=80时,该值为0.1905。对于推荐的覆盖率,K值与CAS-UC推荐的覆盖率呈现出负相关,在初始K=5时达到最大0.1839。这主要是CAS-UC逐渐倾向于推荐相对热门的办事项,同时办事项基数仍在增加,造成了覆盖率降低。

从不同推荐算法对比分析可知:对于推荐精准率和召回率,IOBSS和CAS-UC比User-B、Item-B和MF具有更好的精度,IOBSS结合特定域中项目之间的语义知识来增强推荐质量,CAS-UC有效结合了社区和办事项之间存在的关联关系来提高推荐的精准度;对于推荐的多样性,User-B、Item-B和MF的intra-list值比其他两种算法高,说明推荐结果的多样性表现差,这些算法在建模过程忽略了对多样性的考虑;IOBSS中推荐项目之间的语义知识主要是针对于推荐的精度,也缺乏对多样性的考虑;CAS-UC在建模中,优先考虑了用户的社区构建,由于同一个用户可能归属于多个社区,推荐的结果可能来自于多个社区,从而提升了推荐结果的多样性,结合办事项的关联挖掘推荐,保障了推荐结果的精准度。综合来看,CAS-UC对于具有流程特性的推荐项目表现出更优的性能。

社区构建对CAS-UC推荐结果的多样性和计算量具有重要的影响,由于表 2中相关数据结果已能够验证推荐结果的多样性,图 4主要从推荐精度,给出在不同K值下,构建社区时,训练集所使用的原始数据百分比对F1-Measure的影响。不同K值下的F1-Measure存在较大的差异,这主要是K值决定了推荐时选取的用户数和关联的办事项数。从图 4中折线趋势来看,随着训练集的百分比增大,社区趋于稳定状态,F1-Measure也增大至某一峰值。当构建社区的训练集百分比在70%左右,F1-Measure获得最优值,之后增加训练集的百分比对推荐的结果产生的影响较小,即在CAS-UC的推荐过程需要在构建的社区处于稳态时进行。

图 4 数据规模对推荐结果的影响分析 Figure 4 Analysis of impact of data size on recommended results

本文在用户社区发现阶段主要采用文献[16]提出的一种适用于大规模网络中的快速层次社区发现算法,该算法能在线性时间内完成社区发现,其中,γ因子的含义是体现用户之间相似度阈值,对于不同实验环境或数据集,应当探讨社区划分的最佳γ取值范围。理论分析,随着γ的增大,社区内部节点的相似度也随之增大,社区稳定性越高,推荐结果更精准,即F1-measure值更高,实际结果如图 5所示,给出K=10、20、40时的结果分析,随着γ增加至0.6以后,在γ=0.65左右,推荐结果的F1-measure值呈现最佳,之后显现降低趋势。分析可知社区划分的信息量对社区的稳定性具有较大影响,当阈值过高时,社区内部成员节点数量急剧下降,划分结果则呈现出越来越多的独立小社区,若γ=1(即两者相同),则转化为每个节点用户、项目单独为一个社区的情形,此时社区内的办事项以及办事记录数量无法支持后续的推荐计算,推荐结果则采用Top-k的计算结果,因此,推荐结果的F1-measure值具有明显的下降趋势。针对不同的数据集,需要预选训练生成最优阈值取值范围,本文仿真实验中γ取值为0.63。

图 5 社区划分阈值γ参数分析 Figure 5 Parameter analysis of threshold γ in community detection

图 6分析了CAS-UC的算法效率,探究CAS-UC在处理不同规模数据的执行效率。图中横坐标百分比是选取实有人口共计390万人的百分比进行推荐,纵坐标的时间是在相应数据规模下平均单个用户推荐耗费的时间,单位为秒。结果显示,随着数据规模的百分比增长,CAS-UC产生单条推荐的计算代价逐渐减小,体现出Spark计算平台在处理大规模数据的优势。因而,基于Spark平台的CAS-UC的推荐算法更适用于大数据环境下的电子政务办事推荐。

图 6 CAS-UC执行效率 Figure 6 Implementation efficiency of CAS-UC
2.3 优化讨论

考虑到基于模块度优化的社区发现以及序列模式挖掘算法在大规模数据应用中复杂度较高,实际应用场景中需要根据数据集的特点进行优化。电子政务推荐中办事项与用户当前所处阶段联系紧密,且办事项的序列特性与办事时间的先后顺序具有强关联关系。此外,由于居民日常办事的频率与购物、看电影以及听音乐的频率差距明显,因此,电子政务推荐中的数据稀疏性更为明显。

结合上述特征分析,在社区发现过程中,社区模块度优化主要基于用户办事记录产生的链接关系,初始社区发现过程仅针对具有办事记录的用户,该过程面向的用户群体仅占总体的一部分;同时,本文中采用的快速层次发现算法,主要适用于大规模网络的社区快速发现,实际应用中初始社区的发现效率较高;对于没有办事记录的用户,根据用户的基本属性计算与已有社区内任意一个非边缘节点用户的相似性来计算其社区归属状态;此外,由于用户的基本属性通常不会频繁修改,且用户的办事频率相较于购物等其他领域推荐要低,因此全量社区发现在一段时间仅需计算一次即可,并不需要达到实时计算要求。CAS-UC结合了办事项的序列特性,利用序列模式挖掘算法分析办事项之间的强关联关系。实际场景应用中,办事项总量共计2万多项,通过对办事项的分布热度进行分析,存在办事记录的办事项大多数集中于300多项办事项以内,结合线下相关业务人员整理的热门办事项列表,得出可能存在序列模式的办事项主要集中于热门办事项内,综上,序列模式的挖掘无需对全量的办事项或办事记录进行运算,仅针对分布热度较高的办事记录进行序列模式挖掘即可达到预期效果。

3 结语

“互联网+政务”是建立智慧城市的核心业务之一,考虑到电子政务办事项具有的序列化特征,难以直接将传统个性化推荐算法直接扩展应用,本文综合考虑社区与关联序列挖掘提出一种个性化的“互联网+政务”推荐算法(CAS-UC)。CAS-UC基于用户社区和办事项内存在的序列特征进行建模推荐。用户社区发现不仅有助于提高推荐结果的多样性,而且减少核心推荐过程的计算量;办事项关联序列挖掘深入电子政务的业务特点,保障推荐结果的精度。仿真实验从推荐的精准率、召回率、覆盖率和多样性等指标评估所提出的CAS-UC算法性能。CAS-UC在多样性和推荐精度上比传统推荐算法(如协同过滤推荐、矩阵分解以及基于语义相似度的推荐算法)推荐的精确度更高,适用于具有明显序列或流程特性项目推荐;因此,CAS-UC推荐算法大数据环境下的电子政务办事项推荐具有一定优势。基于Spark集群计算平台有效地提高CAS-UC的数据处理效率。

参考文献(References)
[1] 郑跃平, 黄博涵. "互联网+政务"报告(2016)——移动政务的现状与未来[J]. 电子政务, 2016(9): 16-31. (ZHENG Y P, HUANG B H. "Internet+government" report (2016)-the current situation and future of mobile government[J]. E-Government, 2016(9): 16-31.)
[2] 姜岚. 探索"互联网+政务"服务新模式[J]. 黑龙江科技信息, 2016(13): 183. (JIANG L. Exploring the new mode of "Internet+Government Service"[J]. Heilongjiang Science and Technology Information, 2016(13): 183. DOI:10.3969/j.issn.1673-1328.2016.13.172)
[3] ZHAO W X, LI S, HE Y, et al. Connecting social media to e-commerce:cold-start product recommendation using microblogging information[J]. IEEE Transactions on Knowledge and Data Engineering, 2016, 28(5): 1147-1159. DOI:10.1109/TKDE.2015.2508816
[4] SCHOLZ M, DORNER V, SCHRYEN G, et al. A configuration-based recommender system for supporting e-commerce decisions[J]. European Journal of Operational Research, 2017, 259(1): 205-215. DOI:10.1016/j.ejor.2016.09.057
[5] GUO C. Feature generation and selection on the heterogeneous graph for music recommendation[C]//Proceedings of the 9th ACM International Conference on Web Search and Data Mining. New York:ACM, 2016:715.
[6] ABDOLLAHI B, NASRAOUI O. Explainable matrix factorization for collaborative filtering[C]//Proceedings of the 25th International Conference Companion on World Wide Web. Republic and Canton of Geneva, Switzerland:International World Wide Web Conferences Steering Committee, 2016:5-6.
[7] 牟向伟. 模糊语义个性化推荐系统在电子政务中的应用研究[D]. 大连: 大连海事大学, 2010: 13-20. (MOU X W. Fuzzy semantic personalized recommendation system and application to e-government[D]. Dalian:Dalian Maritime University, 2010:13-20.)
[8] GUO X, LU J. Intelligent e-government services with personalized recommendation techniques[J]. International Journal of Intelligent Systems, 2007, 22(5): 401-417. DOI:10.1002/(ISSN)1098-111X
[9] XU Y, SHAMBOUR Q, LIN Q, et al. BizSeeker:a hybrid semantic recommendation system for personalized government-to-business e-services[J]. Internet Research, 2010, 20(3): 342-365. DOI:10.1108/10662241011050740
[10] 杨大寨. 基于本体理论的政务信息资源个性化应用研究[D]. 合肥: 合肥工业大学, 2014: 15-40. (YANG D Z. Research on personalized applications of government information resource based on ontological theory[D]. Hefei:Hefei University of Technology, 2014:15-40.)
[11] AL-HASSAN M, LU H, LU J. A semantic enhanced hybrid recommendation approach:a case study of e-government tourism service recommendation system[J]. Decision Support Systems, 2015, 72: 97-109. DOI:10.1016/j.dss.2015.02.001
[12] ZHU Y, ZHANG S, WANG Y, et al. A social network-based expertise-enhanced collaborative filtering method for e-government service recommendation[J]. Advances in Information Sciences & Service Sciences, 2013, 5(10): 724-735.
[13] AYACHI R, BOUKHRIS I, MELLOULI S, et al. Proactive and reactive e-government services recommendation[J]. Universal Access in the Information Society, 2016, 15(4): 681-697. DOI:10.1007/s10209-015-0442-z
[14] SHAMBOUR Q, LU J. A hybrid trust-enhanced collaborative filtering recommendation approach for personalized government-to-business e-services[J]. International Journal of Intelligent Systems, 2011, 26(9): 814-843. DOI:10.1002/int.v26.9
[15] NEWMAN M E J. Detecting community structure in networks[J]. The European Physical Journal B, 2004, 38(2): 321-330. DOI:10.1140/epjb/e2004-00124-y
[16] BLONDEL V D, GUILLAUME J L, LAMBIOTTE R, et al. Fast unfolding of community hierarchies in large networks[J]. Journal of Statistical Mechanics, 2008, 3(1): 1-7.
[17] SARWAR B, KARYPIS G, KONSTAN J, et al. Analysis of recommendation algorithm for e-commerce[C]//Proceedings of the 2nd ACM Conference on Electronic commerce. New York:ACM, 2000:158-167.
[18] HAMMAR M, KARLSSON R, NILSSON B J. Using maximum coverage to optimize recommendation systems in e-commerce[EB/OL].[2016-11-26]. http://muep.mah.se/bitstream/handle/2043/16856/paper-theoneused.pdf?sequence=2&isAllowed=y.
[19] ZIEGLER C N, MCNEE S M, KONSTAN J A, et al. Improving recommendation lists through topic diversification[C]//Proceedings of the 14th International Conference on World Wide Web. New York:ACM, 2005:22-32.