杨毅
(西安职业技术学院, 西安 710077)
基于句子聚类的中文文本自动摘要算法的研究
杨毅
(西安职业技术学院, 西安 710077)
文本自动摘要在搜索引擎和新闻内容推荐等多个领域都有着非常广阔的应用。经典的文本摘要算法是提取文本中关键词进行重组,这种方式忽略了文本中句子之间的关联性,而且提取出的关键词通常缺乏语义和语法上关联性。提出了将文本以句子进行划分,针对句子进行聚类,将文本划分为一定数量语义相对固定的单元,对每个语义单元进行核心词发现,最后组合各个语义句子的核心词构建文本摘要,试验结果表明,改进的文本自动摘要算法能够更有效地召回文本主题。
句子聚类; 主题词提取; 词向量; 文本自动摘要
搜索引擎中需要将网页的内容以摘要的形式展示给搜索用户,新闻内容推荐中也需要将推荐的内容以简短摘要的形式展示给用户[1-2],用户在使用搜索引擎和推荐系统时通常只会注重提供的文本摘要是否符合要求,因此文本摘要的质量直接关系搜索或者推荐的准确率和用户召回率。
目前文本摘要大多采用文本向量空间模型[3],即对文本进行分词处理然后提取分词后的关键词进行重新组合,这种方式通常难以把握文章的主题思想大多是关键词的简单堆砌,在语法和语义上存在较大缺陷。另外关键词的堆砌也容易造成文本主题的缺失,在文章的主题上较难以控制,易造成文章主题偏移[4]。
本文提出首先对文章进行句子划分,对划分之后的句子进行聚类,将文章聚合为有相对固定的语义单元,然后对各个语义单元进行关键词提取,提取的规则按照TextRank算法进行,同时关键词提取时保留其临近N个关键词构成一个完整的句子单元,拼接各个句子单元则聚合最终的文本摘要。
对于中文文本而言,词与词之间没有明显的分割符号,语义的表达也较为抽象[5-6],一般而言,中文以句子为单位构成一个相对完整的语义单元,中文对于一个完整的语义表达通常以句号为结束。对中文文本,以句号为单位进行语义划分,对文本T,假设以句号进行切分可划分为T=(S1,S2,…,Sn),切分时不考虑文本的段落关系,假设完整的句子已经能够代表语义[7],并且比采用段落划分时更有紧凑性。
句子聚类首先需要定义句子相似度,句子相似度采用经典的余弦相似度[8],如式(1)。
(1)
句子的组成单位是单词,因此需要对句子进行分词处理,分词的原则是保证语义的合理性,经过分词之后,句子Si可表示为Si=(wi1,wi2,…,win),wit(1≤t≤n)表示经过分词之后的第t个关键词,计算句子之间相似度需要依赖分词后的关键词,相似度计算的依据是关键词的权重,本文采用经典的tf-idf算法计算关键词权重,即关键词的词频与句子频率的比值,如式(2)。
(2)
词频(term frequency,TF)表示关键词在该句子中出现的频率[9]。这个数字是对词数(term count)的归一化,以防止它偏向长的句子。(同一个关键词在长句子里可能会比短句子有更高的词数,而不管该词语重要与否。)对于在某一特定句子里的词语来说,它的重要性则表示为tf。
公示2中ni,j是该词在文件中的出现次数,而分母则是在文件中所有字词的出现次数之和。逆向文件频率(inverse document frequency,IDF)是一个词语普遍重要性的度量。某一关键词的IDF,可以由总句子数目除以包含该关键词之句子的数目,再将得到的商取对数得到[10]。则最终关键词的权重由公示2的两部分组成,即式(3)。
(3)
表1 句子聚类算法
句子经过聚类后,每个聚类簇都有相对固定的含义,文本主题提取的原则是从聚类簇中提取具有表征意义的关键词进行文本重组[11]。
句子经过聚类后,每个聚类簇中句子的数量并没有减少,因此需要提取关键词进行文本表征。提取的原则为关键词间投票。在中文中一般语义相近的关键词会放在一块使用,比如“青春年少”,“青春”和“年少”两个词同时出现说明这两个的相关性很高,同里,可利用关键词之间的共现关系构建投票矩阵,投票矩阵反映了关键词的重要性。
互联网的经典链接分析中,采用网页之间的相互投票关系构建投票矩阵,网页获得链接网页越多,链接网页的质量越高,则该网页最终的重要性也会越高。在文本分析中同样可以使用这一原则。对于聚类后某个句子簇St(1≤t≤m),重新定义句子簇内部的结构,对于关键词片段“K1_K2_K3”,定义关键词K1会对关键词K2产生投票,K2会对关键词K3产生投票,定义关键词的前后位置关系为投票关系,假设“K1_K2”结构的出现次数为N,则在句子簇St(1≤t≤m)中,K1对K2的投票值为N,将基于句子簇的关键词投票关系表示,如图1所示。
图1 基于句子簇的关键词投票图
在图1中,关键词K1对K2的投票值为N,表示构成“K1_K2”结构的数目。同理,需要统计聚类后所有句子簇中出现“K1_K2”结构的数量,将加和之后的数目赋值给边权值。如式(4)。
(4)
在公示4中,wij表示关键词Ki对关键词Kj的投票,N表示关键词总数,假设关键词Kj有s个关键词会对该关键词进行投票,则需要对每条链向该关键词的边权值进行归一化,如式(5)。
(5)
对于关键词片段“K1_K2_K3”,定义K1对K2的链向关系构成关键词K2的入度,K2对K3的链向关系构成K3的入度,同时也是K2的出度。根据关键词间的投票关系可构成关键词的重要性表征,如式(6)。
(6)
在公示6中,ρ表示概率,v0表示赋予的初始值,|vk|表示关键词节点vk的出度。依据此公示可以得到句子簇中重要关键词,根据关键词的权重取Top-K个关键词,然后扩展该Top-K个关键词的前后N个关键词构成文本摘要。文本摘要算法,如表2所示。
表2 文本摘要算法
由于目前没有统一的中文文本摘要语料,国内也没有专门的评价指标来衡量文本摘要的优劣,因此本文的验证采用人工验证的方式进行。
人工从今日头条社会、科技、国际、健康、教育、旅游、历史、美文、数码和美食共10个领域中筛选100篇文章,筛选时尽量选取主题鲜明的文章,对选取的1 000篇文章进行数据预处理,包括句子切分,句子簇聚类和关键词提取等,选取Top-K个关键词的K值为15,前后扩展关键词N设置为5,如表3所示。
表3 今日头条分领域文章分析表
分别采用本文算法,基于关键词提取算法和文献1算法分别进行文本摘要提取,并从本校选取10名学生对3种提取的文本摘要进行人工判定,判定的依据设定为主题的提取完整性和文本摘要的语义连贯性两个方面进行对比,如图2所示。
图2 本文算法、关键词提取算法和文献1算法文本摘要 主题完整性对比图
从图2中可以看出,社会、科技、国际和健康4个领域的主题完整性都较高,3种算法都呈现较好的表现,说明3种算法都对文本描述较为丰富的内容提取能力较强,社会、科技、国际和健康4个领域的句子簇和句子关键词数都较多,因此在文本的主题表现上更为明显,这对于提取文本的主题是比较有帮助的,如图3所示。
图3 本文算法、关键词提取算法和文献1算法文本摘要 语义连贯性对比图
在图3中可以看出,3种算法在文本摘要语义表达上存在一样的表现,即对于长文本的语义表征能力较强,一般而言,关键词越丰富越能够提取符合语义要求的摘要,并且关键词的前后扩展时也较为容易。不过整体而言,3种算法的语义表征能力都较为薄弱,这其实与中文的复杂性有一定的关系,并没有融入复杂的自然语言处理技术。
本文针对当前文本摘要主要采用关键词聚合的方式进行研究,提出以句号作为分割单位首先对文本进行句子划分,并针对划分的句子单元进行句子聚类。句子簇可认为是具有相对固定语义的句子簇,提取句子簇中关键词以关键词投票模型进行关键词重要性判断,提取Top的关键词并进行前后关键词扩展,人工试验评判的结果也表明本文的文本摘要算法在语义抽取连贯性和主题完整性上表现较好。
[1] 余珊珊,苏锦钿,李鹏飞. 基于改进的TextRank的自动摘要提取方法[J]. 计算机科学,2016,(06):240-247.
[2] 王玮,欧阳纯萍,阳小华,罗凌云,刘志明. 融合句子情感和主题相似性的中文新闻文本情感摘要[J]. 计算机应用研究,2017,(12):1-6.
[3] Inouye D, Kalita J K. Comparing twitter summarization algorithms for multiple post summaries[C]//Privacy, Security, Risk and Trust (PASSAT) and 2011 IEEE Third Inernational Conference on Social Computing (SocialCom), 2011 IEEE Third International Conference on. IEEE, 2011: 298-306.
[4] 刘星含,霍华. 基于互信息的文本自动摘要[J]. 合肥工业大学学报(自然科学版),2014,(10):1198-1203.
[5] Yousefi-Azar M, Hamey L. Text summarization using unsupervised deep learning[J]. Expert Systems with Applications, 2017, 68: 93-105.
[6] 刘静,肖璐. 基于依存句法分析的多主题文本摘要研究[J]. 情报杂志,2014,(06):167-171.
[7] 林莉媛,王中卿,李寿山,周国栋. 基于PageRank的中文多文档文本情感摘要[J]. 中文信息学报,2014,(02):85-90.
[8] Tayal M A, Raghuwanshi M M, Malik L G. ATSSC: Development of an approach based on soft computing for text summarization[J]. Computer Speech & Language, 2017, 41: 214-235.
[9] 刘德喜,万常选. 社会化短文本自动摘要研究综述[J]. 小型微型计算机系统,2013,(12):2764-2771.
[10] Yang S, Lu W, Yang D, et al. KeyphraseDS: Automatic generation of survey by exploiting keyphrase information[J]. Neurocomputing, 2017, 224: 58-70.
[11] 张龙凯,王厚峰. 文本摘要问题中的句子抽取方法研究[J]. 中文信息学报,2012,(02):97-101.
Research on automatic Chinese text summarization based on sentence clustering
Yang Yi
(Xi’an Vocational and Technical College, Xi’an 710077, China)
Automatic text summarization has a wide application in many fields, such as search engine and news content recommendation. The classic text summarization algorithm is to extract the keywords in the text, which ignores the relevance between the sentences in the text, and the extracted keywords are usually lack of semantic and grammatical relevance. The text is divided by sentences, sentences for clustering, divides the text into a number of relatively fixed semantic units, each unit of semantic core words, finally the core word combination of each sentence semantic construction of text summarization, test results show that the improved automatic text summarization algorithm can more effectively recall the theme of the text.
sentenceclustering; topic wordextraction; word vector; text auto summarization
杨毅(1981-),男,陕西西安人,硕士,讲师,研究方向:计算机软件开发。
1007-757X(2017)08-0054-03
TP393
A
2017.03.28)