当前位置:网站首页>CSDN博文摘要(一) —— 一个简单的初版实现
CSDN博文摘要(一) —— 一个简单的初版实现
2022-07-06 09:11:00 【Alexxinlu】
系列文章
团队博客: CSDN AI小组
1. 背景
2. 博文摘要
2.1 博文结构化
博文中包含了太多的元素,直接作为文本进行摘要会严重影响摘要的质量。故首先需要对博文进行结构化,结构化之后会将正文中的内容有效区分,例如:head(标题)、code(代码)、table(表格)、text(段落)、img(图片)、link(链接)等,可更便捷、准确获取每个部分的内容,为后续博文摘要中的预处理逻辑和规则逻辑提供更便捷清晰的结构化信息,并且为模型提供更优质的输入。下图是博文结构化的一个例子:
2.2 规则部分
- 规则1 :判断正文中是否有 “前言”、“写在前面的话” 等一些对文章进行简介的模块,如果有的话,直接提取前言中的内容,并裁减到指定长度(默认长度:256)
- 规则2 :判断第一级标题前是否有内容,如果有的话,直接提取该部分内容,并裁减到指定长度(默认长度:256)
2.3 模型部分
如果规则无法抽取出摘要,则使用TextRank模型对博文进行摘要抽取。模型的输入为除了head(标题)、code(代码)、table(表格)、text(段落)、img(图片)、link(链接)等之外的正文文本信息。具体的实现过程如下所示:
- a) 对于不满足规则的样本,直接抽取除图片、代码、标题、目录等信息外的所有正文文本;
- b) 将正文文本进行分句,输入到TextRank模型中,进行文本摘要;
- c) TextRank模型会根据句子的重要性,对每个句子进行打分(所有句子得分的总和为1);
- d) 将所有句子按得分从高到低进行排序,并依次进行拼接,直到长度接近指定长度,但是不超过指定长度为止。(默认长度:256)
2.4 得分设定
- 得分区间为: [0, 1]
- 规则得分默认为:0.5
- 模型得分:所有拼接句子的得分值的和
3. 下一步计划
当前版本是一个初步版本,还需要进一步优化。下一步计划包括:
- 构建测试集,进行定量的效果评价。评价指标:BLEU、ROUGE;
- 句子拼接的优化:将所有句子按得分从高到低进行排序,并依 句子在原文的顺序 进行拼接,直到长度接近指定长度;
- TextRank算法在构建句子关系图时,考虑词的权重。例如:基于同一个标签中的所有博文,使用类似于TF-IDF的算法计算每个词的权重。
P.S.
该系列文章会持续进行更新。希望NLP等领域的同仁、老师和专家能够提供宝贵的建议,谢谢!
边栏推荐
- Global and Chinese markets of static transfer switches (STS) 2022-2028: Research Report on technology, participants, trends, market size and share
- MySQL32-锁
- 高并发系统的限流方案研究,其实限流实现也不复杂
- In fact, the implementation of current limiting is not complicated
- Advantages and disadvantages of evaluation methods
- Super detailed steps to implement Wechat public number H5 Message push
- Mysql28 database design specification
- Complete web login process through filter
- MySQL實戰優化高手04 借著更新語句在InnoDB存儲引擎中的執行流程,聊聊binlog是什麼?
- Mysql34 other database logs
猜你喜欢
Introduction tutorial of typescript (dark horse programmer of station B)
Typescript入门教程(B站黑马程序员)
MySQL combat optimization expert 02 in order to execute SQL statements, do you know what kind of architectural design MySQL uses?
MySQL實戰優化高手04 借著更新語句在InnoDB存儲引擎中的執行流程,聊聊binlog是什麼?
实现以form-data参数发送post请求
MySQL32-锁
MySQL combat optimization expert 03 uses a data update process to preliminarily understand the architecture design of InnoDB storage engine
15 medical registration system_ [appointment registration]
A necessary soft skill for Software Test Engineers: structured thinking
MySQL24-索引的数据结构
随机推荐
pytorch的Dataset的使用
MySQL combat optimization expert 09 production experience: how to deploy a monitoring system for a database in a production environment?
MySQL實戰優化高手04 借著更新語句在InnoDB存儲引擎中的執行流程,聊聊binlog是什麼?
MySQL31-MySQL事务日志
评估方法的优缺点
① BOKE
[after reading the series] how to realize app automation without programming (automatically start Kwai APP)
MySQL23-存储引擎
text 文本数据增强方法 data argumentation
[Li Kou 387] the first unique character in the string
In fact, the implementation of current limiting is not complicated
Advantages and disadvantages of evaluation methods
MySQL22-逻辑架构
MySQL32-锁
Isn't there anyone who doesn't know how to write mine sweeping games in C language
好博客好资料记录链接
软件测试工程师必备之软技能:结构化思维
MySQL33-多版本并发控制
Pytorch RNN actual combat case_ MNIST handwriting font recognition
软件测试工程师必备之软技能:结构化思维