本发明属于数据挖掘技术领域,尤其涉及一种作者关系在线挖掘方法及系统。
背景技术:
通过查找学术团队并挖掘学术团队中作者之间的关系,有助于了解学术团队的兴趣以及该领域的研究动态,并且可以了解团队中作者的关系强度,研究作者的兴趣变化。
随着网络的发展,用户经常访问网络以查找并获取所需要的信息。但是,现有技术中并没有提供在线查找学术团队并挖掘学术团队中作者之间的关系的方法,使得不能在学术文献网络环境下,在线挖掘出作者之间的关系。
技术实现要素:
有鉴于此,本发明的目的在于提供一种作者关系在线挖掘方法及系统,以解决现有不能在线挖掘出作者关系的问题。
技术方案如下:
本发明提供一种作者关系在线挖掘方法,包括:
根据爬行队列中的统一资源定位符url获取目标页面;
将所述目标页面解析为文档对象模型;
根据内容分割策略将所述文档对象模型划分为多个内容块;分别从每个所述内容块中提取作者信息;
根据所述作者信息,对所述内容块进行增量层次化聚类,得到聚簇;
对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系。
优选地,所述根据所述作者信息,对所述内容块进行聚类,得到聚簇包括:
从所述作者信息中获取特征;
基于公式:
其中,基于公式:
基于公式:
若cv(ci,cj)取值为1,则将聚簇ci和聚簇cj合并为一个聚簇。
优选地,所述分别从每个所述内容块中提取作者信息包括:
分别对每个所述内容块进行预处理,得到预处理后的内容块;
分别从每个所述预处理后的内容块中提取作者信息。
优选地,在所述根据所述作者信息,对所述内容块进行聚类,得到聚簇之后,在所述对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系之前,还包括:
计算输入的匹配特征与各个所述聚簇之间的相似性;
根据所述相似性,确定目标聚簇;
获取所述目标聚簇中的url;
将所述目标聚簇中的url加入到爬行队列,返回执行从爬行队列中获取目标页面的步骤及其后续步骤。
优选地,所述将所述目标聚簇中的url加入到爬行队列,返回执行从爬行队列中获取目标页面的步骤及其后续步骤包括:
确定所述目标聚簇中的url是否位于所述爬行队列中;
确定所述目标聚簇中的url没有位于所述爬行队列中,则将所述目标聚簇中的url加入爬行队列,并返回执行从爬行队列中获取目标页面的步骤及其后续步骤。
优选地,所述对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系包括:
基于关联分析算法,从各个所述聚簇中提取关联规则;
通过置信度计算团队中作者间的关系强度。
本发明还提供了一种作者关系在线挖掘系统,包括:
第一获取单元,用于根据爬行队列中的统一资源定位符url获取目标页面;
解析单元,用于将所述目标页面解析为文档对象模型;
划分单元,用于根据内容分割策略将所述文档对象模型划分为多个内容块;提取单元,用于分别从每个所述内容块中提取作者信息;
聚类单元,用于根据所述作者信息,对所述内容块进行增量层次化聚类,得到聚簇;
挖掘单元,用于对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系。
优选地,所述提取单元包括:
预处理子单元,用于分别对每个所述内容块进行预处理,得到预处理后的内容块;
第一提取子单元,用于分别从每个所述预处理后的内容块中提取作者信息。
优选地,还包括:
计算单元,用于计算输入的匹配特征与各个所述聚簇之间的相似性;
确定单元,用于根据所述相似性,确定目标聚簇;
第二获取单元,用于获取所述目标聚簇中的url;
加入单元,用于将所述目标聚簇中的url加入到爬行队列,并调用所述第一获取单元。
优选地,所述挖掘单元包括:
第二提取子单元,用于基于关联分析算法,从各个所述聚簇中提取关联规则;
关系计算子单元,用于通过置信度计算团队中作者间的关系强度。
与现有技术相比,本发明提供的上述技术方案具有如下优点:
从上述技术方案可知,本申请中根据爬行队列中的url获取目标页面并将所述目标页面解析为文档对象模型;根据内容分割策略将所述文档对象模型划分为多个内容块;分别从每个所述内容块中提取作者信息,并在完成爬取操作后根据提取到的作者信息,对内容块进行增量层次化聚类,得到聚簇;对各个所述聚簇中的作者信息进行关联规则挖掘,实现了在线从网页中挖掘作者之间关系的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种作者关系在线挖掘方法的流程图;
图2是本发明实施例中实现聚类的示意图;
图3是本发明实施例中对内容块聚类后得到的结果示意图;
图4是本发明实施例确定得到的作者之间的关系的示意图;
图5是本发明实施例提供的另一种作者关系在线挖掘方法的流程图;
图6是本发明实施例提供的根据选取的种子链接获取到的目标页面示意图;
图7是本发明实施例提供的一种作者关系在线挖掘系统的结构示意图;
图8是本发明实施例提供的另一种作者关系在线挖掘系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例公开了一种作者关系在线挖掘方法,参见图1,该实施例包括以下步骤:
s101、根据爬行队列中的统一资源定位符url获取目标页面;
互联网上的每个网页都有自己唯一的统一资源定位符url,基于网络爬行技术从互联网的网页中搜索内容是从一组初始种子url开始的,这些种子url被添加到爬行队列中。基于爬行队列中的url,采用多个线程执行根据url下载网页的操作,从下载得到的网页中获取目标页面。
s102、将所述目标页面解析为文档对象模型;
在将目标页面解析为文档对象模型(documentobjectmodel,dom)之前,先将html页面整理成格式规范的web页面,对整理后得到的web页面进行解析得到页面的dom树。通过对页面解析之前进行整理操作,可以简化对页面的分析,进而加快解析得到dom树的进度。
可选地,本实施例中采用htmltidy工具将html页面整理成格式规范的web页面。
文档对象模型(documentobjectmodel,简称dom),是w3c组织推荐的处理可扩展标志语言的标准编程接口,在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为dom。
s103、根据内容分割策略将所述文档对象模型划分为多个内容块;
在执行爬行前需要预先制定爬行策略,对与用户输入信息的相关性的判断基本单位可以选择锚文本、连接上下文、内容块,判断基本单位决定了dom树中子树的大小。根据不同的判断基本单位,确定得到的内容分割策略是不同的,进而基于内容分割策略划分得到的内容块的大小是不同的。
dom树中的每个节点都可以表示一个内容块,每个内容块都是由标记构造以及标识的。
本实施例中在对作者关系在线挖掘这一应用场景下,将网页中每一条文献记录划分为一个内容块。在其他实施例中,在对作者关系在线挖掘这一应用场景下,还可以将网页中文献划分为一个内容块,在标识文献的这一内容块下,包括多条文献记录。即文献内容块作为一个节点,在文献内容块这一节点的下一层节点中包括多个子节点,每个子节点表示一条文献记录。
s104、分别从每个所述内容块中提取作者信息;
本实施例中每一条文献记录划分为一个内容块,每条文献记录中包括文献题目、文献作者以及文献出版物等内容。需要从每个内容块中分别提取出作者信息,具体为作者名称。通常情况下,一篇文献对应的作者信息为由多个作者名称组成的作者组。如,从一个内容块中提取到的作者信息为由taopeng,wanlizuo,yilinliu三个作者名称组成的作者组。
在其他实施例中,若划分得到的内容块为文献内容块,则需要先从多个内容块中定位到文献内容块,然后在从文献内容块中分别提取每个子节点内的作者信息。
s105、根据所述作者信息,对所述内容块进行增量层次化聚类,得到聚簇;
本实施例中聚类过程是用于文献作者团队发现以及作者关系挖掘的,采用基于特征的层次聚类方法,采用自底向上的策略。
在初始状态下,将每个内容块作为一个聚簇,并根据聚簇中的作者信息,计算两个聚簇之间的相似度;若两个聚簇之间的相似度不满足预定条件,则认为两个聚簇不属于同一类,再分别计算这两个聚簇与其他聚簇之间的相似度;
若两个聚簇之间的相似度满足预定条件,则将两个聚簇合并为一个聚簇,得到一个新的聚簇,再计算这一新的聚簇与其他聚簇之间的相似度;
通过重复执行合并两个聚簇的操作,完成对所述内容块的聚类,得到聚簇。
如图2所示,内容块包括c1、c2、······、ci,初始状态下,将c1、c2、······、ci分别作为一个聚簇,如图2(a)所示,对于聚簇ci,根据聚簇ci中的作者信息以及聚簇c2中的作者信息,计算聚簇ci与聚簇c2之间的相似度,确定聚簇ci与聚簇c2之间的相似度满足预定条件,将聚簇ci与聚簇c2合并为一个新的聚簇,记为cb,如图2(b)所示;合并得到聚簇cb后,聚簇cb内的作者信息包括聚簇ci中的作者信息和聚簇c2中的作者信息,基于聚簇cb内的作者信息以及聚簇c5中的作者信息,计算聚簇cb与聚簇c5之间的相似度,确定聚簇cb与聚簇c5之间的相似度满足预定条件,将聚簇cb与聚簇c5合并为一个新的聚簇,记为cc,如图2(c)所示;同理,将聚簇c6与聚簇c9合并为一个新的聚簇,记为ca;将聚簇c1、c3、c4、c7、c8聚类为一个新的聚簇。
通过对内容块进行的增量层次化聚类,最终得到三个聚簇,分别为聚簇c1、c3、c4、c7、c8聚类成的一个聚簇、聚簇cc以及聚簇ca。如图2(c)所示,每个虚线框构成一个聚簇。
需要注意的是,在其他实施例中,若内容块为文献内容块,那么执行的不是对文献内容块的聚类,而是对文献内容块下的子节点即文献记录的聚类。
参见图3所示,为本实施例中对内容块聚类后得到的结果。将标号0-28分别对应的每组作者,聚类为聚簇1。
s106、对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系。
本实施例中,基于关联分析算法,如fp-growth算法,从各个所述聚簇中提取关联规则,并通过置信度计算团队中作者间的关系强度。
具体地,对聚簇中每组作者进行关联规则提取,通过频繁模式树中的各节点构造条件模式库,并采用分治策略,将表示频繁项的数据集构建频繁模式树,其包含与频繁模式挖掘相关的数据集的完整信息;递归挖掘条件模式树并生成所获得的频繁模式,通过置信度计算团队中作者间关系强度。
如图4所示,为本实施例中确定得到的作者之间的关系。fenglinghe与wanlizuo之间的关系强度为100%,即文献中的作者有fenglinghe,则此篇文献中的作者一定有wanlizuo。
从上述技术方案可知,本实施例中根据爬行队列中的url获取目标页面并将所述目标页面解析为dom树;根据内容分割策略将所述dom树划分为多个内容块;分别从每个所述内容块中提取作者信息,并在完成爬取操作后根据提取到的作者信息,对内容块进行增量层次化聚类,得到聚簇;对各个所述聚簇中的作者信息进行关联规则挖掘,实现了从网页中挖掘到作者之间的关系,进而提供了一种作者关系在线挖掘的方法。
同时,本实施例中基于dom对web页面进行分区得到多个内容块,不能使得web页面内容更加精练,而且不会淡化和混淆web页面中高度相关的区域,相较于现有技术中使用原始html标记进行聚类爬行,本实施例中将每个内容块作为提取内容的对象,而不是将整个web页面作为提取内容的对象,提高了聚类爬行的性能。另外,使用增量层次化聚类方法,可以使聚类过程获得良好的速度和可扩展性。
本实施例中提供了另一种作者关系在线挖掘方法,参见图5所示,该实施例包括以下步骤:
s201、根据爬行队列中的统一资源定位符url获取目标页面;
在初始执行爬行的过程中,需要选取种子链接,其中选取的种子链接对爬行层数以及爬行结果产生影响。本实施例中根据团队中作者的知名度或者作者发表论文的数量,选取种子链接。如,选择知名度最高的作者或者发表论文的数量最大的作者相关的网页链接作为种子链接。根据种子链接获取网页,并从获取到的网页中获取目标页面。
如图6所示,为本实施例提供的根据选取的种子链接获取到的目标页面示意图。
s202、将所述目标页面解析为文档对象模型;
s203、根据内容分割策略将所述文档对象模型划分为多个内容块;本实施例中步骤s202-s203的实现方式与上一实施例中步骤s102-s103的实现方式类似,此处不再赘述。
s204、分别从每个所述内容块中提取作者信息;
本实施例中在从内容块中提取作者信息时,先对内容块进行预处理,然后从预处理后的内容块中提取作者信息。从预处理后的内容块中提取作者信息的实现方式与上一实施例中步骤s104中从内容块中提取作者信息的方式类似,但是经过对内容块的预处理,可以提高提取作者信息的效率以及准确性。
其中,预处理包括对内容块中的文献作者、文献题目以及文献出版物等内容的分割,还包括对网页清洗,如对多余或者丢失标记的处理、对空格的处理等。
s205、根据所述作者信息,对所述内容块进行增量层次化聚类,得到聚簇;
本实施例中聚类过程是用于文献作者团队发现以及作者关系挖掘的,采用基于特征的层次聚类方法,采用自底向上的策略。
从所述作者信息中获取到特征,其中,特征可以为词汇。
基于公式:
其中,基于公式
基于公式:
若cv(ci,cj)取值为1,则将聚簇ci和聚簇cj合并为一个聚簇;
若cv(ci,cj)取值为0,则不将聚簇ci和聚簇cj合并为一个聚簇。
即预定条件为
本实施例中从内容块中提取到的是文献的作者列表,因此内容块中的特征少,通常不超过10个特征,是短文本微聚类的过程。
s206、计算输入的匹配特征与各个所述聚簇之间的相似性;
得到聚簇后输入匹配特征,并计算输入的匹配特征与得到的多个聚簇之间的相似性。
s207、根据所述相似性,确定目标聚簇;
确定匹配特征与多个聚簇之间的相似性最大的聚簇,作为目标聚簇。其中,输入的匹配特征不同将导致确定得到的目标聚簇是不同的。
s208、获取所述目标聚簇中的url;
获取到的目标聚簇中的url至少为一项。
s209、确定所述目标聚簇中的url是否位于所述爬行队列中;
确定所述目标聚簇中的url没有位于所述爬行队列中,则执行步骤s210;
确定所述目标聚簇中的url位于所述爬行队列中,则忽略所述目标聚簇中的url,并执行步骤s211;
若确定所述目标聚簇中的url没有位于爬行队列中,则说明没有对此url指定的web页面进行过处理,则将此url加入爬行队列的尾部,等待对此url指定的web页面的处理,实现了对目标聚簇中的url的跟踪。
s210、将所述目标聚簇中的url加入到爬行队列,返回执行步骤s201;
当一个新的url加入到爬行队列后,需要调整爬行队列中url的顺序,在本实施例中将目标聚簇中的url加入到爬行队列的尾部,使得先加入爬行队列中的url先处理,后加入爬行队列中的url后处理。
s211、确定是否满足爬行停止条件;
若确定满足爬行停止条件,则执行步骤s212;
若确定不满足爬行停止条件,则返回执行步骤s201;爬行停止条件可以设置最大时间,即当间隔最大时间后都没有新的url加入爬行队列中,则确定满足爬行停止条件;否则,确定不满足爬行停止条件,需要继续执行爬行操作;
爬行停止条件还可以设置为爬行层数,即当爬行层数达到预设爬行层数后,确定满足爬行停止条件;否则,确定不满足爬行停止条件,需要继续执行爬行操作。
可以理解的是,本实施例中并不是只有在确定目标聚簇中的url位于爬行队列中后,才执行确定是否满足爬行停止条件的操作,可以在执行完步骤s205的聚类操作后就确定是否满足爬行停止条件的操作。
s212、对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系。
本实施例中步骤s212的实现方式与上一实施例中步骤s106的实现方式类似,此处不再赘述。
从上述技术方案可知,本实施例中基于dom对web页面进行分区得到多个内容块,分别从每个所述内容块中提取作者信息,并在完成爬取操作后根据提取到的作者信息,对内容块进行增量层次化聚类,得到聚簇;对各个所述聚簇中的作者信息进行关联规则挖掘,实现了作者关系在线挖掘。由于从内容块中提取到的是文献的作者列表,因此内容块中的特征少,通常不超过10个特征,是短文本微聚类的过程,且在一个在线文献网络环境中利用聚类爬行技术挖掘出作者之间的关系的过程中,并不需要训练数据,本实施例是基于非监督学习的web微聚类方法。
而现有基于主题爬行对web特定主题信息获取时通常采用监督学习方法,即利用分类器指导爬行。但分类器有一个明显的缺点,需要大量的高质量训练数据,其中,获取训练数据是一项费事费力,高成本的任务,尤其是可信反例的获取。另外,需要预先指定分类的类别,不能发现非预定类别信息。因此,本申请基于非监督学习的web微聚类,实现对文献网络这一特定领域的信息检索,如对dblp(https://dblp.uni-trier.de/)这一文献网络进行信息检索的方案,相较于现有采用监督学习的聚类,大大缩短了聚类所需时间。且不需要预先指定分类的类别,可以发现其他非预定类别的信息。
对应上述实施例公开的作者关系在线挖掘方法,本实施例公开了一种作者关系在线挖掘系统,该作者关系在线挖掘系统结构示意图请参阅图7所示,本实施例中作者关系在线挖掘系统包括:
第一获取单元701、解析单元702、划分单元703、提取单元704、聚类单元705和挖掘单元706;
第一获取单元701,用于根据爬行队列中的统一资源定位符url获取目标页面;
解析单元702,用于将所述目标页面解析为文档对象模型;
划分单元703,用于根据内容分割策略将所述文档对象模型划分为多个内容块;提取单元704,用于分别从每个所述内容块中提取作者信息;
聚类单元705,用于根据所述作者信息,对所述内容块进行增量层次化聚类,得到聚簇;
具体地,基于公式:
其中,基于公式
基于公式:
若cv(ci,cj)取值为1,则将聚簇ci和聚簇cj合并为一个聚簇;
若cv(ci,cj)取值为0,则不将聚簇ci和聚簇cj合并为一个聚簇。
挖掘单元706,用于对各个所述聚簇中的作者信息进行关联规则挖掘,以确定作者之间的关系。
从上述技术方案可知,本实施例中根据爬行队列中的url获取目标页面并将所述目标页面解析为dom树;根据内容分割策略将所述dom树划分为多个内容块;分别从每个所述内容块中提取作者信息,并在完成爬取操作后根据提取到的作者信息,对内容块进行增量层次化聚类,得到聚簇;对各个所述聚簇中的作者信息进行关联规则挖掘,实现了从网页中挖掘到作者之间的关系,进而提供了一种作者关系在线挖掘的方法。
同时,本实施例中基于dom对web页面进行分区得到多个内容块,不能使得web页面内容更加精练,而且不会淡化和混淆web页面中高度相关的区域,相较于现有技术中使用原始html标记进行聚类爬行,本实施例中将每个内容块作为提取内容的对象,而不是将整个web页面作为提取内容的对象,提高了聚类爬行的性能。另外,使用增量层次化聚类方法,可以使聚类过程获得良好的速度和可扩展性。
本实施例还公开了另一种作者关系在线挖掘系统,该作者关系在线挖掘系统结构示意图请参阅图8所示,相较于图7所示的作者关系在线挖掘系统,本实施例中作者关系在线挖掘系统还包括:
计算单元801、确定单元802、第二获取单元803和加入单元804;
计算单元801,用于计算输入的匹配特征与各个所述聚簇之间的相似性;
确定单元802,用于根据所述相似性,确定目标聚簇;
第二获取单元803,用于获取所述目标聚簇中的url;
加入单元804,用于将所述目标聚簇中的url加入到爬行队列,并调用所述第一获取单元;
可选地,提取单元704包括:
预处理子单元和第一提取子单元;
所述预处理子单元,用于分别对每个所述内容块进行预处理,得到预处理后的内容块;
所述第一提取子单元,用于分别从每个所述预处理后的内容块中提取作者信息。
可选地,挖掘单元706包括:
第二提取子单元和关系计算子单元;
所述第二提取子单元,用于基于关联分析算法,从各个所述聚簇中提取关联规则;
所述关系计算子单元,用于通过置信度计算团队中作者间的关系强度。
从上述技术方案可知,本实施例中基于dom对web页面进行分区得到多个内容块,分别从每个所述内容块中提取作者信息,并在完成爬取操作后根据提取到的作者信息,对内容块进行增量层次化聚类,得到聚簇;对各个所述聚簇中的作者信息进行关联规则挖掘,实现了作者关系在线挖掘。由于从内容块中提取到的是文献的作者列表,因此内容块中的特征少,通常不超过10个特征,是短文本微聚类的过程,且在一个在线文献网络环境中利用聚类爬行技术挖掘出作者之间的关系的过程中,并不需要训练数据,本实施例是基于非监督学习的web微聚类方法。
而现有基于主题爬行对web特定主题信息获取时通常采用监督学习方法,即利用分类器指导爬行。但分类器有一个明显的缺点,需要大量的高质量训练数据,其中,获取训练数据是一项费事费力,高成本的任务,尤其是可信反例的获取。另外,需要预先指定分类的类别,不能发现非预定类别信息。因此,本申请基于非监督学习的web微聚类,实现对文献网络这一特定领域的信息检索,如对dblp(https://dblp.uni-trier.de/)这一文献网络进行信息检索的方案,相较于现有采用监督学习的聚类,大大缩短了聚类所需时间。且不需要预先指定分类的类别,可以发现其他非预定类别的信息。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的装置而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。