首页> 中国专利> 文献归一方法、文献搜索方法及对应装置

文献归一方法、文献搜索方法及对应装置

摘要

本发明公开了一种文献归一方法、文献搜索方法及对应装置,其中文献归一方法包括:获取一个以上网站来源的文献;对所获取的文献进行标准化;根据标准化后的文献的标题的相似度,将相似标题的文献进行聚类得到多个文献集合;在每个文献集合中计算文献的相似度,根据所计算的文献的相似度筛选出符合条件的文献集合;对筛选出的符合条件的文献集合,进行相同文献的聚类,并将相同的文献的发表来源进行汇总。文献搜索方法包括:接收用户输入的关键词;根据所述关键词,搜索出与所述关键词相关联的文献;在搜索结果中,将相同文献进行聚合展现,并展现各文献的发表来源。与现有技术相比,本发明实现相同文献的归一化,为提高文献搜索的效果提供基础。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-02-12

    授权

    授权

  • 2016-04-27

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20151207

    实质审查的生效

  • 2016-03-30

    公开

    公开

说明书

【技术领域】

本发明涉及计算机应用技术领域,尤其涉及一种文献归一方法、文献搜 索方法及对应装置。

【背景技术】

科研工作者在进行科学研究的时候,需要查找科研文献做调查。通常在 查找科研文献时,需要精确查找到某篇具体的文章,并且尽可能多地找到该 文章的电子来源渠道。但在实际检索的时候会遇到一些不便。

由于科研人员众多,发表的科研文献也非常多,存在一些作者相同、标 题相同的文献,用户需要甄别哪些是同一篇文献,哪些不是,最后确定自己 真正所需要的。这个过程比较繁琐,增加了用户的查找成本。

如图1所示,当用户搜索文献时,某篇文献可能会有多种电子来源渠道, 并且每个电子来源渠道的数据质量不一,用户无法获取同一篇文献的所有电 子来源,只能检索看到某条来源就查看某条来源,不利于筛选优质和有权限 的资源,降低了用户体验。

【发明内容】

本发明提供了一种文献归一方法、文献搜索方法及对应装置,以便于实 现相同文献的归一化,为提高文献搜索的效果提供基础。

具体技术方案如下:

一种文献归一方法,包括:

获取一个以上网站来源的文献;

对所获取的文献进行标准化;

根据标准化后的文献的标题的相似度,将相似标题的文献进行聚类得到多 个文献集合;

在每个文献集合中计算文献的相似度,根据所计算的文献的相似度筛选出 符合条件的文献集合;

对筛选出的符合条件的文献集合,进行相同文献的聚类,并将相同的文献 的发表来源进行汇总。

根据本发明一优选实施例,所述文献的标题的相似度采用以下方式中的至 少一种确定:

针对文献的标题计算签名,计算文献的标题签名之间的相似度;

计算文献的标题之间的海明距离,依据海明距离确定文献标题之间的相似 度。

根据本发明一优选实施例,在所述在每个文献集合中计算文献的相似度 之前,该方法还包括:

根据标准化后的文献的作者,发表来源和发表年份中至少一种属性的相似 度,将相似的文献进行聚类得到多个文献集合。

根据本发明一优选实施例,所述根据标准化后的文献的作者,发表来源 和发表年份中至少一种属性的相似度采用以下方式中的至少一种确定:

将标准化后的文献的作者,发表来源及发表年份合并为字符串,计算合并 后的字符串的签名,计算文献的合并后的字符串的签名之间的相似度;

将标准化后的文献的作者,发表来源及发表年份合并为字符串,计算合并 后的字符串之间的海明距离,依据海明距离确定文献的作者,发表来源及发表 年份的相似度。

根据本发明一优选实施例,在得到多个文献集合之后,且在每个文献集合 中计算文献的相似度之前,该方法还包括:

基于文献集合中文献间的海明距离,筛选出海明距离小于或等于预设阈值 的文献集合。

根据本发明一优选实施例,所述根据所计算的文献的相似度筛选出符合条 件的文献集合,包括:

在每一个文献集合中,根据预先设置的各文献属性所对应的权重,计算每 个文献集合中各文献间的相似度,将各文献间的相似度大于预设总分的文献集 合确定为符合条件的文献集合。

根据本发明一优选实施例,所述对筛选出的符合条件的文献集合,进行相 同文献的聚类,包括:

分别针对筛选出的每个符合条件的文献集合执行键值对形成过程,所述键 值对形成过程包括:分别将各文献作为key,其他文献作为该key对应的value, 从而形成至少两个key-value对;

依据得到的所有key-value对,将key相同的key-value对聚类到一个集合;

分别针对得到的集合转至执行所述键值对形成过程,直至达到预设的迭代 次数。

根据本发明一优选实施例,所述标准化包括:

对文献的第一作者的全名进行分词处理,提取每个单词的首字母,将提取 的首字母组合作为标准化后的文献作者;或者,

提取文献摘要的主体部分中最长的句子,计算该最长句子的签名;或者,

统一文献来源的格式;或者,

统一文献发表时间的格式,或者仅提取文献发表时间的年份。

根据本发明一优选实施例,所述针对文献的标题计算签名,包括:

将文献的标题切分成多个子标题,计算每个子标题的长度,提取子标题的 长度大于预设长度的子标题;

确定所提取的子标题的n-gram特征,所述n的取值为从1到N的正整数, 所述N为预设的正整数;

依据所确定的n-gram特征,计算文献的标题的签名。

一种文献搜索方法,该方法包括:

接收用户输入的关键词;

根据所述关键词,搜索与所述关键词相关联的文献;

在搜索结果中,将相同文献进行聚合展现,并展现各文献的发表来源;

其中相同文献采用所述文献归一的方法进行归一化。

一种文献归一装置,包括:

获取单元,用于获取一个以上网站来源的文献;

标准化单元,用于对所获取的文献进行标准化;

第一聚类单元,用于根据标准化后的文献的标题的相似度,将相似标题的 文献进行聚类得到多个文献集合;

第一筛选单元,用于在每个文献集合中计算文献的相似度,根据所计算的 文献的相似度筛选出符合条件的文献集合;

第二聚类单元,用于对筛选出的符合条件的文献集合,进行相同文献的聚 类,并将相同的文献的发表来源进行汇总。

根据本发明一优选实施例,所述第一聚类单元采用以下方式中的至少一种 确定文献的标题的相似度:

针对文献的标题计算签名,计算文献的标题签名之间的相似度;

计算文献的标题之间的海明距离,依据海明距离确定文献标题之间的相似 度。

根据本发明一优选实施例,所述第一聚类单元,还用于在所述在每个文 献集合中计算文献的相似度之前,根据标准化后的文献的作者,发表来源和发 表年份中至少一种属性的相似度,将相似的文献进行聚类得到多个文献集合。

根据本发明一优选实施例,所述第一聚类单元采用以下方式中的至少一 种确定所述至少一种属性的相似度:

将标准化后的文献的作者,发表来源及发表年份合并为字符串,计算合并 后的字符串的签名,计算文献的合并后的字符串的签名之间的相似度;

将标准化后的文献的作者,发表来源及发表年份合并为字符串,计算合 并后的字符串之间的海明距离,依据海明距离确定文献的作者,发表来源及 发表年份的相似度。

根据本发明一优选实施例,还包括:

第二筛选单元,用于在得到多个文献集合之后,且在每个文献集合中计算 文献的相似度之前,基于文献集合中文献间的海明距离,筛选出海明距离小于 或等于预设阈值的文献集合。

根据本发明一优选实施例,所述第一筛选单元具体用于,在每一个文献集 合中,根据预先设置的各文献属性所对应的权重,计算每个文献集合中各文献 间的相似度,将各文献间的相似度大于预设总分的文献集合确定为符合条件的 文献集合。

根据本发明一优选实施例,所述第二聚类单元在对筛选出的符合条件的文 献集合,进行相同文献的聚类时,具体执行:

分别针对筛选出的每个符合条件的文献集合执行键值对形成过程,所述键 值对形成过程包括:分别将各文献作为key,其他文献作为该key对应的value, 从而形成至少两个key-value对;

依据得到的所有key-value对,将key相同的key-value对聚类到一个集合;

分别针对得到的集合转至执行所述键值对形成过程,直至达到预设的迭代 次数。

根据本发明一优选实施例,所述标准化单元,具体用于:

对文献的第一作者的全名进行分词处理,提取每个单词的首字母,将提取 的首字母组合作为标准化后的文献作者;或者,

提取文献摘要的主体部分中最长的句子,计算该最长句子的签名;或者,

统一文献来源的格式;或者,

统一文献发表时间的格式,或者仅提取文献发表时间的年份。

根据本发明一优选实施例,所述第一聚类单元在针对文献的标题计算签名 时,具体执行:

将文献的标题切分成多个子标题,计算每个子标题的长度,提取子标题的 长度大于预设长度的子标题;

确定所提取子标题的n-gram特征,所述n的取值为从1到N的正整数,所 述N为预设的正整数

依据所确定的n-gram特征,计算文献的标题的签名。

一种文献搜索装置,该装置包括:

接收单元,用于接收用户输入的关键词;

匹配单元,用于根据所述关键词,搜索出与所述关键词相关联的文献;

展现单元,用于在搜索结果中,将相同文献进行聚合展现,并展现各文献 的发表来源,其中相同文献采用所述文献归一的装置进行归一化。

由以上技术方案可以看出,本发明能精确地将相同的文献聚合在一起,并 清晰地提供文献来源,当用户搜索文献时,能够将同一篇文献的不同发表来源 汇聚到一起呈现给用户,提升了用户体验。

【附图说明】

图1是现有技术中搜索文献的示意图。

图2是本发明实施例提供的文献归一方法的流程图。

图3是本发明实施例中对作者进行标准化的示意图。

图4是本发明实施例提供的对相同的文献进行聚类的示意图。

图5是本发明实施例提供的一个搜索结果展现的示意图。

图6是本发明实施例中在reduce阶段对两个标题的签名处理的示意图。

图7是本发明实施例提供的另一个文献归一的方法流程图。

图8是本发明实施例提供的装置结构示意图。

图9是图8中第一聚类单元的一个实施例的结构示意图。

图10是图8中签名计算单元的一个实施例的结构示意图。

图11是利用文献归一方法进行搜索的装置的结构示意图。

【具体实施方式】

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体 实施例对本发明进行详细描述。

图2是本发明文献归一方法的实施例一的流程图。如图2所示,该文献 归一方法包括:

S10,获取所有网站来源的文献。

具体地,通过网络爬虫的方式从所有网站获取文献。

S11,对所获取的文献进行标准化。

在本发明的实施例中,所述标准化是对文件的属性进行标准化,所述文 献的属性包括,标题、作者、摘要、发表来源、发表时间等。

具体地,对标题的标准化包括,对标题的切分、半角全角的统一化、去 掉标题的标点等。例如,某篇文献的标题为re:Coagulation and——Flocculation,经过标题的标准化后为reCoagulationand--Flocculation。

由于站点的作者可能缩写是不同的,需要对文献的作者进行标准化。对 作者的标准化的原理是提取文献的第一作者的全名,将第一作者的全名切分 成多个单词,提取每个单词的首字母,最后将提取的所有首字母排序进行排 序作为文献所对应的作者。在将第一作者的全名切分成多个单词时,当有多 个大写字母缩写在一起时,将每个大写字母切分成一个单词。

如图3所示,是本发明中对作者进行标准化的示意图。在这个例子中, 从网络上获取的一个作者的名字为:CarlosN.Slia,CarlosNascimento.Slia和 SNCarlos。CarlosN.Slia被拆分为Carlos、N及Slia三个单词,取这三个单 词的首字母为C、N、S。CarlosNascimento.Slia被拆分为Carlos、Nascimento 及Slia,取这三个单词的首字母为C、N、S。SNCarlos被拆分为S、N及 Carlos,取这三个单词的首字母为S、N、C。最后按照字母表的顺序排序成 CNS。

对摘要的标准化的原理为提取摘要的主体部分,计算主体部分中句子的 长度,找出长度最长的句子,计算文献的摘要的签名。在其他实施方式中, 也可以是其他长度的句子。可以利用消息摘要算法第五版(MessageDigest Algorithm,MD5)计算文献的摘要的签名。

发表来源包括期刊、会议、文献集等。对发表来源的标准化主要是统一 发表来源的格式,包括统一大小写、删除符号、半角全角的统一化等。

对发表时间的标准化包括,从发表时间中提取年份数据。在网络上,文 献的发表时间会有各种不同的时间格式,对发表时间的标准化包括从各种不 同的时间格式中提取年份。例如,发表时间分别为:1990,1990-11-11, 1990/11/11,对发表时间的标准化后得到1999。当然,除了仅提取年份的方 式之外,也可以采用统一成相同表述的方式,例如将1990-11-11、1990/11/11、 1990年11月11日、1990.11.11等表述统一成1990-11-11。

S12,根据标准化后的文献的标题的相似度,将相似标题的文献进行聚 类得到多个第一集合。所述第一集合包括至少两篇文献。

S13,在每个第一集合中计算文献的相似度,根据所计算的文献的相似 度筛选出多个符合条件的第一集合。

具体地,预先设置文献属性所对应的权重,所述文献属性可以是作者、 摘要、发表来源、发表时间等特征。在每一个第一集合中,根据预先设置的 文献属性所对应的权重,计算每个第一集合中各文献的相似度,将各文献的 相似度大于预设总分的第一集合确定为符合条件的第一集合。

举例而言,一个第一集合中有两篇文献,假设作者权重为4,摘要权重 为2,期刊权重为2,发表时间权重为2,预设总分为5,文献a的特征如下, 标题:AGeneralStabilityResultforViscoelasticEquationswithSingular Kernels,作者:MMCavalcanti,期刊:缺失,发表时间:1999-02-11,摘要 签名:b47b61cad59b93c5ad99e8820b71f4db;文献b的特征如下,标题:A GeneralStabilitiesResultforViscoelasticEquationswithSingularKernels,作者 MCMurphy,期刊:JournalofApplied&ComputationalMathematics,发表时 间:1999,摘要签名:b47b61cad59b93c5ad99e8820b71f4db;文献a与文献b 的作者相同,作者这个特征所对应的值为1*4,同理,文献a与文献b的发 表来源不同,发表来源这个特征所对应的值为0*2,因此,计算出的两篇文 献的相似度为:1*4+0*2+1*2+1*2=8>5,所以认为文献a与文献b 是相同的。若文献b与文献c也是相同,则文献a、文献b、文献c相同。这 样就可以将相同的文献聚类在一起。

S14,将筛选出的多个符合条件的第一集合中相同的文献进行聚类,并 将相同的文献的发表来源进行汇总。可以将相同的文献的发表来源的链接进 行汇总。

具体地,分别针对筛选出的每个符合条件的第一集合执行键值对形成过程, 一个符合条件的第一集合中所述键值对形成过程包括:分别将各文献作为key, 其他文献作为该key对应的value,从而形成至少两个key-value对;依据得到的 所有key-value对,将key相同的key-value对聚类到一个集;分别针对得到的集 合转至执行所述键值对形成过程,直至达到预设的迭代次数,所述预设的迭代 次数为经验值。

可以利用mapreduce模型将筛选出的多个符合条件的第一集合中相同的 文献进行聚类。具体地,将筛选出的每个符合条件的第一集合作为map阶段 的输入,在map阶段输出每个符合条件的第一集合所对应的key-value对。 将所有筛选出的多个符合条件的第一集合所对应的key-value对中key进行排 序,将排序后的所有key-value对作为reduce阶段的输入数据,在reduce阶 段将key相同的key-value对聚类到一个集合中,这样reduce阶段会输出多 个集合,每个集合中的文献再组成多个key-value对作为reduce阶段的输入, 利用上述方法多次迭代直至直至达到预设的迭代次数,将筛选出的多个符合 条件的第一集合中相同的文献聚合到一个类中,该类中包括该篇文献的所有 发表来源。

例如,如图4所示,若所筛选出的每个符合条件的第一集合中包括两篇 文献,所筛选出的多个符合条件的第一集合分别为(a,b),(b,c),(d,f),所筛 选出的多个符合条件的第一集合在map阶段输出的key-value对为a-b,b-a, b-c,c-b,d-f,f-d。将所有筛选出的多个符合条件的第一集合所对应的 key-value对中key排序后为:a-b,b-a,b-c,c-b,d-f,f-d,在reduce阶段 输出[ab],[abc],[cb],[df],[fd],按照上述方法,再将[ab]中两两文献 组成多个key-value对,即为a-b,b-a;同理将[abc]中两两文献组成多个 key-value对,[cb]中两两文献组成多个key-value对,[df]中两两文献组成多 个key-value对,[fd]中两两文献组成多个key-value对作为map阶段的输入, 如此多次迭代能得到(a,b,c)为一类,(d,f)为一类。

进一步,在其他实施方式中,一种利用本实施例中的文献归一方法的搜 索方法中包括接收用户输入的关键词;根据所述关键词,匹配出与所述关键 词所有相关联的文献;将所有相关联的文献及每篇相关联的文献汇总后的发 表来源发送给用户。具体地,将每篇相关联的文献汇总后的发表来源的链接 显示给用户。这样用户将同一篇文章的不同发表来源链接汇聚到一起,提升 了用户体验。如图5所示,是本发明将同一文献的发表来源汇聚在一起的示 意图,与图1所示的内容相比,图5中将与“simulationstudyonangle measurementaccuracyofstarsensor”相同的文献聚合在一起,并将该文献的 所有来源的链接呈现给用户,如图5中方框所框的地方,该相同文献的来源 包括:ReserchGate、SPIE、reviews.spiedigita,即将这些来源的相同文献进行 了聚合展现,并示出各来源,便于用户选择。

优选地,作为S12的一种实施方式,所述文献的标题的相似度根据文献 的标题签名之间的相似度及文献的标题之间的海明距离来确定,则S12中包 括:

S120,根据标准化后的文献的标题计算文献的标题的签名。

S121,根据每篇文献的标题的签名,将标题相似的文献进行聚类,得到 多个第一簇。所述第一簇至少包括两篇文献。

具体地,对任意一个标题的签名执行键值对形成过程,先将该标题的签 名切分成T份数,所述T为预设值,将该标题的每一个分块作为key,该标 题的签名作为value,这样该标题会对应T个key-value对。按照上述方法, 每个标题会对应的T个key-value对。当有两个标题各自对应的T个key-value 对中,至少有一个key相同时,将这两个标题所对应的文献聚类成一个第一 簇输出。

可以利用mapreduce模型将标题相似的文献进行聚类,得到多个第一簇, 所述mapreduce模型包括map阶段和reduce阶段。输入数据经过map处理, 再经过reduce处理,最终得到输出数据。map阶段的输出是key-value对的 形式。将每个标题的T个分块分别作为map阶段的输入,在则map阶段输 出每个标题所对应的T个key-value对。在reduce阶段,当两个标题各自对 应的T个key-value对中,至少有一个key相同时,reduce阶段将这两个标题 所对应的文献聚类成一个第一簇输出。

例如,如图6所示,文献a的标题的签名为111111000100100,分成四 份为1111,1110,0010,0100,文献b的标题的签名为1101111000000000分成 四份为1101,1110,0000,0000,从图6中可以看出,文献a的标题的签名的第 二个分块与文献b的标题的签名的第二个分块相同。即将文献a与文献b聚 类到一个第一簇中。

S122,根据每个第一簇中文献的标题的签名,计算每个第一簇中文献间 的海明距离。

如果两个标题签名的某一位置上对应的值不同,那么海明距离是1。若 有两个位置上对应的值不同,那么海明距离是2,依次类推。举例而言,文 献a的标题的签名为111111000100100,文献b的标题的签名为 1101111000000000,文献a与文献b的第3位数,第11位数,第14位数不 同,则文献a与文献b的海明距离为3。

S123,筛选出海明距离小于或等于预设阈值的第一簇,所筛选出的多个 符合条件的第一簇即为将相似标题的文献进行聚类所得到的多个第一集合。

在其他实施方式中,所述文献的标题的相似度可以根据文献的标题签名 之间的相似度或者文献的标题之间的海明距离来确定。

优选地,作为S120的一种实施方式,在S120中还可包括:

(1)将文献的标题切分成多个子标题,如可以按照大写字母切分。计 算每个子标题的长度,提取子标题的长度大于预设长度的子标题。

举例而言,预设长度为10个字符,标准化后的标题为RGenre classificationviaanlz78-basedstringkernel,然后切分成R及Genre classificationviaanlz78-basedstringkernel。R为1个字符,其长度小于10 个字符,因此,R被排除。

(2)确定所提取的子标题的n-gram特征,所述n的取值从1到N,所 述N的取值根据所提取的子标题的长度设定。

举例而言,标题为“ABC”,若m取3,则该文献的标题的特征为[A,B, C,AB,BC,ABC]。

(3)依据所确定的n-gram特征,计算文献的标题的签名。可以利用 simhash算法计算文献的标题的签名,计算出来文献的标题的签名是由0及1 组成的n位签名。例如为64位签名,16位签名等。

在上述文献归一方法的实施例一中仍有不足,由于网站采集,编辑,编 码的原因,同一篇文献的各个发表来源的标题可能差距比较大,为了克服上 述问题,在用文献的标题进行聚类的同时,并行地利用文献的第一作者,发 表来源及发表时间进行聚类,弥补只用标题聚类的不足。

如图7所示,是本发明文献归一方法的实施例二的流程示意图,该文献 归一方法包括:

S20,获取所有网站来源的文献。

具体地,通过网络爬虫的方式从所有网站获取文献。

S21,对所获取的文献进行标准化。

在本发明的实施例中,所述标准化是对文件的属性进行标准化,所述文 献的属性包括,标题、作者、摘要、发表来源、发表时间等。

具体地,对标题的标准化包括,对标题的切分、半角全角的统一化、去 掉标题的标点等。

由于站点的作者可能缩写是不同的,需要对文献的作者进行标准化。对 作者的标准化的原理是提取文献的第一作者的全名,将第一作者的全名切分 成多个单词,提取每个单词的首字母,最后将提取的所有首字母排序成文献 所对应的作者。在将第一作者的全名切分成多个单词时,当有多个大写字母 缩写在一起时,将每个大写字母切分成一个单词。

对摘要的标准化的原理为提取摘要的主体部分,计算主体部分中句子的 长度,找出长度最长的句子,计算文献的摘要的签名。在其他实施方式中, 也可以是其他长度的句子。可以利用消息摘要算法第五版(MessageDigest Algorithm,MD5)计算文献的摘要的签名。

发表来源包括期刊、会议、文献集等。对发表来源的标准化主要是统一 发表来源的格式,包括统一大小写、删除符号、半角全角的统一化等。

对发表时间的标准化包括,从发表时间中提取年份。在网络上,文献的 发表时间会有各种不同的时间格式,对发表时间的标准化包括从各种不同的 时间格式中提取年份。当然,除了仅提取年份的方式之外,也可以采用统一 成相同表述的方式。

S22,根据标准化后的文献的标题的相似度,将相似标题的文献进行聚 类得到多个第一集合,并行地根据标准化后的文献的第一作者,发表来源及 发表年份的相似度,将相似的文献进行聚类得到多个第二集合。

S23,在每个第一集合中计算文献的相似度,根据所计算的文献的相似 度筛选出多个符合条件的第一集合,及在每个第二集合中计算文献的相似度, 根据所计算的文献的相似度筛选出多个符合条件的第二集合。

具体地,预先设置文献属性所对应的权重,所述文献属性可以是作者、 摘要、发表来源、发表时间等特征。在每一个第一集合及第二集合中,根据 预先设置的各文献所对应的权重,计算每个第一集合及第二集合中各文献的 相似度,将各文献的相似度大于预设总的第一集合或者第二集合中确定为一 个符合条件的第一集合或者第二集合。

S24,对筛选出的多个符合条件的第一集合及筛选出的多个符合条件的 第二集合,进行相同的文献进行聚类,并将相同的文献的发表来源进行汇总。 可以将相同的文献的发表来源的链接进行汇总。

具体地,分别针对筛选出的每个符合条件的第一集合及第二集合执行键 值对形成过程,一个符合条件的第一集合或者第二集合中所述键值对形成过 程包括:分别将各文献作为key,其他文献作为该key对应的value,从而形 成至少两个key-value对;依据得到的所有key-value对,将key相同的 key-value对聚类到一个集;分别针对得到的集合转至执行所述键值对形成过 程,直至达到预设的迭代次数,将筛选出的多个符合条件的第一集合及第二 集合中相同的文献聚合到一个类中。所述预设的迭代次数为经验值。

可以利用mapreduce模型将筛选出的多个符合条件的第一集合及第二集 合中相同的文献进行聚类。具体地,将筛选出的每个符合条件的第一集合及 第二集合作为map阶段的输入,在map阶段输出每个符合条件的第一集合及 第二集合所对应的key-value对。将所有筛选出的多个符合条件的第一集合及 第二集合所对应的key-value对中key进行排序,将排序后的所有key-value 对作为reduce阶段的输入数据,在reduce阶段将key相同的key-value对聚 类到一个集合中,这样reduce阶段会输出多个集合,每个集合中的文献再组 成多个key-value对作为reduce阶段的输入,利用上述方法多次迭代直至达 到预设的迭代次数,将筛选出的多个符合条件的第一集合及第二集合中相同 的文献聚合到一个类中,该类中包括该篇文献的所有发表来源。

进一步,在其他实施方式中,一种利用本实施例中的文献归一方法的搜 索方法中包括接收用户输入的关键词;根据所述关键词,匹配出与所述关键 词所有相关联的文献;将所有相关联的文献及每篇相关联的文献汇总后的发 表来源发送给用户。具体地,将每篇相关联的文献汇总后的发表来源的链接 显示给用户。这样用户将同一篇文章的不同发表来源链接汇聚到一起,提升 了用户体验。

优选地,作为S22的一种实施方式,所述文献的标题的相似度根据文献 的标题签名之间的相似度及文献的标题之间的海明距离来确定。所述文献的 作者,发表来源及发表年份的相似度的确定是先将标准化后的文献的作者, 发表来源及发表年份合并为字符串,计算合并后的字符串的签名,再根据文 献的合并后的字符串的签名之间的相似度及文献的合并后的字符串之间的海 明距离来确定。则S22中包括:

S220,根据标准化后文献的标题计算文献的标题的签名,及将标准化后 的文献的第一作者,发表来源及发表年份合并为字符串,计算合并后的字符 串的签名。

例如,文献的第一作者为MCMurphy,发表来源为JournalofApplied ComputationalMathematics,发表时间为,1999,合并成字符串为MC Murphy/JournalofAppliedComputationalMathematics/1999。

S221,根据每篇文献的标题的签名,将两个标题相似的文献进行聚类, 得到多个第一簇,及根据每篇文献的合并后的字符串的签名,将两个合并后 的字符串相似的文献进行聚类,得到多个第二簇。所述第一簇或者第二簇至 少包括两篇文献。

具体地,对任意一个标题的签名执行键值对形成过程,先将该标题的签 名切分成T份数,所述T为预设值,将该标题的每一个分块作为key,该标 题的签名作为value,这样该标题会对应T个key-value对。按照上述方法, 每个标题会对应的T个key-value对。当有两个标题各自对应的T个key-value 对中,至少有一个key相同时,将这两个标题所对应的文献聚类成一个第一 簇输出。同理,针对每篇文献的合并后的字符串的签名,执行上述方法。当 两个合并后的字符串各自对应的T个key-value对中,至少有一个key相同 时,将这两个合并后的字符串所对应的文献聚类成一个第二簇输出。

可以利用mapreduce模型将标题相似的文献进行聚类,得到多个第一簇, 所述mapreduce模型包括map阶段和reduce阶段。输入数据经过map处理, 再经过reduce处理,最终得到输出数据。map阶段的输出是key-value对的 形式。将每个标题的T个分块分别作为map阶段的输入,在则map阶段输 出每个标题所对应的T个key-value对。在reduce阶段,当两个标题各自对 应的T个key-value对中,至少有一个key相同时,reduce阶段将这两个标题 所对应的文献聚类成一个第一簇输出。同理,可以利用mapreduce模型将两 个合并后的字符串相似的文献进行聚类,得到多个第二簇。

S222,根据每个第一簇中各文献的标题的签名,计算每个第一簇中各文 献间的海明距离,及根据每个第二簇中各篇文献的合并后的字符串的签名, 计算每个第二簇中各文献间的海明距离。

如果两个标题签名的某一位置上对应的值不同,那么海明距离是1。若 有两个位置上对应的值不同,那么海明距离是2,依次类推。如果两个合并 后的字符串的签名的某一位置上对应的值不同,那么海明距离是1。若有两 个位置上对应的值不同,那么海明距离是2,依次类推。

S223,筛选出海明距离小于或等于预设阈值的第一簇,所筛选出的多个 符合条件的第一簇即为将相似标题的文献进行聚类所得到的多个第一集合, 及筛选出海明距离小于或等于预设阈值的第二簇,所筛选出的多个符合条件 的第二簇即为将相似的合并后的字符串所对应的文献进行聚类所得到的多个 第二集合。

在其他实施方式中,所述文献的标题的相似度可以根据文献的标题签名 之间的相似度或者文献的标题之间的海明距离来确定。所述文献的作者,发 表来源及发表年份的相似度的可以根据文献的合并后的字符串的签名之间的 相似度或者文献的合并后的字符串之间的海明距离来确定。

优选地,作为S220的一种实施方式,在S220中还可包括:

(1)将文献的标题切分成多个子标题,如可以按照大写字母切分。计 算每个子标题的长度,提取子标题的长度大于预设长度的子标题。

(2)将合并后的字符串切分成多个子字符串,计算每个子字符串的长 度,提取子字符串的长度大于预设长度的子字符串。

(3)确定所提取的子标题的n-gram特征,所述n的取值从1到N,所 述N的取值根据所提取的子标题的长度设定。

(4)确定所提取的子字符串的n-gram特征。

(5)依据所确定的n-gram特征,计算文献的标题的签名。可以利用 simhash算法计算文献的标题的签名,计算出来的文献的标题的签名是由0 及1组成的n位签名。

(6)确定所提取的子字符串的n-gram特征,计算文献的合并后的字符 串的签名。可以利用simhash算法计算合并后的字符串的签名,计算出来的 合并后的字符串的签名是由0及1组成的n位签名。

实施例三

图8是本发明文献归一的装置的实施例的结构示意框图。参照图8所示, 该装置包括:获取单元100、标准化单元101、第一聚类单元102、第一筛选 单元103及第二聚类单元104。

获取单元100用于获取所有网站来源的文献。

具体地,通过网络爬虫的方式从所有网站获取文献。

标准化单元101用于对所获取的文献进行标准化。

在本发明的实施例中,所述标准化是对文件的属性进行标准化,所述文 献的属性包括,标题、作者、摘要、发表来源、发表时间等进行标准化。

具体地,标准化单元101对标题的标准化包括,对标题的切分半角全角 的统一化去掉标题的标点等。

标准化单元101对作者的标准化的原理是提取文献的第一作者的全名, 将第一作者的全名切分成多个单词,提取每个单词的首字母,最后将提取的 所有首字母排序成文献所对应的作者。在将第一作者的全名切分成多个单词 时,当有多个大写字母缩写在一起时,将每个大写字母切分成一个单词。

标准化单元101对摘要的标准化的原理为提取摘要的主体部分,计算主 体部分中句子的长度,找出长度最长的句子,计算文献的摘要的签名。在其 他实施方式中,也可以是其他长度的句子。可以利用消息摘要算法第五版 (MessageDigestAlgorithm,MD5)计算文献的摘要的签名。

发表来源包括,期刊,会议,文献集等。标准化单元101对发表来源的 标准化主要是统一发表来源的格式,包括统一大小写、删除符号、半角全角 的统一化等。

标准化单元101对发表时间的标准化包括,从发表时间中提取年份。在 网络上,文献的发表时间会有各种不同的时间格式,标准化单元101可以从 各种不同的时间格式中提取年份。当然,除了仅提取年份的方式之外,也可 以采用统一成相同表述的方式。

第一聚类单元102用于根据标准化后的文献的标题的相似度,将相似标 题的文献进行聚类得到多个第一集合。所述第一集合包括至少两篇文献。

第一筛选单元103用于在每个第一集合中计算文献的相似度,根据所计 算的文献的相似度筛选出多个符合条件的第一集合。

具体地,第一筛选单元103用于:预先设置文献属性所对应的权重,所 述文献属性可以是作者、摘要、发表来源、发表时间等特征。在每一个第一 集合中,根据预先设置的文献属性所对应的权重,计算每个第一集合中各文 献的相似度,将各文献的相似度大于预设总分的第一集合确定为符合条件的 第一集合。

第二聚类单元104用于将筛选出的多个符合条件的第一集合中相同的文 献进行聚类,并将相同的文献的发表来源进行汇总。可以将相同的文献的发 表来源的链接进行汇总。

具体地,第二聚类单元104用于:分别针对筛选出的每个符合条件的第一 集合执行键值对形成过程,一个符合条件的第一集合中所述键值对形成过程包 括:分别将各文献作为key,其他文献作为该key对应的value,从而形成至少 两个key-value对;依据得到的所有key-value对,将key相同的key-value对聚 类到一个集;分别针对得到的集合转至执行所述键值对形成过程,直至达到预 设的迭代次数,将筛选出的多个符合条件的第一集合中相同的文献聚合到一个 类中。

可以利用mapreduce模型将筛选出的多个符合条件的第一集合中相同的 文献进行聚类。具体地,将筛选出的每个符合条件的第一集合作为map阶段 的输入,在map阶段输出每个符合条件的第一集合所对应的key-value对。 将所有筛选出的多个符合条件的第一集合所对应的key-value对中key进行排 序,将排序后的所有key-value对作为reduce阶段的输入数据,在reduce阶 段将key相同的key-value对聚类到一个集合中,这样reduce阶段会输出多 个集合,每个集合中的文献再组成多个key-value对作为reduce阶段的输入, 利用上述方法多次迭代直至达到预设的迭代次数,将筛选出的多个符合条件 的第一集合中相同的文献聚合到一个类中,该类中包括该篇文献的所有发表 来源。

如图9所示,是本发明第一聚类单元102的实施例的结构示意图。第一 聚类单元102包括签名计算单元1020、签名聚类单元1021、距离计算单元 1022及第二筛选单元1023。

签名计算单元1020用于根据标准化后的文献的标题计算文献的标题的 签名。

签名聚类单元1021用于根据每篇文献的标题的签名,将两个标题相似 的文献进行聚类,得到多个第一簇。所述第一簇至少包括两篇文献。

具体地,签名聚类单元1021用于:对任意一个标题的签名执行键值对 形成过程,先将该标题的签名切分成T份数,所述T为预设值,将该标题的 每一个分块作为key,该标题的签名作为value,这样该标题会对应T个 key-value对。按照上述方法,每个标题会对应的T个key-value对。当有两 个标题各自对应的T个key-value对中,至少有一个key相同时,将这两个 标题所对应的文献聚类成一个第一簇输出。

可以利用mapreduce模型将标题相似的文献进行聚类,得到多个第一簇, 所述mapreduce模型包括map阶段和reduce阶段。输入数据经过map处理, 再经过reduce处理,最终得到输出数据。map阶段的输出是key-value对的 形式。将每个标题的T个分块分别作为map阶段的输入,在则map阶段输 出每个标题所对应的T个key-value对。在reduce阶段,当两个标题各自对 应的T个key-value对中,至少有一个key相同时,reduce阶段将这两个标题 所对应的文献聚类成一个第一簇输出。

距离计算单元1022用于根据每个第一簇中文献的标题的签名,计算每 个第一簇中文献间的海明距离。

第二筛选单元1023筛选出海明距离小于或等于预设阈值的第一簇,所 筛选出的多个符合条件的第一簇即为将相似标题的文献进行聚类所得到的多 个第一集合。

在上述实施例中,所述文献的标题的相似度根据文献的标题签名之间的 相似度及文献的标题之间的海明距离来确定。在其他实施方式中,所述文献 的标题的相似度可以根据文献的标题签名之间的相似度或者文献的标题之间 的海明距离来确定。

如图10所示,是本发明签名计算单元的实施例的结构示意图。签名计 算单1020包括提取单元10201、确定单元10202及计算单元10203。

提取单元10201用于将文献的标题切分成多个子标题,如可以按照大写 字母切分。计算每个子标题的长度,提取子标题的长度大于预设长度的子标 题。

确定单元10202用于确定所提取的子标题的n-gram特征,所述n的取值 从1到N,所述N的取值根据所提取的子标题的长度设定。

计算单元10203用于依据所确定的n-gram特征,计算文献的标题的签名。 可以利用simhash算法计算文献的标题的签名,计算出来文献的标题的签名 是由0及1组成的n位签名。例如为64位签名、16位签名等。

实施例四

参照图8所示,所述装置中的获取单元100、标准化单元101、第一聚 类单元102、第一筛选单元103及第二聚类单元104还用于实施例四中。具 体如下:

获取单元100用于获取所有网站来源的文献。

具体地,通过网络爬虫的方式从所有网站获取文献。

标准化单元101用于对所获取的文献进行标准化。

在本发明的实施例中,所述标准化是对文件的属性进行标准化,所述文 献的属性包括,标题、作者、摘要、发表来源、发表时间等。

具体地,标准化单元101用于对标题的标准化包括,对标题的切分、半 角全角的统一化、去掉标题的标点等。

标准化单元101对作者的标准化的原理是提取文献的第一作者的全名, 将第一作者的全名切分成多个单词,提取每个单词的首字母,最后将提取的 所有首字母排序成文献所对应的作者。在将第一作者的全名切分成多个单词 时,当有多个大写字母缩写在一起时,将每个大写字母切分成一个单词。

标准化单元101对摘要的标准化的原理为提取摘要的主体部分,计算主 体部分中句子的长度,找出长度最长的句子,计算文献的摘要的签名。在其 他实施方式中,也可以是其他长度的句子。可以利用消息摘要算法第五版 (MessageDigestAlgorithm,MD5)计算文献的摘要的签名。

发表来源包括期刊,会议,文献集等。标准化单元101对发表来源的标 准化主要是统一发表来源的格式,包括统一大小写、删除符号、半角全角的 统一化等。

标准化单元101对发表时间的标准化包括,从发表时间中提取年份。在 网络上,文献的发表时间会有各种不同的时间格式,标准化单元101可以从 各种不同的时间格式中提取年份。当然,除了仅提取年份的方式之外,也可 以采用统一成相同表述的方式。

第一聚类单元102用于根据标准化后的文献的标题的相似度,将相似标 题的文献进行聚类得到多个第一集合,并行地根据标准化后的文献的第一作 者,发表来源及发表年份的相似度,将相似的文献进行聚类得到多个第二集 合。

第一筛选单元103用于在每个第一集合中计算文献的相似度,根据所计 算的文献的相似度筛选出多个符合条件的第一集合,及在每个第二集合中计 算文献的相似度,根据所计算的文献的相似度筛选出多个符合条件的第二集 合。

具体地,第一筛选单元103用于:在每一个第一集合及第二集合中,根 据预先设置的各文献所对应的权重,计算每个第一集合及第二集合中各文献 的相似度,将各文献的相似度大于预设总的第一集合或者第二集合中确定为 一个符合条件的第一集合或者第二集合。

第二聚类单元104用于对筛选出的多个符合条件的第一集合及筛选出的 多个符合条件的第二集合,进行相同的文献进行聚类,并将相同的文献的发 表来源进行汇总。可以将相同的文献的发表来源的链接进行汇总。

具体地,第二聚类单元104用于:分别针对筛选出的每个符合条件的第 一集合及第二集合执行键值对形成过程,一个符合条件的第一集合或者第二 集合中所述键值对形成过程包括:分别将各文献作为key,其他文献作为该 key对应的value,从而形成至少两个key-value对;依据得到的所有key-value 对,将key相同的key-value对聚类到一个集;分别针对得到的集合转至执行 所述键值对形成过程,直至达到预设的迭代次数,将筛选出的多个符合条件 的第一集合及第二集合中相同的文献聚合到一个类中。

可以利用mapreduce模型将筛选出的多个符合条件的第一集合及第二集 合中相同的文献进行聚类。具体地,将筛选出的每个符合条件的第一集合及 第二集合作为map阶段的输入,在map阶段输出每个符合条件的第一集合及 第二集合所对应的key-value对。将所有筛选出的多个符合条件的第一集合及 第二集合所对应的key-value对中key进行排序,将排序后的所有key-value 对作为reduce阶段的输入数据,在reduce阶段将key相同的key-value对聚 类到一个集合中,这样reduce阶段会输出多个集合,每个集合中的文献再组 成多个key-value对作为reduce阶段的输入,利用上述方法多次迭代直至达 到预设的迭代次数,将筛选出的多个符合条件的第一集合及第二集合中相同 的文献聚合到一个类中,该类中包括该篇文献的所有发表来源。

优选地,所述文献的标题的相似度根据文献的标题签名之间的相似度及 文献的标题之间的海明距离来确定。所述文献的作者,发表来源及发表年份 的相似度的确定是先将标准化后的文献的作者,发表来源及发表年份合并为 字符串,计算合并后的字符串的签名,再根据文献的合并后的字符串的签名 之间的相似度及文献的合并后的字符串之间的海明距离来确定。如图9所示, 第一聚类单元102中的签名计算单元1020、签名聚类单元1021、距离计算单 元1022及第二筛选单元1023还用于以下实施方式中。具体如下:

签名计算单元1020用于根据标准化后文献的标题计算文献的标题的签 名,及将标准化后的文献的第一作者,发表来源及发表年份合并为字符串, 计算合并后的字符串的签名。

签名聚类单元1021用于根据每篇文献的标题的签名,将两个标题相似 的文献进行聚类,得到多个第一簇,及根据每篇文献的合并后的字符串的签 名,将两个合并后的字符串相似的文献进行聚类,得到多个第二簇。所述第 一簇或者第二簇至少包括两篇文献。

具体地,签名聚类单元1021用于:对任意一个标题的签名执行键值对 形成过程,先将该标题的签名切分成T份数,所述T为预设值,将该标题的 每一个分块作为key,该标题的签名作为value,这样该标题会对应T个 key-value对。按照上述方法,每个标题会对应的T个key-value对。当有两 个标题各自对应的T个key-value对中,至少有一个key相同时,将这两个 标题所对应的文献聚类成一个第一簇输出。同理,针对每篇文献的合并后的 字符串的签名,执行上述方法。当两个合并后的字符串各自对应的T个 key-value对中,至少有一个key相同时,将这两个合并后的字符串所对应的 文献聚类成一个第二簇输出。

可以利用mapreduce模型将标题相似的文献进行聚类,得到多个第一簇, 所述mapreduce模型包括map阶段和reduce阶段。输入数据经过map处理, 再经过reduce处理,最终得到输出数据。map阶段的输出是key-value对的 形式。将每个标题的T个分块分别作为map阶段的输入,在则map阶段输 出每个标题所对应的T个key-value对。在reduce阶段,当两个标题各自对 应的T个key-value对中,至少有一个key相同时,reduce阶段将这两个标题 所对应的文献聚类成一个第一簇输出。同理,可以利用mapreduce模型将两 个合并后的字符串相似的文献进行聚类,得到多个第二簇。

距离计算单元1022用于根据每个第一簇中各文献的标题的签名,计算 每个第一簇中各文献间的海明距离,及根据每个第二簇中各文献的合并后的 字符串的签名,计算每个第二簇中文献间的海明距离。

如果两个标题签名的某一位置上对应的值不同,那么海明距离是1。若 有两个位置上对应的值不同,那么海明距离是2,依次类推。如果两个合并 后的字符串的签名的某一位置上对应的值不同,那么海明距离是1。若有两 个位置上对应的值不同,那么海明距离是2,依次类推。

第二筛选单元1023用于筛选出海明距离小于或等于预设阈值的第一簇, 所筛选出的多个符合条件的第一簇即为将相似标题的文献进行聚类所得到的 多个第一集合,及筛选出海明距离小于或等于预设阈值的第二簇,所筛选出 的多个符合条件的第二簇即为将相似的合并后的字符串所对应的文献进行聚 类所得到的多个第二集合。

在其他实施方式中,所述文献的标题的相似度可以根据文献的标题签名 之间的相似度或者文献的标题之间的海明距离来确定。所述文献的作者,发 表来源及发表年份的相似度的可以根据文献的合并后的字符串的签名之间的 相似度或者文献的合并后的字符串之间的海明距离来确定。

如图10所示,签名计算单1020中的提取单元10201,确定单元10202 及计算单元10203还用于以下实施方式中。具体如下:

提取单元10201用于将文献的标题切分成多个子标题,如可以按照大写 字母切分。计算每个子标题的长度,提取子标题的长度大于预设长度的子标 题。

提取单元10201还用于将合并后的字符串切分成多个子字符串,计算每 个子字符串的长度,提取子字符串的长度大于预设长度的子字符串。

确定单元10202用于确定所提取的子标题的n-gram特征,所述n的取值 从1到N,所述N的取值根据所提取的子标题的长度设定。

确定单元10202还用于确定所提取的子字符串的n-gram特征。

计算单元10203用于依据所确定的n-gram特征,计算文献的标题的签名。 可以利用simhash算法计算文献的标题的签名,计算出来的文献的标题的签 名是由0及1组成的n位签名。

计算单元10203还用于确定所提取的子字符串的n-gram特征,计算文献 的合并后的字符串的签名。可以利用simhash算法计算合并后的字符串的签 名,计算出来的合并后的字符串的签名是由0及1组成的n位签名。

在上述四个实施例中,上述第一集合和第二集合仅是为了区分两种方式 得到的文献集合所产生的表述上的差异。

在其他实施例中,可以利用实施例一或者实施例二中所述文献归一方法 进行搜索的装置,如图11所示,包括:接收单元200,匹配单元201及展现 单元202。

接收单元200,用于接收用户输入的关键词。

匹配单元201,用于根据所述关键词,匹配出与所述关键词所有相关联 的文献。

展现单元202,用于将所有相关联的文献及每篇相关联的文献汇总后的 发表来源发送给用户。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和 方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示 意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可 以有另外的划分方式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方, 或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元 中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一 个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加 软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机 可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指 令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等) 或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述 的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、 随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可 以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号