一种热点词的提取方法及系统与流程

文档序号:12666620阅读:333来源:国知局
一种热点词的提取方法及系统与流程

本发明涉及藏文信息处理领域,具体涉及一种基于藏文标签语料的热点词的提取方法及系统。



背景技术:

随着中国改革开放以来,藏族地区的经济快速发展,国家大力提倡信息化建设使得藏族地区互联网普及率在逐年上升,藏族网民的数量也在成倍的增长,以藏文为主要语言的信息网站也越来越越多,每天互联网上产生的藏文信息数不胜数。热点词作为一种互联网时代词汇现象,反映了一个国家、一个地区人们在一个时期普遍关注的问题和事物,具有时代特征,反映一个时期的热点话题及民生问题,并且这种反映具有即时性。

目前对于中文和英文的信息研究技术都取得了不错的研究成果。但对中国少数民族语言的相关研究处于比较初级的状态。近年来,藏文等少数民族语言网站越来越多,为研究少数民族语言提供了充分的材料。藏文语料库是藏文信息处理的重要数据资源,从大规模的藏文语料库中可以归纳,分析,概括,抽取到相关的知识和信息。对热点词进行快速识别和定向跟踪,可以迅速的了解民生。

本发明将提供一种热点词的提取方法及系统,具体用于藏文的提取,首先使用网络爬虫对藏文相关网站进行挖掘,对获取的资源进行结构化处理,存为藏文的生语料库。然后对结构化的生语料展开藏文文本预处理,展开基于有时间,来源和作者等特征标签的语料的热点词提取。



技术实现要素:

本发明的目的是解决如何提取有效的藏文热点词信息。

为实现上述目的,本发明提供了一种热点词的提取方法及系统,具体用于藏文的提取,首先使用网络爬虫对藏文相关网站进行挖掘,对获取的资源进行结构化处理,存为藏文的生语料库。然后对结构化的生语料展开藏文文本预处理,展开基于有时间,来源和作者等特征标签的语料的热点词提取。

一方面,本发明提供了一种热点词的提取方法,该方法包括以下步骤:获取藏文语料文本,建立第一藏文语料库;将第一藏文语料库进行预处理、分词和去停用词处理,获得第二藏文语料库;利用词权重计算算法获取第二藏文语料库中的多个词的权重;对第二藏文语料库中的多个词的权重进行排序,将权重最高的至少一个词确定为热点词。

具体地,采用网络爬虫技术获取藏文语料文本,建立第一藏文语料库的步骤中包括:采用Crawler4j开源爬虫技术获取第一藏文语料文本,Crawler4j开源爬虫的使用步骤包括:实现一个继承自WebCrawler的爬虫类技术;通过CrawlController调用实现的爬虫类技术。

将第一藏文语料库进行预处理、分词和去停用词处理,获得第二藏文语料库的步骤中包括:根据BCCF算法对第一藏文语料文本进行分词处理,BCCF算法包括以下步骤:通过第一藏文语料文本中的字的字长判断是否为格助词;若是格助词,则对所述格助词进行识别和分块处理;若不是格助词,则删除该词;调用字典查找匹配并对格助词中的每一个词进行连续特征检验;通过每一个词的位置、前词和后词的关系进行合一处理。

词权重的计算算法包括以下步骤:对第二藏文语料库进行词提取和过滤停用词处理,获得具有多个词的词表;计算词表中的多个词的出现频率,根据多个词的出现频率及权重计算公式获得多个词的权重。

具体地,权重的计算公式如下表示:

其中,Weight(Ci)为每个词Ci都指向与它对应的权重值weight(Ci);生成总词频T1的title表和总词频T2的content表(总词频包含重复的词计数);title_tf(Ci)为词表中每个词Ci在title表中对应的词频值;content_tf(Ci)为词表中每个词Ci在content表中对应的词频值;article_df(Ci)为生成记录词Ci出现的文章数,其中,每个词都对应的DF值。

另一方面,本发明提供了一种热点词的提取系统,该系统包括:获取模块、处理模块和计算模块。

获取模块,用于获取藏文语料文本,建立第一藏文语料库。

处理模块,用于将第一藏文语料库进行预处理、分词和去停用词处理,获得处第二藏文语料库。

计算模块,用于利用词权重计算算法获取第二藏文语料库中的多个词的权重;对第二藏文语料库中的多个词的权重进行排序,将权重最高的至少一个词确定为热点词。

具体地,获取模块具体用于采用Crawler4j开源爬虫技术获取藏文语料文本,Crawler4j开源爬虫技术的使用步骤包括:实现一个继承自WebCrawler的爬虫类技术;通过CrawlController调用实现的爬虫类技术。

处理模块具体用于根据BCCF算法对第一藏文语料文本进行分词处理,BCCF算法包括以下步骤:通过第一藏文语料文本中的字的字长判断是否为格助词;若是格助词,则对格助词进行识别和分块处理;若不是格助词,则删除该词;调用字典查找匹配并对格助词中的每一个词进行连续特征检验;通过每一个词的位置、前词和后词的关系进行合一处理。

计算模块具体用于词权重的计算算法,该算法包括以下步骤:对第二藏文语料库进行词提取和过滤停用词处理,获得具有多个词的词表;计算词表中的多个词的出现频率,根据多个词的出现频率及权重计算公式获得多个词的权重。

具体地,权重的计算公式如下表示:

其中,Weight(Ci)为每个词Ci都指向与它对应的权重值weight(Ci);生成总词频T1的title表和总词频T2的content表(总词频包含重复的词计数);title_tf(Ci)为词表中每个词Ci在title表中对应的词频值;content_tf(Ci)为词表中每个词Ci在content表中对应的词频值;article_df(Ci)为生成记录词Ci出现的文章数,其中,每个词都对应的DF值。

本发明提供的一种热点词的提取方法对多个主流的藏文网站爬取,不断获取相关藏文语料,利用网页信息预处理技术,获取主要的新闻材料存为半结构化的藏文生语料,通过对语料分词,去停用词技术处理后,对不同位置的词汇赋予不同的权值,结合词汇的DF和TF值来计算出最后的权重值,通过排序即可得出热点词排名,通过这种方法提取热点词,实现起来准确、简单和快速。此外,本发明将有助于藏文文本相关信息技术工作。通过热点词作为文本处理的特征来获取阶段时间内人们关注的热点信息。

附图说明

图1为本发明实施例提供的一种热点词的提取方法流程图;

图2为本发明实施例提供的一种Crawler4j开源爬虫的使用方法流程图;

图3为本发明实施例提供的一种BCCF算法的流程图;

图4为本发明实施例提供的一种词权重的计算算法的流程图;

图5为本发明实施例提供的一种预处理程序界面图;

图6为本发明实施例提供的一种预处理后生语料文本保存格式示意图;

图7为本发明实施例提供的一种预处理后xml文件年限分布图;

图8为本发明实施例提供的一种热词计算过程中各个表关系的示意图;

图9为本发明实施例提供的一种藏文新闻文本分布图;

图10为本发明实施例提供的一种热词提取程序主界面示意图;

图11为本发明实施例提供的一种热点词的提取系统结构图。

具体实施方式

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

图1为本发明实施例提供的一种热点词的提取方法流程图。如图1所示,该方法包括步骤S101-S104:

步骤S101,获取藏文语料文本,建立第一藏文语料库。

具体地,采用Crawler4j开源爬虫技术获取第一藏文语料文本,Crawler4j开源爬虫的使用步骤包括:实现一个继承自WebCrawler的爬虫类技术;通过CrawlController调用实现的爬虫类技术。

例如,信息收集是整个热点词的提取方法最开始的部分,热点词提取需要足够多的语料,人工获取的方式显然不能满足研究需要。因此,一般需要借助网络爬虫进行大量藏文语料的获取。在本发明实施例采用Crawler4j开源爬虫进行语料获取。其中,爬虫技术采取宽度优先策略,使用宽度优先搜索策略。具体的一种Crawler4j开源爬虫的使用方法如图2所示,包括步骤S201-S202:

步骤S201,实现一个继承自WebCrawler的爬虫类技术。

WebCrawler是一个抽象类,继承它必须实现两个方法:shouldVisit和visit。其中,shouldVisit是判断当前的网址(URL)是否已经应该被爬取(被访问);visit则是爬取该网址(URL)所指向的页面的数据,其传入的参数即是对该web页面全部数据的封装对象Page。

步骤S202,通过CrawlController调用实现的爬虫技术。CrawlController的调用相对而言较为格式,根据自带的函数说明即可实现调用。

Crawler4j网络爬虫虽然简单易用,但其爬取行为相对来说较为简单,无法避免重复性爬取,即实现增量爬取。为了取消获取语料信息的重复性及冗余性,本发明提供的热点词提取方法在使用Crawler4j时为其添加了增量爬取的功能。

Crawler4j在对网站进行爬取时虽可按照一定规则对获取的网址(URL)进行筛选并按一定次序将其加入到就绪网址(URL)队列中,但无法实现定时定量的语料信息的获取。为了增强Crawler4j爬虫的可控性,本发明提供的热点词提取方法在实用的时候为其添加了定时爬取的功能。

通过定制的爬虫对特定的网站进行爬取后,针对网站的新闻网页进行下载,同时通过网址(URL)的规则把视频,广告,招聘等杂乱无关的页面过滤掉,使下载的网页都是新闻文本的超文本标记语言(HTML)文档。

由于这些半结构化超文本标记语言(HTML)文档直接保存比较占空间,且直接对超文本标记语言(HTML)文档进行热词等处理会非常耗时。需要针对收集来的数以万计的原始网页进行预处理,存为可扩展标示语言(xml)的半结构化文本。

步骤S102,将第一藏文语料库进行预处理、分词和去停用词处理,获得第二藏文语料库。

具体地,根据BCCF算法对第一藏文语料文本进行分词处理,BCCF算法包括以下步骤:通过第一藏文语料文本中的字的字长判断是否为格助词;若是格助词,则对所述格助词进行识别和分块处理;若不是格助词,则删除该词;调用字典查找匹配并对格助词中的每一个词进行连续特征检验;通过每一个词的位置、前词和后词的关系进行合一处理。

例如,网页预处理技术主要包括:网页文章去重,网页去噪。利用爬虫技术获取的原始网页集中可能会包含大量与文本正文内容无关的信息,例如网页信息的超文本标记语言(HTML)标签语言等。这些干扰信息被称为噪音。清除网页噪音,对系统的工作非常重要。网页去噪后,系统可以提高结果的可靠性,同时减少噪音可以显著的简化网页内标签结构的复杂性并减少网页的大小,从而提高后续处理过程的时间和空间开销。

本发明实施例提供的提取方法可以通过JSOUP解析器来对网页中的有用信息进行筛选,例如文章名,发表时间,文章内容,作者等主要信息,将网页中其他噪音信息都丢弃,为了提高预处理的效率和对资源的利用率。对于不同的藏文网站由于网页结构不一,需要对每个网站网页结构进行特殊的分析,然后设定特定的提取规则方案。网页去重通过网址(URL)作为特征来进行去重处理。

本发明实施例提供的处理方法可以使用BCCF算法(基于格助词和接续特征的分词算法)进行对第一藏文语料库进行分词的处理。

BCCF算法(基于格助词和接续特征的分词算法)其特点是综合利用书面藏文字、词和句的接续特征进行的确定性分词,本发明实施例提供的一种BCCF算法,如图3所示,具体包括步骤S301-S304:

步骤S301,认字和断句:通过第一藏文语料文本中的字的字长判断是否为格助词。

步骤S302,格助词识别和分块(直到句末):若是格助词,则对所述格助词进行识别和分块处理;若不是格助词,则删除该词。

步骤S303,认词(直到句末):调用字典查找匹配并对格助词中的每一个词进行连续特征检验。

步骤S304,分词(直到句末):通过每一个词的位置、前词和后词的关系进行合一处理。

在第一藏文语料文本中的语气助词、副词、介词、连接词等,如常见的“的”、“在”之类,在第一藏文语料文本分析中,自身无明确的意义,但是为了提高文本处理的有效性,通常将其进行过滤处理。

关于第一藏文语料去除停用词,对于高频率的藏文词汇进行筛选,然后对这些藏文词进行整理归类成停用词表。

步骤S103,利用词权重计算算法获取第二藏文语料库中的多个词的权重。

具体地,词权重的计算算法如图4所示,包括步骤S401-S402:

步骤S401,对网页预处理后的文章进行词提取和过滤停用词处理,获得具有多个词的词表;

步骤S402,计算所述词表中的多个词的出现频率,根据多个词的出现频率及权重计算公式获得所述多个词的权重。

例如,热点词汇提取算法借鉴了TFIDF的特征提取。然后针对词串在文章中不同位置,赋予不同的权值,将标题中出现的词赋予双倍的表达信息的能力;同时又考虑语料中词数、每个词的文档频率等因素来计算词的权重,根据各个词的权重值高低,筛选热词。

对某一天的K个文本数据分词,去停用词后整理成一个总的词表P,P中词的个数为n。P表中包含的属性有三个:第一个属性是词(word);第二个属性是词的文档频率(df);第三个属性是词的权重(weight)。例如词表P中某个词为Ci,则t的文档频率为df(Ci),权重值weight(Ci)。

对词表P中的N词数权重计算算法如下:

输入:k篇网页预处理后的文章,热词个数h。

输出:P表中的权重最高的h个热词。

Begin

对k篇文章进行词提取。过滤停用词,生成具有n个词的词表P,此时词的权重值都初始化为0。

对于k篇文章中,每一个出现在标题中的词Ci,计算t的title_tf(Ci),汇总这些词、生成词数为a的title表,总词频为

//title_tf(Ci)为Ci在标题中出现的频率总数。

对于k篇文章中,每一个出现在正文中的词t,计算Ci的content_tf(Ci),汇总这些词、生成词数为b的content表,总词频为

//content_tf(Ci)为Ci在标题中出现的频率总数。

对P词表中的每个词Ci,计算它在k篇文章中的文档频率df(Ci)。

对P表中每个词的权重即热度进行从大到小排序。

输出P表中h个权重最高的热词。

最后的权重的计算公式如下所示:

实际中采用自然对数函数,其中,Weight(Ci)为每个词Ci都指向与它对应的权重值weight(Ci);生成总词频T1的title表和总词频T2的content表(总词频包含重复的词计数);title_tf(Ci)为词表P中每个词Ci在title表中对应的词频值;content_tf(Ci)为词表P中每个词Ci在content表中对应的词频值;article_df(Ci)为生成记录词Ci出现的文章数,其中,每个词都有对应的DF值。

步骤S104:对第二藏文语料库中的多个词的权重进行排序,将权重最高的至少一个词确定为热点词。

具体地,根据词汇的权重计算之后,按词表权值的大小对词汇进行热度排序,然后将权重最高的至少一个词确定为热点词,根据设定的数量进行热词提取。

图5为本发明实施例提供的一种预处理程序界面图。如图5所示,我们利用网络爬虫,对中国西藏网(http://www.tibet.cn/),新华网西藏频道(http://tibet.news.cn/)等七个相关藏文网站进行了网页爬取。预处理界面如图5所示。我们共获取了123646篇html文件,经过过滤和去重后,得到102327篇XML(课扩展标示语言)。

图6为本发明实施例提供的一种预处理后生语料文本保存格式示意图。如图6所示,预处理后文章保存结构如下图6所示。XML文件年度分布情况如下表1所示:

表1预处理后2014至今的文本网站分布

从表1中,可以看出,2014年至2016年9月12日,这八个藏文网站上共获得XML75897篇。

图7为本发明实施例提供的一种预处理后xml文件年限分布图,如图7所示,通过分析过滤后的xml数量年度分布也能体现出藏文网站网页数量随着年份在快速增长,特别在2013年网页数量增长速度飞快。

图8为本发明实施例提供的一种热词计算过程中各个表关系的示意图,如图8所示,热词计算中各个表间的关系及各表的属性。选取6篇新闻样本(k=6),统计出标题中词的总词频为80个(u=80),正文文本中词的总词频为600个(v=600)。表2是七个词的相关属性,并给出计算的权重值,如表2所示:

表2热词权重公式的测试结果

对上表进行数据分析,可以看出:

(1)在第1行和第2行数据中,title_tf和df相同,由于t2的正文词频总数content_tf(t2)>t1的正文词频总数content_tf(t1),t2的权重weight(t2)明显高于t1的权重weight(t1)。

(2)在第5行和第6行数据中,content_tf和df相同,由于t5的标题词频总数title_tf(t5)>t6的标题词频总数title_tf(t6),t5的权重weight(t5)明显高于t6的权重weight(t6)。

(3)在第6行和第7行数据中,title_tf和content_tf相同,由于t5的文档频率的df(t5)>t6的文档频率的df(t6),t5的权重weight(t5)明显低于t6的权重weight(t6)。符合文档频率越低,对词汇的重要程度贡献越大的规律。

(4)在第1行和第3行数据中,df相同,t1和t3两个词中,t1共在6篇文章中出现了25次,t3出现了23次,但由于t3在标题中出现了8次,标题中的词汇赋予的权重较高,所有最终得到的t3的权重值高于t1的权重。这体现对标题中词汇加权思想有助于准确计算词汇热度权重。

(5)将第3行和第5行中的数据进行对比,虽然t5正文词频总数比t3高了10个,但是由于t5的df值偏高,导致最终的权重值却比t3小。在第4行和第5行数据中,title_tf相同,content_tf(t4)为15,content_tf(t5)为25,正文中t4比t5的词频总数少10,但由于t4的文档频率明显低于t5,所以weight(t4)明显大于weight(t5),这充分说明df属性对于词的权重计算调整是明显的。

图9为本发明实施例提供的一种藏文新闻文本分布图。如图9所示,热词提取的时间区间(间隔)我们设定为一天、一周。数据来源于相关主流的藏文信息网站。选取这些藏文信息网站在2016年9月8日发布的新闻进行热词提取。这一天共抓取了141个有效的文本文件。这141个网页文本分布如图9所示。

从图9可以看出,从中国西藏新闻网站抽取的新闻网页数目最多,为86个文本,占总抽取新闻文本的86%。人民网藏语版,青海藏语网络广播网次之,分别占抽取新闻文本总数的16%和14%,琼迈藏族文学网站更新的网页数目最少,值为0。

图10为本发明实施例提供的一种热词提取程序主界面示意图。如图10所示,在热词提取主程序中,可以通过”num of hotwords”去设置提取的热词数。按天进行的热词提取我们以2016年9月8号为例,如表3所示给出了这一天的前20个最受关注的热词。从表3中可以看出,是9月8日的最热词汇,TF是247,DF是35,权重是0.016876948。最受关注的是三个词,是人们重点关注的内容。表4所示给出了2016年9月5日至9月11日这7天的前20个热词,从表4可以看出,这一周中,是最受关注的热词,TF是1518,DF是307,权重是0.012303968。本周关注度最高的前三个词是

表3 9月8日热词提取结果显示

表4 9月5日至11日热词提取结果

从表3和表4中可以看出等这些词是两表共同出现的词,这表明这些词是本周持续关注的热点。

在表3和表4中,词频显示出某个词在多个文章中出现的热度,DF值能够表明这个词是否具有特征词的属性。TF值中,t_tf代表着这个词在所有新闻网页标题中出现的次数,而c_tf代表着在正文中出现的频次,TF值是它们两者之和。在某一篇文章中,频率越高且DF值越低,认定这个词能代表出这个文章的特征。随着停用词的扩充,所提取的热词会更加具有热门事件的代表性。

热词提取模块利用统计技术与机器学习思想,进行热点内容的自动发现及抽取,有效地发现散布在网络上的热点信息,将热点话题呈现给用户。获取的热点信息分布在政治、经济、文化、医疗等领域,反映出网站的主要宣传方向,有助于人们知晓藏文新闻中某段时间所反映的社会热点,为相关监管部门制定相关政策提供理论依据。

图11为本发明实施例提供的一种热点词的提取系统结构图。如图11所示,该系统包括:获取模块、处理模块和计算模块。

获取模块,用于获取藏文语料文本,建立第一藏文语料库。

具体地,获取模块具体用于采用Crawler4j开源爬虫技术获取藏文语料文本,Crawler4j开源爬虫技术的使用步骤包括:实现一个继承自WebCrawler的爬虫类技术;通过CrawlController调用实现的爬虫类技术。

处理模块,用于将第一藏文语料库进行预处理、分词和去停用词处理,获得处第二藏文语料库。

处理模块具体用于根据BCCF算法对第一藏文语料文本进行分词处理,BCCF算法包括以下步骤:通过第一藏文语料文本中的字的字长判断是否为格助词;若是格助词,则对格助词进行识别和分块处理;若不是格助词,则删除该词;调用字典查找匹配并对格助词中的每一个词进行连续特征检验;通过每一个词的位置、前词和后词的关系进行合一处理。

计算模块,用于利用词权重计算算法获取第二藏文语料库中的多个词的权重;对第二藏文语料库中的多个词的权重进行排序,将权重最高的至少一个词确定为热点词。

具体地,计算模块具体用于词权重计算算法采用改进的TF-IDF特种权重计算方法。计算模块具体用于词权重的计算算法,该算法包括以下步骤:对第二藏文语料库进行词提取和过滤停用词处理,获得具有多个词的词表;计算词表中的多个词的出现频率,根据多个词的出现频率及权重计算公式获得多个词的权重。

其中,权重的计算公式如下表示:

其中,Weight(Ci)为每个词Ci都指向与它对应的权重值weight(Ci);生成总词频T1的title表和总词频T2的content表(总词频包含重复的词计数);title_tf(Ci)为词表中每个词Ci在title表中对应的词频值;content_tf(Ci)为词表中每个词Ci在content表中对应的词频值;article_df(Ci)为生成记录词Ci出现的文章数,其中,每个词都有对应的DF值。

本发明提供的一种热点词的提取方法对多个主流的藏文网站爬取,不断获取相关藏文语料,利用网页信息预处理技术,获取主要的新闻材料存为半结构化的藏文生语料,通过对语料分词,去停用词技术处理后,对不同位置的词汇赋予不同的权值,结合词汇的DF和TF值来计算出最后的权重值,通过排序即可得出热点词排名,通过这种方法提取热点词,实现起来准确、简单和快速。此外,本发明将有助于藏文文本相关信息技术工作。通过热点词作为文本处理的特征来获取阶段时间内人们关注的热点信息。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1