美文网首页搜索引擎
TextRank 文本摘要

TextRank 文本摘要

作者: KhaosYang | 来源:发表于2019-04-24 19:33 被阅读0次

    TextRank是一种用于文本的基于图的排序算法。通过把文本分割成若干组成单元(句子),构建节点连接图,用句子之间的相似度作为边的权重,通过循环迭代计算句子的TextRank值,最后抽取排名高的句子组合成文本摘要。

    文本摘要

    文本摘要可以大致分为两类——抽取型摘要和抽象型摘要:

    • 抽取型摘要:这种方法依赖于从文本中提取几个部分,例如短语、句子,把它们堆叠起来创建摘要。因此,这种抽取型的方法最重要的是识别出适合总结文本的句子。
    • 抽象型摘要:这种方法应用先进的NLP技术生成一篇全新的总结。可能总结中的文本甚至没有在原文中出现。

    TextRank的打分思想依然是从PageRank的迭代思想衍生过来的,PageRank主要用于对在线搜索结果中的网页进行排序。

    PageRank

    PageRank如下公式所示:


    Text Rank 公式

    等式左边表示一个句子的权重(WS是weight_sum的缩写),右侧的求和表示每个相邻句子对本句子的贡献程度。与提取关键字的时候不同,一般认为全部句子都是相邻的,不再提取窗口。分子wji表示两个句子的相似程度,相似程度wji的计算,推荐使用BM25算法。分母又是一个weight_sum,而WS(Vj)代表上次迭代j的权重。整个公式是一个迭代的过程。

    假设我们有4个网页——w1,w2,w3,w4。这些页面包含指向彼此的链接。有些页面可能没有链接,这些页面被称为悬空页面。


    • w1有指向w2、w4的链接
    • w2有指向w3和w1的链接
    • w4仅指向w1
    • w3没有指向的链接,因此为悬空页面

    为了对这些页面进行排名,我们必须计算一个称为PageRank的分数。这个分数是用户访问该页面的概率。

    为了获得用户从一个页面跳转到另一个页面的概率,我们将创建一个正方形矩阵M,它有n行和n列,其中n是网页的数量。



    矩阵中得每个元素表示从一个页面链接进另一个页面的可能性。比如,如下高亮的方格包含的是从w1跳转到w2的概率。


    如下是概率初始化的步骤:

    1. 从页面i连接到页面j的概率,也就是M[i][j],初始化为1/页面i的出链接总数wi
    2. 如果页面i没有到页面j的链接,那么M[i][j]初始化为0
    3. 如果一个页面是悬空页面,那么假设它链接到其他页面的概率为等可能的,因此M[i][j]初始化为1/页面总数

    因此在本例中,矩阵M初始化后如下:



    最后,这个矩阵中的值将以迭代的方式更新,以获得网页排名。

    TextRank

    TextRank算法是一种抽取式的无监督的文本摘要方法。

    TextRank与PageRank的相似之处:

    • 用句子代替网页
    • 任意两个句子的相似性等价于网页转换概率
    • 相似性得分存储在一个方形矩阵中,类似于PageRank的矩阵M
    TextRank算法流程
    1. 第一步是把所有文章整合成文本数据
    2. 接下来把文本分割成单个句子
    3. 然后,我们将为每个句子找到向量表示(词向量)。
    4. 计算句子向量间的相似性并存放在矩阵中
    5. 然后将相似矩阵转换为以句子为节点、相似性得分为边的图结构,用于句子TextRank计算。
    6. 最后,一定数量的排名最高的句子构成最后的摘要。

    相关文章

      网友评论

        本文标题:TextRank 文本摘要

        本文链接:https://www.haomeiwen.com/subject/djmbwqtx.html