一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种动作生成方法以及装置与流程

2021-12-14 22:52:00 来源:中国专利 TAG:
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.使用训练集对神经网络进行训练,得到训练后的神经网络,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数,神经网络用于融合输入的动作序列和词序列得到融合序列,并根据融合序列输出参数集合,词序列中包括与输入语料中的至少一个词对应的向量,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作,参数集合中包括动作参数,动作参数用于渲染得到动作图像。53.因此,本技术实施方式中,在对神经网络进行训练时,所使用的训练集中包括的每个样本对中可以包括一组词序列和对应的完整的动作的动作参数,从而使神经网络输出的动作也更连贯,提高用户体验。54.可以理解为,该神经网络可以用于执行前述第一方面或第一方面的可选实施方式中的步骤,或者,该神经网络可以是前述第二方面提供的用于动作生成的神经网络。55.在一种可能的实施方式中,神经网络具体用于融合词序列、动作序列和表情序列,得到融合序列,表情序列为根据输入语料得到,表情序列中包括至少一种表情对应的向量;参数集合中还包括表情参数,表情参数用于渲染得到输入语料对应的表情的图像。56.因此,在本技术实施方式中,神经网络还可以输出表情参数,从而可以渲染得到表情图像,使用户可以通过该表情图像更准确地获知输入语料的具体信息,提高用户体验。57.在一种可能的实施方式中,在使用训练集对神经网络进行训练之前,还使用数据集对神经网络进行预训练,得到预训练后的神经网络,该数据集中可以包括多个样本对,每个样本对可以包括一个词汇或者词向量与对应的动作参数,随后,可以使用训练集对预训练后的神经网络进行微调,得到训练后的神经网络。58.因此,本技术实施方式中,在预训练阶段,可以使用词向量和其对应的动作参数来进行训练,从而可以保障最终得到的神经网络可以输出准确的动作。在微调阶段,可以使用词序列和其对应的完整的动作的参数来进行训练,从而可以使最终得到的神经网络在输出准确的基础上,输出更连贯的动作的参数,提高用户体验。59.第七方面,本技术实施例提供一种训练装置,该动作生成装置具有实现上述第六方面动作生成方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。60.具体地,该训练装置可以包括:61.训练模块,用于使用训练集对神经网络进行训练,得到训练后的神经网络,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数,神经网络用于融合输入的动作序列和词序列得到融合序列,并根据融合序列输出参数集合,词序列中包括与输入语料中的至少一个词对应的向量,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作,参数集合中包括动作参数,动作参数用于渲染得到动作图像。62.在一种可能的实施方式中,神经网络具体用于融合词序列、动作序列和表情序列,得到融合序列,表情序列为根据输入语料得到,表情序列中包括至少一种表情对应的向量;参数集合中还包括表情参数,表情参数用于渲染得到输入语料对应的表情的图像。63.在一种可能的实施方式中,训练模块,还用于使用训练集对神经网络进行训练之前,还使用数据集对神经网络进行预训练,得到预训练后的神经网络,该数据集中可以包括多个样本对,每个样本对可以包括一个词汇或者词向量与对应的动作参数,随后,可以使用训练集对预训练后的神经网络进行微调,得到训练后的神经网络。64.第八方面,本技术实施例提供一种训练装置,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码用于执行上述第一六方面任一项所示的动作生成方法中与处理相关的功能。可选地,该训练装置可以是芯片。65.第九方面,本技术实施例提供了一种训练装置,该训练装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行如上述第六方面或第六方面任一可选实施方式中与处理相关的功能。66.第十方面,本技术实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面或第六方面中任一可选实施方式中的方法。67.第十一方面,本技术实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第六方面中任一可选实施方式中的方法。附图说明68.图1为本技术应用的一种人工智能主体框架示意图;69.图2为本技术提供的一种系统架构示意图;70.图3为本技术提供的另一种系统架构示意图;71.图4为本技术实施例提供的一种动作生成方法的流程示意图;72.图5为本技术实施例提供的另一种动作生成方法的流程示意图;73.图6为本技术实施例提供的一种融合向量的流程示意图;74.图7为本技术实施例提供的另一种融合向量的流程示意图;75.图8为本技术实施例提供的另一种融合向量的流程示意图;76.图9为本技术实施例提供的另一种融合向量的流程示意图;77.图10为本技术实施例提供的一种通过自回归的方式输出参数的流程示意图;78.图11为本技术实施例提供的一种通过非自回归的方式输出参数的流程示意图;79.图12为本技术实施例提供的一种神经网络的结构示意图;80.图13为本技术实施例提供的一种训练方法的流程示意图;81.图14为本技术实施例提供的一种构造训练样本的流程示意图;82.图15为本技术实施例提供的一种动作生成装置的结构示意图;83.图16为本技术实施例提供的另一种动作生成装置的结构示意图;84.图17为本技术实施例提供的一种训练装置的结构示意图;85.图18为本技术实施例提供的另一种训练装置的结构示意图;86.图19为本技术实施例提供的一种芯片的结构示意图。具体实施方式87.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。88.首先对人工智能系统总体工作流程进行描述,请参见图1,图1示出的为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“it价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“it价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。89.(1)基础设施90.基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片,如中央处理器(centralprocessingunit,cpu)、网络处理器(neural‑networkprocessingunit,npu)、图形处理器(英语:graphicsprocessingunit,gpu)、专用集成电路(applicationspecificintegratedcircuit,asic)或现场可编程逻辑门阵列(fieldprogrammablegatearray,fpga)等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。91.(2)数据92.基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。93.(3)数据处理94.数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。95.其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。96.推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。97.决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。98.(4)通用能力99.对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。100.(5)智能产品及行业应用101.智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能交通、智能医疗、自动驾驶、平安城市等。102.本技术实施例涉及了神经网络和数据转换(naturallanguageprocessing,nlp)的相关应用,为了更好地理解本技术实施例的方案,下面先对本技术实施例可能涉及的神经网络的相关术语和概念进行介绍。103.语料(corpus):也称为自由文本,其可以是字、词语、句子、片段、文章及其任意组合。例如,“今天天气真好”即为一段语料。104.损失函数(lossfunction):也可以称为代价函数(costfunction),一种比较机器学习模型对样本的预测输出和样本的真实值(也可以称为监督值)区别的度量,即用于衡量机器学习模型对样本的预测输出和样本的真实值之间的区别。该损失函数通常可以包括误差平方均方、交叉熵、对数、指数等损失函数。例如,可以使用误差均方作为损失函数,定义为具体可以根据实际应用场景选择具体的损失函数。105.梯度:损失函数关于参数的导数向量。106.随机梯度:机器学习中样本数量很大,所以每次计算的损失函数都由随机采样得到的数据计算,相应的梯度称作随机梯度。107.反向传播(backpropagation,bp):一种计算根据损失函数计算模型参数梯度、更新模型参数的算法。108.神经机器翻译(neuralmachinetranslation):神经机器翻译是数据转换的一个典型任务。该任务是给定一个源语言的句子,输出其对应的目标语言句子的技术。在常用的神经机器翻译模型中,源语言和目标语言的句子中的词均会编码成为向量表示,在向量空间进行计算词与词以及句子与句子之间的关联,从而进行翻译任务。109.预训练语言模型(pre‑trainedlanguagemodel,plm):是一种自然语言序列编码器,将自然语言序列中的每个词进行编码为一个向量表示,从而进行下游任务,如本技术以下所提及的词向量转换网络、动作向量转换网络或者动作生成网络等均可以采用plm来实现。plm的训练包含两个阶段,即预训练(pre‑training)阶段和微调(finetuning)阶段。在预训练阶段,该模型在大规模无监督文本上进行语言模型任务的训练,从而学习到词表示方式。在微调阶段,该模型利用预训练阶段学到的参数做初始化,在文本分类(textclassification)或序列标注(sequencelabeling)等下游任务(downstreamtask)上进行较少步骤的训练,就可以成功把预训练得到的语义信息成功迁移到下游任务上来。110.本技术实施例提供的动作生成方法可以在服务器上被执行,还可以在终端设备上被执行。其中该终端设备可以是具有图像处理功能的移动电话、平板个人电脑(tabletpersonalcomputer,tpc)、媒体播放器、智能电视、笔记本电脑(laptopcomputer,lc)、个人数字助理(personaldigitalassistant,pda)、个人计算机(personalcomputer,pc)、照相机、摄像机、智能手表、可穿戴式设备(wearabledevice,wd)或者自动驾驶的车辆等,本技术实施例对此不作限定。111.参见附图2,本技术实施例提供了一种系统架构200。该系统架构中包括数据库230、客户设备240。数据采集设备260用于采集数据并存入数据库230,训练模块202基于数据库230中维护的数据生成目标模型/规则201。下面将更详细地描述训练模块202如何基于数据得到目标模型/规则201,目标模型/规则201即本技术以下实施方式中所提及的神经网络,具体参阅以下图4‑图11中的相关描述。112.计算模块可以包括训练模块202,训练模块202得到的目标模型/规则可以应用不同的系统或设备中。在附图2中,执行设备210配置收发器212,该收发器212可以是无线收发器、光收发器或有线接口(如i/o接口)等,与外部设备进行数据交互,“用户”可以通过客户设备240向收发器212输入数据,例如,客户设备240可以向执行设备210发送目标任务,请求执行设备训练神经网络,并向执行设备210发送用于训练的数据库。113.执行设备210可以调用数据存储系统250中的数据、代码等,也可以将数据、指令等存入数据存储系统250中。114.计算模块211使用目标模型/规则201对输入的数据进行处理。具体地,计算模块211用于:获取输入语料,该输入语料中可以包括一个或多个词;随后根据输入语料获取词序列,词序列中包括至少一个词对应的向量;获取动作序列,动作序列中包括与至少一个动作对应的向量,至少一个动作与至少一个词对应;融合词序列和动作序列,得到融合序列;根据融合序列得到参数集合,参数集合中包括动作参数,动作参数用于渲染得到至少一个动作。115.最后,收发器212将神经网络的输出结果返回给客户设备240。如用户可以通过客户设备240输入一段待转换为手语动作的文本,通过神经网络输出手语动作或者表示手语动作的参数,并反馈给客户设备240。116.更深层地,训练模块202可以针对不同的任务,基于不同的数据得到相应的目标模型/规则201,以给用户提供更佳的结果。117.在附图2中所示情况下,可以根据用户的输入数据确定输入执行设备210中的数据,例如,用户可以在收发器212提供的界面中操作。另一种情况下,客户设备240可以自动地向收发器212输入数据并获得结果,若客户设备240自动输入数据需要获得用户的授权,用户可以在客户设备240中设置相应权限。用户可以在客户设备240查看执行设备210输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备240也可以作为数据采集端将采集到与目标任务关联的数据存入数据库230。118.在本技术所提及的训练或者更新过程可以由训练模块202来执行。可以理解的是,神经网络的训练过程即学习控制空间变换的方式,更具体即学习权重矩阵。训练神经网络的目的是使神经网络的输出尽可能接近期望值,因此可以通过比较当前网络的预测值和期望值,再根据两者之间的差异情况来更新神经网络中的每一层神经网络的权重向量(当然,在第一次更新之前通常可以先对权重向量进行初始化,即为深度神经网络中的各层预先配置参数)。例如,如果网络的预测值过高,则调整权重矩阵中的权重的值从而降低预测值,经过不断的调整,直到神经网络输出的值接近期望值或者等于期望值。具体地,可以通过损失函数(lossfunction)或目标函数(objectivefunction)来衡量神经网络的预测值和期望值之间的差异。以损失函数举例,损失函数的输出值(loss)越高表示差异越大,神经网络的训练可以理解为尽可能缩小loss的过程。本技术以下实施方式中更新起点网络的权重以及对串行网络进行训练的过程可以参阅此过程,以下不再赘述。119.如图2所示,根据训练模块202训练得到目标模型/规则201,该目标模型/规则201在本技术实施例中可以是本技术中的自注意力模型,该自注意力模型可以包括深度卷积神经网络(deepconvolutionalneuralnetworks,dcnn),循环神经网络(recurrentneuralnetwork,rnns)等等网络。本技术提及的神经网络可以包括多种类型,如深度神经网络(deepneuralnetwork,dnn)、卷积神经网络(convolutionalneuralnetwork,cnn)、循环神经网络(recurrentneuralnetworks,rnn)或残差网络其他神经网络等。120.其中,在训练阶段,数据库230可以用于存储有用于训练的样本集。执行设备210生成用于处理样本的目标模型/规则201,并利用数据库中的样本集合对目标模型/规则201进行迭代训练,得到成熟的目标模型/规则201,该目标模型/规则201具体表现为神经网络。执行设备210得到的神经网络可以应用不同的系统或设备中。121.在推理阶段,执行设备210可以调用数据存储系统250中的数据、代码等,也可以将数据、指令等存入数据存储系统250中。数据存储系统250可以置于执行设备210中,也可以为数据存储系统250相对执行设备210是外部存储器。计算模块211可以通过神经网络对执行设备210获取到的样本进行处理,得到预测结果,预测结果的具体表现形式与神经网络的功能相关。122.需要说明的是,附图2仅是本技术实施例提供的一种系统架构的示例性的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。例如,在附图2中,数据存储系统250相对执行设备210是外部存储器,在其它场景中,也可以将数据存储系统250置于执行设备210中。123.根据训练模块202训练得到的目标模型/规则201可以应用于不同的系统或设备中,如应用于手机,平板电脑,笔记本电脑,增强现实(augmentedreality,ar)/虚拟现实(virtualreality,vr),车载终端等,还可以是服务器或者云端设备等。124.该目标模型/规则201在本技术实施例中可以是用于执行本技术提供的动作生成方法的模型,即该目标模型/规则201可以是本技术提供的用于动作生成的神经网络。具体的,本技术实施例提供的模型可以包括cnn,深度卷积神经网络(deepconvolutionalneuralnetworks,dcnn),循环神经网络(recurrentneuralnetwork,rnn)等等中的一种或者多种网络。125.参见附图3,本技术实施例还提供了一种系统架构300。执行设备210由一个或多个服务器实现,可选的,与其它计算设备配合,例如:数据存储、路由器、负载均衡器等设备;执行设备210可以布置在一个物理站点上,或者分布在多个物理站点上。执行设备210可以使用数据存储系统250中的数据,或者调用数据存储系统250中的程序代码实现本技术以下图12对应的用于计算设备的训练方法的步骤。126.用户可以操作各自的用户设备(例如本地设备301和本地设备302)与执行设备210进行交互。每个本地设备可以表示任何计算设备,例如个人计算机、计算机工作站、智能手机、平板电脑、智能摄像头、智能汽车或其他类型蜂窝电话、媒体消费设备、可穿戴设备、机顶盒、游戏机等。127.每个用户的本地设备可以通过任何通信机制/通信标准的通信网络与执行设备210进行交互,通信网络可以是广域网、局域网、点对点连接等方式,或它们的任意组合。具体地,该通信网络可以包括无线网络、有线网络或者无线网络与有线网络的组合等。该无线网络包括但不限于:第五代移动通信技术(5th‑generation,5g)系统,长期演进(longtermevolution,lte)系统、全球移动通信系统(globalsystemformobilecommunication,gsm)或码分多址(codedivisionmultipleaccess,cdma)网络、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)网络、无线保真(wirelessfidelity,wifi)、蓝牙(bluetooth)、紫蜂协议(zigbee)、射频识别技术(radiofrequencyidentification,rfid)、远程(longrange,lora)无线通信、近距离无线通信(nearfieldcommunication,nfc)中的任意一种或多种的组合。该有线网络可以包括光纤通信网络或同轴电缆组成的网络等。128.在另一种实现中,执行设备210的一个方面或多个方面可以由每个本地设备实现,例如,本地设备301可以为执行设备210提供本地数据或反馈计算结果。该本地设备也可以称为计算设备。129.需要注意的,执行设备210的所有功能也可以由本地设备实现。例如,本地设备301实现执行设备210的功能并为自己的用户提供服务,或者为本地设备302的用户提供服务。130.在一些场景中,手语数字人可以通过手语动作的形式来表达出文本所表示的含义,使用户可以通过手语数字人的手语动作来获知信息。131.在一些方案中,可以通过机器翻译的方式将文本转换成手语语序,然后通过动作拼接的方式得到最终的手语手势。例如可以通过基于规则的方式进行分词,去虚词量词,调整语序等方式获得gloss(手语的书面表达),然后根据gloss去动捕数据库提取相应的动作,按次序进行动作的拼接。动作拼接主要考虑过渡时间,即动作过渡的平滑性。举例来说,用户通过语音输入或者文本输入等方式可以得到输入语料“这是一台新电视”,经过手语转写后,得到手语表达“电视/新/一”,然后分别提取“电视”,“新”和“一”的手语单词的手部动作数据,将这些动作数据进行拼接得到最终的手语手势动作。132.然而,基于规则的转写就是早期的翻译系统采用的方式,这些规则大都通过专家总结经验等方式获得,构建成本高,且难以完全覆盖所有的情况。133.在另一些方案中,可以采用基于学习的方式直接从成对的语料中学习翻译规则。如直接用transformer之类的seq2seq网络训练一个端到端的中文文本到gloss的翻译模型,从大量平行语料中学习这种变换。在得到gloss后,根据gloss去动捕数据库提取相应的动作,按次序进行动作的拼接。134.然而,通过上述方式得到的动作受限于动作数据库词典的限制,且对于文本所表达的含义解读可能不够准确,从而使最终得到的动作不能充分表达出输入语料的具体含义。135.在另一些方案中,还可以直接通过机器翻译的方法将文本转换为手语文本gloss,然后通过神经网络将gloss转换为动作,或者直接将文本转换为动作。而此种方式同样可能由于模型泛化性不足出现最终得到的动作不能充分表达出输入语料的具体含义的问题。136.因此,本技术提供的一种动作生成方法,通过融合文本对应的向量和动作对应的向量的方式,更准确度表达出输入数据所表示的含义,提高用户体验。137.首先,本技术提供的动作生成方法可以应用于多种场景。例如,可以应用于用户的日常沟通的地点,如餐厅、购物、学校、会议、旅行或者社交等场景,可以将所需表达的文本、语音或者图像等转换为动作来表示,从而可以在多种场景中,通过动作来向用户传达文本、语音或者图像等所表示的含义。138.例如,该手语数字人可以用于执行指令从而完成相应的动作,如将文本、语音或者图像等所表示的信息通过手语数字人的动作来传达。在一些场景中,可以使用手语数字人来向用户传达所需表示的含义,可以使不方便通过语音、文本或者图像等方式获取到的信息的用户,通过手语数字人的动作来获知语音、文本或者图像等方式获取到所需的信息。如在餐厅时,用户与服务员交流,服务员可以通过手语数字人来向用户介绍餐厅的食谱;如用户去零售商店时,商场服务员可以通过该手语数字人向用户告知某商店、卫生间等的具体位置;如用户和用户之间可以通过手语数字人来交流,从而互相交换所获知到的信息;如在旅行时,可以使用手语数字人与其他用户进行交流等。139.下面对本技术提供的动作生成方法进行详细介绍。140.参阅图4,本技术提供的一种动作生成方法的流程示意图。141.401、获取输入语料。142.其中,该输入语料中可以包括一个或者多个词汇。143.获取该输入语料的方式具体可以是从本地提取,也可以是从用户输入的数据中提取得到。具体地,首先可以获取一段文本,然后将该文本作为输入语料,或者对该文本进行转换或者提取后得到输入语料。144.获取文本的方式例如,可以从本地提取一段文本,将该文本作为输入语料;可以接收用户输入的文本,得到输入语料;也可以在接收到用户输入的文本之后,对该文本进行翻译得到输入语料;或者,还可以是接收用户输入的图像,对该图像进行识别得到输入语料;或者还可以接收用户输入的语音数据,对该语音数据进行识别得到输入文本等。因此,本技术实施方式中,可以通过多种方式来得到输入语料,可以适应多种场景,提高用户体验。145.可选地,在从本地或者通过输入数据得到文本之后,可以直接将该文本作为输入语料,也可以是对该文本进行转换或者翻译之后,将转换或者翻译后得到的文本作为输入语料。例如,通常手语中词汇的语序和常用语序可能不相同,在得到一段文本之后,如“我骑自行车”,可以直接将该文本作为输入语料,也可以将该文本翻译为手语的表达语序,如“我/自行车”,即输入语料。146.402、获取词序列。147.该词序列中可以包括输入语料对应的向量,该输入语料中包括一个或者多个词,每个词可以与一个或者多个向量对应。148.为便于理解,以下将词对应的向量称为词向量,以下不再赘述。149.例如,若词序列为多个词对应的向量,该多个词可以组成一句或者多句语料,即输入语料,每个词对应一组或者多组向量。150.在一种可能的实施方式中,将输入语料按照预设规则进行转换,得到词序列,输入语料包括从文本、语音或者图像中的至少一种数据中提取到的文本。例如,可以预先设置词和向量之间的映射关系,在从得到需转换为动作的文本之后,即可从该映射关系中查找该文本中每个词对应的向量,从而得到词序列。151.例如,给定一段文本,如“这是一部旧手机”,即可根据步骤401从该文本中提取到符合手语语序的语料:“手机/旧/一”,其中,“手机”为一个词,“旧”为一个词,“一”为一个词,长度为3,每个词都具有对应的向量表示,如“手机”对应向量x1,“旧”对应向量x2,“一”对应向量x3等。152.在一种可能的实施方式中,也可以将输入语料中的全部或者部分作为词向量转换网络的输入,输出所对应的词序列,词向量转换网络用于将输入语料转换为词向量。具体地,该词向量转换网络可以包括文本识别、图像识别或机器翻译等获取自然语言的文本的网络。153.或者,该词向量转换网络还可以包括用于进行自然语言处理(naturallanguageprocessing,nlp)的网络,在得到输入语料的初始向量表示之后,将该初始向量表示作为词向量转换网络的输入,通过该词向量转换网络对输入语料中各个词及其对应的上下文语义进行分析,从而得到更能表示出输入语料所表达的含义的词向量。例如,可以按照预先设置的映射关系将语料中的每个词转换为初始向量表示,每个词对应一个初始向量表示,一个或者多个初始表现向量组成一段输入序列。具体例如,获取到一段待处理的语料“今天天气怎样”,可以提前设置映射表,该映射表中设定了每个词对应一个向量,如“今天”对应向量x1,“天气”对应向量x2等,然后将输入序列作为词向量转换网络的输入,即可输出词序列。154.403、获取动作序列。155.其中,可以基于输入语料来获取动作序列,也可以基于词向量来获取动作序列。该动作序列中可以包括与至少一个动作对应的向量,该至少一个动作与输入语料中的至少一个词对应,每个词向量可以与一个或者多个动作向量(即表示动作的向量)对应。156.具体地,可以通过预先设定的转换规则来确定动作序列,也可以通过神经网络来输出动作序列等,具体可以根据实际应用场景调整。157.在一种可能的实施方式中,可以预先设定将词向量或者文本转换为动作向量的规则,如可以按照预先设定的算法进行计算,或者可以预先设定文本和动作或者词向量和动作之间的映射关系。在得到输入语料或者词序列之后,即可根据该规则确定与输入语料或者词序列对应的动作向量。158.例如,可以预先设置词向量和动作向量之间的映射关系,在得到词序列之后,在该映射关系中查询与输入语料对应的动作向量,得到动作序列。又例如,可以预先设置词汇和动作向量之间的映射关系,在得到输入语料之后,即可在该映射关系中查询输入语料中的词汇所映射的动作向量,得到动作序列。159.在一种可能的实施方式中,还可以通过神经网络的方式来输出词序列中每个词向量对应的动作向量或者输入语料中每个词对应的动作向量,从而得到动作序列。如可以将输入语料或者词序列作为动作向量转换网络的输入,输出每个词向量对应的动作向量,即可得到动作序列。160.可选地,在步骤402之前,可以使用训练集对该动作向量转换网络进行训练,从而使该动作向量转换网络可以将词向量转换为动作向量。该训练集中可以包括多个样本对,每个样本可以包括一组词序列与动作序列,或者一个词向量与一个动作向量等。因此,本技术实施方式中可以通过神经网络来完成将词向量转换为动作向量,相比于查询映射关系,可以准确高效地输出动作向量。161.需要说明的是,若通过输入语料来获取动作序列,则可以先执行步骤402,也可以先执行步骤403,还可以同时执行步骤402和步骤403,具体可以根据实际应用场景调整,本技术对此不作限定。162.404、融合词序列和动作序列,得到融合序列。163.在得到词序列和动作序列之后,融合该词序列和动作序列,即可得到融合序列。164.具体的融合方式可以包括拼接、加权融合或者进行处理后再拼接等,具体可以根据实际应用场景选择匹配的融合方式,本技术对此并不作限定。165.例如,可以对词序列所包括的词向量与动作序列包括的动作向量进行拼接,从而使得到的融合序列中既包括词序列所包括的信息,也包括动作序列所包括的信息。166.在一种可能的实施方式中,还可以获取表情序列,该表情序列中可以包括一组或者多组表情向量,每组表情向量可以表示一个或者多个表情动作,用于更准确形象地表达出输入数据所表示的信息。随后可以融合词序列、动作序列和表情序列,得到融合序列。从而使融合序列中可以包括词、动作和表情等更多的信息,进而可以使动作生成网络从融合序列中提取到更多的信息,提高动作生成网络的输出准确度。167.405、将融合序列作为动作生成网络的输入,输出参数集合。168.其中,该动作生成网络可以用于输出与输入的向量对应的动作参数,即该参数集合中可以包括表示动作的参数,如表示运动方向、关节所在位置或者运动距离等参数,动作参数可以用于进行渲染得到一帧或者多帧动作图像,从而实现将词序列转换为动作,使用户可以通过动作图像获取到所需信息。169.因此,本技术实施方式中,在得到动作序列之后,还可以融合动作序列与词序列,从而使得到的融合序列中可以包括动作序列和词序列所包括的信息,使神经网络可以基于动作序列和词序列所包括的信息,输出更准确更连贯的动作对应的参数,从而使最终的动作能准确地表达出输入数据所表达的信息,提高用户体验。170.在一种可能的实施方式中,参数集合中还可以包括表情参数,用于渲染得到表情。从而可以使用户可以获知到与输入的序列更具关联的上下文信息,使用户获知到的信息更准确,提高用户体验。171.在一种可能的实施方式中,在步骤404之前,可以使用训练集对动作生成网络进行训练,得到训练后的动作生成网络,使动作生成网络可以输出准确的动作参数。172.可选地,该训练集中可以包括多个样本对,每个样本对可以包括一组词序列,以及与该词序列对应的动作参数,如每个样本对中,可以包括完整的一段语料的词向量,以及与该语料对应的完整的一组动作的动作向量,从而可以使训练后的动作生成网络输出的动作参数对应的动作更连贯。如相对于每个样本对仅包括一个词向量和对应的一个或多个动作向量,本实施方式提供的样本对,可以使动作生成网络学习到更连贯的动作,从而使动作生成网络输出的参数对应的动作也更连贯,提高用户体验。173.此外,训练集中的样本对还可以包括词向量和对应的动作向量,从而使动作生成网络可以学习到每个词对应的动作,提高动作生成网络的输出准确度,具体可以根据实际应用场景调整。174.在一种可能的实施方式中,若融合向量中还融合了其他向量,如表情向量或者其他能表示输入数据所包括的信息的向量等,则动作生成网络还可以输出表情动作或者其他可以表达词序列和动作序列的动作对应的参数等。相应地,在训练动作生成网络时,使用的训练集中的样本对中也可以包括表情或者其他可以表达词序列和动作等,从而使动作生成网络输出的更多类型的参数,通过更多的动作来表达输入数据所表示的信息或者各个词的上下文语义,使用户可以通过由参数集合渲染得到的动作中或者更多更准确的信息,提高用户体验。175.前述对本技术提供的动作生成方法的流程进行了介绍,为便于理解,下面结合前述图4的方法流程具体的应用场景,对本技术提供的方法进行更详细的介绍。176.需要说明的是,本技术示例性地以将文本转化为手语动作为例进行示例性介绍,也可以将文本转换为其他动作,具体可以根据实际应用场景进行调整具体的动作类型,本技术对此并不作限定。177.参阅图5,本技术提供的另一种动作生成方法的流程示意图。178.501、文本获取。179.其中,可以通过多种途径得到文本,就输入语料,如语音识别、文本输入、图像识别或者机器翻译等方式来获取待转换的输入语料。180.例如,本技术提供的动作生成方法可以通过应用程序(app)的形式部署于用户的终端中,用户可以使用终端进行拍照,终端可以对拍摄到的图像进行识别,识别出图像中所包括的文本。或者,用户可以通过终端的麦克风进行语音输入,终端通过语音识别得到用户输入的文本。又例如,用户可以直接在app的界面中输入语料。还例如,用户可以在app界面中输入第一语种的文本,终端识别该第一语种的文本,即可得到第二语种的文本等。181.502、手语翻译。182.在得到输入语料之后,即可将该输入语料翻译为可进行手语表达的文本,即手语文本,该手语文本中包括了一个或者多个手语词汇。183.通常,手语是一种独立的表达方式,有独立的语序、语言结构或语法规则等。例如,在手语中通常没有量词,且数词放在名词之后,输入本文“我家有五口人”,在手语中的表达为“我/家/人/五”。又例如,名词动词化,中文文本“我骑自行车”,在手语中的表达为“我/自行车”。184.在手语的表达方式中,部分词有特定的属性,比如带特殊表情,身体朝向等信息也可以在手语表达中标注出来,如中文文本“怎么没买件羽绒服?”,在手语表达方式中,带疑问表情“羽绒服/买/没有/为什么(疑问)”。185.本技术实施方式中,可以通过专家收集这些手语规则,直接使用基于规则的方式构建手语翻译规则;也可以通过收集大量的成对的中文文本转手语的书面表达的平行语料,使用基于深度学习的方式训练手语翻译模型提取翻译规则,直接将中文文本转换成手语文本。例如,在无法获得平行语料或者语料较少的情况下,可以使用基于规则的方式构建的手语翻译模块的性能更好;在有大量平行语料的情况下,则使用基于深度学习的方式构建的手语翻译模块,从而得到性能更优的手语翻译网络。186.503、动作转换。187.在通过手语翻译得到手语文本之后,即可获取与手语文本对应的动作,得到手语动作。188.具体地,可以通过在手语动作数据库中检索与手语词汇对应的动作,从而得到手语动作。例如,可以预先设置动作数据库,并在动作数据库中保存一些通用的手语词典中的手语词汇及其对应的手语动作,在得到手语词汇之后,即可在动作数据库中查询与该手语词汇对应的手语动作。189.504、多模态融合。190.在得到手语词汇和手语动作以后,可以将手语词汇转换为词向量,将手语动作转换为动作向量。然后融合词向量和动作向量,即可得到融合向量,从而使得到的融合向量中即可以包括手语词汇所包含的信息,也可以包括手语动作所表达的信息。191.其中,融合词向量和动作向量的具体方式可以是拼接,也可以是对词向量和动作向量进行处理后再拼接,还可以是加权融合等,具体可以根据实际应用场景进行调整。例如,词向量可以表示为x1,动作向量可以表示为y1,将x1和y1进行拼接,即可得到融合向量x1y1。192.具体地,将手语词汇和手语动作转换为向量的具体方式,可以是按照预先设定的映射关系来进行转换,也可以是通过神经网络来进行转换。193.例如,可以预先设置手语词汇和词向量之间的映射关系,如“今天”对应向量x1,“天气”对应向量x2等,在得到手语词汇之后,即可根据预先设置的映射关系查找与手语词汇对应的词向量,从而得到词序列。194.又例如,可以使用词向量转换网络来输出词向量。该词向量转换网络可以包括通过一个全连接网络或者多层感知器网络实现,用于将文字表达的手语词汇转换成为词向量。195.还例如,可以使用动作向量转换网络来输出动作向量,该动作向量转换网络也可以通过一个全连接网络或者多层感知器网络实现,用于将手语动作转换成动作向量。196.具体例如,如图6所示,在得到手语词汇和手语动作之后,将手语词汇作为词向量转换网络的输入,输出词向量,将手语动作作为动作向量转换网络的输入,输出动作向量,然后通过融合网络融合词向量和动作向量,得到融合向量。197.此外,通常一个手语词汇可能对应多帧手语动作,因此需要将词向量的帧数与动作向量的帧数进行对齐后才再融合词向量和动作向量。具体的融合方式可以包括:将每个手语词汇和其对应的一个或多个动作向量进行对齐,或者,当一个手语词汇对应了多个动作向量时,可以将该多个向量融合为一个融合动作向量,然后将词向量和该融合动作向量进行对齐。198.例如,如图7所示,第一个手语词汇对应的动作有3帧,第二个手语词汇在动作数据库中没有找到对应的动作,第三个手语词汇对应的动作有2帧。可以分别获取这三个手语词汇的词向量g1,g2,g3;通过动作向量转换网络,可以获得第一个手语词汇对应的动作向量m1f1,m1f2,m1f3及第三个手语词汇对应的动作向量m3f1,m3f2。第二个手语词汇在动作数据库中没有检索到对应的动作,则使用一个占位向量代表其动作向量。在一种可能的实现中,直接将词向量与每一帧的动作向量进行拼接,将拼接结果输入到融合网络中得到融合向量。融合向量的帧数与输入融合网络的动作向量的帧数一致。词向量g1与动作向量m1f1融合的结果为g1f1,词向量g1与动作向量m1f2融合的结果为g1f2,词向量g2与占位向量融合的结果为g2f1,以此类推。然后可以将词向量与动作向量进行拼接,还可以将拼接后的结果输入至一个全连接层及一个relu层来进行处理,得到最终的融合向量。199.又例如,如图8所示,可以将一个手语词汇对应的多个动作向量合并为一个动作向量,如第一个手语词汇对应的动作有3帧,第二个手语词汇在动作数据库中没有找到对应的动作,第三个手语词汇对应的动作有2帧。可以分别获取这三个手语词汇的词向量g1,g2,g3,通过动作向量转换网络,可以获得第一个手语词汇对应的多个动作向量并进行融合得到m1,以及第三个手语词汇对应的多个动作向量并进行融合得到m3,随后融合g1和m1得到g1、g2和m2得到g2,以及g3和m3得到g3。200.此外,在一些可能的实施方式中,在得到输入语料之后,除了手语词汇和手语动作,还可以从输入语料获取其他信息,如表情、肢体朝向等信息。201.具体地,可以基于输入语料获取表情的类型,并生成对应的表情向量,得到表情序列。该表情序列中可以包括一个或者多种表情对应向量。可以融合词序列、动作序列和表情序列,从而得到融合序列,使融合序列中除了可以包括词序列和动作序列携带的信息,还可以包括表情序列所携带的与表情相关的信息。202.基于输入语料获取表情的类型的具体方式可以包括,可以是结合输入语料的上下文语义来生成匹配的表情,也可以是根据输入语料中携带的信息,如语气词、标点符号等信息来确定匹配的表情,还可以结合输入语料的上下文语义以及携带的信息来确定匹配的表情。例如,若输入语料中携带“?”,并结合输入语料的上下文语义确定当前的表情应为疑惑的表情。可以预先设置表示每种表情的向量或者向量的生成规则,在确定与输入语料匹配的一种或者多种表情之后,即可得到对应的表情向量。203.例如,如图9所示,第一个手语词汇的词向量为g1,第一个手语词汇对应动作的第一帧动作向量为m1f1,第一个手语词汇对应的第一帧表情向量为e1f1,以第一帧为例词向量g1,动作向量m1f1与表情向量e1f1融合的结果为g1f1,以此类推。204.505、手语生成。205.其中,在得到融合向量之后,即可将融合向量作为动作生成网络的输入,输出参数集合,如表示手语数字人手臂运动方向、手部所在位置、关节形态等参数。在生成手语的动作参数之后,即可使用该动作参数进行渲染,得到渲染后的一帧或者多帧手语动作对应的图像并在显示界面中进行展示。206.例如,可以通过动作生成网络来输出输入的向量对应的手语动作序列,其中可以包括手语的标识、运动方向、运动幅度等中的一种或多种信息。如每个手语动作序列保存了相应的手语动作,可以直接提取已渲染好的数据来进行播放,也可以是基于手语动作序列实时进行渲染并播放,具体可以根据实际应用场景进行调整,本技术对渲染方式并不作限定。207.此外,若融合向量中还融合了表情向量,动作生成网络的输出中还可以包括表情参数,可以使用该表情参数进行渲染,得到包括了表情的图像。208.具体地,在得到融合向量之后,可以将融合向量作为序列到序列的变换(seq2seq)网络,即动作生成网络的输入,输出参数集合。该seq2seq网络可以通过自回归或者非自回归的方式来生成参数集合。209.一种可能的实施方式中,可以通过自回归的方式来输出参数集合。如可以使用深度自注意力变换网络(transformer)作为融合向量的编码器和参数集合的生成器。210.例如,如图10所示,其中,xn表示融合序列中的第n个融合向量,n为融合向量的总长度,yt为手语的手势参数和表情参数(即参数集合所包括的参数)。transformerencoder(编码组件)可以利用自注意力(self‑attention)机制来读取融合向量中词向量所携带的信息。例如,transformerencoder可以包括多个自注意力(self‑attention)模块,sa模块可以用于基于输入的向量来计算关联度,如语料中每个词和相邻的一个或多个词之间的关联程度,然后融合输入的向量和关联度,即可得到sa模块的输出结果。211.然后将读取到的信息输入至transformerdecoder(解码组件)。以第u帧的动作yu及位置编码cu为例,第u帧可以是任意一帧手语动作,通过transformerdecoder可以生成第u 1帧的动作及位置编码当生成的位置编码到达预设阈值时,停止合成下一帧的手语动作。通常,transformerdecoder的输出为实数向量,可以通过线性变换来将浮点数变换为可用的参数。线性变换层可以包括全连接层,用于将transformerdecoder产生的向量投射至对数几率(logits)的向量中,得到动作参数。212.另一种可能的实施方式中,可以通过非自回归的方式来生成参数集合。与自回归的方式相比,区别在于通过非自回归的方式生成参数集合的过程中,可以预先估计手语动作的总长度,然后根据长度来确定各个手语动作的位置编码。213.例如,如图11所示,对于与前述图10相似的部分此处不再介绍。其中区别在于,t来自于长度估计模块,或者根据用户给定的输入数据得到。其中,长度估计模块可以为小型的神经网络,用于估计输入数据的长度,该模块的输入可以为transformerencoder的输出,模块的输出为输入语料对应的手语动作的长度。在确定生成手语动作的长度的情况下,可以通过非自回归的方式,直接估计出手语动作,从而减少推理时长。214.因此,在本技术实施方式中,在得到词向量和动作向量之后,可以融合词向量与动作向量,得到融合向量。融合向量中可以包括了词向量与动作向量所包含的信息,从而可以使用包含了更多信息的融合向量作为seq2seq网络的输入,从而可以结合词向量的上下文语义信息得到更准确的手语动作输出。215.本技术提供的动作生成方法可以通过神经网络来实现。216.示例性地,本技术提供一种用于动作生成的神经网络,如图12所示,该神经网络具体可以包括:217.文本获取模块1201,用于获取输入语料,输入语料包括的至少一个词。218.词向量转换网络1202,用于根据输入语料获取词序列,词序列中包括与至少一个词对应的向量;219.动作向量转换网络1203,用于获取动作序列,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作;220.融合网络1204,用于融合词序列和动作序列,得到融合序列;221.动作生成网络1205,将融合序列作为动作生成网络的输入,输出参数集合,参数集合中包括动作参数,动作参数用于渲染得到动作图像,动作生成网络用于将输入的向量转换为与动作相关的参数。222.在一种可能的实施方式中,参数集合中还包括表情参数,表情参数用于渲染得到至少一个动作分别对应的表情动作。223.在一种可能的实施方式中,上述模型还可以包括:224.表情向量转换网络1206,用于根据输入语料获取表情序列,表情序列中包括至少一种表情对应的向量;225.融合网络1204,具体用于融合词序列、动作序列和表情序列,得到融合序列。226.在一种可能的实施方式中,文本获取模块1201,具体用于从文本、语音或者图像中的至少一种数据中提取文本,得到输入语料。如该文本获取模块可以包括文本识别网络、语音识别网络或者图像识别网络等。227.在一种可能的实施方式中,还可以使用训练集对神经网络进行训练,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数。228.此外,本技术还提供一种训练方法,如图13所示,该训练方法可以包括:229.1301、使用训练集对神经网络进行训练,得到训练后的神经网络。230.其中,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数,神经网络用于融合输入的动作序列和词序列得到融合序列,并根据融合序列输出参数集合,词序列中包括与输入语料中的至少一个词对应的向量,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作,参数集合中包括动作参数,动作参数用于渲染得到动作图像。231.因此,本技术实施方式中,在对神经网络进行训练时,所使用的训练集中包括的每个样本对中可以包括一组词序列和对应的完整的动作的动作参数,从而使神经网络输出的动作也更连贯,提高用户体验。232.在一种可能的实施方式中,神经网络具体用于融合词序列、动作序列和表情序列,得到融合序列,表情序列为根据输入语料得到,表情序列中包括至少一种表情对应的向量;参数集合中还包括表情参数,表情参数用于渲染得到输入语料对应的表情的图像。233.因此,在本技术实施方式中,神经网络还可以输出表情参数,从而可以渲染得到表情图像,使用户可以通过该表情图像更准确地获知输入语料的具体信息,提高用户体验。234.在一种可能的实施方式中,在使用训练集对神经网络进行训练之前,还使用数据集对神经网络进行预训练,得到预训练后的神经网络,该数据集中可以包括多个样本对,每个样本对可以包括一个词汇或者词向量与对应的动作参数,随后,可以使用训练集对预训练后的神经网络进行微调,得到训练后的神经网络。235.因此,本技术实施方式中,在预训练阶段,可以使用词向量和其对应的动作参数来进行训练,从而可以保障最终得到的神经网络可以输出准确的动作。在微调阶段,可以使用词序列和其对应的完整的动作的参数来进行训练,从而可以使最终得到的神经网络在输出准确的基础上,输出更连贯的动作的参数,提高用户体验。236.当然,在预训练阶段和微调阶段,都可以使用前述的训练集来对神经网络进行训练,从而使最终得到的神经网络的输出准确且动作更连贯,提高用户体验,具体可以根据实际应用场景选择各个阶段使用的样本,本技术对此并不作限定。237.通常,训练神经网络的训练集可以使用多种样本,下面以应用于文本转换为手语场景为例,示例性地以几种可能的训练集进行说明。238.训练集一(即前述的数据集)239.第一种训练集中可以包括与常用手语词汇对应的手语动作和表情数据组成的动作数据库。240.其中,常用手语词汇可以来自于一些通用的手语词典或者对用户的日常对话进行统计等,动作数据库中的手语词汇对应的手语动作可以标注起始帧和结束帧。241.还可以通过造句的方式增加手语数据库中常用手语词汇,通过动作融合的方式,构造大量训练样本。例如,如图14所示,某一个词汇匹配了两个动作,即动作1和动作2,每个动作都具有起始动作和结束动作,如抬起手臂或放下手臂等,在动作1和动作2之间可以生成动作过度,可以将动作1的结束动作和动作2的开始动作可以进行合并,如结束动作为放下手臂,开始动作为抬起手臂,则可以合并为将手臂放至中间位置或者其他平滑动作1和动作2的动作等,以使最终训练得到的模型输出的动作更平滑。242.因此,通过采集一些常用的手语词汇及其对应动作或表情等信息,可以低成本采集到训练数据,提高模型的性能。并且,通过增加了过度动作的训练集来进行模型训练,使模型输出的动作也更连贯,提高用户体验。243.训练集二(即前述的训练集)244.与前述训练集一的区别在于,训练集二中的样本对,可以包括一段语料和该语料对应的完整的手语动作的参数。例如,某一个样本对中,可以包括手语词汇“我/家/人/五”,以及该段语料对应的完整的一组手语动作的参数。245.因此,在使用训练集二进行模型训练时,可以使模型学习到语料和其对应的完整的手语动作,从而使模型可以输出更连贯的手语动作的参数。246.此外,也可以结合前述训练集一和训练集二来进行模型训练。通常,由于训练集一的获取成本较低,可以快速地获得大量的训练数据;训练集二可以获得完整的语料的真值数据。因此本技术可以使用两阶段训练的方式进行模型训练。不管是第一个数据集数据量增加,还是第二个数据集数据量增加,都最终有利于优化最终的性能。247.例如,预训练阶段,利用训练集一构造的数据进行模型预训练,从而得到输出准确的模型;在微调阶段,利用训练集二进行微调,在输出准确的基础上,得到输出手语动作更连贯的模型。当然,在预训练阶段和微调阶段,都可以使用训练集二来进行训练,从而使最终的神经网络输出的手语动作更连贯,提高用户体验。248.前述对本技术提供的动作生成方法、训练方法的流程以及神经网络进行了详细介绍,为便于理解,下面对本技术应用一些具体的应用场景及实现的效果进行示例性介绍。249.例如,可以通过动态时间规整(dynamictimewarping,dtw)距离来衡量手语生成结果准确性,dtw算法可以将一个高维时间序列对齐到另一个高维时间序列,如果两个高维时间序列越相近,则两个高维时间序列的dtw距离越小。250.在一种场景中,收集一个283个手语词汇的动作数据库。然后使用这个动作数据库构造训练集random10k和测试集random1k,训练集random10k的构造方式如下:通过随机造句的方式得到10000句,句子的最长的长度为6个单词,然后使用动作拼接融合的方式得到整个句子的手语gt。在训练时,动作数据库中有30%的单词没有对应的动作。251.测试集random1k的构造方式如下:通过随机造句的方式得到1000句,句子的最长的长度为6个单词,然后使用动作拼接融合的方式得到整个句子的手语动作。252.可以从100句真实的手语句子中提取动作,构造测试集gt100。253.对比了多种方案,方案一包括:只根据文本信息生成对应的手语动作;方案二包括:根据动作信息生成对应的手语动作。本技术所提供的方案输入了文本信息和动作信息。254.分别实现的效果可以如表1所示,因此,本技术提供的方案优于纯文本的方案及纯动作的方案。并且,即使在文本对中不包括手语动作的情况下,也可以使模型的输出效果更优。255.验证集方案一方案二本技术方案dtw纯文本纯动作文本 动作random1k2.336.321.11gt10014.5513.159.15256.表1257.在另一种场景中,收集了一个283个手语词汇的动作数据库。然后使用这个动作数据库构造训练集random10k和测试集random1k,训练集random10k的构造方式如下:通过随机造句的方式得到10000句,句子的最长的长度为6个单词,然后使用动作拼接融合的方式得到整个句子的手语动作。在训练时,假设动作数据库中所有的单词都有对应的动作。258.测试集random1k的构造方式如下:通过随机造句的方式得到1000句,句子的最长的长度为6个单词,然后使用动作拼接融合的方式得到整个句子的手语动作。259.可以从100句真实的手语句子中提取动作,构造测试集gt100。260.对比了多种方案,方案一包括:只根据文本信息生成对应的手语动作;方案二包括:根据动作信息生成对应的手语动作。本技术所提供的方案输入了文本信息和动作信息。261.分别实现的效果可以如表2所示,实验表明本技术提供的方案的输出效果优于纯文本的方案及纯动作的方案的输出效果,在得到手语文本对用的动作的情况下,就把动作信息输入至模型中,使模型可以专注学更优动作的衔接。262.验证集方案一方案二本专利方案dtw纯文本纯动作文本 动作random1k2.3760.8600.78gt10014.559.358.46263.表2264.前述对本技术提供的方法以及模型进行了介绍,下面对本技术提供的装置进行详细介绍。265.参阅图15,本技术提供的一种动作生成装置的结构示意图,该动作生成装置用于执行前述第一方面或者第一方面任意实施方式中的方法步骤,该数动作生成装置,可以包括:266.文本获取模块1501,用于获取输入语料,输入语料包括的至少一个词;267.词向量转换模块1502,用于根据输入语料获取词序列,词序列中包括与至少一个词对应的向量;268.动作向量转换模块1503,用于获取动作序列,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作;269.融合模块1504,用于融合词序列和动作序列,得到融合序列;270.输出模块1505,用于将融合序列作为动作生成网络的输入,输出参数集合,参数集合中包括动作参数,动作参数用于渲染得到动作图像,动作生成网络用于将输入的向量转换为与动作相关的参数。271.在一种可能的实施方式中,参数集合中还包括表情参数,表情参数用于渲染得到输入语料对应的表情的图像。272.在一种可能的实施方式中,装置还包括:273.表情向量转换模块1506,用于根据输入语料获取表情序列,表情序列中包括至少一种表情对应的向量;274.融合模块,具体用于融合词序列、动作序列和表情序列,得到融合序列。275.在一种可能的实施方式中,装置还包括:276.训练模块1507,用于在将融合序列作为动作生成网络的输入,输出参数集合之前,使用训练集对动作生成网络进行训练,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数。277.在一种可能的实施方式中,词向量转换模块1502,具体用于:278.将输入语料或者词序列按照预设规则进行转换,得到词序列;279.或者,将输入语料或者词序列作为词向量转换网络的输入,输出词序列,词向量转换网络用于将语料转换为对应的向量。280.在一种可能的实施方式中,动作向量转换模块1503,具体用于从预设的动作数据库中查询与输入语料或者词序列对应的动作,得到动作序列;或者,将输入语料或词序列作为动作向量转换网络的输入,输出动作序列。281.在一种可能的实施方式中,文本获取模块1501,具体用于从文本、语音或者图像中的至少一种数据中提取文本,将该文本作为输入语料或者对该文本进行转换得到输入语料。282.请参阅图16,本技术提供的另一种动作生成装置的结构示意图,如下所述。283.该动作生成装置可以包括处理器1601和存储器1602。该处理器1601和存储器1602通过线路互联。其中,存储器1602中存储有程序指令和数据。284.存储器1602中存储了前述图4‑图11中的步骤对应的程序指令以及数据。285.处理器1601用于执行前述图4‑图11中任一实施例所示的动作生成装置执行的方法步骤。286.可选地,该动作生成装置还可以包括收发器1603,用于接收或者发送数据。287.本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有程序,当其在计算机上运行时,使得计算机执行如前述图4‑图11所示实施例描述的方法中的步骤。288.可选地,前述的图16中所示的动作生成装置为芯片。289.本技术实施例还提供了一种动作生成装置,该动作生成装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行前述图4‑图11中任一实施例所示的动作生成装置执行的方法步骤。290.参阅图17,本技术提供的一种训练装置的结构示意图,该训练装置用于执行前述第一方面或者第一方面任意实施方式中的方法步骤,该数训练装置,可以包括:291.训练模块1701,用于使用训练集对神经网络进行训练,得到训练后的神经网络,训练集中包括多个样本对,每个样本对包括一组词序列和对应的至少一组动作参数,神经网络用于融合输入的动作序列和词序列得到融合序列,并根据融合序列输出参数集合,词序列中包括与输入语料中的至少一个词对应的向量,动作序列中包括至少一个动作对应的向量,至少一个动作包括与至少一个词对应的动作,参数集合中包括动作参数,动作参数用于渲染得到动作图像。292.在一种可能的实施方式中,神经网络具体用于融合词序列、动作序列和表情序列,得到融合序列,表情序列为根据输入语料得到,表情序列中包括至少一种表情对应的向量;参数集合中还包括表情参数,表情参数用于渲染得到输入语料对应的表情的图像。293.在一种可能的实施方式中,训练模块1701,还用于使用训练集对神经网络进行训练之前,还使用数据集对神经网络进行预训练,得到预训练后的神经网络,该数据集中可以包括多个样本对,每个样本对可以包括一个词汇或者词向量与对应的动作参数,随后,可以使用训练集对预训练后的神经网络进行微调,得到训练后的神经网络。294.可以理解为,该神经网络可以用于执行前述图4‑图11对应的方法步骤,或者,该神经网络可以是前述图12中所使出的用于动作生成的神经网络。295.请参阅图18,本技术提供的另一种训练装置的结构示意图,如下所述。296.该训练装置可以包括处理器1801和存储器1802。该处理器1801和存储器1802通过线路互联。其中,存储器1802中存储有程序指令和数据。297.存储器1802中存储了前述图16中训练装置执行的步骤的程序指令以及数据。298.处理器1801用于执行前述图16中训练装置执行的方法步骤。299.可选地,该训练装置还可以包括收发器1803,用于接收或者发送数据。300.本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有程序,当其在计算机上运行时,使得计算机执行如前述图4‑图11所示实施例描述的方法中的步骤。301.可选地,前述的图18中所示的训练装置为芯片。302.本技术实施例还提供了一种训练装置,该训练装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行前述图4‑图11中任一实施例所示的训练装置执行的方法步骤。303.本技术实施例还提供一种数字处理芯片。该数字处理芯片中集成了用于实现上述处理器1601、处理器1801,或者处理器1601、处理器1801的功能的电路和一个或者多个接口。当该数字处理芯片中集成了存储器时,该数字处理芯片可以完成前述实施例中的任一个或多个实施例的方法步骤。当该数字处理芯片中未集成存储器时,可以通过通信接口与外置的存储器连接。该数字处理芯片根据外置的存储器中存储的程序代码来实现上述实施例中动作生成装置执行的动作。304.本技术实施例中还提供一种包括计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图4‑图11或图13所示实施例描述的方法中动作生成装置所执行的步骤。305.本技术实施例提供的动作生成装置或训练装置可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使服务器内的芯片执行上述图4‑图11或图13所示实施例描述的动作生成方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read‑onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)等。306.具体地,前述的处理单元或者处理器可以是中央处理器(centralprocessingunit,cpu)、网络处理器(neural‑networkprocessingunit,npu)、图形处理器(graphicsprocessingunit,gpu)、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)或现场可编程逻辑门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。307.示例性地,请参阅图19,图19为本技术实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器npu190,npu190作为协处理器挂载到主cpu(hostcpu)上,由hostcpu分配任务。npu的核心部分为运算电路1903,通过控制器1904控制运算电路1903提取存储器中的矩阵数据并进行乘法运算。308.在一些实现中,运算电路1903内部包括多个处理单元(processengine,pe)。在一些实现中,运算电路1903是二维脉动阵列。运算电路1903还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1903是通用的矩阵处理器。309.举例来说,假设有输入矩阵a,权重矩阵b,输出矩阵c。运算电路从权重存储器1902中取矩阵b相应的数据,并缓存在运算电路中每一个pe上。运算电路从输入存储器1901中取矩阵a数据与矩阵b进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1908中。310.统一存储器1906用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(directmemoryaccesscontroller,dmac)1905,dmac被搬运到权重存储器1902中。输入数据也通过dmac被搬运到统一存储器1906中。311.总线接口单元(businterfaceunit,biu)1910,用于axi总线与dmac和取指存储器(instructionfetchbuffer,ifb)1909的交互。312.总线接口单元1910(businterfaceunit,biu),用于取指存储器1909从外部存储器获取指令,还用于存储单元访问控制器1905从外部存储器获取输入矩阵a或者权重矩阵b的原数据。313.dmac主要用于将外部存储器ddr中的输入数据搬运到统一存储器1906或将权重数据搬运到权重存储器1902中或将输入数据数据搬运到输入存储器1901中。314.向量计算单元1907包括多个运算处理单元,在需要的情况下,对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如批归一化(batchnormalization),像素级求和,对特征平面进行上采样等。315.在一些实现中,向量计算单元1907能将经处理的输出的向量存储到统一存储器1906。例如,向量计算单元1907可以将线性函数和/或非线性函数应用到运算电路1903的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1907生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1903的激活输入,例如用于在神经网络中的后续层中的使用。316.控制器1904连接的取指存储器(instructionfetchbuffer)1909,用于存储控制器1904使用的指令;317.统一存储器1906,输入存储器1901,权重存储器1902以及取指存储器1909均为on‑chip存储器。外部存储器私有于该npu硬件架构。318.其中,循环神经网络中各层的运算可以由运算电路1903或向量计算单元1907执行。319.其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,asic,或一个或多个集成电路用于控制上述图4‑图11或图13的方法的程序。320.另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。321.通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、只读存储器(readonlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。322.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。323.所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。324.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。325.最后应说明的是:以上,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献