尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
PaddleNLP 文本摘要实战:Pointer-Generator 网络(指针生成器)的 Paddle 实现与 ROUGE 评测指南
人工智能大模型预训练微调LoRARLHF强化学习分布式训练【免费下载链接】PaddleNLPEasy-to-use and powerful LLM and SLM library with awesome model zoo.项目地址https://gitcode.com/gh_mirrors/pa/PaddleNLP点击查看免费下载本指南围绕 PaddleNLP 中slm/examples/text_summarization/pointer_summarizer示例系统讲解经典论文Get To The Point: Summarization with Pointer-Generator Networks在 Paddle v2.0 上的落地实现、可复现训练的默认超参数配置以及基于 ROUGE-1/2/L 的完整评测方法。读完本文你将理解指针生成Pointer-Generator与覆盖率Coverage机制为何能缓解摘要生成中的 OOV 与重复问题掌握本示例用于复现论文级效果的训练设置并学会在 PaddleNLP 生态中解析评测指标的含义。Pointer-Generator 网络摘要生成中的复制-生成混合机制Pointer-Generator Network 由 Abigail See 等人于 2017 年提出是序列到序列Seq2Seq文本摘要模型的一个经典变体。它在标准 Seq2Seq Attention 架构上引入了两个关键机制指针机制Pointer Mechanism传统摘要模型只能从固定词表生成词汇遇到词表外的专有名词OOV 词时容易产生未登录词错误。指针机制允许模型在从词表生成一个新词与直接从源文本中复制一个词之间动态权衡从而把原文中的关键实体直接搬运到摘要中。覆盖率机制Coverage Loss注意力机制在长文本生成时容易反复关注同一区域导致摘要中同一短语重复出现。覆盖率机制累计历史注意力分布并在损失函数中惩罚对已关注区域再次聚焦的行为显著抑制重复生成。本仓库中的实现正是这两种机制同时开启README 明确注明 with pointer generation and coverage loss enabled下训练的成果这也是其 ROUGE 指标能达到论文相当水平的关键原因。Paddle v2.0 实现从 PyTorch 实现的忠实移植slm/examples/text_summarization/pointer_summarizer/README.md说明了该示例的定位它是论文Get To The Point: Summarization with Pointer-Generator Networks的Paddle v2.0 实现代码对齐并改编自一个此前公开的 PyTorch 实现atulkum/pointer_summarizer保证了网络结构、训练流程与评测口径的可比性仓库文档明确建议要复现论文中的 state-of-the-art 效果应使用 config.py 中列出的默认超参数——这一提示表明该示例将可复现性作为一等公民而不是随意改动的教学玩具。在 PaddleNLP 仓库中该示例位于 slm/examples/text_summarization/pointer_summarizer与 bart、prophetnet、unimo-text 等示例并列构成 PaddleNLP 的文本摘要示例家族。其中 ProphetNet 示例的文档同样引用了本示例作为参考实现可见其在仓库摘要任务中的基础地位。关键训练配置复现论文效果的默认超参数README 反复强调超参数对结果的决定性作用。复现报告给出的训练设置要点如下配置项值说明训练轮次iterations100,000训练迭代总数批大小batch_size8每批次样本数机制开关指针生成 Coverage Loss两项同时启用超参数来源config.py 默认值复现论文效果需沿用默认值从该示例的训练口径可以看出batch_size8属于较小的批大小配合 100k 迭代意味着模型经历了约 80 万样本的训练量这与 Pointer-Generator 论文在 CNN/DailyMail 上的标准训练规模约数万篇文档反复多轮相匹配沿用 config.py 默认超参是复现的前提——包括词表大小、注意力维度、学习率、Beam Search 宽度等细节都应以默认配置为准任何改动都可能偏离论文报告的水平。需要注意的是在本仓库快照中该示例目录以 README 形式归档config.py 的具体数值以原文档所述为准实际运行时请以该示例目录下源码中的默认值为准。训练数据CNN/DailyMail 非匿名化摘要数据集Pointer-Generator 论文使用 CNN/DailyMail 新闻数据集进行训练与评测PaddleNLP 同样围绕该数据集组织本示例。在仓库中数据集加载逻辑由 paddlenlp/datasets/hf_datasets/cnn_dailymail.py 提供其关键事实如下数据特征共两个article新闻正文即待摘要的源文档与highlights以s、/s包围的要点拼接即目标摘要此外附带id字段数据来源为 CNN Stories 与 DailyMail Stories 两个语料子集按官方的 train / val / test 文件列表all_train.txt、all_val.txt、all_test.txt切分数据集提供多版本3.0.0cased 版本默认、2.0.0目标句以换行分隔便于按摘要级 ROUGE 评测、1.0.0与 0.0.2 数据相同。评测时采用 cased 版本数据处理参考了 abisee/cnn-dailymail 的 make_datafiles.py 流程为缺失句号的文本行补上句号并按highlight标记切分正文与要点。该数据集脚本从 paddlenlp/datasets/hf_datasets/cnn_dailymail.py 中声明的下载地址获取原始语料并完成解析可直接作为本示例的数据准备入口。评测指标ROUGE 系列在 PaddleNLP 中的实现本示例的评测指标为 ROUGERecall-Oriented Understudy for Gisting Evaluation包括 ROUGE-1、ROUGE-2 与 ROUGE-L。PaddleNLP 在 paddlenlp/metrics/rouge.py 中提供了完整实现Rouge1 / Rouge2基于RougeN基类rouge.py#L23-L94分别计算候选摘要与参考摘要之间 1-gram、2-gram 的重叠数量与召回率其中_get_ngrams负责生成词级 n-gram 集合RougeLrouge.py#L107-L231基于最长公共子序列LCS计算句子级结构相似度其 F 值公式中gamma默认为 1.2用于权衡召回率权重三个指标统一输出precision精确率、recall召回率、f1F1 值三个维度与本 README 给出的评测报告格式完全对应。评测口径上该实现按摘要级summary-level聚合候选与参考均以整句为单位计算 ROUGE 得分与 README 中使用 summary-level ROUGE 更容易评测的设计意图一致。模型表现100k 迭代后的完整 ROUGE 评测报告在batch_size8、训练 100,000 迭代、指针生成与 Coverage Loss 均开启的配置下Paddle 实现的评测报告含 95% 置信区间如下ROUGE-1: rouge_1_f_score: 0.3980 with confidence interval (0.3959, 0.4002) rouge_1_recall: 0.4639 with confidence interval (0.4613, 0.4667) rouge_1_precision: 0.3707 with confidence interval (0.3683, 0.3732) ROUGE-2: rouge_2_f_score: 0.1726 with confidence interval (0.1704, 0.1749) rouge_2_recall: 0.2008 with confidence interval (0.1984, 0.2034) rouge_2_precision: 0.1615 with confidence interval (0.1593, 0.1638) ROUGE-l: rouge_l_f_score: 0.3617 with confidence interval (0.3597, 0.3640) rouge_l_recall: 0.4214 with confidence interval (0.4188, 0.4242) rouge_l_precision: 0.3371 with confidence interval (0.3348, 0.3396)将核心 F1 指标与两个基线横向对比实现ROUGE-1 F1本 Paddle 实现0.3980此前 PyTorch 实现0.3907原论文报告值0.3953几点值得注意的解读置信区间都控制在 0.003 以内如 ROUGE-1 的 f_score 区间 (0.3959, 0.4002)说明评测结果稳定、样本量充足指标差异具有统计意义Paddle 实现以 0.3980 超出 PyTorch 基线0.3907与论文报告值0.3953这是在相同训练规模100k 迭代、batch_size8与相同数据上的直接对比结果从指标结构看recall 普遍高于 precision如 ROUGE-1 recall 0.4639 vs precision 0.3707这符合摘要评测的典型特征——模型倾向于生成信息覆盖度更高的长摘要而精确匹配比例相对较低。评测口径与可复现性说明要复现上表指标需满足以下口径这与 PaddleNLP 的 ROUGE 实现及数据版本严格对应数据集版本使用 CNN/DailyMail cased 版本3.0.0按 cnn_dailymail.py 中声明的切分方式划分训练/验证/测试集评测单元采用摘要级 ROUGE即候选与参考均以句子为单位计算 LCS 与 n-gram 重叠而非拼接为整段后统一计算指标实现直接使用 paddlenlp/metrics/rouge.py 中的 RougeN / RougeL 类gamma取默认值 1.2训练设置严格执行 config.py 默认超参数、batch_size8、100k 迭代、指针生成与 Coverage Loss 双开任一条件变更都会改变最终指标。如果需要在 PaddleNLP 中自行开展摘要评测可以直接复用 RougeL 等指标类初始化时传入trans_func或vocab通过update累积候选/参考对最后调用accumulate得到平均得分Rouge1、Rouge2 则通过RougeN的 n1、n2 实例化获得与本示例 README 报告的指标一一对应。小结slm/examples/text_summarization/pointer_summarizer以一篇简洁的 README 记录了 Paddle v2.0 上 Pointer-Generator 网络的完整落地要点忠实对齐 PyTorch 参考实现、以 config.py 默认超参数保障可复现性、在 CNN/DailyMail 非匿名化数据上以 100k 迭代与 batch_size8 完成训练并产出 ROUGE-1 F1 0.3980 的可复现评测结果同时超过 PyTorch 基线0.3907与原论文报告值0.3953。对于希望在 PaddlePaddle 框架中复现经典摘要模型、理解复制-生成混合机制与 Coverage Loss 训练技巧的开发者这是一个开箱即用的完整参考。赞分享人工智能大模型预训练微调LoRARLHF强化学习分布式训练【免费下载链接】PaddleNLPEasy-to-use and powerful LLM and SLM library with awesome model zoo.项目地址https://gitcode.com/gh_mirrors/pa/PaddleNLP点击查看免费下载相关推荐IntelliQ社区贡献指南如何参与开源项目并提交优质PRIntelliQ社区贡献指南如何参与开源项目并提交优质PR 欢迎加入IntelliQ开源社区作为一个基于LLM大语言模型意图识别、参数抽取结合slot词槽技人工智能AI 应用NLP交互助手后端前端Ganache插件开发指南如何扩展自定义区块链功能Ganache插件开发指南如何扩展自定义区块链功能 Ganache是一个功能强大的区块链开发工具允许开发者快速搭建本地区块链环境进行测试和开发。本指南将详细区块链开发工具告别传统摘要缺陷Pointer-Generator网络的革命性文本摘要技术详解告别传统摘要缺陷Pointer Generator网络的革命性文本摘要技术详解 摘要痛点与解决方案清单 | 传统Seq2Seq缺陷 | Pointer Gen创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

网页特效实战指南:从滚动视差到粒子动画的性能落地技巧

网页特效实战指南:从滚动视差到粒子动画的性能落地技巧

上次给客户做官网的时候,对方提了一个让我印象很深的需求:首页要"酷",最好一打开就让人觉得技术很强、设计很新。我给了他一个粒子背景加滚动视差,他当场拍板。后来那个站上线不到一个月,数据反馈里停留时长…

📅 2026/9/25 21:46:53
Atlas 300V推理卡实战:YOLOv5部署全流程与性能调优

Atlas 300V推理卡实战:YOLOv5部署全流程与性能调优

前一阵群里好几个朋友在问“Atlas 300V 24G 是运算加速卡吗”,紧接着又有人追着问“这卡能不能拿来部署 YOLO”。这两个问题凑在一起,正好是我最近大半个月一直在折腾的事情。借这个机会,把从硬件选型、环境搭建、模型转换到推理调优的完整过…

📅 2026/9/25 21:46:53
Atlas 300V Pro 24G推理卡YOLO部署全链路实战指南

Atlas 300V Pro 24G推理卡YOLO部署全链路实战指南

1. Atlas 300V Pro 24G:先回答那个最纠结的问题标题里带了"atlas"这个词,说实在的,范围特别大。Atlas在华为昇腾产品线里几乎是一整个宇宙——训练卡有Atlas 800、Atlas 900,推理卡有Atlas 200、Atlas 300系列&#xff…

📅 2026/9/25 21:46:53
MORE NEWS

更多资讯

📰

PC模拟经营游戏Sugar Service Game:核心玩法、冲分技巧与避坑指南

这个月我绝大部分碎片时间都花在一款叫Sugar Service Game的 PC 模拟经营游戏上。听名字你可能觉得它就是个甜品店换皮小游戏,但它实际上把"接单—做甜品—交付—拿评价"这套服务循环做得相当扎实,尤其是移植到 PC 之后,操作精度和…

📰

Python+MySQL医院管理系统课设源码:SQL初始化到Web改造

简介:这套基于Python和MySQL的医院管理系统,面向计算机相关专业在校生、毕业设计及数据库课程设计场景,可用于快速搭建一个具备数据初始化、信息查询、业务操作等核心功能的管理项目,也可作为初学Python与MySQL联动开发的练手案例…

📰

ESPnet Switchboard 轮转预测(Turn-Taking)模型实战指南:基于 Whisper 的 Judge 模型训练、推理与音频基础模型基准评测

人工智能语音音频深度学习NLP 【免费下载链接】espnet End-to-End Speech Processing Toolkit 项目地址: https://gitcode.com/gh_mirrors/es/espnet 点击查看 免费下载 本指南以 ESPnet 仓库中 egs2/swbd/slu1 配方(Recipe)为核心&#xff…

📰

开源AI编程工具实战:上下文、提示词与可调试性

1. 这不是“用AI写代码”,而是重构程序员的思考方式我第一次把Cursor当作主力编辑器写完一个完整模块时,盯着终端里跑出来的测试结果愣了三秒——不是因为功能没实现,而是因为整个过程里,我几乎没有手动敲过for循环、没有查过一次…

📰

Qwen大模型项目实践指南:从选型到部署

我无法根据该标题生成符合要求的博文内容。原因如下:标题“Qwen新1号位首次亮相,刘大一恒能否顶住压力?”属于典型的人物动态类新闻短评或媒体评论范畴,其核心是围绕某位人士(刘大一恒)在通义千问&#xff…

📰

Atlas 300V 24G实战:用NPU加速卡部署YOLO推理的全流程指南

前阵子项目做边缘侧视频流目标检测,手里原本用的是GPU,但客户指定设备时偏偏是一块Atlas 300V 24G。拿到卡的第一反应其实和很多人一样:这东西到底算不算运算加速卡?能不能直接把YOLO塞进去跑?后来折腾了几天&#xff…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬