一种基于新闻文本的话题提取方法

文档序号:9597970阅读:1388来源:国知局
一种基于新闻文本的话题提取方法
【技术领域】
[0001] 本发明涉及自然语言处理,人工智能领域,具体涉及一种基于新闻文本的话题提 取方法。
【背景技术】
[0002] 随着互联网的普及,人们获取信息的方式越来越多,网络逐渐成为社会中各种信 息的载体。特别是随着中国经济的不断发展,网上新闻产品逐渐成为人们获取信息的重要 渠道,越来越多的人通过网络获取实时新闻及其相关信息。Web文本已成为我们获取信息的 重要来源,每天都有大量的新闻热点产生,如何从海量的新闻文本中获取当前讨论的热点 话题已经成为新闻文本处理必备的基础技术。
[0003] -般的文本聚类技术大多采用机器学习算法中的自动文本聚类方法,首先对文本 进行预处理,将文本表示成特征词的向量表示,然后根据文本的相似性进行聚类。对文本进 行聚类多采用single-pass算法,K最邻近结点算法(KNN),k-means算法等。这些聚类算 法都存在着各种各样的缺点,single-pass算法与文章输入的顺序相关性很大;KNN算法则 存在时间复杂度较高;而k-means算法则必须提前确定聚类个数,但是这点通常是比较困 难的。并且这些算法在聚类完成以后得到的聚类结果往往不知所云,我们无法用具体的词 汇或内容来表示聚类结果。

【发明内容】

[0004] 大多数网络新闻产品往往只是简单地将实时新闻报道或信息展现给用户,很难对 新闻按照内容进行组织归类,而且通过人工的方式来提取当前热点新闻是一件非常繁琐和 困难的事情。本发明基于文本主题词的提取算法,通过热点词组合的聚类技术来获取当前 文本集合的热点话题。用两个热点主题词表示一个话题,即克服了一个热点词表示话题的 片面性,同时又将相关的文章进行了聚合。
[0005] 本文提供了一种文本聚类的方法,用于提取当前文本集合的热点话题,帮助用户 更好的掌握当前新闻的热点。从互联网上采集近期的新闻文本,然后通过主题词提取算法, 从各篇文章中提取出主题词形成该文章的主题词序列,通过各篇文章的主题词序列综合计 算出当前文本集合的热点主题词序列,并用热点主题词组合的方式表示热点话题;一般两 个热点主题词就可以表示当前的一个热点话题。如:"⑶P"和"增速",通过这两个词我们 就可以知道当前讨论的一个热点是与我国的GDP增长速度相关的新闻话题。
[0006] 上述发明包括如下步骤:
[0007] 步骤1 :通过人工添加或新词识别的方法,构建新闻领域词典,确保提取的词语能 够覆盖到新闻领域的常用词和新词。
[0008] 步骤2 :文本预处理。对当前新闻文本集合中所有文本进行分词处理,并进行停用 词过滤,得到分词后的包含词语和词性的分词序列向量。
[0009] 步骤3 :统计词语频率,文档频率,以及每篇文章中每个词语在文章中首次出现的 位置。
[0010] 步骤4 :根据词语权重抽取每篇文章的主题词。文章的主题词定义为通过一定方 式从文章标题和内容中抽取出来的,能够简要精准地表达该文章主要思想的词语集合。词 语权重计算过程为:根据统计信息计算文章中各个词语的权重,词语的权重代表了词语在 文章中的表达性重要程度,每个词语对文章的权重影响由两部分组成,可表示为,
[0011] ff (t, d) = a*norm (ffa (t, d)) +b*norm (ffb (t, d))
[0012] 式中:W (t, d)表示词语t在文章 d中的权重;a, b表示权重系数,其中a+b = 1 ;norm表示归一化处理,norm(Wa(t, d))表示词频,文档频率和词性对词语权重影响, norm(Wb(t,d))表示词语长度和词语位置对词语权重影响。具体过程如下:
[0013] 步骤401 :首先计算每篇文章中各个词的词频,文档频率和词性对文章的影响权 重
[0014] ffa (t, d) = log2 (tf (t, d)) *log2 (Nd/nt) *ff (POS (t))
[0015] 式中:tf(t,d)表示词语t在文档d中出现的频率;Nd表示文档集合中文档数目, \表示包含该词语的文档数目;W(P0S(t))表示词语t的词性权重,当词性为名词时权重为 2,当词性为用户自定义时权重为1. 8,当词性为动词时权重为1. 5,其余词性权重为1 ;
[0016] 步骤402 :计算词语长度和词语在文章中首次出现的位置对词语权重影响
[0017] ffb(t, d) = len (t) *ff (pos (t, d))
[0018] 式中:len(t)表示词语t的长度;W(pos(t, d))表示词语t在文章 d中的位置权 重,W(pos(t,d)) = (N_firstpos(t))/N,其中 N 为文章词语总数,firstpos(t)表示词语 t 在文章中首次出现的位置。
[0019] 步骤403 :对词语权重两部分分别进行归一化处理如下:
[0022] 步骤404 :计算出词语在文章中的权重
[0023] ff (t, d) = a*norm (ffa (t, d)) +b*norm (ffb (t, d))
[0024] 步骤5 :对每篇文章中词语进行权重降序排列,提取出前六个作为主题词,一般情 况下,从标题中提取三个,从正文中提取三个,如果标题中提取词语数目达不到三个,则剩 余的从正文中补足。然后对这些词进行过滤,如果一个词语包含另一个词语则将权重较小 的词语删除,并进行补全,将最终的六个词语作为该文章的主题词序列
[0025] Topt(d) = {tt1; tt2, tt3, tt4, tt5, tt6}
[0026] 步骤6 :提取当前新闻文本集合热点主题词序列。对所有文章的六个主题词按照 相同词语权重相加的方式,获取到文本集合中所有主题词的权重,然后将所有主题词按照 权重值进行降序排列,得到文本集合的热点主题词序列:
[0027] HotT = {hti, ht2, ···, htk}, k = 1, 2, . . . , m
[0028] 其中,m表示热点词主题序列的大小。
[0029] 步骤7 :将排好序的热点主题词序列HotT中的第一个词语hh作为热点话题的第 一个线索词,对文章进行聚类。其步骤如下
[0030] 步骤701 :根据hh找到文章主题词序列中包含这个词的文章集合
[0032] 式中表示包含线索词hh的第i篇文章。
[0033] 步骤702 :按照步骤6中文章主题词序列权重相加合并的方式提取文章集合 HotTDSeh*的主题词集合,取出权重值最大的前5个词
[0035] 步骤703 :取出FHotTSeti的第一个词/<作为第二个线索词与hh组合形成一个 热点话题主题词表达向量。
[0036] 步骤704 :找出#与hh组成的热点话题的相关文章集合。
[0037] 首先,将文章主题词序列中同时包含/<与hh的文章加入到话题相关文章集合 中。
[0038] 然后,将文章主题词序列中包含hh,文章标题包含/<的文章,或者主题词序列中 包含./^,文章标题中包含文章加入到话题相关文章集合中。
[0039] 最后,将文章主题词序列中包含hh,文章内容中包含/#并且其权重大于阈值 Vth(根据经验选取Vth= 0. 3)的文章或者主题词序列中包含身;而文章内容中包含匕^并且 其权重大于阈值Vth的文章加入到话题相关文章集合中。
[0040] 将所有已经加入到当前话题相关文章集合中的文章进行标记,以后不再对这些文 章进行聚类处理。
[0041] 步骤705 :分别将FHotTSeti中剩下的其它四个词语和ht 3且成热点话题主题词表 达向量,按照步骤704进行热点话题聚类,找出热点话题的相关文章集合。
[0042] 步骤8 :取出HotT中的第二个词语ht2作为新的热点话题的第一个线索词,然后 按照步骤7对ht2进行热点话题聚类。不同的是对于第二个热点主题词ht 2,当我们获取了
后,由这五个词分别和ht2组成的热点话题主题词表 达向量进行聚类时,我们首先要判断其是否和已有的表达向量相同,如果相同则不需要再 进行处理,否则继续对该话题进行聚类。
[0043] 步骤9 :对后面的第3至η个(η彡m)热点词分别按步骤8进行处理,得到最终的 话题聚类结果,然后按照聚类得到的话题集合中包含的文章数目进行降序排列,得到基于 当前新闻文本集合的最终的多个热点话题文本集合,并且每个话题对应一个热点话题主题 词表达向量,由两个主题词构成。η根据实际数据进行调整。
[0044] 本发明首先根据新闻文本中词语的词频、词性、文档频率和词语在新闻文本中首 次出现的位置,综合计算出词语在文章中的权重;之后根据词语在文章中的权重排序分别 在每篇文章中提取了六个主题词来表达文章的主要思想;然后通过主题词集合的权重排序 获取了新闻文本集合的热点主题词序列,依序从热点主题词序列中取出热点主题词作为话 题线索词进行相关文章的凝聚,按照两个主题词进行组合来表达一个热点话题的方式进行 聚类;最后将所有文章凝聚到相应的话题相关文章集合当中,通过两个主题词,我们可以大 致了解热点话题所讲的内容,避免了一般文本聚类后各聚类结果不知所云的情况,更加符 合人们的思维习惯。
【附图说明】
[0045] 图1为本发明"一种基于新闻文本的话题提取方法"的流程图。
【具体实施方式】
[0046] 下面结合附图和【具体实施方式】对本发明"一种基于新闻文本的话题提取方法"作 进一
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1