一种文本生成方法及装置与流程
未命名
07-22
阅读:108
评论:0
1.本技术实施例涉及计算机技术领域,涉及但不限于一种文本生成方法及装置。
背景技术:
2.当前,通过输入主题或关键字,利用人工智能技术自动生成相应文本。但是,相关技术中自动生成的文本往往不能一次成文且生成内容不可控,用户无法一次获得满意的文本内容。因此,如何使自动生成的文本内容可控且满足用户需求是当前亟待解决的问题。
技术实现要素:
3.基于相关技术中存在的问题,本技术实施例提供一种文本生成方法及装置。
4.本技术实施例的技术方案是这样实现的:
5.本技术实施例提供一种文本生成方法,所述方法包括:
6.获取文本信息;
7.根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;
8.响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;
9.基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。
10.在一些实施例中,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:
11.基于所述至少一个目标语句,将所述初始文本中除所述目标语句外的语句替换为占位符,得到替换文本;
12.根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本。
13.在一些实施例中,所述根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本,包括:
14.对与所述占位符两侧相邻的至少一个目标语句进行双向语义特征提取,得到所述占位符对应的双向语义特征信息;
15.根据所述双向语义特征信息和所述文本信息,确定所述占位符对应的更新语句;
16.通过所述更新语句对所述替换文本中的占位符进行替换,得到所述目标文本。
17.在一些实施例中,所述目标文本由目标语句和更新语句组成,所述方法还包括:
18.响应于文本选择操作,在所述目标文本的更新语句中确定至少一个第一目标语句;
19.对所述更新语句的数量和所述第一目标语句的数量进行对比,得到对比结果;
20.根据所述对比结果和所述目标文本,确定最终文本。
21.在一些实施例中,所述根据所述对比结果和所述目标文本,确定最终文本,包括:
22.如果所述更新语句的数量与所述第一目标语句的数量相同,将所述目标文本确定
为最终文本;
23.如果所述更新语句的数量大于所述第一目标语句的数量,根据所述目标语句、第一目标语句和所述文本信息,再次对所述目标文本进行更新,得到最终文本。
24.在一些实施例中,所述响应于文本选择操作,在所述多个语句中确定出至少一个目标语句,包括:
25.响应于所述文本选择操作,在所述多个语句中确定出至少一个选择语句;
26.如果所述选择语句的数量与所述初始文本中语句的数量相同,将所述初始文本确定为所述目标文本;
27.如果所述选择语句的数量小于所述初始文本中语句的数量,将所述至少一个选择语句确定为至少一个目标语句。
28.在一些实施例中,在确定出至少一个目标语句之后,所述方法还包括:
29.响应于文本排序操作,对所述至少一个目标语句进行优先级排序,得到每一目标语句的优先级;
30.对应地,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:
31.基于所述至少一个目标语句、每一目标语句的优先级和所述文本信息,对所述初始文本进行更新,得到目标文本。
32.在一些实施例中,所述文本信息至少包括起始语句和文本风格;
33.所述根据所述文本信息,生成初始文本,包括:
34.根据所述起始语句和所述文本风格,生成与所述起始语句相邻的生成语句;
35.将所述起始语句和所述生成语句,确定为生成文本;
36.将所述生成文本确定为更新起始语句;
37.根据所述更新起始语句和所述文本风格,确定更新生成文本;
38.循环以所述更新生成文本作为新的更新起始语句,生成新的更新生成文本;
39.响应于新的更新生成文本满足目标条件,将新的更新生成文本确定为初始文本。
40.在一些实施例中,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:
41.对所述至少一个目标语句进行语义分析,得到所述至少一个目标语句对应的文本风格;
42.基于所述至少一个目标语句、所述文本信息和所述文本风格,对所述初始文本进行更新,得到所述目标文本。
43.本技术实施例提供一种文本生成装置,所述装置包括:
44.获取模块,用于获取文本信息;
45.生成模块,用于根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;
46.确定模块,用于响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;
47.更新模块,用于基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。
48.本技术实施例提供的文本生成设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本技术实施例提供的文本生成方法。
49.本技术实施例提供的计算机可读存储介质,其上存储有可执行指令,用于引起处理器执行所述可执行指令时,实现本技术实施例提供的文本生成方法。
50.本技术实施例提供一种计算机程序产品,所述计算机程序产品包括可执行指令,所述可执行指令存储在计算机可读存储介质中;当文本生成设备的处理器从所述计算机可读存储介质读取所述可执行指令,并执行所述可执行指令时,实现本技术实施例提供的文本生成方法。
51.本技术实施例提供的文本生成方法及装置,通过获取的文本信息生成初始文本,响应于文本选择操作,在多个语句中确定出至少一个目标语句,并基于选择的目标语句和文本信息,对初始文本进行更新,得到目标文本。如此,通过用户的交互操作,在文本生成过程中,根据用户实时的正向反馈,对文本内容进行调整,提升了文本生成的可控性,使得生成的目标文本不仅与文本信息相关,还符合用户的需求,避免文本生成之后需要用户再次对文本进行修改,提升了文本生成效率。
附图说明
52.图1是本技术实施例提供的文本生成方法的应用场景示意图;
53.图2是本技术实施例提供的文本生成方法的一个可选的流程示意图;
54.图3是本技术实施例提供的文本生成方法的一个可选的流程示意图;
55.图4是本技术实施例提供的文本生成方法的一个可选的流程示意图;
56.图5是本技术实施例提供的文本生成方法的一个可选的流程示意图;
57.图6是本技术实施例提供的一种文本生成方法的一个可选的流程示意图;
58.图7是本技术实施例提供的一种文本生成模型的结构示意图;
59.图8是本技术实施例提供的一种文本更新模型的结构示意图;
60.图9是本技术实施例提供的文本生成装置的组成结构示意图;
61.图10是本技术实施例提供的文本生成设备的组成结构示意图。
具体实施方式
62.为了更清楚地阐述本技术实施例的目的、技术方案及优点,以下将结合附图对本技术实施例的实施例进行详细的说明。应当理解,下文对于实施例的描述旨在对本技术实施例的总体构思进行解释和说明,而不应当理解为是对本技术实施例的限制。在说明书和附图中,相同或相似的附图标记指代相同或相似的部件或构件。为了清晰起见,附图不一定按比例绘制,并且附图中可能省略了一些公知部件和结构。
63.在一些实施例中,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术实施例所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。措词“一”或“一个”不排除多个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除
其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”“顶”或“底”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。当诸如层、膜、区域或衬底之类的元件被称作位于另一元件“上”或“下”时,该元件可以“直接”位于另一元件“上”或“下”,或者可以存在中间元件。
64.基于相关技术中存在的问题,本技术实施例提供一种文本生成方法,通过获取的文本信息生成初始文本,响应于文本选择操作,在多个语句中确定出至少一个目标语句,并基于选择的目标语句和文本信息,对初始文本进行更新,得到目标文本。如此,通过用户的交互操作,在文本生成过程中,根据用户实时的正向反馈,对文本内容进行调整,提升了文本生成的可控性,使得生成的目标文本不仅与文本信息相关,还符合用户的需求,避免文本生成之后需要用户再次对文本进行修改,提升了文本生成效率。
65.本技术实施例提供的文本生成方法可以由文本生成设备等电子设备执行,其中电子设备可以是笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的终端,也可以实施为服务器。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
66.下面,将说明文本生成设备实施为服务器时的示例性应用,将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
67.图1是本技术实施例提供的文本生成方法的应用场景示意图。本技术实施例提供的文本生成系统10中包括终端100、网络200和服务器300,网络200可以是广域网或者局域网,又或者是二者的组合。服务器300和文本生成设备在物理上可以是分立的,也可以是一体的。在进行文本生成时,服务器300可以采用本技术实施例提供的方法,通过网络200获取用户在终端100中输入的文本信息,根据文本信息,生成由多个语句组成的初始文本,显示于终端100的显示界面100-1上,再通过网络200获取用户在终端100进行的文本选择操作,在多个语句中确定出至少一个目标语句,并基于至少一个目标语句和文本信息,对初始文本进行更新,得到目标文本,并将目标文本发送至终端100,并显示于终端100的显示界面100-1上。
68.参见图2,图2是本技术实施例提供的文本生成方法的一个可选的流程示意图,本技术实施例提供的文本生成方法可以通过步骤s201至步骤s204实现:
69.步骤s201、获取文本信息。
70.这里,文本信息可以是用户输入的起始语句和文本风格等信息,文本风格可以是积极、消极、抒情、朴实或简洁等文本叙事风格。
71.在一些实施例中,文本信息也可以是用户输入的关键词和文本风格等信息,根据用户输入的关键词和文本风格可以生成起始语句,再根据起始语句和文本风格逐句生成初始文本。
72.在一些实施例中,文本信息还可以包括生成的初始文本的语句数量、文本字数或文本结束语等约束信息,用于在自动进行文本生成时,对初始文本的文本长度进行限制。例
如,文本信息包括文本结束语时,在自动生成的语句中具有文本结束语时,就可以不再根据关键词或起始语句的语义继续进行文本生成,而是根据已生成的文本,生成文本结尾文本或段落。
73.在一些实施例中,文本信息可以是用户基于终端的展示界面进行输入的,展示界面可以显示在任意合适的具有界面交互功能的电子设备上。在实施时,显示当前展示界面的电子设备与执行该文本生成方法的设备可以是相同的,也可以是不同的,这里并不限定。例如,执行该文本生成方法的电子设备可以为笔记本电脑,显示当前展示界面的电子设备也可以为该笔记本电脑,当前展示界面可以为该笔记本电脑上运行的客户端的交互界面,也可以是该笔记本电脑上运行的浏览器中显示的网页。又如,执行该文本生成方法的计算机设备可以为服务器,显示当前展示界面的电子设备可以为笔记本电脑,当前展示界面可以为该笔记本电脑上运行的客户端的交互界面,也可以是该笔记本电脑上运行的浏览器中显示的网页,该笔记本电脑可以通过该客户端或者浏览器访问该服务器。
74.在一些实施例中,文本信息可以是用户通过终端的输入组件或电子设备在当前展示界面中输入或选择的。其中,输入组件或设备可以包括但不限于键盘、鼠标、触控屏、触控板或音频输入器等。
75.步骤s202、根据所述文本信息,生成初始文本,所述初始文本由多个语句组成。
76.在一些实施例中,当文本信息是起始语句和文本风格时,可以通过训练好的文本生成模型(例如,机器学习后的自回归gpt-2模型),文本生成模型对起始语句的语义进行分析,再根据起始语句的语义进行下一句的预测。例如,可以是根据起始语句的语义和文本风格生成起始语句的下一句,再根据已经生成的语句和文本风格生成下一句,以逐句生成具有多个语句的初始文本。
77.在一些实施例中,当文本信息包括语句数量或其他约束条件时,初始文本中语句的数量可以通过文本信息中的语句数量或其他约束条件来约束;当文本信息不包括语句数量等约束条件时,在初始文本生成过程中,当生成的文本语义完整,包含文本信息的全部语义时,即可停止文本生成,得到初始文本。
78.步骤s203、响应于文本选择操作,在所述多个语句中确定出至少一个目标语句。
79.在一些实施例中,文本选择操作可以是用户基于电子设备的显示界面进行操作的,文本选择操作可以是点击选择、选框选择或其他选择操作,用于在多个语句中确定出至少一个符合用户需求的目标语句,这里,符合用户需求可以是符合用户输入的文本信息的语义需求或者撰写风格需求等用户的任意需求。例如,初始文本为“sentence_1,sentence_2,sentence 3,sentence_4”,响应于用户的文本选择操作,将sentence_1和sentence_4确定为目标语句。
80.在一些实施例中,用户在进行文本选择操作时,可以在初始文本中确定出多个目标语句,并为每一目标语句打上批注,批注可以是选择该句作为目标语句的原因,在后续进行语句更新时,文本生成模型可以对批注进行学习,进而基于批注的内容进行语句更新,以使得更新后的语句符合用户需求。
81.在一些实施例中,文本选择操作还可以对选择的多个目标语句进行优先级排序,以确定多个目标语句的重要性程度,在后续进行语句更新时,文本生成模型可以对根据每一目标语句的重要性程度进行学习,进而基于目标语句的优先级进行语句更新,以使得更
新后的语句符合用户需求。
82.在一些实施例中,文本选择操作可以是多次,用户在获取初始文本之后,第一次可以选择许多语句并进行批注,再根据选择的语句之间的相关性和用户需求,对选择得到的语句进行再次选择,最终得到目标语句。
83.在一些实施例中,如果初始文本中的全部语句都满足用户需求,响应于文本操作,可以将每一语句均确定为目标语句,后续无需对初始文本进行更新,初始文本即为目标文本。
84.在一些实施例中,用户在进行选择操作时,可以根据偏好的语句风格、撰写风格和语句用词来确定目标语句,选择目标语句可以通过步骤s2031至步骤s2033实现:
85.步骤s2031、响应于所述文本选择操作,在所述多个语句中确定出至少一个选择语句。
86.这里,选择语句只是用户选择的满足用户需求的语句,用户需求可以是用户的任意需求。
87.步骤s2032、如果所述选择语句的数量与所述初始文本中语句的数量相同,将所述初始文本确定为所述目标文本。
88.步骤s2033、如果所述选择语句的数量小于所述初始文本中语句的数量,将所述至少一个选择语句确定为至少一个目标语句。
89.在一些实施例中,在确定出选择语句之后,可以对初始文本中语句的数量和选择语句的数量进行对比,如果初始文本中语句的数量等于选择语句的数量,说明用户对生成的初始文本中的每一语句均满意,无需对初始文本进行更新,初始文本即为目标文本;如果初始文本中语句的数量大于选择语句的数量,说明用户对生成的初始文本中的部分语句不满意,还需再次对不满意的语句进行更新,此时,将用户选择的选择语句确定为目标语句,对初始文本中的非目标语句进行更新。
90.步骤s204、基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。
91.在一些实施例中,在初始文本中确定出至少一个目标语句后,需要根据目标语句对初始文本中非目标语句对应的文本进行更新。例如,可以是对目标语句的语义进行分析,获取与非目标语句相邻的目标语句的语义信息,根据相邻目标语句的语义信息,对非目标语句对应的文本进行更新,从而得到目标文本。
92.在一些实施例中,对非目标语句进行更新可以是对每一句均对应进行更新,也可以多句非目标语句更新为一句或更多的语句。例如,初始文本为“sentenc e_1,sentence_2,sentence 3,sentence_4”,其中,sentence_1和sentence_4为目标语句,对sentence_2和sentence_3进行更新时,可以根据sentence_1和se ntence_4的语义信息,生成两句语句分别对sentence_2和sentence_3进行替换,也可以生成一句或三句对sentence_2和sentence_3进行替换。
93.在一些实施例中,在确定出目标文本之后,可以对选择得到的至少一个目标语句进行语义分析,得到至少一个目标语句对应的文本风格,即得到用户偏好的风格,例如,积极或简洁的文本风格。后续对初始文本进行更新时,可以参考用户偏好的文本风格进行生成语句,使得更新后的目标文本更加符合用户需求。
94.本技术实施例通过获取的文本信息生成初始文本,响应于文本选择操作,在多个语句中确定出至少一个目标语句,并基于选择的目标语句和文本信息,对初始文本进行更新,得到目标文本。如此,通过用户的交互操作,在文本生成过程中,根据用户实时的正向反馈,对文本内容进行调整,提升了文本生成的可控性,使得生成的目标文本不仅与文本信息相关,还符合用户的需求,避免文本生成之后需要用户再次对文本进行修改,提升了文本生成效率。
95.在一些实施例中,本技术实施例可以基于用户的文本选择操作,在初始文本中确定出符合用户需求的目标语句,并根据目标语句和文本信息对初始文本中除目标语句之外的语句进行替换,以得到目标文本。图3是本技术实施例提供的文本生成方法的一个可选的流程示意图,步骤s204,即通过对初始文本进行更新得到目标文本,可以通过步骤s301至步骤s302实现:
96.步骤s301、基于所述至少一个目标语句,将所述初始文本中除所述目标语句外的语句替换为占位符,得到替换文本。
97.步骤s302、根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本。
98.在一些实施例中,在确定出目标语句之后,可以通过占位符《mask》对初始文本中的非目标语句进行替换,得到替换文本。例如,替换文本为“sentenc e_1,《mask》,《mask》,sentence_4”。再根据占位符前后相邻的目标语句和文本信息对占位符处的文本进行更新,通过更新生成的语句对占位符进行替换,进而得到目标文本。
99.在一些实施例中,步骤s302可以通过步骤s3021至步骤s3023实现:
100.步骤s3021、对与所述占位符两侧相邻的至少一个目标语句进行双向语义特征提取,得到所述占位符对应的双向语义特征信息。
101.在本技术实施例中,对占位符两侧相邻的至少一个目标语句进行双向语义特征提取,这里可以是通过seq-to-seq模型、其他双向编码模型或bart模型来实现双向语义特征提取,从而得到占位符处的双向语义特征信息,即占位符处的上下文语境信息。
102.步骤s3022、根据所述双向语义特征信息和所述文本信息,确定所述占位符对应的更新语句。
103.在一些实施例中,在确定出占位符处的双向语义特征信息之后,结合文本风格和文章关键词和关键句信息,可以通过bert模型、left-to-right decoder等自回归解码器或其他网络结构对占位符处的语句进行预测并生成,从而得到更新语句。
104.步骤s3023、通过所述更新语句对所述替换文本中的占位符进行替换,得到所述目标文本。
105.在一些实施例中,在得到占位符对应的更新语句之后,可以将更新语句和占位符对应进行替换,从而得到目标文本。
106.在一些实施例中,对初始语句进行更新得到目标文本之后,用户还可以对更新生成的更新语句再次进行选择,在更新语句中确定满足需求的第一目标语句,如果更新语句中还有不满足需求的语句,则可以对更新语句再次进行更新。因此,如图4所示,在确定出目标文本之后,本技术实施例提供的文本生成方法还可以包括步骤s401至步骤s403:
107.步骤s401、响应于文本选择操作,在所述目标文本的更新语句中确定至少一个第
一目标语句。
108.这里的文本选择操作和前述实施例中的文本选择操作可以是相同或不同的,例如,文本选择操作可以均是用户基于电子设备的显示界面进行的,文本选择操作可以是点击选择或其他操作。文本选择操作均用于在文本中选择符合用户需求的语句。
109.响应于用户的文本选择操作,可以在更新生成的更新语句中再次选择满意的第一目标语句,同时还可以对选择的第一目标语句进行批注等操作。
110.步骤s402、对所述更新语句的数量和所述第一目标语句的数量进行对比,得到对比结果。
111.在本技术实施例中,在确定选择的第一目标语句之后,可以对更新语句的数量和第一目标语句的数量进行对比,如果更新语句的数量等于第一目标语句的数量,说明用户对所有的更新语句均满意,无需再次进行更新;如果更新语句的数量大于第一目标语句的数量,说明用户对部分更新语句不满意,还需再次对不满意的语句进行更新。
112.步骤s403、根据所述对比结果和所述目标文本,确定最终文本。
113.在一些实施例中,确定最终文本可以通过步骤s4031至步骤s4032实现:
114.步骤s4031、如果所述更新语句的数量与所述第一目标语句的数量相同,将所述目标文本确定为最终文本。
115.步骤s4032、如果所述更新语句的数量大于所述第一目标语句的数量,根据所述目标语句、第一目标语句和所述文本信息,再次对所述目标文本进行更新,得到最终文本。
116.在本技术实施例中,如果用户对目标文本中更新得到的更新语句也不满意时,可以根据两次文本选择操作得到的目标语句、第一目标语句、起始语句对应的关键信息和文本风格等信息,再次对不满意的语句进行预测和更新,得到最终文本。
117.在一些实施例中,用户还可以对最终文本再次进行选择操作,确定再次更新的语句中是否存在不满意的语句,不满意则再次进行更新,直至文本中的每一语句均符合用户需求,如此,本技术实施例可以根据用户实时的正向反馈,对文本内容进行修改,增加了文本内容的可控性,能够生成符合用户需求的文本内容,提升了用户体验。
118.在一些实施例中,在确定出至少一个目标语句之后,用户还可以对选择的目标语句进行优先级排序,进而根据具有优先级顺序的目标语句,对初始文本进行更新。
119.在一些实施例中,响应于用户的文本排序操作,对至少一个目标语句进行优先级排序,得到每一目标语句的优先级。对应地,在进行更新时,可以根据每一目标语句的优先级顺序,为每一目标语句确定一个优先级权重,在通过对目标语句进行学习来确定用户偏好时,可以根据每一目标语句的优先级权重来实现,例如,目标语句分别为“今天天气好”和“我要去春游”,“我要去春游”的优先级为1级,“今天天气好”的优先级为2级,则“我要去春游”的优先级权重大于“今天天气好”的优先级权重,模型在进行学习时,用户偏好的信息更多是关于春游的内容,因此,在基于至少一个目标语句、每一目标语句的优先级和所述文本信息,对所述初始文本进行更新时,更新后的语句与春游的相关性更大,以得到符合用户需求的目标文本。
120.在一些实施例中,所述文本信息至少包括起始语句和文本风格。如图5所示,步骤s202,即生成初始文本可以由步骤s501至步骤s506实现:
121.步骤s501、根据所述起始语句和所述文本风格,生成与所述起始语句相邻的生成
语句。
122.在一些实施例中,可以根据起始语句中的用词得到用户需要的文本中心思想,例如,用户输入的起始语句为“今天天气真好”,文本中心思想为与好天气相关联的事情。文本生成模型(例如深度学习预训练模型gpt-2)根据起始语句的文本中心思想和文本风格,可以预测起始语句的相邻语句,例如,文本生成模型学习了文本风格之后,将起始语句作为输入句输入文本生成模型中,文本生成模型基于起始语句和文本风格,预测起始语句的下一语句。
123.步骤s502、将所述起始语句和所述生成语句,确定为生成文本。
124.在本技术实施例中,文本生成模型可以是自回归模型,即将每次生成的新的语句添加到原输入句的后面,作为新的输入句,输入文本生成模型中,继续进行下一语句的预测,直至满足文本结束的约束条件时,停止文本生成,得到初始文本。
125.步骤s503、将所述生成文本确定为更新起始语句。
126.在一些实施例中,可以将起始语句和预测得到的生成语句,确定为生成文本,生成文本作为文本生成模型的新的输入句,即更新起始语句。
127.步骤s504、根据所述更新起始语句和所述文本风格,确定更新生成文本。
128.在本技术实施例中,基于学习了文本风格的文本生成模型,将更新起始语句作为新的输入句输入文本生成模型中,得到更新起始语句相邻的下一生成语句,并将更新起始语句和更新起始语句相邻的下一生成语句,确定为更新生成文本。
129.步骤s505、循环以所述更新生成文本作为新的更新起始语句,生成新的更新生成文本。
130.持续将更新生成文本作为新的更新起始语句,输入学习了文本风格的文本生成模型中,持续生成新的更新生成文本。
131.步骤s506、响应于新的更新生成文本满足目标条件,将新的更新生成文本确定为初始文本。
132.这里,目标条件可以是生成的新的更新生成文本语义表达完整,也可以是语句数量的限制,也可以是文本字数的限制,还可以是新的更新生成文本中包含了结束语等约束条件。当新的更新生成文本满足目标条件时,停止文本生成,将新的更新生成文本确定为初始文本。
133.本技术实施例提供的文本生成方法,在文本自动生成过程中,添加了用户的交互,可以使得文章生成的内容满足用户需求,表达更加准确,基于交互去掉了不满意的语句,还能够使得生成的目标文本更加流畅,减少了文章的逻辑矛盾和语义矛盾问题。
134.下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
135.基于相关技术自动生成文章的场景中,不能一次成文且生成内容不可控,无法完全按照用户喜欢的风格生成文章的问题。本技术提出一种文本生成方法,可以使得生成的文本内容更加准确且流畅。
136.图6是本技术实施例提供的一种文本生成方法的一个可选的流程示意图,如图6所示,本技术实施例提供的文本生成方法可以通过步骤s601至步骤s606实现:
137.步骤s601、获取主题句。
138.在一些实施例中,主题句可以是包含文本主题的语句,也可以是待生成文本的起
始语句。
139.步骤s602、将主题句输入文本生成模型中,得到初始文本。
140.在本技术实施例中,可以将用户输入的主题句作为提示文本输入文本生成模型中,通过文本生成技术初步生成文章段落,即初始文本。
141.在一些实施例中,可以将用户输入的主题句作为提示文本,输入到预先训练的文本生成模型或文本生成网络中,模型或网络会根据输入的主题句,计算主题句中的每一个词和即将要写出词的关系,为这些词打一个重要度得分,选中得分最高的词作为下一个生成词,循环往复,可以得到多个语句;也可以是模型或网络会根据输入的主题句直接生成下一语句,最终的到多个语句。模型最终得到的预测结果为初步生成初始文本。例如,初始文本为“sentence_1,se ntence_2,sentence_3,sentence_4”。
142.在一些实施例中,文本生成模型可以是通过文本生成深度学习预训练得到的模型,例如gpt-2模型,gpt-2模型为自回归模型,自回归的意思是指每次产生新语句或词语后,将新语句或词语加到原输入句后面,作为新的输入句,继续预测。
143.在一些实施例中,图7是本技术实施例提供的一种文本生成模型的结构示意图,如图7所示,可以将主题句作为第一句话,经过12个解码器701(dec oder)得到文本生成模型70中输入的主题句对应的向量,该向量可以通过归一化模块702(至少包括前馈神经网络ffnn和归一化函数softmax)得到输出词语或语句的概率分布,选择概率最高的词语或语句作为主题句的下一个词语或语句,循环上述步骤生成初始文本。
144.步骤s603、确定用户对初始文本是否进行选择。
145.在得到初始文本之后,用户可以对初始文本中的语句进行选择,如果用户对初始文本中每一语句均满意,则不对初始文本进行选择,初始文本即为最终的目标文本。当用户对对初始文本中的部分语句不满意时,执行步骤s604。
146.步骤s604、对初始文本中的至少一个语句进行固化处理,并通过占位符对未固化的语句进行替换,得到替换文本。
147.在一些实施例中,固化处理可以是保持该语句不变,留在文本中(即满足用户需求的目标语句),而通过占位符《mask》对未固化的语句进行替换,得到替换文本。例如,对初始语句中的sentence_1和sentence_4进行固化处理,则替换文本为“sentence_1,《mask》,《mask》,sentence_4”。
148.步骤s605、通过文本更新模型对替换文本中占位符处的文本进行更新,得到目标文本。
149.在一些实施例中,文本更新模型可以是seq-to-seq模型,图8是本技术实施例提供的一种文本更新模型的结构示意图,如图8所示,文本更新模型80由双向编码器801和自回归解码器802组成,所以文本更新模型80结合了双向编码器(bidirectional encoder)和从左到右的解码器(left-to-right decoder)各自的特点,使得本技术实施例提供的文本更新模型适合文本生成的场景,同时还能理解双向上下文语境信息。因此,在本技术实施例中,对于给定的有缺失的替换文本,文本更新模型可以结合上下文语义对替换文本进行补全,从而构成一个完整、连贯的文章段落,即目标文本。
150.步骤s606、响应于用户对目标文本中更新的语句不满意,执行步骤s603,直至得到用户满意的目标文本。
151.在本技术实施例中,当用户对目标文本中更新的的语句不满意时,执行步骤s603,对目标文本中更新的语句进行选择,保留满意的语句,占位符替换不满意的语句,并对占位符处对应的语句进行更新,得到新的文本。
152.本技术实施例每次可以从新生成的文本中选定满意的语句,并对不满意的语句进行更新,使得本技术实施例提供的文本生成方法可以全面且动态的调整文本内容,直至生成用户满意的文本。
153.基于上述文本生成方法,图9是本技术实施例提供的文本生成装置的组成结构示意图,如图9所示,该文本生成装置900包括获取模块901、生成模块902、确定模块903和更新模块904。其中,获取模块901,用于获取文本信息;生成模块902,用于根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;确定模块903,用于响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;更新模块904,用于基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。
154.在一些实施例中,更新模块904还用于基于所述至少一个目标语句,将所述初始文本中除所述目标语句外的语句替换为占位符,得到替换文本;根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本。
155.在一些实施例中,更新模块904还用对与所述占位符两侧相邻的至少一个目标语句进行双向语义特征提取,得到所述占位符对应的双向语义特征信息;根据所述双向语义特征信息和所述文本信息,确定所述占位符对应的更新语句;通过所述更新语句对所述替换文本中的占位符进行替换,得到所述目标文本。
156.在一些实施例中,所述目标文本由目标语句和更新语句组成,所述装置还包括:第一确定模块,用于响应于文本选择操作,在所述目标文本的更新语句中确定至少一个第一目标语句;对比模块,用于对所述更新语句的数量和所述第一目标语句的数量进行对比,得到对比结果;第二确定模块,用于根据所述对比结果和所述目标文本,确定最终文本。
157.在一些实施例中,第二确定模块还用于如果所述更新语句的数量与所述第一目标语句的数量相同,将所述目标文本确定为最终文本;如果所述更新语句的数量大于所述第一目标语句的数量,根据所述目标语句、第一目标语句和所述文本信息,再次对所述目标文本进行更新,得到最终文本。
158.在一些实施例中,确定模块903还用于响应于所述文本选择操作,在所述多个语句中确定出至少一个选择语句;如果所述选择语句的数量与所述初始文本中语句的数量相同,将所述初始文本确定为所述目标文本;如果所述选择语句的数量小于所述初始文本中语句的数量,将所述至少一个选择语句确定为至少一个目标语句。
159.在一些实施例中,在确定出至少一个目标语句之后,所述装置还包括:排序模块,用于响应于文本排序操作,对所述至少一个目标语句进行优先级排序,得到每一目标语句的优先级;
160.对应地,更新模块904还用于基于所述至少一个目标语句、每一目标语句的优先级和所述文本信息,对所述初始文本进行更新,得到目标文本。
161.在一些实施例中,所述文本信息至少包括起始语句和文本风格;生成模块902还用于根据所述起始语句和所述文本风格,生成与所述起始语句相邻的生成语句;将所述起始语句和所述生成语句,确定为生成文本;将所述生成文本确定为更新起始语句;根据所述更
新起始语句和所述文本风格,确定更新生成文本;循环以所述更新生成文本作为新的更新起始语句,生成新的更新生成文本;响应于新的更新生成文本满足目标条件,将新的更新生成文本确定为初始文本。
162.在一些实施例中,更新模块904还用于对所述至少一个目标语句进行语义分析,得到所述至少一个目标语句对应的文本风格;基于所述至少一个目标语句、所述文本信息和所述文本风格,对所述初始文本进行更新,得到所述目标文本。
163.需要说明的是,本技术实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
164.需要说明的是,本技术实施例中,如果以软件功能模块的形式实现上述的文本生成方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read only memory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本技术实施例不限制于任何特定的硬件和软件结合。
165.本技术实施例提供一种文本生成设备,图10是本技术实施例提供的文本生成设备的组成结构示意图,如图10所示,所述文本生成设备10至少包括:处理器101和配置为存储可执行指令的计算机可读存储介质102,其中处理器101通常控制所述文本生成设备的总体操作。计算机可读存储介质102配置为存储由处理器101可执行的指令和应用,还可以缓存待处理器101和文本生成设备100中各模块待处理或已处理的数据,可以通过闪存或随机访问存储器(ra m,random access memory)实现。
166.本技术实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的文本生成方法,例如,如图2示出的方法。
167.在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(fram,ferromagnetic random access memory)、只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read only memory)、可擦除可编程只读存储器(eprom,erasable programmable read only memory)、带电可擦可编程只读存储器(eeprom,electrically erasable programmable read only memory)、闪存、磁表面存储器、光盘、或光盘只读存储器(cd-rom,compact disk-read only memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
168.在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
169.作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件
中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
170.以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
171.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。
172.以上所述,仅为本技术的实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
技术特征:
1.一种生成方法,所述方法包括:获取文本信息;根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。2.根据权利要求1所述的方法,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:基于所述至少一个目标语句,将所述初始文本中除所述目标语句外的语句替换为占位符,得到替换文本;根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本。3.根据权利要求2所述的方法,所述根据与所述占位符相邻的目标语句和所述文本信息,对所述替换文本进行更新,得到所述目标文本,包括:对与所述占位符两侧相邻的至少一个目标语句进行双向语义特征提取,得到所述占位符对应的双向语义特征信息;根据所述双向语义特征信息和所述文本信息,确定所述占位符对应的更新语句;通过所述更新语句对所述替换文本中的占位符进行替换,得到所述目标文本。4.根据权利要求1所述的方法,所述目标文本由目标语句和更新语句组成,所述方法还包括:响应于文本选择操作,在所述目标文本的更新语句中确定至少一个第一目标语句;对所述更新语句的数量和所述第一目标语句的数量进行对比,得到对比结果;根据所述对比结果和所述目标文本,确定最终文本。5.根据权利要求4所述的方法,所述根据所述对比结果和所述目标文本,确定最终文本,包括:如果所述更新语句的数量与所述第一目标语句的数量相同,将所述目标文本确定为最终文本;如果所述更新语句的数量大于所述第一目标语句的数量,根据所述目标语句、第一目标语句和所述文本信息,再次对所述目标文本进行更新,得到最终文本。6.根据权利要求1所述的方法,所述响应于文本选择操作,在所述多个语句中确定出至少一个目标语句,包括:响应于所述文本选择操作,在所述多个语句中确定出至少一个选择语句;如果所述选择语句的数量与所述初始文本中语句的数量相同,将所述初始文本确定为所述目标文本;如果所述选择语句的数量小于所述初始文本中语句的数量,将所述至少一个选择语句确定为至少一个目标语句。7.根据权利要求1所述的方法,在确定出至少一个目标语句之后,所述方法还包括:响应于文本排序操作,对所述至少一个目标语句进行优先级排序,得到每一目标语句的优先级;
对应地,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:基于所述至少一个目标语句、每一目标语句的优先级和所述文本信息,对所述初始文本进行更新,得到目标文本。8.根据权利要求1至7任一项所述的方法,所述文本信息至少包括起始语句和文本风格;所述根据所述文本信息,生成初始文本,包括:根据所述起始语句和所述文本风格,生成与所述起始语句相邻的生成语句;将所述起始语句和所述生成语句,确定为生成文本;将所述生成文本确定为更新起始语句;根据所述更新起始语句和所述文本风格,确定更新生成文本;循环以所述更新生成文本作为新的更新起始语句,生成新的更新生成文本;响应于新的更新生成文本满足目标条件,将新的更新生成文本确定为初始文本。9.根据权利要求1所述的方法,所述基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本,包括:对所述至少一个目标语句进行语义分析,得到所述至少一个目标语句对应的文本风格;基于所述至少一个目标语句、所述文本信息和所述文本风格,对所述初始文本进行更新,得到所述目标文本。10.一种文本生成装置,所述装置包括:获取模块,用于获取文本信息;生成模块,用于根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;确定模块,用于响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;更新模块,用于基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。
技术总结
本申请实施例提供一种文本生成方法及装置,所述方法包括:获取文本信息;根据所述文本信息,生成初始文本,所述初始文本由多个语句组成;响应于文本选择操作,在所述多个语句中确定出至少一个目标语句;基于所述至少一个目标语句和所述文本信息,对所述初始文本进行更新,得到目标文本。得到目标文本。得到目标文本。
技术研发人员:周忈 闫琦
受保护的技术使用者:联想(北京)有限公司
技术研发日:2023.03.23
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种封闭式炒菜机的制作方法 下一篇:一种单相CLLC电路的电感与变压器集成结构
