基于知识模式挖掘的流程知识推荐系统1
(1.复旦大学 上海市数据科学重点实验室,上海 201203; 2. 复旦大学 软件学院,上海
201203)
摘要:传统的流程管理与知识管理相互独立,难以为流程参与者提供充分的知识支持,
为此提出一种基于知识模式挖掘的流程知识推荐系统。将流程日志和知识学习日志集成,
创建流程案例库。根据角色信息和问题描述文本对流程案例建模,使用基于案例的推理挖
掘参与者面对新问题时的知识主题需求。使用马尔科夫模型和序列模式算法挖掘面向主题
的知识学习模式,为参与者提供符合学习习惯的知识序列。在某软件开发流程数据集上的
实验验证了在流程知识推荐中的可行性,实验结果表明该方法具有较好的准确率和召回率。
关键词:序列模式;马尔科夫模型;基于案例的推理;业务流程管理;推荐系统
中图分类号:TP311 文献标识码:A
Process-oriented knowledge recommendation by mining knowledge
patterns
LIU Haitao1, 2+,ZHAO Weidong1,2
(1.Shanghai Key Laboratory of Data Science, Fudan University, Shanghai 201203, China;
2. School of Software, Fudan University, Shanghai 201203, China)
Abstract:The disparity of business process management and knowledge management makes it a
challenge to provide effective knowledge support for process participants. To solve this problem,
the study proposes a process-oriented knowledge recommendation systemby mining knowledge
patterns from historical process executions. First, process context is modeledwith role information
of participants and description text of process problems. Then, a case repository is builtby
integrating process execution logs and knowledge reference logs. Based on the case repository, a
case based reasoning approach is utilized to reason the knowledge intention for new process
contexts. Further, thetopic-wise Markov model and sequential miningare usedto analyze
participants’ learning patterns on each knowledge topic. In this way, more helpful knowledge
sequences arerecommendedin accordance with learners’ cognitive patterns. Finally, the
effectiveness of this study is evaluated with a real-life software development process, and results
indicate that the system can achieve better precision and recall.
Keywords : sequential pattern; Markov model; case based reasoning; business process
management; recommender system
0 引言
知识是企业获取竞争优势的重要资源。在知识日益丰富的今天,如何使用知识管理系统将企业
的知识资本转化为企业效益成为一个重要问题。目前,许多企业使用工作流管理系统实现了自动化
办公,但多数流程管理系统都没有提供有效的知识支持[1,2]。流程管理与知识管理的分离使企业的知
收稿日期:2016-01-07;修订日期:2016-03-10。Received 07 Jan.2016;accepted 10 Mar.2016.
基金项目:上海市浦江人才计划资助项目(14PJC017);国家自然科学基金资助项目(71071038)。Foundation items:
Project supported bythe Pujiang Program, Shanghai, China (No. 14PJC017) ,and the National Natural Science Foundation,
China (No. 71071038).
网络出版时间:2016-05-06 14:06:01
网络出版地址:https://www.cnki.net/kcms/detail/11.3619.TP.20160506.1406.004.html
识财富得不到充分的利用,无法为员工提供充分的知识帮助。
如何实现知识管理与流程管理的有机结合已经成为学术界的研究热点[3,4]。文献[5]使用协同过滤
发现知识需求相似的用户,为流程参与者主动提供知识支持。在业务流程中,处理相似任务的员工
通常具有相似的知识需求。文献[6]使用工作流模型分析员工之间的协作紧密程度,利用协同过滤为
参与者推荐感兴趣的流程知识。类似地,Liu 等借鉴数据库中视图的思想,为不同角色的知识工作者
创建知识流视图,提供面向角色的知识需求建模和知识支持[7]。流程中通常伴随着隐性的知识流动,
从知识流的角度分析知识的创建、传播过程,是流程知识推荐的另一种思路[8]。例如,文献[9]尝试
挖掘员工之间的邮件互动发现隐性的知识协作流程,促进隐性知识的分享。通过挖掘员工的知识需
求并主动地推荐知识,这些方法促进了企业知识的分享。然而,现有的流程知识推荐方法大多从信
息需求的角度提供知识支持,很少考虑用户的学习过程,所推荐的知识列表并不能很好地满足用户
的认知需求。
在线学习(E-learning)领域的研究显示,知识学习过程会遵循一定的知识模式[10]。例如,在学
习新知识时,会遵循由浅入深、从宽泛到具体的学习规律。在面对海量潜在有益的知识时,如果能
推荐符合学习模式的知识序列,可以帮助员工更好地学习流程知识,促进知识财富的转化。文献[11]
研究了在线学习中的知识推荐,利用图方法为学习者推荐符合自身知识结构和学习目标的知识路径。
然而,业务流程的复杂性使得这些推荐方法很难发挥作用。在 E-learning 中,学习者的学习目标和
知识水平比较容易建模,课程之间具有清晰的层次递进关系;而在业务流程中,员工的知识需求复
杂多变,知识项之间关系松散。需要开发新的方法挖掘流程参与者的知识需求和知识学习模式。
本文提出一种基于知识模式挖掘的流程知识推荐系统。在知识密集型流程中(如软件开发流程),
员工需要借助知识库解决流程问题,通过检索相关主题的知识文档,获取知识帮助。这些知识访问
行为以日志的形式记录在知识管理系统中,从中可以挖掘有益的知识模式,为解决新的流程问题提
供帮助[12]。本文将知识管理系统和流程管理系统的日志数据进行集成,挖掘了流程实例—知识主题
和知识主题—知识学习模式两种知识模式。使用基于案例的推理[13]挖掘流程实例—知识主题模式,
通过识别相似的流程问题,发掘员工面对新问题时所需要的知识主题;利用马尔科夫模型和序列模
式算法挖掘参与者学习各个主题时的知识学习模式,并推荐符合用户认知习惯的知识序列。实验结
果表明本文的方法具有较高的推荐准确率和召回率,证明了该方法在流程知识推荐中的可行性。
1 系统设计
图 1 为流程知识推荐系统的架构图,包括离线学习和在线推荐两个模块。离线学习的主要任务
是创建流程案例库和挖掘知识学习模式:①从工作流管理系统(Workflow Management System, WfMS)
和知识管理系统(Knowledge Management System, KMS)读取日志数据,经过抽取、转换、加载(ETL)
操作,创建描述流程问题实例—知识主题行为的案例库;②使用序列模式挖掘、Markov 模型等算法
挖掘员工在学习各个知识主题时的学习模式。为了解决新的流程问题,在线推荐模块采用两阶段推
荐策略:①对问题的描述文本进行分析,结合流程实例数据,抽取新实例的流程上下文特征,使用
基于案例的推理在案例库中发现相似的历史案例,推理参与者需要的知识主题;②根据挖掘得到的
知识学习模式,为员工推荐符合认知习惯的最佳知识序列,使参与者能够较好地学习所需主题的流
程知识。
以某 IT 公司的软件开发流程为例,论述基于知识模式挖掘的流程知识推荐方法。软件开发流程
包括需求分析、系统设计、模块开发、测试、文档与报告等阶段,各项任务都需要参与者具备专业
的业务知识。WfMS 以流程日志的形式记录了流程的运行过程,如表 1 所示。每条数据记录了一个流
程问题(或任务)的处理,称作流程实例。实例数据包括 Issue(问题)编号、参与者 ID、参与者的
角色、流程任务、实例描述等信息,其中“实例描述”以文本形式介绍了参与者要解决的流程问题,
是流程实例建模的重要信息。知识管理系统(Knowledge Management Systems,KMS)记录了员工
使用知识库解决实例问题的学习过程,每条行为数据包括 Issue 编号、参与者 ID、知识序列和学习
时间等,如表 2 所示。例如,软件开发工程师 D2 为了解决开发任务遇到的“文件加密”问题,依
次学习了 k1,k3,k5 等知识项。通常情况下,KMS 和 WfMS 相对独立,KMS 并没有记录 Issue 编号等
流程信息。为了充分发挥 KMS 的效用、更好地为参与者提供知识服务,本文将 WfMS 和 KMS 进行了系
统层面的集成,使 KMS 能够记录参与者访问知识库时所处理的流程问题(Issue 编号)。
图 1 流程知识推荐系统架构图
新实例 基于案例的推理 知识推荐
案例库
ETL
知识库
知 识 管 理 系
统
模式挖掘
离线学习
ETL
在线推荐
ETL
流 程 管 理 系
统
表 1 流程日志示例
Issue 参与者 角色 任务 实例描述
S116 A1 分析师 需求分析 “访问控制…”
S117 D2 开发工程师 模块开发 “文件加密…”
S117 T1 测试工程师 软件测试 “文件加密…”
表 2 知识学习日志示例
Issue 参与者 知识序列 时间
S116 A1 k7,k6,… 2012-09-06 15:35:00
S117 D2 k1,k3,k5,… 2012-09-08 17:35:00
S117 T1 k3,k2,k8,… 2012-10-22 08:29:06
WfMS 和 KMS 的日志数据是挖掘知识模式的基础,但在深入分析之前需要以下数据预处理操作:
(1)数据清洗。对数据集中的空值、异常值进行清洗。
(2)数据集成。使用 Issue 编号和参与者 ID 作为联合主键,将流程日志和知识学习日志进行数
据集成。
(3)知识主题标注。软件公司的 KMS 以元数据的形式记录了每条知识项所属的知识主题,使用
知识主题元数据对知识序列进行主题标注。对于未进行主题划分的知识库,可以使用聚类、LDA 等
文本挖掘算法自动抽取知识主题[14]。
(4)创建流程案例库。流程案例库记录了历史的流程问题和对应的解决方案,可以为新的流程
问题提供指导。使用参与者角色、问题描述作为流程问题的上下文信息,将参与者学习的知识主题
作为相应的解决方案,创建描述流程问题—知识主题关系的流程案例库。
2 基于案例的知识推理
基于案例的推理(Case-Based Reasoning,CBR)使用过往案例的经验,为新案例寻求解决方案。
在业务流程中,历史流程问题的知识解决方案可以为新问题提供思路。虽然 CBR 在流程决策支持中
得到了应用,但很少有学者研究基于 CBR 的流程知识推荐[13]。流程知识推理存在以下几个难点:①
流程问题的知识上下文相对复杂,受到参与者知识背景和任务要求等因素影响,存在一定的建模难
度。②知识库中知识项数量庞大,直接针对知识项进行推理存在数据稀疏的问题,推理的准确度不
高。针对这些问题,本章结合流程数据和知识数据进行案例建模,使用 CBR 推理参与者面对新问题
时的知识主题需求。
2.1 流程案例建模
案例建模是对流程问题的上下文进行描述。在本文中,CBR 的目标是发掘员工的知识意图,即
确定员工在面对流程问题时所需要的知识主题。员工的知识背景、流程任务的要求和问题本身都是
决定员工知识需求的重要因素。在流程中,相同角色的员工由于执行相似的流程任务,拥有相似的
背景知识和知识需求[7]。角色信息和问题描述一起能够较好地决定员工的知识意图。
定义流程案例 c 为关系(r, p) → 𝐾𝑇⃗⃗⃗⃗⃗ ,其中 r 为参与者的角色,p 为流程问题的文本描述,(r, p)
构成了流程问题的上下文信息;KT 为知识库中的知识主题全集,𝐾𝑇⃗⃗⃗⃗⃗ 表示参与者为了解决问题所学
习的知识主题,即解决方案。为了解决问题,参与者可能同时需要多个主题的知识,𝐾𝑇⃗⃗⃗⃗⃗ 以向量的形
式表示每个知识主题的权重。给定知识主题𝑘𝑡 ∈ 𝐾𝑇,权重 wc,kt 为该主题的知识在案例 c 的解决方案
中的数量比例。
2.2 案例相似度指标
相似度指标用于评估案例之间的相似程度。相似度高的历史案例可以作为新问题推理的依据。
定义案例 c1=(r1, p1)与 c2=(r2, p2)的案例相似度为式(1)。其中:simR(r1, r2)为角色 r1和 r2 的角色相似度,
衡量角色之间知识背景的相似程度;simP(p1, p2)为问题 p1和 p2的问题相似度;0 ≤ α ≤ 1为权重因子。
α值越大,角色相似度的权重越大,推理更侧重参与者的知识背景;反之,α值越小,问题相似度权
重越大,推理更倾向于寻找相似的历史问题。
( , ) ( , ) (1 ) ( , ) 1 2 1 2 p1 p2 Sim c c simR r r simP 。 (1)
承担相似流程任务的角色,其知识背景和知识需求也比较类似。例如,在软件开发流程中,开
发工程师和测试工程师都会参与一定量的开发和测试任务,在一定程度上有着相似的知识需求。流
程日志为评估参与者的行为提供了基础,本文使用流程挖掘技术计算角色之间的相似度[12]。给定流
程日志 L 和流程任务集 TASK,统计角色 r 参与任务 t ∈TASK 的次数,记作 frequency(r, t)。角色
r 可以表示为向量𝑟 =,其中 fti= frequency(r, ti)。使用余弦相似度定义角色 r1
和 r2的相似度,如式(2)所示。
( , ) /(| | *| | ) 1 2 1 2 1 2
simR r r r r r r 。 (2)
在业务流程中,通常以需求文档、设计说明书等文本形式描述流程问题或任务要求。例如,软
件开发人员通过阅读设计文档,了解软件模块的业务需求。为了评估流程问题之间的相似度,使用
文本挖掘计算问题描述文本的语义相似程度。利用开源的自然语言处理工具 StanfordNLP[15]对问题
描述文本进行分词、去停顿词、词干化等预处理操作。随后利用词频—逆文档频率(TF-IDF)模型
对流程问题文本建模,如式(3)所示。最后定义问题相似度为问题描述文本之间的余弦相似度。
( , ) *log( / ) doc TFterm,doc N DFterm weight term 。 (3)
2.3 知识需求推理
在案例推理阶段,根据新问题的上下文特征和案例库的历史经验,确定员工的知识主题需求。
采用 K 近邻的思路进行案例推理——在案例库中发现相似度最高的 l 个历史案例,使用相似度加权
预测员工对各个知识主题的需求权重,如式(4)所示。
c C
c t
duration Weight c t Sim c c w
'
'
,
( , ) * ( ,
')* 。 (4)
式中:C 为 l 个最相似案例的集合,Sim(c, c’)为案例相似度权重;
duration
为案例 c’的时间权重,
0 1
为衰减因子,duration 为案例 c’发生事件和当前的时间间隔(以年为单位),即时间越久,权重越小。
在知识密集型的流程中,知识更新速度相对较快,为员工推荐新的知识方案能更好地满足流程参与
者的知识需求。本文进行了实验分析并设置 l=10, 0.8。值得注意的是,在一些新开始的流程环
境中,可能无法获取足够数量的相似案例作为推理依据。针对这种情况,可以使用 SVM、Logistic
回归等准确率较高的分类算法从案例数据训练知识主题预测器,辅助 CBR 的知识推理过程。
CBR 能够推理出参与者面对新问题时需要的知识主题和主题权重,解决了“学什么”的问题。
但对于每个主题的知识,还需要根据参与者的学习模式,以更友好的方式提供知识支持,即解决“怎
么学”的问题。
3 知识学习模式挖掘
知识的学习过程存在着一定的认知模式,从知识库的访问日志中挖掘学习者的学习模式,能够
更合理地为参与者(尤其是新员工)提供知识推荐。本文使用马尔科夫模型和序列模式算法挖掘知
识工作者的学习模式。
3.1 面向主题的马尔科夫模型
马尔科夫(Markov)模型使用概率模型对序列模式建模,在 Web 日志分析、个性化推荐等领域
得到了广泛应用[16]。然而,现有的方法大多只考虑知识项之间的转移关系,忽略了知识主题对学习
行为的影响。通常来看,学习者在短时间内只会关注单个主题的知识,表现出一定的主题聚集性,
很少出现从一个知识主题突然跳转到另一个主题的情况。传统的 Markov 模型很少考虑这一特征,会
出现跨主题知识推荐的情况,影响了推荐的质量。为了改善知识推荐的用户体验,本文利用知识库
的元信息将知识学习日志按照主题进行切割,并训练面向主题的 Markov 模型,提高知识推荐的准确
性和友好性。
3.1.1 知识学习日志分割
原始的知识学习日志(KL)记录了参与者的学习行为,如表 2 所示。每条数据包含参与者解决
流程问题的知识学习序列,记作,m 为序列长度。利用知识库的元信息,将知识
序列划分为多个知识子序列——每个子序列中的知识项隶属相同的知识主题,并按照学习顺序排列。
令 K 表示知识库中知识项的集合,T 表示知识主题的集合。对于每个知识主题𝑘𝑡 ∈ 𝑇,得到相应的
知识序列子集 KLkt。
3.1.2 状态与知识跳转关系
在 k 阶 Markov 模型中,状态是指知识序列中的一个 k-gram。给定知识序列,
k 阶 Markov 模型的第 j 个状态为
j j jki
k
j S k , k ,...,k 1
,1 ≤ 𝑗 ≤ 𝑚 − 𝑘 + 1。例如,对于知识序列
s’=,一阶 Markov 模型的状态集为{k1, k2, k3},二阶 Markov 模型的状态集为{,}。
跳转关系是指从一个状态跳转到一个知识项的时序关系。将从知识项 kj 跳转到 ki的跳转关系记
作 kj→ki,表示参与者在学习知识项 kj之后转向学习 ki。对于起始的知识项,源状态 kj为空,记作∅。
上述序列 s’中存在跳转关系{∅→k1, k1→k2, k2→k3,→k3}。
3.1.3 面向主题的 Markov 模型
为了保证知识学习的连贯性,训练面向主题的知识学习模型。即对于每个知识主题 kt,在数据
集 KLkt 上单独训练 Markov 模型。在 Markov 模型中,跳转概率矩阵 P 和初始化概率向量𝐼
是需要学
习的两个重要参数。跳转概率
( | )
k
i j P k S
表示给定当前的知识学习状态
k
j S
,下一个要学习的知识项为
ki 的概率。利用跳转概率矩阵,推荐系统可以根据学习者当前的学习状况,预测接下来最有可能学
习的知识项,提供基于上下文的实时知识项推荐。初始化概率表示各个知识项作为起始知识的概率,
为学习者推荐欢迎度较高的起始知识项可以提高知识学习的效率。根据最大似然估计,跳转概率
( | )
k
i j P k S
的计算方法为式(5),即 ki 出现在
k
j S
之后的比例。相应地,ki 作为起始知识项的概率𝐼𝑘𝑖 =
𝑃(𝑘𝑖
|∅)。
( | ) ( , )/ ( )
k
i j
k
j
k
P ki
S j
frequency S k frequency S 。 (5)
在 Markov 模型中,随着阶数 k 的增大,模型加入更多上下文信息,预测的准确度会相应提升;
但与此同时,数据稀疏性问题会降低预测的覆盖率。采用 1 阶模型和 2 阶模型线性插值的方法,在
准确率和召回率之间取得平衡,如式(6)所示。
( | ) * ( | ) (1 )* ( | )
1 2
i j i j i
S j P k S P k S P k 。 (6)
式中:
0 1
为权重系数。设置
0.5
,即两个模型的概率预测平均值。
3.2 知识序列模式挖掘
知识的上下文依赖关系决定了学习者的学习行为存在一定的序列模式。例如,学习知识项 ka 之
后,通常会学习知识项 kb,称为频繁序列。挖掘知识学习中的序列模式,可以在新的知识上
下文中为用户推荐合适的知识序列。
3.2.1 频繁知识序列挖掘
本文挖掘面向知识主题的频繁序列模式——给定知识主题 kt,从知识序列数据集 KLkt中挖掘频
繁的知识序列。设 K={k1, k2, …, kp }为包含 p 个知识项的集合。一个知识序列 S 是知识项集的有序
集合,记为 S=,其中每个元素 xi是知识集 K 的子集。序列 X=被另一
个 序 列 Y= 所 包 含 , 当 且 仅 当 存 在 1 ≤ 𝑖1 < 𝑖2 < ⋯ < 𝑖𝑚 ≤ 𝑝 , 使 得
X Yi X Yi X m Yim , ,...,
1 1 2 2
。称 X 是 Y 的子序列,Y 为 X 的超序列。给定序列数据集,定义序列 X
的支持度为数据集中 X 超序列的数量,记作 support(X)。给定最小支持度阈值 minSupport,如果
support(X)≥minSupport 则称 X 为频繁序列。
GSP 算法是常见的序列挖掘算法,利用 Aprior 性质迭代地生成候选集、剪枝,最终得到频繁序
列集[17]。由于GSP算法需要多次扫描事务数据库且每次产生的候选集过大,算法效率不高。PrefixSpan
算法借鉴 FP-growth 的思想,在内存中利用树形结构存储序列信息,能够更高效地挖掘序列模式。
本文使用 PrefixSpan 算法挖掘各个知识主题的频繁序列模式。
3.2.2 知识项预测
知识项预测模块将挖掘得到的序列模式集作为输入,通过匹配用户当前的知识学习序列,预测
用户接下来可能学习的知识项。
令用户 u 当前的学习会话 su 为 su=< k1, k2, …, kn>,即用户最近学习的 n 条知识项所组成的知识
序列。令 SP=表示挖掘得到的序列模式集,pren(p)表示序列 p 的 n 项前缀。定义会
话 su与模式 p 匹配,当且仅当 p 的长度为 n+1,且 pren(p)是 su的子序列。对于匹配的模式 p,将该
序列的第 n+1 项的知识项集合作为候选的推荐知识。定义推荐的置信度为式(7),即序列 p 和前缀序
列 pren(p)的支持度比值。随后,推荐模块将置信度大于阈值 minConfidence 的知识项推荐给学习者。
Confidence(p,s ) support(p)/support(pre (p)) u
n 。 (7)
对于会话状态 su,时间窗口 n 的大小会影响推荐的效果。当 n 较小时,序列的上下文信息较少,
序列模式很难捕捉到用户真实的知识意图,推荐的准确度较低;反之,当 n 过大时,用户的学习兴
趣会发生演化,由于数据的稀疏性问题,推荐的覆盖率较低。为了解决这一问题,使用 all-kth-order
的方法进行序列模式匹配[18]。首先,推荐引擎使用当前会话状态 su 进行模式匹配。如果匹配失败,
则迭代地从会话序列中移除最久(最开始)的知识项后再进行序列匹配,直到产生推荐结果为止。
4 实验
为了评估本文的方法,使用软件开发流程数据进行实验,分析流程知识推荐系统的推荐效果。
4.1 数据集
实验数据来源于某 IT 公司的软件开发流程,以 2012 年 5 月~2013 年 5 月的流程日志和知识学
习日志作为训练数据,以 2013 年 6 月~2013 年 9 月的数据作为评估数据。训练数据包含 16 239 条
流程实例、8 670 条知识项和 186 个知识主题,知识学习序列的平均长度为 16。
4.2 CBR 性能评估
为了评估 CBR 知识主题推理的效果,使用式(8)计算 top-N 推荐结果的准确度。分析学习日志,
发现85%的流程问题仅需要一个主题的知识就可以得到解决,而98%的问题需要的知识主题数量≤3。
基于此,实验分析了在 N=1 和 N=3 情况下 CBR 的推荐准确度。
| |
| |
推荐的主题集 实际学习的主题集
推荐的主题集 实际学习的主题集 推荐准确度
。 (8)
图 2 给出了在不同权重因子𝛼下,CBR 的主题推理的准确度变化曲线。总的来看,top-1 的推荐
准确度高于 top-3,即单个主题的命中率更高。随着系数α的增大,准确度曲线呈现先升后降的趋势。
当α=0 时,CBR 仅根据流程问题的相似度进行推理,推荐准确度为 88%(N=1),随着模型加入角
色信息,推荐准确度逐渐提升。反之,当α=1 时,CBR 仅考虑了角色的知识背景,推荐效果近似于
随机预测(50%),在模型加入问题信息后,推荐效果大幅提升。由此可知,在知识推理中问题描
述信息对挖掘知识需求贡献更大。在α=0.3 时,CBR 取得最优的推荐结果——top-1 推荐的准确度高
达 97%,top-3 推荐的准确度为 93%,推荐效果较好。基于此,系统将权重系数α设置为 0.3。
图 2 不同权重系数下 CBR 的准确率比较
4.3 学习模式评估
本节比较了两种知识模型的推荐效果,并与相关的知识推荐算法比较,验证本文算法的有效性。
4.3.1 Markov 模型评估
为了评估主题划分对学习模式挖掘的有效性,实验对比了面向主题的 Markov 模型(记做 TAM)
和一般 Markov 模型(记做 GM)的推荐效果。
图 3 为不同 Markov 模型的准确率变化曲线。随着阈值的增大,Markov 模型的准确度逐步提高,
且高阶 Markov 模型的准确度高于低阶模型(如 GM-2nd 优于 GM-1st)。对比两类模型(如 GM-2nd
和 TAM-2nd),发现 TAM 模型的准确率比 GM 提高了约 10%。由于学习者在短时间内的知识意图
相对集中,对知识序列集进行主题划分,能够显著提高知识模式的质量。图 4 给出了不同 Markov
模型的召回率变化曲线。随着概率阈值的增大,Markov 模型的召回率逐步降低,且高阶 Markov 模
型的准确度低于低阶模型。对比 GM 模型和 TAM 模型,发现 TAM 的召回率也优于 GM。因为 TAM
提高了同一主题下知识项被推荐的概率,使得推荐结果能够覆盖更多该主题的知识,提高了推荐的
召回率。结合图 3 和图 4,可以发现线性插值模型(TAM-Inter)模型的准确率优于 1 阶模型,召回
率优于 2 阶模型。线性插值模型在推荐的准确率和召回率之间得到较好的平衡,模型的 F1 较高。
TAM-Inter 在阈值为 0.2 时取得最优的 F1 值(0.48)。
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
准确率
权重系数
N=3
N=1
图 3 不同 Markov 模型的准准确率变化曲线
图 4 不同 Markov 模型的召回率变化曲线
4.3.2 两种知识模型对比
为了评估频繁序列模式的推荐效果,设置用户的知识会话长度 n=6,并将最后一个知识项移除
作为预测目标。在评估数据集上进行实验,得到图 5 和图 6 所示的结果,其中线性插值模型作为基
准。
对比可知,序列模式(SP)的推荐准确度优于 Markov 模型,这是因为序列模式包含更丰富的
上下文信息,能够更好地挖掘学习者的知识需求。相应地,序列模式的召回率较低,尤其是在精确
匹配时。由于 Markov 模型是概率模型,在数据稀疏时可以起到一定的数据平滑作用,模型的覆盖率
较好。此外,all-kth-order 策略很好地平衡了 SP 的准确率和召回率,以较小的准确度牺牲换取了大
幅的召回率提升。all-kth-order 策略在置信度阈值为 0.2 时,取得最优的 F1 值(0.57),优于 TAM-Inter。
基于此,系统使用 all-kth-order 策略进行知识模式匹配,并将置信度大于 0.2 的知识项作为推荐结果。
总的来看,两种知识模型各有优缺。SP 能够挖掘得到丰富的知识学习模式,在会话长度适中的
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
准确率
概率阈值
GM-1st
GM-2nd
TAM-1st
TAM-2nd
TAM-Inter
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
召回率
概率阈值
GM-1st
GM-2nd
TAM-1st
TAM-2nd
TAM-Inter
情况下,通过匹配知识模式准确地识别员工的知识意图,推荐准确率较高。然而,在知识会话较短
的情况下,员工的知识意图相对模糊,需要借助于 Markov 模型的优势,通过概率推理推荐合适的知
识项。此外,对于新加入知识系统的流程知识,知识访问数据相对稀疏,使用 Markov 模型可以一定
程度地提高推荐的覆盖率。在实际的应用中需要将两种模型有机结合、取长补短,提高知识推荐的
效果。
图 5 不同预测模型的准确率变化曲线
图 6 不同预测模型的召回率变化曲线
4.3.3 推荐效果评估
为了评估本文算法的推荐效果,和现有的两种流程知识推荐算法作比较。基于用户的过滤(又
叫协同过滤)通过识别知识兴趣相似的知识群体,推荐“邻居”用户感兴趣的知识项[6]
;基于内容的
过滤通过分析知识项的语义信息,学习用户的知识偏好模型。这里使用 all-kth-order 策略的推荐
结果进行比较。参考文献[18]的方法,将知识序列中最后一个知识项移除,作为知识推荐的预测目
标,并使用命中率评估推荐的准确率。将知识序列 s 的最后一项(即推荐目标)记作 st,式(9)给出
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
准确率
置信度阈值
SP
All-kth-order
TAM-Inter
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
召回率
置信度阈值
SP
All-kth-order
TAM-Inter
了命中率的定义。RN(s)为针对知识序列 s 的 top-N 推荐结果,testset 为所有测试集,命中率表示推荐
结果包含目标知识项的概率。命中率越高,说明推荐的准确率越高,推荐效果越高。
HitRatio | s testset:s RN (s) | | testset | t 。 (9)
图 6 为不同推荐算法的命中率变化曲线。随着推荐数量 N 的增大,各种算法的命中率逐步提高,
且提升速度减缓。相对于基于用户的过滤,基于内容的过滤推荐结果较好。在业务流程中,短时间
内的知识学习行为通常是为了解决特定的流程问题,访问的知识内容存在较高的主题相关性。基于
内容的过滤通过推荐与当前知识内容语义相似的知识项,可以改善推荐的准确率。本文算法在分析
案例相似度时,既考虑了知识群体的知识背景相似度(角色),还分析了流程问题的相似度,能够
准确地挖掘参与者的知识需求,推荐的命中率较好。此外,通过挖掘参与者的知识学习模式,进一
步提高了知识推荐的准确性。
图 6 不同推荐算法的命中率比较
5 结束语
参与者的知识水平是决定流程质量的重要因素。本文提出一种基于知识模式挖掘的流程知识推
荐系统,通过主动推送流程知识的方式帮助参与者解决流程问题。系统集成了 KMS 和 WfMS 的流
程日志,以创建流程案例库。使用 CBR 发现相似的历史流程案例,挖掘参与者的知识主题需求。面
向主题的序列模式和 Markov 模型用于挖掘参与者学习各个知识主题时的学习模式,提供符合学习习
惯的知识推荐。实验结果表明,本文方法具有较高的准确度和召回率,证明了其在流程知识支持中
的可行性。
本文使用角色信息和问题的文本描述对流程案例建模,但在现实的业务流程中,流程上下文数
据更加复杂。未来计划在案例建模中考虑更多的流程元素,促进知识推荐与流程管理的紧密结合,
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
命中率
推荐数量
本文算法
基于内容的过滤
基于用户的过滤
更加准确地挖掘流程参与者的知识需求。另一个研究方向是,挖掘知识主题之间的序列模式和认知
习惯,提供跨知识主题的知识推荐。
参考文献:
[1] GUO J, YU D. Development of process-oriented knowledge supply model for E-maintenance[J]. Advances
in Information Sciences & Service Sciences,2012,4(10).
[2] JUNG J, CHOI I, SONG M.An integration architecture for knowledge management systems and business
process management systems[J].Computers in Industry,2007,58(1):21-34.
[3] WANG Zhansong, TIAN Ling, DUAN Wenrui.Knowledge push technology based on design intent modeling [J].
Computer Integrated Manufacturing Systems, 2015, 21(3): 606-617(in Chinese).[王占松, 田 凌, 段文
睿.基于设计意图建模的知识推送技术[J].计算机集成制造系统,2015,21(3): 606-617.]
[4] LAI C. Applying knowledge flow mining to group recommendation methods for task-based groups[J].
Journal of the Association for Information Science and Technology,2015,66(3):545-563.
[5] LAI C, Liu D.Integrating knowledge flow mining and collaborative filtering to support document
recommendation[J].Journal of Systems and Software,2009, 82(12): 2023-2037.
[6] HUANG Z, LU X, DUAN H, et al.Collaboration-based medical knowledge recommendation[J].Artificial
intelligence in medicine,2012,55(1):13-24.
[7] LIU D, LIN C, CHEN H.Discovering role-based virtual knowledge flows for organizational knowledge
support[J]. Decision Support Systems,2013,55(1):12-30.
[8] LEE H J, KIM J H. Mining knowledge demands from information flow[J]. Expert Systems with Applications,
2012, 39(8):6799-6806.
[9] SOARES D C, SANTORO F M, BAIÃO F A.Discovering collaborative knowledge-intensive processes through
e-mail mining[J].Journal of Network and Computer Applications,2013,36(6):1451-1465.
[10] HHAMPARIA A, PANDEY B. Knowledge and intelligent computing methods in e-learning[J].International
Journal of Technology Enhanced Learning,2015,7(3):221-242.
[11] GUILLAUME D, NABIL B, FRANÇOIS L Graph theory based model for learning path recommendation[J].
Information Sciences,2013,251:10-21.
[12] ZHAO Weidong,LIU Haitao.Application of process mining in process optimization[J].Computer
Integrated Manufacturing Systems,2014, 20(10): 2632-2642 (in Chinese).[赵卫东, 刘海涛.流程挖掘在
流程优化中的应用[J].计算机集成制造系统, 2014, 20(10): 2632-2642.]
[13] MINOR M, MONTANI S, RECIO-GARCÍA J A.Process-oriented case-based reasoning[J].Information Systems,
2014, 40: 103-105.
[14] BLEI D M. Probabilistic topic models[J].Communications of the ACM, 2012, 55(4): 77-84.
[15] Manning C D, Surdeanu M, Bauer J, et al. The stanford CoreNLP natural language processing toolkit[C]//
Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics: System
Demonstrations.2014: 55-60.
[16] YANG Q, FAN J, WANG J,et al.Personalizing web page recommendation via collaborative filtering and
topic-aware Markov model[C]//Proceedings of the 10th International Conference onData
Mining.Washington,D.C.,USA:IEEE, 2010: 1145-1150.
[17] MOONEY C H, RODDICK J F.Sequential pattern mining--approaches and algorithms[J].ACM Computing
Surveys,2013,45(2):19.
[18] HARIRI N, MOBASHER B, BURKE R. Context-aware music recommendation based on latenttopic sequential
patterns[C]//Proceedings of the 6th ACM Conference on Recommender Systems.New York, N.Y., USA:ACM,
2012:131-138.