基于学科知识图谱的推荐专家方法与流程

文档序号:16134942发布日期:2018-12-01 00:49阅读:312来源:国知局
本发明涉及自然语言处理领域和数据库的实体匹配和实体映射领域,具体地说是一种使用学科知识图谱的数据作为辅助知识,批量地对项目申报名单中的项目进行分类归并,获得若干个项目分组,并为各个项目组分别挑选出若干合适的评审专家的方法。
背景技术
近年来,随着硬件性能的提高和互联网上信息的爆炸,大数据处理和分析的方法得到了迅速发展并在很多领域有了越来越广泛的应用。知识图谱作为一种新兴的大数据处理手段,在提高信息检索质量方面有着巨大的优势。知识图谱的概念由谷歌最先提出,当时主要是用于辅助其搜索引擎进行信息检索。随着近年来大数据处理和分析方法的发展,知识图谱在智能搜索、智能问答、智能推荐等领域都有了广泛的应用。特别是在智能搜索领域,知识图谱的出现弥补了单纯通过关键词匹配进行搜索的不足,搜索引擎可以一定程度上对用户查询的具体意图做出有根据的猜测,实现了概念检索或者语义检索。在知识图谱的支持下,计算机能够更好地理解人类语言的表达模式,智能地为用户反馈更为契合需求的检索结果。除此之外,知识图谱的结构特点使得各种信息实体之间的关系能够被清晰地反映出来,从而将信息聚合为知识,使信息更容易被理解,评价和利用,最终形成一个语义知识库。知识图谱从本质上来说是一种语义网络,它将现实世界里的各种事物和事物之间的各种关联转化为了更加便于计算机处理的“实体和实体的属性-值”二元组和“实体-关系-实体”三元组的形式。如今,知识图谱的概念得到了泛化,各类大型的知识库也都被称作知识图谱。技术实现要素:本发明的目的是提供一种基于学科知识图谱的推荐专家方法,方法使用了微软的学术知识图谱(microsoftacademicgraph),国家自然科学基金申请代码树和维基百科(wikipedia)的词条页面互链等图谱数据作为检索的辅助。学科背景相似度的计算结合使用了链接相似度、路径相似度和余弦相似度的思想。方法主要使用了凝聚的层次聚类算法分组项目,主要使用了贪心算法推荐专家。本发明的目的是这样实现的:一种基于学科知识图谱的推荐专家方法,该方法包括以下具体步骤:步骤1:分组项目输入一个从人工填写的申报项目列表中提取得到的项目实例全集p,其中的项目实例p∈p包括项目编号、项目名称、申报单位、国家自然科学基金学科类别(下文中简称为“类别”,其包含一个国家自然科学基金申请代码,申请代码形如“g0304|产业政策与管理”)和英文关键词集合(包含一个或数个英文关键词)等属性,输出对p的一个划分d={p1,p2,…,pn},p1~pn均为学科背景较为相似的项目实例组成的项目实例子集;步骤2:推荐专家输入步骤1获得的划分d和专家信息数据库中提取得到的候选专家实例全集e,其中的专家实例e∈e包括专家编号、专家名称、年龄、职称、单位、国家自然科学基金学科类别集合(下文中简称为“类别集合”,其包含一个或数个国家自然科学基金申请代码,申请代码形如“g0304|产业政策与管理”)和英文关键词集合(包含一个或数个英文关键词)等属性,输出是专家实例全集e的若干个互无交集的子集e1,e2,…,en,e1~en和p在划分d下的子集p1~pn有一一对应的关系,即ei(1≤i≤n)表示推荐去评审项目实例子集pi的专家实例子集。所述步骤1具体包括:步骤a1:使用各个项目实例里的类别,计算两两项目实例之间的类别相似度;步骤a2:使用各个项目实例里的英文关键词集合,为各个英文关键词寻找与其最相似的学术知识图谱节点并建立映射,为每个项目实例保存其下所有英文关键词所对应的所有学术知识图谱节点组成的集合;步骤a3:使用步骤a2中获得的学术知识图谱节点集合,计算两两项目实例之间的关键词相似度;步骤a4:将步骤a1中的类别相似度和步骤a3中的关键词相似度乘以各自的权重并加和,得到两两项目实例间的学科背景相似度;步骤a5:使用凝聚的层次聚类算法,依据步骤a4中获得的两两项目实例间的学科背景相似度,对项目实例进行聚类,得到项目实例全集p的一个划分d,d将项目实例全集p划分为数个项目实例子集p1~pn。所述步骤2具体包括:步骤b1:使用每个项目实例里的类别和每个专家实例里的类别集合,计算每个项目实例和每个专家实例间的类别相似度,再按照划分d,将在同个项目实例子集下的所有项目实例对某个专家实例的类别相似度加和,作为该项目实例子集和该专家实例的类别相似度,得到每个项目实例子集和每个专家实例两两之间的类别相似度;步骤b2:使用专家实例里的英文关键词集合,为各个英文关键词寻找与其最相似的学术知识图谱节点并建立映射,为每个专家实例保存其下所有英文关键词所对应的所有学术知识图谱节点的集合;步骤b3:按照划分d,将步骤a2中获得的每个项目实例的学术知识图谱节点集合合并为每个项目实例子集的学术知识图谱节点集合,使用该节点集合和步骤b2中获得的专家实例的学术知识图谱节点集合,计算每个项目实例子集和每个专家实例两两之间的关键词相似度;步骤b4:将步骤b1中的类别相似度和步骤b3中的关键词相似度乘以各自的权重并加和,得到每个项目实例子集和每个专家实例两两之间的学科背景相似度;步骤b5:使用贪心算法,依据步骤b4中获得的每个项目实例子集和每个专家实例两两之间的学科背景相似度,为每个项目实例子集分配数个学科背景相似的专家实例,组成与项目实例子集p1~pn一一对应的专家实例子集e1~en。步骤a1中,所述计算两两项目实例之间的类别相似度是:用其类别属性在国家自然科学基金申请代码树上的路径相似度来计算,按不同层次上类别相同分别给出分层的相似度加分,如“a|数理科学部->a01|数学->a0111|数理统计”与“a|数理科学部->a01|数学->a0111|数理统计”的路径相似度会比“a|数理科学部->a01|数学->a0111|数理统计”与“a|数理科学部->a04|物理学i->a0404|光学”的路径相似度更高。步骤a2中,建立从英文关键词到学术知识图谱节点的映射f:keyword→node,是通过分析维基百科的词条页面数据来实现的;具体地说,使用维基百科的词条页面数据,寻找到与一个英文关键词最相似的一个学术知识图谱节点并将其返回,需要执行以下步骤:①查询本地和网络上的维基数据库,记录下每个图谱节点对应的维基百科词条页面内分别有哪些指向各个维基百科词条的链接,比如说假设“深度学习”的维基词条页面是:“深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。”其中“深度学习”、“人工神经网络”和“多层感知器”是指向各个维基百科词条的链接,那么记录下“深度学习:深度学习|人工神经网络|多层感知器”,将得到的(图谱节点,链接集合)二元组缓存成文件;步骤①在执行过一次以后,只有在新的图谱节点加入时才会重新执行,图谱没有变动时直接执行步骤②;②直接比对关键词和所有图谱节点名称的字符串内容,如果发现某个图谱节点,其节点名称的字符串内容和关键词完全一样,则返回该节点,否则执行步骤③;③查询本地维基数据库,如果关键词在本地维基数据库中有相应词条页面,且有部分图谱节点的词条页面和关键词的词条页面有共同链接,则返回其维基词条页面和关键词的维基词条页面共同词条链接数量最多的图谱节点,如果关键词在本地维基数据库中没有相应页面,或者所有图谱节点的词条页面和关键词的词条页面都没有共同链接,则执行步骤④;④使用维基百科的api访问网上的维基百科,得到最多为10个的和关键词最相关的维基百科词条页面,并将这数个页面内的词条链接合并为一个集合,执行步骤⑤;⑤如果api搜索到的页面数量不为0,且有部分图谱节点的词条页面和步骤④得到中的链接集合有共同链接,则返回和这个链接集合共同词条链接数量最多的图谱节点,如果api搜索到的页面数量为0,或者步骤④得到中的链接集合仍旧和所有图谱节点的词条页面都没有共同链接,则该关键词映射失败,返回null。步骤a3中,所述计算两两项目实例之间的关键词相似度,使用这两个向量的余弦相似度来计算,计算两个n维向量x与y的余弦相似度的公式为:转换成的向量的维数n是两个关键词集合映射到的图谱节点以及有一跳关系的图谱节点的数目之和,向量的每一个维度代表一个图谱节点,向量在第i个维度上的值的计算公式为:其中,count()计算了某一个节点在图谱节点集合内出现的次数,node是该维度所对应的图谱节点,e为学术知识图谱内所有边组成的集合,即nodej是与node有一跳关系的节点,weight取一个0到1之间的值。步骤a5中,所述使用凝聚的层次聚类算法是:先将每个项目实例都分为一个项目实例子集,每次迭代将两个相似度最高的项目实例子集合并,然后重新计算合并后的项目实例子集与其他项目实例子集间的相似度,两个项目实例子集之间的相似度用两边的项目实例两两之间最小的相似度表示,迭代在所有子集之间的相似度均小于某个阈值时停止;当一个项目实例子集内的项目实例数目大于某个阈值时,使用一个随子集内的项目实例数目增多而逐步减小的0到1之间的抑制系数乘以该子集和其他子集的相似度,若某个项目实例子集内项目实例数目达到上限,则抑制系数减至0,确保之后不会再有别的项目实例子集与该项目实例子集合并。这样做的原因是在实际操作中不方便去评审一个包含有过多项目实例的项目实例子集。本发明步骤b1执行时,项目实例和专家实例间的类别相似度取项目实例的类别和专家实例的类别集合中各个类别的按步骤a1中的类别相似度的计算方法计算类别相似度的最高值。步骤b2执行时,用与步骤a2一样的方法将专家实例里的关键词集合转换为了学术知识图谱节点集合,区别仅在于关键词集合的来源不同(步骤a2所用关键词集合来源于两个项目实例,步骤b2所用关键词集合来源于一个项目实例子集和一个专家实例)。步骤b3执行时,计算关键词相似度的方法也与步骤a3一样,区别也仅在于所用的学术知识图谱节点集合的来源不同(步骤a3所用学术知识图谱节点集合来源于两个项目实例,步骤b3所用学术知识图谱节点集合来源于一个项目实例子集和一个专家实例)。步骤b5中,所述使用贪心算法是:候选专家实例集合e中的每个专家实例只能被分配到最多一个项目实例子集内作为评审专家;假设一个项目实例子集最多分配k名专家,则对项目实例子集p1~pn进行k次遍历,在每次遍历到一个项目实例子集pi时,将e内的专家实例按对pi的学科背景相似度排序,然后找出满足其他基本要求(如相似度不能低于阈值,年龄不能过高,职称不能过低,不能在项目的申请单位工作等)的前提下对pi的学科背景相似度最高的专家实例e,将e添加到pi所对应的评审专家集合ei中,并在e内去掉e,即e不能再被添加到别的项目实例子集的评审专家集合中;如果候选集合e中已经没有符合条件的专家实例,则这次遍历不为pi添加评审专家,在之后的每次遍历中也跳过pi。本发明有以下优点:1、易用性:项目分类和推荐专家的算法可以调整组内项目和评审专家的数量上限,或根据项目的申请单位和专家的年龄、职称与单位灵活设置筛选和回避的规则。学科背景相似度的计算模型有基于类别数据的类别相似度和基于关键词数据的关键词相似度两种独立互不干扰的相似度计算方法,在关键词数据或类别数据不全时可以单独使用其中一种方法计算得出结果。方法对英文关键词的内容没有要求,可以输入任意内容的短文本形式的自然语言的英文关键词。整套方法灵活易用,适用范围广泛。2、高效性:分组项目使用凝聚的层次聚类算法,推荐专家使用贪心算法,并使用了缓存文件保存了多次执行方法时可以重用的中间结果,能够在较快的时间内得到结果。3、新颖性:方法创造性地使用了微软的学术知识图谱(microsoftacademicgraph),国家自然科学基金申请代码树和维基百科(wikipedia)的词条页面互链关系等学科知识图谱的数据作为辅助知识,并结合运用了链接相似度、路径相似度和余弦相似度的思想建立了实体间学科背景相似度的计算模型,与传统的基于文本的各种字符串相似度度量相比,让程序更好地理解了在关键词数据和类别数据中的文本在学科背景下的语义,极大改善了实体匹配和映射的质量。4、可评估性:方法的分组项目结果和推荐专家结果是基于学科背景相似度进行了定量分析而得到的。在方法执行的过程中,从知识图谱中能分析出组内各个项目间的学科背景接近程度以及专家擅长的学科领域与所评审的项目学科背景的接近程度。因此,方法本身提供了一个能够评估分组项目结果和推荐专家结果的可行性的标准,科研审核机构可以参考本方法给出的可行性评分,进一步人工修改本方法自动生成的评审方案中评分较低的部分。5、实用性:方法具有实用意义,能够为科研审核机构找到合适的项目分组,并为各个项目组挑选合适的评审专家进行分组评审。附图说明图1为实施例项目b和项目d下图谱节点以及有一跳关系的图谱节点示意图。具体实施方式本发明的目的是提供一种基于学科知识图谱的推荐专家方法,方法使用了微软的学术知识图谱(microsoftacademicgraph),国家自然科学基金申请代码树和维基百科(wikipedia)的词条页面互链等图谱数据作为检索的辅助。学科背景相似度的计算结合使用了链接相似度、路径相似度和余弦相似度的思想。方法主使用了凝聚的层次聚类算法分组项目,使用了贪心算法推荐专家。本发明具体过程包括:步骤1:分组项目输入一个从人工填写的申报项目列表中提取得到的项目实例全集p,其中的项目实例p∈p包括项目编号、项目名称、申报单位、国家自然科学基金学科类别(下文中简称为“类别”,其包含一个国家自然科学基金申请代码,申请代码形如“g0304|产业政策与管理”)和英文关键词集合(包含一个或数个英文关键词)等属性,输出对p的一个划分d={p1,p2,…,pn},p1~pn均为学科背景较为相似的项目实例组成的项目实例子集,可选的额外输出是项目实例子集内各个项目实例与整个项目实例子集的学科背景相似度,用以估计分组项目结果的可信度;步骤2:推荐专家输入步骤1获得的划分d和专家信息数据库中提取得到的候选专家实例全集e,其中的专家实例e∈e包括专家编号、专家名称、年龄、职称、单位、国家自然科学基金学科类别集合(下文中简称为“类别集合”,其包含一个或数个国家自然科学基金申请代码,申请代码形如“g0304|产业政策与管理”)和英文关键词集合(包含一个或数个英文关键词)等属性,输出是专家实例全集e的若干个互无交集的子集e1,e2,…,en,e1~en和p在划分d下的子集p1~pn有一一对应的关系,即ei(1≤i≤n)表示推荐去评审项目实例子集pi的专家实例子集,可选的额外输出是分配到项目实例子集的每个专家对该子集内每个项目实例和对整个项目实例子集的学科背景相似度,用以估计推荐专家结果的可信度。所述步骤1具体包括:步骤a1:使用各个项目实例里的类别,计算两两项目实例之间的类别相似度;步骤a2:使用各个项目实例里的英文关键词集合,为各个英文关键词寻找与其最相似的学术知识图谱节点并建立映射,为每个项目实例保存其下所有英文关键词所对应的所有学术知识图谱节点组成的集合;步骤a3:使用步骤a2中获得的学术知识图谱节点集合,计算两两项目实例之间的关键词相似度;步骤a4:将步骤a1中的类别相似度和步骤a3中的关键词相似度乘以各自的权重并加和,得到两两项目实例间的学科背景相似度;步骤a5:使用凝聚的层次聚类算法,依据步骤a4中获得的两两项目实例间的学科背景相似度,对项目实例进行聚类,得到项目实例全集p的一个划分d,d将项目实例全集p划分为数个项目实例子集p1~pn。所述步骤2具体包括:步骤b1:使用每个项目实例里的类别和每个专家实例里的类别集合,计算每个项目实例和每个专家实例间的类别相似度,再按照划分d,将在同个项目实例子集下的所有项目实例对某个专家实例的类别相似度加和,作为该项目实例子集和该专家实例的类别相似度,得到每个项目实例子集和每个专家实例两两之间的类别相似度;步骤b2:使用专家实例里的英文关键词集合,为各个英文关键词寻找与其最相似的学术知识图谱节点并建立映射,为每个专家实例保存其下所有英文关键词所对应的所有学术知识图谱节点的集合;步骤b3:按照划分d,将步骤a2中获得的每个项目实例的学术知识图谱节点集合合并为每个项目实例子集的学术知识图谱节点集合,使用该节点集合和步骤b2中获得的专家实例的学术知识图谱节点集合,计算每个项目实例子集和每个专家实例两两之间的关键词相似度;步骤b4:将步骤b1中的类别相似度和步骤b3中的关键词相似度乘以各自的权重并加和,得到每个项目实例子集和每个专家实例两两之间的学科背景相似度;步骤b5:使用贪心算法,依据步骤b4中获得的每个项目实例子集和每个专家实例两两之间的学科背景相似度,为每个项目实例子集分配数个学科背景相似的专家实例,组成与项目实例子集p1~pn一一对应的专家实例子集e1~en。步骤a1中,所述计算两两项目实例之间的类别相似度是:用其类别属性在国家自然科学基金申请代码树上的路径相似度来计算,按不同层次上类别相同分别给出分层的相似度加分,如“a|数理科学部->a01|数学->a0111|数理统计”与“a|数理科学部->a01|数学->a0111|数理统计”的路径相似度会比“a|数理科学部->a01|数学->a0111|数理统计”与“a|数理科学部->a04|物理学i->a0404|光学”的路径相似度更高。实际使用本方法时,一般按不同层次分别给出0.04,0.2和1的相似度加分,如申请代码a0101和a0101的路径相似度为1,a0101和a0102的路径相似度为0.2,a0101和a0201的路径相似度为0.04,a0101和b0101的路径相似度为0。对于没有国家自然科学基金类别的项目名单,可以手动设置所有的项目类别到自然科学基金类别的对应关系。步骤a2中,建立从英文关键词到学术知识图谱节点的映射f:keyword→node,是通过分析维基百科的词条页面数据来实现的;具体地说,使用维基百科的词条页面数据,寻找到与一个英文关键词最相似的一个学术知识图谱节点并将其返回,需要执行以下步骤:①查询本地和网络上的维基数据库,记录下每个图谱节点对应的维基百科词条页面内分别有哪些指向各个维基百科词条的链接,比如说假设“深度学习”的维基词条页面是:“深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。”其中“深度学习”、“人工神经网络”和“多层感知器”是指向各个维基百科词条的链接,那么记录下“深度学习:深度学习|人工神经网络|多层感知器”,将得到的(图谱节点,链接集合)二元组缓存成文件;步骤①在执行过一次以后,只有在新的图谱节点加入时才会重新执行,图谱没有变动时直接执行步骤②;②直接比对关键词和所有图谱节点名称的字符串内容,如果发现某个图谱节点,其节点名称的字符串内容和关键词完全一样,则返回该节点,否则执行步骤③;③查询本地维基数据库,如果关键词在本地维基数据库中有相应词条页面,且有部分图谱节点的词条页面和关键词的词条页面有共同链接,则返回其维基词条页面和关键词的维基词条页面共同词条链接数量最多的图谱节点,如果关键词在本地维基数据库中没有相应页面,或者所有图谱节点的词条页面和关键词的词条页面都没有共同链接,则执行步骤④;④使用维基百科的api访问网上的维基百科,得到最多为10个的和关键词最相关的维基百科词条页面,并将这数个页面内的词条链接合并为一个集合,执行步骤⑤;⑤如果api搜索到的页面数量不为0,且有部分图谱节点的词条页面和步骤④得到中的链接集合有共同链接,则返回和这个链接集合共同词条链接数量最多的图谱节点,如果api搜索到的页面数量为0,或者步骤④得到中的链接集合仍旧和所有图谱节点的词条页面都没有共同链接,则该关键词映射失败,返回null。步骤a3中,所述计算两两项目实例之间的关键词相似度,使用这两个向量的余弦相似度来计算,计算两个n维向量x与y的余弦相似度的公式为:转换成的向量的维数n是两个关键词集合映射到的图谱节点以及有一跳关系的图谱节点的数目之和,向量的每一个维度代表一个图谱节点,向量在第i个维度上的值的计算公式为:其中,count()计算了某一个节点在图谱节点集合内出现的次数,node是该维度所对应的图谱节点,e为学术知识图谱内所有边组成的集合,即nodej是与node有一跳关系的节点,weight取一个0到1之间的值。步骤a5中,所述使用凝聚的层次聚类算法是:先将每个项目实例都分为一个项目实例子集,每次迭代将两个相似度最高的项目实例子集合并,然后重新计算合并后的项目实例子集与其他项目实例子集间的相似度,两个项目实例子集之间的相似度用两边的项目实例两两之间最小的相似度表示,迭代在所有子集之间的相似度均小于某个阈值时停止;当一个项目实例子集内的项目实例数目大于某个阈值时,使用一个随子集内的项目实例数目增多而逐步减小的0到1之间的抑制系数乘以该子集和其他子集的相似度,若某个项目实例子集内项目实例数目达到上限,则抑制系数减至0,确保之后不会再有别的项目实例子集与该项目实例子集合并。这样做的原因是在实际操作中不方便去评审一个包含有过多项目实例的项目实例子集。本发明步骤b1执行时,项目实例和专家实例间的类别相似度取项目实例的类别和专家实例的类别集合中各个类别的按步骤a1中的类别相似度计算方法计算出的类别相似度的最高值。步骤b2执行时,用与步骤a2一样的方法将专家实例里的关键词集合转换为了学术知识图谱节点集合,区别仅在于关键词集合的来源不同(步骤a2所用关键词集合来源于两个项目实例,步骤b2所用关键词集合来源于一个项目实例子集和一个专家实例)。步骤b3执行时,计算关键词相似度的方法也与步骤a3一样,区别也仅在于所用的学术知识图谱节点集合的来源不同(步骤a3所用学术知识图谱节点集合来源于两个项目实例,步骤b3所用学术知识图谱节点集合来源于一个项目实例子集和一个专家实例)。步骤b5中,所述使用贪心算法是:候选专家实例集合e中的每个专家实例只能被分配到最多一个项目实例子集内作为评审专家;假设一个项目实例子集最多分配k名专家,则对项目实例子集p1~pn进行k次遍历,在每次遍历到一个项目实例子集pi时,将e内的专家实例按对pi的学科背景相似度排序,然后找出满足基本要求的前提下对pi的学科背景相似度最高的专家实例e,将e添加到pi所对应的评审专家集合ei中,并在e内去掉e,即e不能再被添加到别的项目实例子集的评审专家集合中;如果候选集合e中已经没有符合条件的专家实例,则这次遍历不为pi添加评审专家,在之后的每次遍历中也跳过pi;其中,所述基本要求为相似度不能低于阈值,年龄不能过高,职称不能过低,不能在项目的申请单位工作;使用贪心算法推荐专家时,最终的推荐结果中各对(项目实例子集-专家实例子集)的学科背景相似度之和在所有可能的组合中不一定是最大的。采用贪心算法的原因是贪心算法保证了各个项目实例子集有公平的机会挑选专家,这样可以避免出现某个项目实例子集获得了与其相似度非常高的一些专家实例,但导致另外的项目实例子集“被迫”从剩余的与其相似度很低的候选专家实例集合中挑选专家的情况。除上述说明以外,还需说明的是:1、考虑到方法中最为耗时的部分是执行步骤a2或步骤b2时为每个英文关键词寻找与其最相似的一个学术知识图谱节点的步骤①-步骤⑤,在初次执行步骤a2时,需创建一个映射记录缓存文件,文件里面记录了已经寻找过的关键词和其所对应的学术知识图谱节点;之后每次执行步骤a2或步骤b2时,会读取该文件,对每个英文关键词,先在文件中查表,如果文件中已经记录了与其最相似的学术知识图谱节点,则直接把这对关键词、学术知识图谱节点读取到程序中,如果文件没有相应的记录,则执行步骤①~⑤寻找到与该英文关键词最相似的学术知识图谱节点,并修改缓存文件,把该关键词与寻找到的学术知识图谱节点作为一条新增的映射记录保存在缓存文件中。2、基于关键词数据或者基于类别数据的相似度计算模块分别能够在项目实例缺失类别数据或关键词数据的情况下独立运行得出结果,如输入的项目实例全集缺失了关键词数据,那么可以跳过步骤a2到步骤a4,直接将项目实例间的类别相似度作为学科背景相似度执行步骤a5,再跳过步骤b2到步骤b4,直接将项目实例子集和专家实例间的类别相似度作为学科背景相似度执行步骤b5。3、方法可以调整项目实例子集内项目实例的最大数量和评审专家的专家实例子集的内专家实例的最大数量,也可以根据项目的申请单位和专家的年龄、职称和单位灵活设置筛选和回避的规则(即重设步骤b5所述基本要求)。4、在建立从英文关键词到学术知识图谱节点的映射时,对英文关键词的内容没有要求,可以输入任意内容的短文本形式的自然语言的英文关键词。实施例以实施例说明本发明的具体执行过程。如,在步骤1输入如表1的项目实例全集:表1项目实例全集经过步骤a1可计算出两两共6个项目实例对的类别相似度,其中项目实例对(a,c)的类别相似度为0.2,其余项目实例对的类别相似度均为0。步骤a2执行时,先对每个关键词经过步骤①-⑤寻找到与其最相似的学术知识图谱节点。例如,关键词“laserscience”在图谱中有同名的节点,因此在步骤②返回了同名图谱节点“laserscience”;关键词“anti-inflammatory”在本地的维基数据库中的词条页面与图谱节点“biochemistry”的词条页面有数目最多的共同链接,因此在步骤③返回了图谱节点“biochemistry”,关键词“lasersource”通过在线的维基百科的api返回的十个词条页面与图谱节点“optics”的词条页面有数目最多的共同链接,因此在步骤⑤返回了图谱节点“optics”。然后建立如表2的从英文关键词到学术知识图谱节点的映射并得到如表3的每个项目的学术知识图谱节点集合:表2映射f:keyword→node表3每个项目的学术知识图谱节点集合步骤a3执行时,计算两两共6个项目实例对的关键词相似度,以项目b和项目d为例,假设项目b和项目d的学术知识图谱节点集合里的图谱节点以及有一跳关系的图谱节点一共有16个,它们在图谱中的一跳关系如附图1,其中一跳关系用节点间的连线表示,前面标有◆的节点是在项目b的学术知识图谱节点集合里的图谱节点,前面标有◇的节点是在项目d的学术知识图谱节点集合里的图谱节点,前面没有标志的节点是不在项目b和项目d的学术知识图谱节点集合里,但有一跳关系的节点。先将项目b和项目d的学术知识图谱节点集合转换向量,weight的取值为0.1,则向量的结构如表4:表4项目b和项目d的学术知识图谱节点集合转换成的向量图谱节点索引向量b向量dnutrition02.02.0physicalorganicchemistry11.00.0immunology21.20.0pathology31.10.0neuropsychopharmacology40.02.0biochemistry50.11.0cellbiology61.10.1kinesiology70.20.2hematology80.20.1microbiology90.30.0organicchemistry100.10.1genetics110.10.1clickchemistry120.10.0copii130.10.0neurogenetics140.00.2rewarddependence150.00.2根据余弦相似度的计算公式,可以计算出项目b和项目d的关键词相似度为:经过步骤a4,将步骤a1中的类别相似度和步骤a3中的关键词相似度乘以各自的权重并加和,计算得出了每个项目实例对的学科背景相似度。步骤a5执行时,假设相似度阈值设为0.1,项目实例对的学科背景相似度大小关系序列为sim(a,c)>sim(b,d)>0.1>sim(a,b)>sim(c,d)>sim(b,c)>sim(a,d),则开始时将每个项目实例都划分为一个子集,共4个子集,第一次迭代将项目a和项目c所在的子集合并为项目实例子集α,此时学科背景相似度的大小关系序列变为sim(b,d)>0.1>sim(b,α)>sim(α,d),第二次迭代将项目b和项目d合并为项目实例子集β,此时学科背景相似度的大小关系序列变为0.1>sim(α,β),迭代停止。最终输出对项目实例全集的一个划分d={{a,c},{b,d}}。在步骤2中输入步骤1获得的如表5的划分和如表6的专家实例全集:表5划分项目实例子集编号项目实例子集内容α{a,c}β{b,d}表6专家实例全集专家编号类别集合英文关键词集合1e0207;e0206……2…………3…………4…………5…………步骤b1执行时,计算每个专家与每个项目实例子集的类别相似度,如项目实例子集α与专家1的类别相似度是项目a与专家1的类别相似度和项目c与专家1的类别相似度的加和,项目a与专家1的类别相似度取项目a的类别和专家1的类别集合中每个类别的类别相似度中最高的值,项目c与专家1的类别相似度取项目c的类别和专家1的类别集合中每个类别的类别相似度中最高的值,即class_sim(α,1)=class_sim(a,1)+class_sim(c,1)=max(path_sim(e0207,e0207),path_sim(e0207,e0206))+max(path_sim(e0208,e0207),path_sim(e0208,e0206))=max(1,0.2)+max(0.2,0.2)=1.2步骤b2-b4的执行过程与步骤a2-a4类似,最终得到了每个项目实例子集和每个专家实例间的学科背景相似度,步骤b5执行时,假设学科背景相似度的大小关系序列为sim(β,1)>sim(α,1)>sim(α,3)>sim(β,4)>sim(β,2)>sim(β,3)>sim(α,2)>sim(α,4)>sim(α,5)>sim(α,5),每次均按编号顺序遍历所有项目实例子集,为每个项目实例子集分配专家实例的数量上限均为2,则贪心算法的运行过程如表7:表7贪心算法的运行过程可以注意到,虽然sim(β,1)>sim(α,1),但是遍历到项目实例子集β时,专家1已经不在候选的专家实例集合里面了,因为贪心算法不撤销之前的分配结果,所以并不会把专家1重新分配给项目实例子集β。因此,使用贪心算法推荐专家时,最终的推荐结果中各对(项目实例子集-专家实例子集)的学科背景相似度之和在所有可能的组合中不一定是最大的,但保证了各个项目实例子集有公平的机会挑选专家。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1