基于相似度计算的信息化项目与专家匹配方法
2013-07-06荆于勤
陈 庄,荆于勤
(重庆理工大学计算机科学与工程学院,重庆 400054)
信息化咨询[1]也称为IT咨询,是管理咨询的一种。信息化咨询是管理咨询和信息化技术相结合的产物[2-3]。在信息化咨询过程中,咨询专家需要对企业进行充分的调研和需求分析,甚至要对管理流程重新设计,将企业的核心问题归纳出来,分析企业需要怎样的管理方和管理软件。在企业信息化过程中,咨询专家的作用不可低估,而且在信息系统交付使用后,专家还要定期进行系统运行效率评估。专家的参与保障了项目的顺利进行和项目效益的最大化。因此,面对存储在专家库中各个领域众多的专家信息,如何选取合适的专家对项目进行咨询,选取怎样的专家组合才能保证咨询工作的公正性、科学性和合理性,从而达到最佳的匹配效果是非常重要的。现阶段,对于专家的选择一般是通过简单的随机抽取,或者应用均衡随机抽取模型。这种匹配方式属于简单的基于关键字的匹配,不能较好地利用专家的动态信息(如专家的领域成就、经验经历等信息),不能保障项目与专家匹配的科学性。
针对这一问题,本文引入本体的概念,通过分析项目描述与专家信息,计算其语义相似度,按照相似度的大小确定项目与专家匹配与否,从而提高了项目与专家的匹配度和咨询评审的科学性[4-9]。
1 相关方法
1.1 基于点和基于边的语义相似度计算方法
基于本体的语义相似度计算主要有2个比较经典的方法:基于点的计算方法(node-based approach)和基于边的计算方法(edge-based approach)。基于点的相似度计算方法也叫作信息容量法[4]。信息容量通过量化概念及其实例对象的权重或者出现的概率,反映出概念和其实例对象的语义的内容大小。在本体树形结构中,一个点表示一个概念,即表示了相关的语义内容。概念的抽象程度随着所在层次的提高而提高,因此反映出的信息内容随着抽象程度的提高而减少;相反,信息内容随着具体程度的提高反映得越多,则层次越往下走,概念所表示的含义越细化、具体。即如果概念c1的结构层次高于概念c2的结构层次,则用公式表示为
因此,存在信息内容IC(c1)>IC(c2)。
对于任意概念节点c的信息内容IC(c)可通过式(2)计算。
其中:freq(c)表示其出现频率;N取所有频率的最大值。基于以上的定义和公式,可以计算概念c1和c2的相似度,如式(3)所示。
其中Sup(c1,c2)表示概念c1和c2所有的共同的父概念的集合。同样,对于所有的概念 c,都有Concept(c).child(i)={c1,c2}。在将文档中的词语概念化的过程中,会发现一个词语通常对应了几个概念,即存在一词多义的问题,导致在构建的概念树上虽然是同一结点,但位于树的不同分支上。针对这一问题,在计算2个词语之间相似度时,先找出词语的所有概念形式,计算所有概念形式的相似度,并选择最大值作为计算结果。
基于边的相似度计算方法的基本思想是通过分析2个概念在本体树中路径的长度来计算它们之间的语义距离。2个词语之间的相似度随着语义距离的增加而降低,随着语义距离的减少而增加。由于2个结点之间可能存在多条路径且边数不唯一,可以利用最短路径来表示概念间的相似度,公式为
其中:sen(w)表示词语w的所有概念的表示形式;len(c1,c2)表示2个概念之间的距离;dmax表示2个概念的层次的最大值。
1.2 改进的混合语义相似度计算方法
通过分析基于点和基于边的2种经典的语义相似度计算方法,并且针对信息化咨询项目与领域专家匹配的问题,提出了需要改进的几点:
1)虽然基于点的方法充分运用了概率统计和信息论的一些相关知识,而且实施起来也比较简单,但是在计算的过程中对2点之间的距离对相似度的影响缺乏考虑。
2)对于基于边的方法只是单纯地考虑了树结构中结点之间的距离,即最短路径,没有结合一词多义现象中概念出现频率所传达出的信息(出现的频率越高,表示它的重要性越大),因此相应的相似度计算结果也会不同。
3)基于点和基于边的方法都只是局限于对一棵数中结点的计算,而未考虑到不同树中的2点和树与树之间相似度的计算。而本文要解决的匹配问题是计算项目信息和专家信息的相似度,即树与树之间相似度的计算。
混合语义相似度计算方法通过设置权重来表示概念点的重要性,并联系到概念词于本体树中所处的区域的密集度和所在深度,将2个概念点的最短路径边上的权重值相加,代替简单累计2个概念点间所拥有的边数量,从而得到2个概念点的距离。同时,不仅计算同一棵树中2结点的语义相似度和不同树中2结点的语义相似度,还计算不同树之间的语义相似度。为了便于计算相似度,先将描述项目和专家信息的非结构文档进行结构化处理,即将文本文档转化成了概念树的形式。每个文本文档用一维概念向量来表示概念树,用一维权重向量来表示相应的权重。
例如文档D1描述的是信息化项目的信息,D2描述的是信息化领域专家的信息,则形式化后的概念向量为分别为:D1={c11,c22,…,c1m},D2={c21,c22,…,c2n},其相应的权重向量分别为:W1={w11,w12,…,w1m},W2={w21,w22,…,w2n}。对于2个概念点c1i和c2j的父概念点C可以表示为C={ci|ci.child(x)=c1∧ci.child(y)=c2},同时满足c={ci|ci∈C∧min[len(ci,c1)+len(ci,c2)]},那么,概念c1i和c2j的相似度计算公式为
其中w'1i和w'2j为2个概念点归一化计算后的权重。进而,两文档的相似度计算公式为
2 项目与专家匹配过程分析
在信息化咨询项目和领域专家的匹配中,需要处理2类信息:一类是项目信息,从项目需求、说明等材料中获取,其基本信息包括项目名称、研究属性、申请日期等;另一类是专家信息,可通过专家所发表的论文、经历、荣誉等方面获取,其基本信息包括姓名、性别、出生日期、联系方式和单位等,还包括专家的学术研究领域、成果和经历等。
首先指定一个需要匹配的项目,并选择若干个候选专家计算相似度,根据计算的结果排序。项目与专家匹配主要包括4个步骤:构建本体模型、标注本体、计算相似度、确定匹配专家。
1)构建本体模型。本文选定科学研究领域为本体的构建领域,其概念源于学术研究中比较常用的词汇和短语。选用 protégé3.4.4 版本建立本体概念模型,再将概念数据存入数据库中。
2)标注本体。一些通过Web方式输入的信息生成的是结构化的信息,而也有一些是导入的非结构化的包含专家和项目信息的文档。首先,将这些非结构化的信息用本体中包含的概念和表达的层次关系来描述,每一个概念结点对应于文档信息中的一个知识要点,然后利用语法结构对文档进行标注。
3)计算相似度。形式化后得到的是一个树型知识结构,通过本文介绍的混合语义相似度计算方法,将知识结构转换为知识向量,先计算项目和专家之间每一个概念之间的相似度,再计算项目概念树和专家概念树的相似度。
4)确定匹配专家。待选专家按所计算的相似度结果从大到小排序。例如该项目需要5位专家,就选择排序后的前5位专家作为该项目的匹配专家。
3 实例分析
为了验证上述方法的有效性,选取若干项目和专家组作为实验对象。首先,由本领域专家先根据个人判断给出每个项目与候选专家的相似度S2,即对它们的相似度作一个主观判断评价。然后利用混合语义相似度计算方法进行相似度计算,得到S1。为了方便对比分析,将S1与S2的值相比得到拟合度F,如表1所示。
表1 相似度计算结果比较
这里需要说明的是,由于通过计算得出的值和专家给定的值不是一个数量级,所以,表里给出的是经过归一化后的计算结果。项目A和项目B的平均拟合度分别为82.18%和79.80%,这说明利用本文提出的方法进行项目与专家的匹配是比较合理、科学的。
4 结束语
为了保障专家咨询工作的公正性、科学性和合理性,选取匹配的项目专家组合,本研究规避了现阶段存在的简单随机抽取或者均衡随机抽取方法的弊端,解决了基于关键字的专家选择缺乏语义理解的问题。引入了本体的概念,通过分析项目描述与专家信息,计算其语义相似度,按照相似度的大小确定项目与专家匹配与否,从而为项目找到最合适的专家,提高了咨询评审的科学性。实例分析结果表明,本文提出的计算2颗概念树的相似度计算方法较全面地考虑了应用特点,相比传统的方法,结果更精确合理。并且,将本体的应用引入这一领域,为以后专家抽取的研究提供了新思路。
[1]丁秋林.企业信息化咨询[M].北京:华夏出版社,2003.
[2]刘红.中小企业的信息化问题与对策[J].经济论坛,2004,22:23-25.
[3]Van Leeuwen J.Approaches in machine learning[M].[S.l.]:ALGORITHMS IN AMBIENT INTELLIGENCE,2004:151-166.
[4]吴江宁,杨光飞.基于本体的项目和领域专家匹配原型系统[J].计算机应用研究,2009,26(10):3787-3790.
[5]姜华.一种基于本体的概念语义相似度计算研究[J].计算机应用与软件,2009,26(7):143-145.
[6]刘宏哲,须德.基于本体的语义相似度和相关度计算研究综述[J].计算机科学,2012,39(2):8-13.
[7]康文宁,杨志强.相似度计算在智能答疑系统中的研究及应用[J].计算机技术与发展,2010,20(2):71-74.
[8]L i S J,Zhang J,Huang X,et al.Semantic computation in Chinese question-answering system[J].Comput Sci Tech,2002,17(6):933-939.
[9]Ristad E S,Yianilos P N.Learning string-edit distance[J].IEEE PAM I,1998,20(5):522-532.