Skip to content

Latest commit

 

History

History
146 lines (71 loc) · 6.15 KB

14-Text_Generation.md

File metadata and controls

146 lines (71 loc) · 6.15 KB

14. Text Generation

14.1 Overview

Article

Practice

14.2 Text Summary

14.2.1 Overview

Paper

Article

  • NLP中自动生产文摘(auto text summarization)- 2017

    类似于综述,较为全面!

  • 当深度学习遇见自动文本摘要 - 2018

  • Comprehensive Guide to Text Summarization using Deep Learning in Python - 2019

    Chinese: Python利用深度学习进行文本摘要的综合指南

  • 文本摘要简述 - 2019

    YAO: OK

    单/多文档 + 抽取/生成式 + 无/有监督 + 传统/DL方法

    抽取式: 无监督-图方法、聚类;有监督-DL(序列标注、句子排序)

    • Lead-3: 抽取文章前三句
    • TextRank: 依照PageRank,句子为节点,使用句子相似度,构建无向有权图,使用边上的权重迭代更新节点值,最后选择TopK个得分最高的节点(句子)
    • 聚类: 句子为节点,得到句子向量表示,使用K-means和Mean-shift完成聚类,得到K个类别,最后从每个类别中选择距离质心最近的句子,得到K个句子
    • 序列标注: 为每个句子打一个二分类标签(0,1),最后选择所有标签为1的句子。关键在于获得句子的向量表示。如使用BiGRU分别建模word和sentence的向量表示,训练数据中要通过启发式规则获得句子标签
    • 句子排序: 针对每个句子,输出其是否是摘要句的概率,最后依据概率,选择TopK个句子

    生成式: Seq2Seq + Attention + Copy + Coverage

    • Decoder隐层状态与Encoder隐层状态计算权重,得到Context向量,利用Context和Decoder隐层状态计算输出概率Pgen
    • Copy: 在解码的每一步计算拷贝或生成的概率,因为词表是固定的,可以选择从原文中拷贝词语到摘要中,有效缓解OOV
    • Coverage: 在解码的每一步考虑之前步的Attention权重,结合Coverage损失,避免继续考虑已经获得高权重的部分,可有效缓解生成重复的问题
    • 外部信息: 使用真实摘要来指导文本摘要的生成
    • 生成对抗方式: 生成模型G来生成摘要,判别模型D来区分真实摘要和生成摘要

    抽取生成式: 结合抽取式和生成式,首先选择重要内容,然后基于重要内容生成摘要

    • 内容选择: 建模为词语级别序列标注任务,或者直接使用TextRank算法获得关键词,这属于hard方式,显式利用文本级别信息,也可使用门控机制,从文本编码向量中选择有用信息用于之后摘要生成,这属于Soft方式
    • 摘要生成: 如使用Pointer-generator网络,使用内容选择部分计算的概率修改原本Attention概率,使得Decoder仅关注选择的内容
    • 其他: 其他模型方法
  • 文本自动摘要任务的“不完全”心得总结 - 2019

  • 知识图谱如何助力文本摘要生成 - 2019

  • 赛尔笔记 | 事实感知的生成式文本摘要 - 2020

Practice

Data

14.2.2 Deep Learning

Paper

14.3 Title Generation

14.3.1 Overview

Competition

Byte Cup 2018 国际机器学习竞赛: 英文文章标题自动生成

14.4 Data2Text

Data包括:表格(天气预报、人物百科等)、图片、知识图谱三元组等

对Encoder的修改:捕捉结构上的联系,比如表格会加入记录类型,知识图谱会进行BFS等

对Decoder的修改:建立输入输出之间的Alignment