掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本公开总体上涉及计算机领域,并且更具体地涉及文本生成方法及电子设备。

背景技术

可以借助于人工智能技术,通过文本生成模型生成需要的文本。一般地,可以将文本作为离散序列,通过自左向右的方式得到。例如,以机器学习为例,可以自左向右地逐个生成词(或字),从而生成整个句子。

但是,自左向右生成模型中,由于需要等待上一个词(或字)生成结束之后再生成下一个词(或字),因此生成效率低。另外,在生成下一个词(或字)时只能依赖于已经生成的左边的词(或字),这样导致在文本生成时只能利用已生成的词的局部信息。

发明内容

根据本公开的示例实施例,提供了一种基于并行生成模型的文本生成方案。

在本公开的第一方面,提供了一种文本生成方法,包括:获取经训练的并行生成模型,其中经训练的并行生成模型包括编码器和解码器,在训练过程中解码器包括多步学习,多步学习中的第一步学习的学习目标对应第一数目的输出模式,多步学习中在第一步学习之后的第二步学习的学习目标对应第二数目的输出模式,并且第一数目不大于第二数目;以及将输入文本输入到经训练的并行生成模型中,得到输出文本。

在本公开的第二方面,提供了一种电子设备,包括:至少一个处理单元;至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令,该指令当由至少一个处理单元执行时使得电子设备执行根据本公开的第一方面所描述的方法。

在本公开的第三方面,提供了一种计算机可读存储介质,该计算机可读存储介质具有在其上存储的机器可执行指令,该机器可执行指令在由设备执行时使该设备执行根据本公开的第一方面所描述的方法。

在本公开的第四方面,提供了一种计算机程序产品,包括计算机可执行指令,其中计算机可执行指令在被处理器执行时实现根据本公开的第一方面所描述的方法。

在本公开的第五方面,提供了一种电子设备,包括:处理电路,被配置为执行根据本公开的第一方面所描述的方法。

提供发明内容部分是为了以简化的形式来介绍一系列概念,它们在下文的具体实施方式中将被进一步描述。发明内容部分不旨在标识本公开的关键特征或必要特征,也不旨在限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。

附图说明

结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:

图1示出了根据本公开的一些实施例的模型训练的过程的流程图;

图2示出了根据本公开的一些实施例的并行生成模型的示意图;

图3示出了根据本公开的一些实施例的在模型训练过程中的中间学习目标的示意图;

图4示出了根据本公开的一些实施例的在模型训练过程中的中间步学习采样的示意图;

图5示出了根据本公开的一些实施例的文本生成的过程的流程图;

图6示出了根据本公开的一些实施例的示例装置的框图;以及

图7示出了可以用来实施本公开的实施例的示例设备的框图。

具体实施方式

下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。

如前所述,自左向右的文本生成模型具有诸多缺陷,有鉴于此,已经提出了并行生成模型,从而可以直接生成完整的序列。并行生成模型一般包括迭代模型和非迭代模型。非迭代模型可以一次直接生成整个序列。与自左向右模型相比,并行生成模型具有更快的生成速度。但是,并行生成模型的生成质量却没有优势。造成并行生成模型生成质量差的一个重要原因是每一个输入对应的输出结果可能存在多个,由于并行生成模型不依赖于左侧的词(或字),因此可能导致输出错误结果。例如,“发明”和“创造”是正确的,但是“发造”却是错误的。也就是说,正确的多个输出结果的任意序列组合可能会产生错误。

为了缓解因一个输入对应多个输出所引起的问题,可以使用迭代模型通过多轮迭代,从而并行生成整个序列,其中每轮迭代都基于前一轮迭代的结果继续修改。具体地在迭代模型的训练过程中,可以将序列通过替换、删除等操作进行修改,然后模型可以通过学习如何基于改变后的序列还原成目标输出。一方面,由于迭代模型始终学习目标输出,因此一个输入对应多个输出所引起的问题仍然存在。另一方面,迭代模型需要进行多轮迭代才能生成文本,导致生成速度较慢。

为了解决上述问题以及潜在的其他问题,本公开的实施例提供了一种基于模式分解的并行生成模型。通过该并行生成模型能够基于输入文本得到输出文本。一方面,该并行生成模型不需要多轮迭代且并行得到完整的文本序列,因此生成文本的速度较快。另一方面,该并行生成模型通过在中间输出考虑不同于目标输出的其他学习目标,进而能够解决一个输入对应多个输出所引起的问题。

可理解的是,本公开的实施例能够被应用于各种文本生成的场景。具体而言,本公开实施例中的文本生成模型可以基于输入文本得到输出文本。输入文本和输出文本可以属于同一语种或不同语种。在一些示例中,本公开实施例的方案能够被用于机器翻译场景,输入文本和输出文本可以属于不同语种。例如输入文本为中文,输出文本为英文。再例如输入文本为英文,输出文本为法文。在一些示例中,本公开的实施例的方案能够被用于文章生成场景。例如输入文本为若干关键词,输出文本为一段话。再例如输入文本为一篇文章,输出文本为一篇摘要。在一些示例中,本公开的实施例的方案能够被用于蛋白质序列建模场景。例如输入文本为蛋白质序列的一部分,输出文本为完整的蛋白质序列。应注意的是,这里列出的部分场景仅是示意,本公开的实施例也可以被应用于其他的文本生成的场景,此处不再一一罗列。为了简化描述,下文的主要实施例以机器翻译场景为例进行阐述。

本公开的实施例中,术语“文本”也可以被称为文本序列、离散序列等,其可以包括多个词、字符等所组成的序列。

图1示出了根据本公开的一些实施例的模型训练的过程100的示意流程图。在框110,构建训练数据集,训练数据集可以包括多个数据项,每个数据项可以包括输入数据和输出数据。在框120,基于训练数据集生成经训练的并行生成模型。

在一些实施例中,训练数据集可以基于已有的数据构建,或者可以基于已有的其他模型构建。举例而言,在机器翻译的场景中,可以基于已有的人工翻译的数据来构建训练数据集;或者可以基于例如自左向右文本生成模型来构建训练数据集;或者可以通过两者的结合来构建训练数据集。例如,在机器翻译的场景中,输入数据可以为第一语种的序列,输出数据可以为经翻译的第二语种的序列。

假设训练数据集中的某个数据项被表示为(X1,Y1)。在一例中,Y1可以是通过人工将X1翻译后得到的。在另一例中,可以将X1输入到经训练的用于机器翻译的自左向右生成模型,并得到自左向右生成模型的输出为Y1。

可选地,在通过人工翻译的情况下,可以基于不同的人工翻译。例如,在训练数据集中的数据项(X21,Y21)是由一个人翻译的,另一数据项(X22,Y22)是由另一个人翻译的。可选地,在利用经训练的用于机器翻译的自左向右生成模型的情况下,可以利用不同的多个自左向右生成模型。例如,训练数据集中的数据项(X31,Y31)是基于一个经训练的自左向右生成模型的,而另一数据项(X32,Y32)是基于另一个经训练的自左向右生成模型的。可见,训练数据集中的训练数据项可以包括各种不同的输出模式,这样能够提升模型的训练精度。

可理解,上述罗列的构建训练数据集的方式仅是示意,在实际应用中,可以采用其他方式来构建训练数据集,本公开中不再一一罗列。

在本公开的一些实施例中,并行生成模型不同于自左向右生成模型,该并行生成模型可以并行地确定输出,例如同时得到输出的序列,且输出的序列中的某个词不依赖于前面的词的输出。可选地,并行生成模型在本公开中可以被称为文本并行生成模型,或者也可以被简称为文本生成模型或生成模型等,本公开对此不限定。可理解,相比于自左向右模型,本公开实施例中的并行生成模型具有更快的文本生成速度。

在一些实施例中,并行生成模型可以包括编码器和解码器,其中解码器可以包括多步学习,并且多步学习中的第一步学习的学习目标对应第一数目的输出模式,多步学习中的在第一步学习之后的第二步学习的学习目标对应第二数目的输出模式,并且第一数目不大于第二数目。也就是说,在训练过程中,随着多步学习的递增,先学习较少数目的输出模式,逐渐学习更多数目的输出模式。

图2示出了根据本公开的一些实施例的并行生成模型200的示意图。如图2所示,并行生成模型200包括编码器210和解码器220,其中解码器220可以通过多步学习(如图2中所示的T步)得到输出结果。可选地,编码器210和/或解码器220可以具有多个神经网络层。

示例性地,在训练过程中,可以将输入数据201输入到编码器210,得到输入向量202,随后输入向量202被输入到解码器220。具体而言,输入向量202作为解码器220的第0步学习的输入。进一步地,每一步学习的输出都被作为下一步学习的输入。可理解,通过训练,旨在期望第T步学习的输出结果203与输出数据相同或接近。

在一些实施例中,多步学习中的每步学习的输入为模型的中间输入,每步学习的输出为模型的中间输出。示例性地,每步学习都具有对应的学习目标,可选地,对于第一步学习而言,可以基于第一步学习的下一步学习的中间输出以及输出数据来确定第一步学习的学习目标。

在一些示例中,可以确定第一步学习的下一步学习的中间输出的第一概率分布;确定第一概率分布与输出数据之间的第一乘积;确定输出数据与第一步学习的中间输出之间的逐元素相乘的第二乘积;基于第一概率分布、第一乘积和第二乘积来确定第一步学习的目标概率分布;以及基于第一步学习的目标概率分布,确定第一步学习的学习目标。可选地,中间输出和数据输出可以分别被表示为独热编码形式。

为了方便描述,假设第一步学习为第t步学习,相应地第一步学习的下一步学习为第t+1步学习。示例性地,在训练过程中,针对每个数据项,可以将输入数据输入到编码器以得到输入向量,随后将输入向量输入到解码器,其中解码器的第t步学习的学习目标是基于第t+1步学习的中间输出以及输出数据被确定的。下面结合图3来描述例如第t步学习的学习目标。

图3示出了根据本公开的一些实施例的在模型训练过程中的中间学习目标300的示意图。如图3所示,文本生成模型可以包括编码器310和解码器320,其中解码器320可以通过多步学习(如图3中所示的T步学习)得到输出结果。

以训练数据集中的一个数据项为例,假设该数据项的输入数据为“Thanks alot!”,输出数据为“太感谢了!”在训练过程中,可以将“Thanks a lot!”301输入到该生成模型,例如输入到编码器310,并且训练的预期目标是该生成模型的输出为或接近于“太感谢了!”302。

具体而言,编码器310可以得到输入数据301的向量表示,并将其作为解码器320的第0步学习的输入。通过解码器320的第0步学习可以得到中间输出,并作为解码器320的第1步学习的输入,…,以此可以得到解码器320的第T步学习的输出。

示例性地,以第t步学习为例,第t步学习的中间输出可以被表示为

示例性地,每一步学习具有相应的学习目标,每一步学习的学习目标基于其下一步学习的中间输出和输出数据通过插值方式来确定。如图3所示,以第t步学习为例,可以基于第t+1步学习的中间输出(即

具体而言,假设输出数据被表示为Y*,另外,第t+1步学习的中间输出的概率分布为

在式(1)中,α

如上所讨论的,一个输入可能会存在多种不同的输出结果,多种输出结果可以对应多个输出模式,也就是说,使用不同的输出模式可以得到不同的输出结果。但是可理解,过多的输出模式可能会导致模型输出混乱,从而无法准确地得到某一正确的输出。为此,本公开中的并行生成模型并不是从一开始就学习多个输出模式,相反,在训练过程中,随着步数的增加,学习目标所对应的输出模式的数量是逐渐增加的。具体而言,本公开的实施例将多种输出模式进行分解,一开始只学习比较少量的输出模式,然后再基于少量的输出模式逐渐学习更多的输出模式,直到学习到所有的输出模式。

结合如上式(3),通过结合模型的中间输出和输出数据来构建中间的学习目标,能够实现将多种输出模式进行分解。由于模型的中间输出已经学习了一部分输出模式,而输出数据中包含所有的输出模式,因此通过插值可能得到输出模式的数量介于两者之间的中间的学习目标。

例如,参照图3,第0步至第s步的学习目标对应1种输出模式,第s+1步(其中s

这样能够获取文本生成模型的多步学习目标,通过使用这一系列学习目标来训练文本生成模型,从而可以从开始学习少量的输出模式到逐渐学习所有的输出模式。

在一些实施例中,可以基于训练目标来确定训练过程是否结束,例如可以构建损失函数,并基于损失函数来得到经训练的并行生成模型。示例性地,训练过程的总体训练目标可以为多步学习中每步学习的训练目标之和。例如,总体训练目标可以表示为如下的式(3):

在式(3)中,λ

可选地,可以通过优化模型输出分布与目标序列分布之间的散度来确定每步学习的训练目标,其中散度例如为Kullback-Leibler(KL)散度。例如,其中每步学习的训练目标可以基于每步学习的学习目标被确定。例如,第t步学习的训练目标可以为:

可理解,上述关于训练目标的描述仅是示意,在实际场景中,也可以通过其他方式来构建损失函数,本公开对此不限定。

在本公开的一些实施例中,多步学习中某一步学习的中间输出可以作为下一步学习的中间输入。在本公开的另一些实施例中,可以基于多步学习中某一步学习的中间输出,对下一步学习的学习目标进行采样后,再确定下一步学习的中间输入。

示例性地,可以将某一步学习的中间输出与下一步学习的学习目标进行比较,以确定不同词。可以将下一步学习的中间输出与下一步学习的学习目标进行比较,以确定采样的数目。随后,可以对下一步学习的学习目标中的不同词按照采样的数目进行采样,并与第一步学习的中间输出结合,以得到下一步学习的中间输入。在一些示例中,可以对下一步学习的学习目标中的不同词按照采样的数目进行采样,得到采样词。随后,可以将第一步学习的中间输出中的对应位置(即采样词的位置)替换为采样词,从而得到下一步学习的中间输入。

举例而言,假设某一步学习的中间输出为“多谢谢!!”,而下一步学习的学习目标为“太感谢了!”,可见,序列中共5个词。由于第3个“谢”和第5个“!”相同,不同词的数目为3个,分别为下一步学习的学习目标中的“太”“感”“了”。那么可以从这三个不同的词中进行采样,例如采样出“太”和“了”。根据某一步学习的中间输出和采样,可以确定序列“太谢谢了!”,然后可以将其作为下一步学习的输入以继续后续学习。

图4示出了根据本公开的一些实施例的在模型训练过程中的中间步学习采样400的示意图。参照图4,第t步学习的中间输出

通过将“感谢多谢!”与“感激不尽!”比较,可以确定第一个“感”和最后一个“!”相同,随后可以从第t+1步学习的学习目标“感激不尽!”中的三个不相同的词“激不尽”中采样。例如可以采用残差采样的方式或其他采样方式,本公开对此不限定。

通过将“感激感谢!”与“感激不尽!”比较,可以确定这两者中的不同的词的数目为2。随后可以确定采样的数目。作为一例,采样的数目可以等于这两者中的不同的词的数目,即2。作为另一例,采样的数目可以基于这两者中的不同的词的数目与预定义的系数的乘积来确定,其中预定义的系数为0-1之间的任一值,其中可以通过将乘积上取整或下取整后来确定采样的数目。举例而言,假设预定义的系数等于0.5,则可以确定采样的数目等于1。

在此之后,可以从第t+1步学习的学习目标“感激不尽!”中的三个不相同的词“激不尽”中采样。作为一例,假设采样“不”。结合第t步学习的中间输出,即

另外,如图4所示,将

以此方式,通过采样的方式能够实现对于学习目标的分解,从而能够有利于模型在训练过程中不断学习到剩余部分,这样能够提高训练的效率。

通过上述结合图1至图4的描述,本公开的实施例能够通过训练得到并行生成模型。在训练过程中,可以构建从少到多的中间学习目标,从而逐渐学习到多种输出模式。在训练过程中,可以通过采样提升学习的效率,加快训练的速度。

图5示出了根据本公开的一些实施例的文本生成的过程500的示例流程图。在框510,获取经训练的并行生成模型,其中经训练的并行生成模型包括编码器和解码器,并且解码器包括多步。在框520,将输入文本输入到经训练的并行生成模型中,得到输出文本。

在一些实施例中,在框510所获取的经训练的并行生成模型可以是结合图1至图4所描述的通过训练生成的并行生成模型。如前所述,在训练过程中,解码器包括多步学习。多步学习中的第一步学习的学习目标对应第一数目的输出模式,多步学习中在第一步学习之后的第二步学习的学习目标对应第二数目的输出模式,并且第一数目不大于第二数目。如前所述,在训练过程中,每步学习都具有学习目标。并且第一步学习的学习目标是基于第一步学习的下一步学习的中间输出以及输出数据被确定的。如前所述,在训练过程中,第一步学习的中间输入可以基于第一步学习的学习目标的采样和第一步学习的前一步学习的中间输出而被确定。

示例性地,可以将输入文本输入到编码器,得到与输入文本对应的向量表示。随后可以将该向量表示输入到解码器,并得到解码器的输出,即为输出文本。示例性地,解码器包括多步,并且第一步的中间输出可以被作为第一步的下一步的中间输入。可理解,中间输出和中间输入也可以被表示为向量的形式。

在一些示例中,经训练的并行生成模型可以用于段落文本生成。输入文本可以包括多个关键词或文章,输出文本可以包括一句话或一段话,例如输出文本可以表示摘要。

在另一些示例中,经训练的并行生成模型可以用于机器翻译。输入文本可以包括第一语种的序列,输出文本可以包括经翻译的第二语种的序列,其中第二语种不同于第一语种。举例而言,假设输入文本为“很多树”,相应地通过该经训练的并行生成模型所得到的输出文本例如可以为“a lot of trees”。

以此方式,本公开的实施例能够基于输入文本通过使用并行生成模型得到输出文本,相比于自左向右模型,该方案的生成速度更快,并且能够利用整体信息而不仅仅是局部信息。另外,由于该并行生成模型的解码器包括多步,在训练过程中可以从少到多地学习到多种输出模式,从而该并行生成模型所生成的输出文本更加准确,具有高质量的生成能力。此外,在文本生成过程中,前一步的输出直接作为下一步的输入,因此不存在额外的解码开销。

应理解,在本公开的实施例中,“第一”,“第二”,“第三”等只是为了表示多个对象可能是不同的,但是同时不排除两个对象之间是相同的,不应当解释为对本公开实施例的任何限制。

还应理解,本公开的实施例中的方式、情况、类别以及实施例的划分仅是为了描述的方便,不应构成特别的限定,各种方式、类别、情况以及实施例中的特征在符合逻辑的情况下,可以相互结合。

还应理解,上述内容只是为了帮助本领域技术人员更好地理解本公开的实施例,而不是要限制本公开的实施例的范围。本领域技术人员根据上述内容,可以进行各种修改或变化或组合等。这样的修改、变化或组合后的方案也在本公开的实施例的范围内。

还应理解,上述内容的描述着重于强调各个实施例之前的不同之处,相同或相似之处可以互相参考或借鉴,为了简洁,这里不再赘述。

图6示出了根据本公开的一些实施例的示例装置600的示意框图。装置600可以通过软件、硬件或者两者结合的方式实现。如图6所示,装置600包括模型获取模块610和输出文本确定模块620。

模型获取模块610被配置为获取经训练的并行生成模型,其中经训练的并行生成模型包括编码器和解码器,在训练过程中解码器包括多步学习,多步学习中的第一步学习的学习目标对应第一数目的输出模式,多步学习中在第一步学习之后的第二步学习的学习目标对应第二数目的输出模式,并且第一数目不大于第二数目。输出文本确定模块620被配置为将输入文本输入到经训练的并行生成模型中,得到输出文本。

在一些实施例中,模型获取模块610可以从不同于装置600的另一装置获取经训练的并行生成模型。例如,另一装置可以已经通过训练得到经训练的并行生成模型。在另一些实施例中,装置600可以已经通过训练得到经训练的并行生成模型,并且模型获取模块610可以从例如装置600的存储器获取经训练的并行生成模型。

示例性地,装置600可以包括数据集构建模块和训练模块。数据集构建模块被配置为构建训练数据集,训练数据集包括多个数据项,多个数据项中的每个数据项包括输入数据和输出数据。训练模块被配置为基于训练数据集生成经训练的并行生成模型。

在一些实施例中,训练模块可以被配置为在训练过程中,针对每个数据项:将输入数据输入到编码器以得到输入向量;以及将输入向量输入到解码器,其中解码器的第一步学习的学习目标是基于第一步学习的下一步学习的中间输出以及输出数据被确定的。

可选地,训练模块可以被配置为通过下述方式得到第一步学习的学习目标:确定第一步学习的下一步学习的中间输出的第一概率分布;确定第一概率分布与输出数据之间的第一乘积;确定输出数据与第一步学习的中间输出之间的逐元素相乘的第二乘积;基于第一概率分布、第一乘积和第二乘积来确定第一步学习的目标概率分布;以及基于第一步学习的目标概率分布,确定第一步学习的学习目标。

举例而言,输出数据与第一步学习的中间输出都被表示为独热编码形式。

在一些示例中,训练过程的训练目标包括多步学习中各步学习的训练目标之和,其中各步学习的训练目标基于各步学习的学习目标被确定。

在一些实施例中,在训练过程中,第一步学习的中间输出被作为第一步学习的下一步学习的中间输入。

在一些实施例中,在训练过程中,第一步学习的下一步学习的中间输入通过下式方式得到:将第一步学习的中间输出与第一步的下一步的学习目标进行比较,以确定不同词的数目;按照不同词的数目,对第一步的下一步的学习目标进行采样,以得到经采样的目标;以及将经采样的目标作为第一步学习的下一步学习的中间输入。

在一些示例中,经训练的并行生成模型用于机器翻译。输入文本包括第一语种的序列,输出文本包括经翻译的第二语种的序列。在另一些示例中,经训练的并行生成模型用于段落文本生成。输入文本包括多个关键词或文章,输出文本包括一句话或一段话。

图6的装置600能够用于实现上述结合图1至图5所述的过程,为了简洁,这里不再赘述。

本公开的实施例中对模块或单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时也可以有另外的划分方式,另外,在公开的实施例中的各功能单元可以集成在一个单元中,也可以是单独物理存在,也可以两个或两个以上单元集成为一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

图7示出了可以用来实施本公开的实施例的示例设备700的框图。应当理解,图7所示出的设备700仅仅是示例性的,而不应当构成对本文所描述的实现方式的功能和范围的任何限制。例如,可以使用设备700来执行上文描述的图1至图5所述的过程。

如图7所示,设备700是通用计算设备的形式。计算设备700的组件可以包括但不限于一个或多个处理器或处理单元710、存储器720、存储设备730、一个或多个通信单元740、一个或多个输入设备750以及一个或多个输出设备760。处理单元710可以是实际或虚拟处理器并且能够根据存储器720中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备700的并行处理能力。

计算设备700通常包括多个计算机存储介质。这样的介质可以是计算设备700可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器720可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(Random AccessMemory,RAM))、非易失性存储器(例如,只读存储器(Read Only Memory,ROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、闪存)或它们的某种组合。存储设备730可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备700内被访问。

计算设备700可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图7中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器720可以包括计算机程序产品725,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实现方式的各种方法或动作。

通信单元740实现通过通信介质与其他计算设备进行通信。附加地,计算设备700的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备700可以使用与一个或多个其他服务器、网络个人计算机(Personal Computer,PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。

输入设备750可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备760可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备700还可以根据需要通过通信单元740与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备700交互的设备进行通信,或者与使得计算设备700与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(Input/Output,I/O)接口(未示出)来执行。

根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,还提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,而计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,提供了一种计算机程序产品,其上存储有计算机程序,所述程序被处理器执行时实现上文描述的方法。

这里参照根据本公开实现的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。

相关技术
  • 宫廷服饰文本主题生成方法、装置、电子设备及存储介质
  • 文本检索方法、用于文本检索的倒排表生成方法以及系统
  • 文本中的实体关系抽取方法及系统、存储介质、电子设备
  • 一种文本标识的方法、装置、电子设备及存储介质
  • 文本属性字段的匹配方法、装置、电子设备及存储介质
  • 文本生成方法、文本生成装置、电子设备及存储介质
  • 文本排序模型的攻击文本生成方法和装置、文本排序方法、存储介质和电子设备
技术分类

06120115936437