当前位置:   article > 正文

文本数据挖掘:TextRank模型_最成熟的中文文本数据挖掘是什么算法

最成熟的中文文本数据挖掘是什么算法

# 简介

    TF-IDF 在大型语料库上的统计类似于一种学习过程,假如我们没有这么大型的语料库或者存储 IDF的内存,同时又想改善词频统计的效果该怎么办呢?此时可以使用 TextRank 算法。   

    TextRank基本思想来源于Google的PageRank算法。这种算法是1997年,Google创始人拉里.佩奇和谢尔盖.布林在构建早期的搜索系统原型时提出的一种链接分析算法,基本思想有两条:

  1)链接数量。一个网页被越多的其他网页链接,说明这个网页越重要.

  2)链接质量。一个网页被一个越高权值的网页链接,也能表明这个网页越重要.

    与TF-IDF需要在语料库上计算IDF(逆文档频率)不同,TextRank利用一篇文档内部的词语间的共现信息(语义)便可以抽取关键词。 

    一些简单实用的无监督关键词提取算法,由简入繁分别是词频TF-IDFTextRank

    根据运行时只需利用一个文裆即可得出关键词,还是需要考虑多份文档,提取算法可分为单文档和多文档算法。单文档算法能够独立分析每篇文章的关键词,包括词频TextRank。多文档算法利用了其他文档中的信息来辅助决定当前文档的关键词,同时也容易受到噪声干扰,典型例子是著名的TF-IDF

    除了用于提取关键词,TextRank还可用于提取关键句。由于一篇文章中几乎不可能出现相同的两个句子,所以朴素的PageRank在句子颗粒度上行不通。为了将 PageRank 利用到句子颗粒度上去,我们引入BM25算法衡量句子的相似度,改进链接的权重计算。

# 关键词

  ## 算法

    将PageRank应用到关键词提取,无非是将单词视作节点而已。另外,每个单词的外链来自自身前后固定大小的窗口内的所有单词。

    这么做的目的是模拟"解释说明"这种语言现象,窗口内的词语常常用来解释中心词语,相当于为中心词语投了一票,每一票的权重等于窗口词语的权重被投出去的所有票平分。中心词这种左右搭配越多,给自己投票的词语就越多。另一方面,单词频次越高,给它投票的机会就越多,这点与词频统计类似。然而在TextRank中,高频词不一定权重高,因为每一票还必须考虑投票者的权重。 

    1️⃣:把给定的文本 T 按照完整句子进行分割,即: \small T=[S_1, S_2, ... , S_m]
    2️⃣:对于每个句子,进行分词和词性标注处理,并过滤掉停用词,只保留指定词性的单词,如名词、动词、形容词,其中 \small t_{i,j}是保留后的候选关键词。\small S_i = [ t_{i,1}, t_{i,2}, ..., t_{i,n}]
    3️⃣:构建候选关键词图 G = (V,E),其中 V 为节点集,由2️⃣生成的候选关键词组成,然后采用共现关系(Co-Occurrence)构造任两点之间的边,两个节点之间存在边仅当它们对应的词汇在长度为K 的窗口中共现,K表示窗口大小,即最多共现 K 个单词。
    4️⃣:根据 TextRank 的公式,迭代传播各节点的权重,直至收敛。

    5️⃣:对节点权重进行倒序排序,从而得到最重要的 T 个单词,作为候选关键词。
    6️⃣:由5️⃣得到最重要的 T 个单词,在原始文本中进行标记,若形成相邻词组,则组合成多词关键词。

  ## 示例

  例如:

     “ TextRank是一种用于文本的基于排序算法。”  声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】

推荐阅读
相关标签