前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >GitHub | 一套完整的文本摘要任务解决方案-FastSum

GitHub | 一套完整的文本摘要任务解决方案-FastSum

作者头像
机器学习之禅
发布于 2022-07-11 07:30:42
发布于 2022-07-11 07:30:42
9310
举报
文章被收录于专栏:机器学习之禅机器学习之禅

FastSum 的 GitHub 地址先为大家奉上:https://github.com/fastnlp/fastSum

FastSum 是基于 fastNLP 开发的一套完整的文本摘要任务解决方案,包括数据加载、模型调用、模型评价三个部分。

模型

FastSum 实现的模型包括:

1.baseline 的 LSTM/Transformer 的序列标注模型

使用 FastNLP 实现的以 Transformer、LSTM(二者可选其一)作为编码器,序列标注作为解码器进行抽取式摘要的代码,可作为抽取式摘要研究的基线。

2.Pointer-generator network(指针生成器网络)

论文:Get To The Point Summarization with Pointer-Generator Networks

3.文本匹配式摘要抽取

论文:Extractive Summarization as Text Matching

4.使用预训练编码器进行文本摘要

论文:Text Summarization with Pretrained Encoders

输入数据、训练参数设置、如何运行、测试等可以查看各个模型的readme 文档,都有各自的介绍。

数据集

FastSum 提供了 12 个文本摘要任务数据集,对不同的数据集,提供了不同的数据加载代码方便从服务器来自动下载数据。我们可以通过运行summarizationLoader.py 来下载和使用这些数据集。这 12 个数据集如下表所示:

名称

论文

类型

描述

CNN/DailyMail

Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond

新闻

修改了原本用于 passage-based question answering 任务的数据库。CNN 和 DailyMail 的网站为每篇文章都人工提供了一些要点信息总结文章。而且这些要点是抽象的而非抽取式摘要形式。微调 Teaching Machines to Read and Comprehend 的脚本之后,作者生成了一个 multi-sentence summary 的数据集合

Xsum

Don’t Give Me the Details, Just the Summary! Topic-Aware Convolutional Neural Networks for Extreme Summarization

新闻

article-single sentence summary 的数据集。在 BBC 上,每篇文章开头都附有人工撰写的摘要,提取即可

The New York Times Annotated Corpus

The New York Times Annotated Corpus

新闻

人工撰写的摘要

DUC

The Effects of Human Variation in DUC Summarization Evaluation

新闻

2003 和 2004 Task1 都是对每个 doc 生成一段摘要

arXiv PubMed

A Discourse-Aware Attention Model for Abstractive Summarization of Long Documents

科学著作

从 arXiv 和 PubMed 获取的长篇文档的摘要,论文的 abstract 部分作为摘要的 ground-truth。

WikiHow

WikiHow: A Large Scale Text Summarization Dataset

知识库

[WikiHow 有一个关于“怎么做”的数据库,每个步骤描述是由一段加粗摘要以及详细步骤叙述组成。作者把每个步骤的加粗摘要合并作为最终摘要,每步的剩余部分进行合并组成 article。

Multi News

Multi-News: a Large-Scale Multi-Document Summarization Dataset and Abstractive Hierarchical Model

新闻、多文本摘要

数据集由新闻文章和这些文章的人工摘要组成,这些文章来自 newser.com 网站。每一篇摘要都是由专业编辑撰写的,并包含到引用的原始文章的链接。

BillSum

BillSum: A Corpus for Automatic Summarization of US Legislation

法案文本

数据是选自美国国会和加利福尼亚州立法机构的法案文本,人为编写的摘要。

AMI

The AMI meeting corpus: a pre-announcement

会议

AMI会议语料库是一种多模式数据集,包含100小时的会议多模式记录。本语料库为每个单独的讲话者提供了高质量的人工记录,还包含了抽取式摘要、生成式摘要、头部动作、手势、情绪状态等。

ICSI

ICSI Corpus

会议

ICSI会议语料库是一个音频数据集,包含大约70个小时的会议记录。包含了抽取式摘要和生成式摘要。

Reddit TIFU

Abstractive Summarization of Reddit Posts with Multi-level Memory Networks

在线讨论

通过从 Reddit 爬取数据,作者生成了两套摘要:用原帖的 title 作为 short summary,TL;DR summary 作为 long summary。

SAMSum

SAMSum Corpus: A Human-annotated Dialogue Dataset for Abstractive Summarization

对话

对话由语言学家根据日常对话写成,之后由语言学家标注摘要。

模型评价

FastSum 提供了两种评估指标:

  • FastRougeMetric
  • PyRougeMetric

FastRougeMetric 使用 python 实现的 ROUGE 非官方库来实现在训练过程中快速计算 rouge 近似值。源代码为:https://github.com/pltrdy/rouge

PyRougeMetric 使用论文 ROUGE: A Package for Automatic Evaluation of Summaries 提供的官方 ROUGE 1.5.5 评测库。为了使用ROUGE 1.5.5,需要使用 sudo 权限安装一系列依赖库。FastSum 提供了安装指南。

我们看下在 CNN/DailyMail 数据集上的 ROUGE 分数:

Model

ROUGE-1

ROUGE-2

ROUGE-L

Paper

LEAD 3

40.11

17.64

36.32

Our data pre-process

ORACLE

55.24

31.14

50.96

Our data pre-process

LSTM + Sequence Labeling

40.72

18.27

36.98

-

Transformer + Sequence Labeling

40.86

18.38

37.18

-

LSTM + Pointer Network

39.73

39.9

36.05

Get To The Point: Summarization with Pointer-Generator Networks

BERTSUMEXT

42.83

19.92

39.18

Text Summarization with Pretrained Encoders

TransSUMEXT

41.04

18.34

37.3

Text Summarization with Pretrained Encoders

BERTSUMABS

41.17

18.72

38.16

Text Summarization with Pretrained Encoders

TransSUMABS

40.17

17.81

37.12

Text Summarization with Pretrained Encoders

安装和使用 安装流程如下所示:

  • Python 3.7
  • Pytorch >= 1.4.0
  • fastNLP >= 0.6.0
  • pyrough 0.1.3

需要注意的是,在运行代码前,请在指定的位置填写上你的 ROUGE 路径。

  • rough 1.0.0
  • transformers >= 2.5

安装最新的 FastNLP:

pip install git+https://gitee.com/fastnlp/fastNLP

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习之禅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
Python:多次登峰但槽点不断,2023年还值得学吗?| 极客时间
作者 | 尹会生 你好,我是尹会生。 工作 16 年来,我在游戏公司做过技术总监,也在新浪网做过技术经理,几乎每天都在和 Python 打交道,今天想跟大家聊聊:Python 的发展总结、是否还值得学习以及怎么学。 近几年,Python 风声水起:多次在 TIOBE 编程语言排行榜拿下冠军,被视为人工智能时代的必学的编程语言…… Python 这几年的发展,一方面得益于 AI 的影响力,在深度学习、机器学习等领域的广泛使用使得 Python 逐渐成为人工智能时代的主流语言。同时,Web 相关开发和数据分析
深度学习与Python
2023/03/29
1.1K0
Python:多次登峰但槽点不断,2023年还值得学吗?| 极客时间
查询亿级数据毫秒级返回,让你的 Elasticsearch 飞起来!| 极客时间
在大数据时代,搜索是软件工程师的一项必备技能。而 Elasticsearch 就是一款功能强大的开源分布式搜索与数据分析引擎,在同领域内几乎没有竞争对手——近两年 DB-Engines 的数据库评测中,Elasticsearch 在搜索引擎领域始终位列第一。 Elasticsearch 不仅可以从海量数据中快速找到相关信息,还被广泛运用于大数据近实时分析,包括日志分析、指标监控、信息安全等多个领域。 它可以探索海量结构化、非结构化数据,按需创建可视化报表,对监控数据设置报警阈值,甚至通过机器学习自动识别异
深度学习与Python
2023/02/28
9160
查询亿级数据毫秒级返回,让你的 Elasticsearch 飞起来!| 极客时间
阿里疯传!Python + Tableau + Excel 数分教程(附内部资源)
春节回家,看到朋友晒的年终奖,我羡慕不已。 他入职腾讯一年半,拿了 3 个月工资作为年终奖。据他所说,这还不算什么,网易《哈利波特·魔法觉醒》项目组,所有员工奖励 888888 元…… 虽然说并不是每个大厂员工都可拿到百万年终奖,但平均下来也有 3-6 个月的奖金(真香)。 相信很大一部分人想要趁着金三银四跳槽去大厂,那么数据分析、产品、运营人想进大厂,应该做哪些准备呢? 为此,我特意研究了各大招聘网站将近百份招聘需求,发现几乎所有的中、高阶产品、运营和市场岗位,都对数据分析能力非常重视。 由此可见,数据
崔庆才
2022/03/08
7800
终于有人把 Kafka3.0 的新特性讲全乎了!
Kafka 是消息队列中间件的代表产品,它与 RocketMQ 和 RabbitMQ 最大的区别在于:在某些场景,可以弃用 Flink、Spark 这样的计算引擎,借助 Kafka Stream 轻松实现数据处理。也即,Kafka 不仅是消息引擎系统,也是分布式流处理平台。 最新版本 3.0 的发布,使得 Kafka 这一定位得到了进一步加强。突出的一点体现在对 KRaft 元数据和 API 进行了诸多突破性的改进: “KRaft Controllers 和KRaft Brokers,能够为元数据主题 __
崔庆才
2022/03/04
1.2K0
95后新人竟把Python玩到这种程度,难怪大厂抢着要!
金三银四跳槽季,什么岗位最吃香? 看看字节、腾讯等大厂给自家数据分析师开出的薪资,你就知道这个岗位有多火热了。 数据分析师的薪酬这么高,真的是因为做数据分析很难吗? 当然不是! 相较于写代码,数据分析所师需的技能门槛要低得多,甚至你只需要精通几个分析工具,就能拿到大厂offer。 比如别人做个可视化图表憋半天,而你用Tableau几分钟搞定;别人分析网站数据,分析半天结果未必准确,而你用Python迅速地出具一份专业报告;别人几个小时没查询完的数据,你用SQL几秒钟执行完毕。 这就是你的职场竞争力。 分
张俊红
2022/03/14
4110
实访用人单位:Prompt 工程师真是低门槛“香饽饽”?
15-50k 的月薪,另外还有年终奖和其他福利,你所要做的,就是研究、分析、设计在用汉语或英语做输入的情况下,更准确地描述业务想要做的事情,听起来是不是很难以置信?
深度学习与Python
2023/08/09
1.6K0
实访用人单位:Prompt 工程师真是低门槛“香饽饽”?
寒冬+裁员,0-1年开发从业者凭什么月薪15K?
这个世界变化太快,特别是互联网行业。 互联网行业的变化就像一块宝盒,你永远不知道下一次打开跳出来的是什么。 工程师等IT岗位一直是一个香饽饽,人才需求极大,在2016年,初级程序员薪资也有9k左右。 但在2018年底,互联网行业内气温骤降,迎来了一场史无前例地寒冬……裁员潮冲击了整个人才市场。对比起2016年的薪资,目前初级程序员平均薪资竟是7K左右(来源:职友集)。 《2019春招人才时长趋势报告》指出,互联网行业人才流动形势严峻,流入人数远远低于流出人数。 面对经济下行的压力,互联网裁员风波兴起,
腾讯NEXT学位
2019/06/12
5360
寒冬+裁员,0-1年开发从业者凭什么月薪15K?
肝了这套Python数据分析教程,进大厂稳了!
五一跟朋友出去玩,听他晒自己Q1绩效,我羡慕不已。 他入职腾讯一年半,上个月就拿了3倍工资作为绩效奖励。据他所说,这都是小意思,其他大厂还有更高的...... 相信不少打工人都有一个大厂梦,可是数据分析、产品、运营人想进大厂,应该有哪些准备呢? 为此,我特意研究了各大招聘网站将近百份招聘需求,发现几乎所有的中、高阶产品、运营和市场岗位,都对数据分析能力非常重视。 由此可见,数据分析能力已经成为职场人的刚需。 但是一提数据分析,90%以上的互联网人都觉得无从下手。知识点零散、学习起来毫无头绪,有的人花了很多
double
2022/05/23
4190
肝了这套Python数据分析教程,进大厂稳了!
人工智能带来失业?塞翁失马焉知非福
你有没有想过,现在大部分人正在做的工作,会在未来的某一天完全消失不见不复存在,甚至永远被遗忘? 种种迹象已经表明,很多工作岗位的淘汰已经只是时间问题。这一切都因为它的到来:人工智能。 人工智能和大数
大数据文摘
2018/05/24
8480
Python数据分析和数据挖掘学习路线图
Python是一种面向对象、直译式计算机程序设计语言,由Guido van Rossum于1989年底发明。由于他简单、易学、免费开源、可移植性、可扩展性等特点,Python又被称之为胶水语言。由于Python语言的简洁、易读以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python教授程序设计课程,并且也广泛用于商业领域。 下图为主要程序语言近年来的流行趋势,Python受欢迎程度扶摇直上,十年的时间一直是徐徐上升,最近大数据的兴起,Python作为数据挖掘编程语言备
小莹莹
2018/04/23
1.8K0
Python数据分析和数据挖掘学习路线图
2天,我把数据分析的Python+Tableau+Excel工具撸干净了!
春节回家,看到朋友晒的年终奖,我羡慕不已。 他入职腾讯一年半,拿了3个月工资作为年终奖。据他所说,这还不算什么,网易《哈利波特·魔法觉醒》项目组,所有员工奖励888888元…… 虽然说并不是每个大厂员工都可拿到百万年终奖,但平均下来也有3-6个月的奖金(真香)。 相信很大一部分人想要趁着金三银四跳槽去大厂,那么数据分析、产品、运营人想进大厂,应该做哪些准备呢? 为此,我特意研究了各大招聘网站将近百份招聘需求,发现几乎所有的中、高阶产品、运营和市场岗位,都对数据分析能力非常重视。 由此可见,数据分析能力已经
张俊红
2022/03/14
7980
见识到了Python数据分析的天花板玩法!
金三银四跳槽季,什么岗位最吃香? 看看字节、腾讯等大厂给自家数据分析师开出的薪资,你就知道这个岗位有多火热了。 数据分析师的薪酬这么高,真的是因为做数据分析很难吗? 当然不是! 相较于写代码,数据分析所师需的技能门槛要低得多,甚至你只需要精通几个分析工具,就能拿到大厂offer。 比如别人做个可视化图表憋半天,而你用Tableau几分钟搞定;别人分析网站数据,分析半天结果未必准确,而你用Python迅速地出具一份专业报告;别人几个小时没查询完的数据,你用SQL几秒钟执行完毕。 这就是你的职场竞争力。 分
张俊红
2022/03/07
7410
99%的程序员都会遇到的瓶颈(文末送福利)
程序员的瓶颈是什么? 要回答这个问题,并不简单。不过这也是确确实实存在的现象。 很多人程序员说,30岁以后怎么办?上有老下有小,背着房贷车贷消费贷,经常加班没时间陪家人。 其实这不是最可怕的,最根源的还是要找到自己的核心竞争力!相比于应届毕业生,你的优势是什么?如何才能不被淘汰? 首先,坚持不断学习,学习新技术,研究新方向。 第二,挑战更高的领域和职位。 第三,跳出安逸区,勇敢面对未来和困难,并克服之。 今天,给大家推荐几个公众号,或许能从中收获你想要的。 最后,希望作为程序员的你,早日财务自由! 1
WeTest质量开放平台团队
2018/10/29
6360
99%的程序员都会遇到的瓶颈(文末送福利)
入门数据分析,你需要看得更长远 | 微软技术公开课
麦肯锡在 2012 年这样描述“大数据”时代的到来:“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来”。 这一论断,如今已经成为现实。例如,购物时,消费者会看到来自平台的个性化推荐;训练场上,运动员利用数据来监测和分析动作,不断改进运动技术和战术;工厂里,工程人员通过对生产数据的采集、分析,不断优化生产工艺及流程……在许多行业,数据已经成为重要的生产要素,甚至在某些行业里,数据成为企业最核心的生产要素。 与此同时
深度学习与Python
2023/04/01
5670
入门数据分析,你需要看得更长远 | 微软技术公开课
一个 yyds 方向,薪资大幅度碾压 Java 开发!
数仓技术应对关系型结构化数据游刃有余,但对于多元异构数据,却爱莫能助。最近行业大佬都在聊怎么部署数据湖,这波操作未来走向如何? 数据湖技术能够实现全量数据的单一存储,通常存储原始格式的对象块或者文件。不管是传统数仓承载的结构化数据还是半结构化数据、非结构化数据、二进制数据等任意类型的数据,数据湖都可以轻松实现采集、存储和分析。 更为人性化的是,数据湖可根据企业的业务需求提供可大可小的弹性扩充,数据可在治理规则下自由流动,采用统一的存储引擎,支持多模式计算引擎,可以运行从控制面板和可视化到大数据处理、实时分
崔庆才
2022/03/08
5650
历时三年匠心打造,《数据分析原理》终于出版
相信做数据分析的同行在职场中经常会遇到这种情况:被别人说业务思考高度不够,只会简单的工具和常规数据统计,缺乏创新性。我是做数据分析出身的,对此我特别有感触。抱着去市场试错的想法,2018年我在网易云课堂打造了一门课《数据分析思维案例实战》,市场反馈非常好。在我看来,这门课最大的优势就是内容的创新性。 2019年的时候,我想写一本数据分析领域的创新性书籍,于是联合行业内两位资深的数据分析从业者黄怡媛、马炯雄,把我们10余年的数据分析工作经历、能快速应用到工作中的方法总结成书,这本书就是《数据分析原理》。 历
博文视点Broadview
2023/04/04
5310
历时三年匠心打造,《数据分析原理》终于出版
见识到了Python数据分析的天花板玩法!
前阵子,和同学吃饭聊到收入,他说“你们程序员的工资好!高!呀!” 事实上,也就是一份辛苦钱...... 干程序员,我要老板的钱,可老板想要我的命啊! 做运维的,平台问题立马得解决,724365不间断服务。天天对着服务器,连个说话的人都没有; 做测试的,项目稍有改动,就要重新测试。都说人工智能,测试就是负责“人工”这一块的; ...... 现在要说真正有“钱”途的岗位是什么?数据分析一定榜上有名。 任何一家公司都需要利用数据驱动业务的增长。尤其是在今年经济不景气,各行业增量减少的情况下,数据分析指
double
2022/06/06
5890
见识到了Python数据分析的天花板玩法!
分享一个良心软件,贼好用
大家好!我是崔庆才。 今天在知乎热榜上看到了“为什么年轻人都要找双休工作的问题”,给我看笑了,双休不是最基本的吗。 现在天天都能看到裁员消息,别管大厂小厂,裁员面前都毫不留情,也难怪招聘市场看起来这么“畸形”。 不过,大环境如此,我们无力改变。只能选择自己乐观起来,化焦虑为动力,多读书、少上网,精进专业技能。 与其职场上内卷工作,不如“内卷学习”,提高抵抗风险的能力,让自己更值钱。今天给大家安利个我一直在用的学习神器:极客时间超级会员。 月卡现在只要 6 块钱! 这个 6 元体验卡有多值呢,一顿早餐钱,一个
崔庆才
2022/04/14
7980
分享一个良心软件,贼好用
看到抖音上Python工程师晒得工资条,我沉默了......
我是个抖音中毒者 闲来无事就喜欢刷抖音 最近刷到了一个Python工程师的工资条 然后我默默的打开看了 然后就默默的关闭了 如今Python技术由于大数据、人工智能的兴起 Python也越来越火 大家都纷纷学Python 我不能跟你确保说学完Python你就能拿高工资 但是你学完Python肯定有饭吃 说不定还能找到一个貌美如花的女朋友✌️ 我见过市面上很多的 Python 讲解教程和书籍,他们大都这样讲 Python 的: 先从 Python 的发展历史开始,介绍 Python 的基本语法规则,P
区块链大本营
2023/03/31
4530
看到抖音上Python工程师晒得工资条,我沉默了......
《交通大数据理论与方法》
向AI转型的程序员都关注了这个号👇👇👇 机器学习AI算法工程   公众号:datayx 随着信息通讯技术的不断发展,各行各业都产生了海量的数据,与此同时,一门新的学科应运而生—— 数据挖掘。数据挖掘是从大量数据(包括文本数据)中挖掘出隐含的、先前未知的、对决策有潜在价值的信 息、知识和关联关系,并基于这些信息和相应规则建立可用于决策支持与优化分析的模型,提供可支持预测 性决策的方法和工具。此外,数据挖掘还可帮助企业和科研团体发现业务与学科中的新趋势,揭示已知的 事实,预测未知的结果,因此“数据挖掘”已成为其
机器学习AI算法工程
2022/09/08
9800
《交通大数据理论与方法》
推荐阅读
相关推荐
Python:多次登峰但槽点不断,2023年还值得学吗?| 极客时间
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档