根据关键词文章采集系统( 本发明基于关键词的文章生成方法,所述、利用爬虫获取散文段落数据集)
优采云 发布时间: 2021-10-29 08:06本发明基于关键词的文章生成方法,所述、利用爬虫获取散文段落数据集)
本发明涉及自然语言生成处理领域,尤其涉及一种基于关键词的文章生成方法。
背景技术:
文本自动生成是自然语言处理领域的重要研究方向,文本自动生成的实现也是人工智能成熟的重要标志。简而言之,我们期待着未来有一天,计算机可以像人类一样写作,可以编写高质量的自然语言文本。文本自动生成技术具有很大的应用前景。例如,文本自动生成技术可以应用于智能问答对话、机器翻译等系统,实现更加智能自然的人机交互;我们也可以使用文本自动生成系统来代替编辑,实现新闻的自动编写和发布。可能颠覆新闻出版业;这项技术甚至可以用来帮助学者撰写学术论文,从而改变科研创作的模式。文本生成是当前自然语言处理(nlp,natural language processing)和自然语言生成(nlg,natural language generation)领域的研究热点。
目前一般都是手工的采集信息,经过手工处理后编译成文章,而传统的结构化数据生成或模板配置生成的文本非常死板,有局限性。
技术实现要素:
本发明的目的在于提供一种基于关键词的文章生成方法,以解决现有技术中的上述问题。
为实现上述目的,本发明采用的技术方案如下:
一种基于关键词的文章生成方法,该方法包括以下步骤,
s1、 使用爬虫获取网上散文内容,作为初始训练数据集,对初始训练数据集进行分割,获取多段文字,为每段文字配置id号,汇总将所有段落文本转换为散文段落数据集;
s2、 根据id号对散文段落数据集进行索引,得到散文段落数据集的索引;用散文段落数据集进行分词,对分词结果进行训练,得到散文段落数据集的句子特征向量模型;
s3、获取要生成的文本的关键词以及用户提交的文本的段落数;
s4、根据散文段落数据集的索引和句子特征向量模型,利用待生成文本的关键词进行索引,得到与文章段落数相同的文本段落数要生成的文本,每个文本段落根据id编号,根据散文段落数据集的索引,组成文章显示。
优选地,步骤s2包括以下内容:
s201、根据id号在散文段落数据集上建立前向索引,得到第一索引序列;根据token对散文段落数据集建立倒排索引,得到第二索引序列;
s202、对散文段落数据集进行token切分,得到多个token,用emlo模型训练每个token,得到所有token的词向量;
s203、根据步骤s202得到的所有token的词向量计算训练段落数据集中的句子特征向量。
优选地,步骤s203具体包括以下内容:
一种。根据步骤s202得到的所有token的词向量,分别统计散文段落数据集中每个段落文本的所有token的词向量;
湾 根据散文段落数据集中每个段落文本的所有token的词向量,计算散文段落数据集中每个段落文本的句子特征向量;
C。根据每个段落文本的id号得到散文段落数据集的句子特征向量模型。
优选地,步骤s4包括以下内容:
s41、 加载第一索引、第二索引和散文段落数据集的句子特征向量模型;
s42、根据待生成文本的关键词搜索第二个索引序列,随机得到第二个索引序列中的一个句子作为第一段;
s43、根据散文段落数据集的句子特征向量模型,得到第一段的向量值;
s44、 根据散文段落数据集的句子特征向量模型和第一段的向量值,根据欧氏距离计算出离第一段最近的向量,记为第二段;
s45、 根据散文段落数据集和第二段的句子特征向量模型,根据欧氏距离计算离第二段最近的向量,记为第三段;
s46、 循环执行步骤s45,直到得到第n个段落,其中n为要生成的段落数;
s47、将得到的段落根据id号进行排列汇总,根据id号查询第二个索引序列,生成文章展示。
本发明的有益效果是:1、使用深度学习神经网络语言模型计算词向量,然后使用词向量(wordembedding)和位置向量(positionalembedding)表征句子特征向量并将其应用于文本生成应用,摒弃传统结构化数据生成和模板配置生成的僵化和局限性。2、采用新的基于句子的正向索引和反向索引项目,实现在线计算服务。具有较高的在线计算性能,可重复生成多语义角度文本的关键词文章。3、提供一种使用关键词生成文章的方法,包括基于关键词的文本文章生成算法,句子'
图纸说明
图1为本发明实施例中文章的生成方法流程*敏*感*词*;
图2为本发明实施例中文章生成方法离线部分*敏*感*词*;
图3为本发明实施例中文章生成方法的在线部分流程*敏*感*词*。
详细方法
为使本发明的目的、技术方案和优点更加清楚明白,下面结合附图对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限制本发明。
自然语言处理(简称 NLP)是人工智能的一个子领域。自然语言处理应用包括机器翻译、情感分析、智能问答、信息抽取、语言输入、舆情分析、知识图谱等,也是深度学习的一个分支。
在这个概念下,有两个主要的子集,即自然语言理解(简称nlu)和自然语言生成(简称nlg)。
nlg 旨在让机器根据一定的结构化数据、文本、音频和视频等,生*敏*感*词*类可以理解的自然语言文本。 根据数据源的类型,nlg 可以分为三类:
1.texttotextnlg,主要对输入的自然语言文本进行进一步的处理和处理,主要包括文本摘要(对输入文本进行提炼和提炼)、拼写检查(自动纠正输入文本的拼写错误)、语法纠错(自动纠正输入文本的语法错误)、机器翻译(用另一种语言表达输入文本的语义)和文本改写(用不同的形式表达输入文本的相同语义)等领域;
2.datatotextnlg,主要是根据输入的结构化数据生成易读易懂的自然语言文本,包括天气预报(根据天气预报数据生成广播通用文本)、财务报告(按季度自动生成)报告)/年报)、体育新闻(根据比分信息自动生成体育新闻)、人物履历(根据人物结构化数据生成履历)等字段自动生成;
3.visiontotextnlg,主要是生成一个自然语言文本,可以准确地描述给定一张图片或一段视频的图片或视频的语义信息(实际上是一个连续的图片序列)。
示例一
如图1-3所示,本实施例提供了一种基于关键词的文章生成方法,属于texttotextnlg的一个子集,即基于关键词的文本生成算法(关键字到文本);该方法包括以下步骤,
s1、 使用爬虫获取网上散文内容,作为初始训练数据集,对初始训练数据集进行分割,获取多段文字,为每段文字配置id号,汇总将所有段落文本转换为散文段落数据集;
s2、 根据id号对散文段落数据集进行索引,得到散文段落数据集的索引;用散文段落数据集进行分词,对分词结果进行训练,得到散文段落数据集的句子特征向量模型;
s3、获取要生成的文本的关键词以及用户提交的文本的段落数;
s4、根据散文段落数据集的索引和句子特征向量模型,利用待生成文本的关键词进行索引,得到与文章段落数相同的文本段落数要生成的文本,每个文本段落根据id编号,根据散文段落数据集的索引,组成文章显示。
本实施例中,步骤s1-s2属于文章生成方法的离线部分(如图2所示);步骤s3-s4属于文章生成方法的在线部分(如图3)。
在本实施例中,在步骤s1中,利用爬虫获取多个互联网网站的散文内容作为初始训练数据集,对初始训练数据集进行分段得到分段后的散文段落数据集,记为as s={ s1, s2,..., sn},其中 si 是散文段落数据集中的第 i 个段落文本,i 是段落文本的 id 号,i=1, 2,... n,n为散文段落数据集合中的段落文本总数。
本实施例以步骤s1得到的散文段落数据集s为样本进行计算,具体包括以下内容:
s201、 根据id号在散文段落数据集上建立前向索引,得到第一个索引序列;根据token对散文段落数据集建立倒排索引,得到第二索引序列;第一个指数系列和第二个指数系列登陆磁盘;
s202、对散文段落数据集进行token切分,得到多个token,用emlo模型训练每个token,得到所有token的词向量;获取token的词向量的具体过程是计算wordembedding(词向量),并将positionalembedding(位置向量)和wordembedding加到向量中,结果就是token的词向量。
s203、根据步骤s202得到的所有token的词向量计算训练段落数据集中的句子特征向量。
本实施例中,步骤s203具体包括以下内容:
一种。根据步骤s202得到的所有token的词向量,分别统计散文段落数据集中每个段落文本的所有token的词向量;
记其中一个token的词向量为a,其中aj是token的词向量a的第j个向量值,j=1, 2,...,m, m是词的总维数向量,默认值m=200;
湾 根据散文段落数据集中每个段落文本的所有token的词向量,计算散文段落数据集中每个段落文本的句子特征向量;
首先,得到散文段落数据集中第一个段落文本s1的所有token的词向量,设k为散文段落数据集中第一个段落文本s1的所有token的总数;那么散文段落数据集中第一段文本s1的句子特征向量(sentenceembedding)为s1=a1+a2+...ak;
根据步骤b,依次计算散文段落数据集中所有段落文本的句子特征向量。
C。根据每个段落文本的id号得到散文段落数据集的句子特征向量模型;并将散文段落数据集的句子特征向量模型保存在磁盘中。
本实施例中,步骤s3具体为等待获取用户通过web的rpc服务提交的两个参数关键字(待生成文本的关键词)和n(生成文本的段落数) . 同时需要判断用户提交的参数是否合法,如果合法则执行步骤s4,如果不合法会返回参数错误,需要用户重新输入参数。
本实施例加载索引和句子特征向量模型,对得到的关键词进行实时在线计算,具体包括以下内容:
s41、 加载第一索引、第二索引和散文段落数据集的句子特征向量模型;
s42、根据待生成文本的关键词搜索第二个索引序列,随机得到第二个索引序列中的一个句子作为第一段w1;
s43、根据散文段落数据集的句子特征向量模型获取第一段的向量值
s44、 根据散文段落数据集的句子特征向量模型和第一段的向量值,根据欧氏距离计算出离第一段w1最近的向量w2,记为第二个段落
s45、 根据散文段落数据集和第二段w2的句子特征向量模型,根据欧氏距离计算出离第二段w2最近的向量,记为第三段
s46、 循环执行步骤s45,直到得到第n个段落,其中n为要生成的段落数;
s47、根据id号[w1,w2,...wn]对得到的段落进行整理汇总,根据id号查询第二个索引序列生成文章返回显示客户端。
示例二
本实施例中,具体以使用本发明方法生成的文章为例进行说明,
1、参数关键词为“父亲”,段落参数n=7。生成文章如下:
那些死者,包括我的父亲,一代村干部的叔叔,我的三个阿姨;那些幸存者,包括现在当村干部的表哥和在乡派出所当警察的侄子,他们总是像抓着相机一样出现在我的眼前,死鬼和活鬼一起告诉我,他们一起吵架吵架。
选拔的村干部氏族打过一次仗。
写作前两三年的春天,野心勃勃,在迪化街为死者献祭了近十年二十年,也为迪化街的幸存者洒了一杯酒。从此,我成为了一名学霸。放在院子里的巨大汉坛子里,香火一天比一天燃着,屋顶上的香烟像线头一样蜷缩着。
他们都是农村人,但不是文坛上的人。他们对阅读非常感兴趣,他们来找我说:“你要建一座纪念碑,这是一座大纪念碑!” 当然,他们的话给了我反复修改的信心。,但最终还是放下了定稿的笔,坐在了烟熏的书房里。我再次怀疑我写的字。
我的家乡是迪化街,我的故事是清风街;迪化街是月亮,清风街是水中的月亮;迪化街是花,清风街是镜中花。
因抢劫入狱的三人因*敏*感*词*被拘留。
它就像一只可以听音乐的耳朵,需要不断的训练。
2、参数关键词为“爱”,段落参数n=7。生成文章如下:
为什么中国人的爱情离不开仁义,而外国人可以那么洒脱?或许,中国夫妻要分担逆境,而外国夫妻却要一起过好日子。
让我们一起举杯说:我们很幸福。
女儿也抬手对它说:“再见……”。
爱可以散播,爱可以在荆柴纱笼里,爱可以煮熟吃,爱可以吃不眠。
恩典是漂浮世界中我们的救生圈。它用于覆盖我们自己和他人。它既是救赎,也是负担。
我们从小就习惯了生活在提醒中。
是的,有恩有义,也有忘恩负义、委屈、要求、仇恨。
采用本发明公开的上述技术方案,具有以下有益效果:
本发明提供了一种基于关键词的文章的生成方法。该方法使用深度学习神经网络语言模型计算词向量,然后用词嵌入和位置嵌入来表示句子特征向量应用于文本生成应用,摒弃了传统结构化数据生成和模板配置生成的僵化和局限性;使用新的基于句子的前向索引和倒排索引项目来实现在线计算服务。, 在线计算性能高,可重复生成文本多个语义角度的关键词文章;该方法提供了一种使用关键词生成文章的方法,包括基于关键词的文本文章生成算法、句子的前向索引和关键词
以上仅为本发明的优选实施例。需要指出的是,对于本领域普通技术人员来说,在不脱离本发明的原则的情况下,可以进行多种改进和修改,这些改进和修改也应视为本发明的保护范围。本发明。