CN117636841A - 语音合成方法、装置、设备、存储介质和程序产品 - Google Patents
语音合成方法、装置、设备、存储介质和程序产品 Download PDFInfo
- Publication number
- CN117636841A CN117636841A CN202210998608.2A CN202210998608A CN117636841A CN 117636841 A CN117636841 A CN 117636841A CN 202210998608 A CN202210998608 A CN 202210998608A CN 117636841 A CN117636841 A CN 117636841A
- Authority
- CN
- China
- Prior art keywords
- precision
- result
- data format
- sampling
- voice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000001308 synthesis method Methods 0.000 title abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 242
- 230000008569 process Effects 0.000 claims abstract description 177
- 238000012545 processing Methods 0.000 claims abstract description 170
- 238000005070 sampling Methods 0.000 claims abstract description 135
- 238000006243 chemical reaction Methods 0.000 claims abstract description 59
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 39
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 39
- 238000007667 floating Methods 0.000 claims description 60
- 230000004913 activation Effects 0.000 claims description 44
- 238000004590 computer program Methods 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 description 38
- 238000010586 diagram Methods 0.000 description 12
- 229910052754 neon Inorganic materials 0.000 description 11
- GKAOGPIIYCISHV-UHFFFAOYSA-N neon atom Chemical compound [Ne] GKAOGPIIYCISHV-UHFFFAOYSA-N 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011112 process operation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005429 filling process Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本公开实施例涉及一种语音合成方法、装置、设备、存储介质和程序产品。所述方法包括:根据语音文本获取声学特征;将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号;其中,所述语音转换处理包括上采样处理,所述上采样处理包括多个运算过程,且所述多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。采用本方法能够节省将声学特征转化为语音信号的过程中所涉及的运算过程的时间,提高整个语音合成系统的运算效率。
Description
技术领域
本公开实施例涉及语音合成技术领域,特别是涉及一种语音合成方法、装置、设备、存储介质和程序产品。
背景技术
语音合成(TTS,Text-To-Speech)技术指的是可以将任意文本转换成语音的技术,目前语音合成技术已广泛应用于语音助手、导航播报等多种场景中。在这多种场景中,一般是通过将语音合成技术构成语音合成系统,并将语音合成系统运行在特定设备上,从而通过语音合成系统实现在语音助手、导航播报等多种场景下的语音输出。
语音合成系统一般由文本分析模块、声学模型和声码器三个模块构成。其中,文本分析模块用于将外部传输的文本转化成语言特征并输入至声学模型,声学模型用于将语言特征转化为声学特征(例如一般是Mel谱,梅尔谱)并输入至声码器,声码器最终将声学特征转化为语音信号并进行输出。
然而,目前语音合成系统中的声码器,其在将声学特征转化为语音信号的过程中所涉及的运算过程较为耗时,从而导致整个语音合成系统的运算效率较低。
发明内容
本公开实施例提供一种语音合成方法、装置、设备、存储介质和程序产品,可以节省将声学特征转化为语音信号的过程中所涉及的运算过程的时间,提高整个语音合成系统的运算效率。
第一方面,本公开实施例提供一种语音合成方法,应用于终端,该方法包括:
根据语音文本获取声学特征;
将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;
其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
第二方面,本公开实施例提供一种语音合成方法,应用于服务器,该方法包括:
接收终端发送的语音文本;
根据语音文本获取声学特征;
将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度;
将语音信号发送至终端。
第三方面,本公开实施例提供一种语音合成装置,应用于终端,该装置包括:
第一确定模块,用于根据语音文本获取声学特征;
第一转换模块,用于将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
第四方面,本公开实施例提供一种语音合成装置,应用于服务器,该装置包括:
接收模块,用于接收终端发送的语音文本;
第二确定模块,用于根据语音文本获取声学特征;
第二转换模块,用于将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度;
发送模块,用于将语音信号发送至终端。
第五方面,本公开实施例提供一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一方面的方法。
第六方面,本公开实施例提供一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第二方面的方法。
第七方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面和第二方面的方法。
第八方面,本公开实施例提供一种计算机程序产品,其包括计算机程序,计算机程序被处理器执行时实现上述第一方面和第二方面的方法。
本公开实施例提供的语音合成方法、装置、设备、存储介质和程序产品,通过根据语音文本获取声学特征,并将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中的目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。在该方法中,由于在语音转换处理的上采样处理中,可以采用多个不同精度的数据格式执行上采样处理中所涉及的多个运算过程,相比单纯采用高精度的数据格式执行整个上采样处理中所涉及的多个运算过程,在保证最终结果的精度的前提下,该方法夹杂的低精度数据格式的处理过程可以降低上采样处理过程的复杂度,节省上采样处理过程中的耗时,从而可以缩短整个语音转换处理过程的耗时,进而提高整个语音合成系统的运算效率。
附图说明
图1为一个实施例中语音合成方法的应用环境图;
图2为一个实施例中语音合成方法的流程示意图;
图3为另一个实施例中语音合成方法的流程示意图;
图4为另一个实施例中采用单精度浮点数处理声学特征的示例图;
图5为另一个实施例中采用混合精度浮点数处理声学特征的示例图;
图6为另一个实施例中语音合成方法的流程示意图;
图7为另一个实施例中语音合成方法的流程示意图;
图8为另一个实施例中多种策略的实际测试结果示例图;
图9为一个实施例中语音合成装置的结构框图;
图10为另一个实施例中语音合成装置的结构框图;
图11为一个实施例中终端的内部结构图;
图12为一个实施例中服务器的内部结构图。
具体实施方式
为了使本公开实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开实施例,并不用于限定本公开实施例。
下面结合本公开实施例所应用的场景,对本公开实施例涉及的技术方案进行介绍。
本公开实施例提供的语音合成方法,可以应用于如图1所示的应用环境中。其中,终端102可以通过网络与服务器104进行通信。终端102可以将获取的语音数据发送至服务器104进行处理,并在服务器104处理之后由服务器104将语音信号发送给终端102。当然,也可以是终端102直接对获取的语音数据进行处理,获得语音信号。其中,终端102可以车辆上设置的处理终端(例如车载终端),还可以是个人计算机、笔记本电脑、智能手机、平板电脑、便携式可穿戴设备和物联网设备等。其中车辆可以是共享车辆,还可以是其他个人车辆;便携式可穿戴设备可以是智能手环、智能手表等等;物联网设备可以是智能冰箱、智能电视、智能音箱等等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
以下实施例就分别以上述终端102和服务器104各自为执行主体来对本公开实施例的方案进行说明。
在一个实施例中,如图2所示,提供了一种语音合成方法,以该方法应用于图1中的终端为例进行说明,该方法可以包括以下步骤:
S202,根据语音文本获取声学特征。
其中,语音文本可以是由上游应用传输给终端的,该上游应用例如可以是地图组件等等。该语音文本中可以包括语音的音调、音色、具体语音内容等等。该语音文本可以是用于导航播报的语音文本,还可以是用于语音助手的语音文本等等。
具体的,终端在通过上游应用获得语音文本之后,可以对该语音文本进行文本分析,获得语音文本对应的语音特征。之后可以将语音特征输入至声学模型中进行转换,获得语言特征对应的声学特征。这里在对语音文本进行文本分析时可以采用文本分析模型进行,该文本分析模块可以是由神经网络构成的网络模型,其可以快速且精确地对语音文本进行文本分析。另外,这里的声学模型也可以是由神经网络构成的模型,例如可以是Fast-speech声学模型,通过该由神经网络构成的声学模型,可以快速且精确地获得声学特征。
S204,将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号。
在本步骤中,声学特征大多是通过Mel谱(梅尔谱)表示,Mel谱一般用于表示声学信号的频谱,其可以表示声音的频率与幅度或相位的关系。在通过声学模型获得声学特征之后,就可以采用声码器对声学特征进行语音转换处理;其中声码器可以是由神经网络构成的声码器,例如可以是HifiGAN声码器。
在具体采用声码器对声学特征进行语音转换处理时,其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
也就是说,一般通过声码器对声学特征进行处理的过程中会涉及到多个运算过程,现有技术中一般是各个运算过程均采用相同的高精度的数据格式进行数据运算,以获得高精度的运算结果。这里的高精度的数据格式例如上面的第二精度的数据格式,然而现有技术中获得的高精度的运算结果没有意义,在某些场景下甚至会影响声码器的运算效率。
基于此,本实施例中采用高精度的数据格式和低精度的数据格式混合的方式对多个运算过程进行数据运算,获得满足精度要求的运算结果,同时还可以提升声码器的运算效率。这里的运算结果可以是语音文本对应的语音信号,该语音信号可以是连续的语音波形(例如由时间和振幅构成的波形),也可以是离散的多个采样点(其中每个采样点可以表征时间和振幅之间的对应关系)。另外,在多个运算过程中采用第一精度的数据格式进行数据运算的运算过程均记为目标运算过程,该目标运算过程可以是一个或多个运算过程;另外,采用第二精度的数据格式进行数据运算的运算过程均记为其他运算过程,该其他运算过程可以是一个或多个运算过程,这里其他运算过程和目标运算过程总共构成了声码器上采样处理中的多个运算过程。
具体的,这里第一精度小于第二精度,即第一精度可以认为是低精度,第二精度可以认为是高精度,这样通过高低精度的数据格式混合参与多个运算过程,相比现有技术中的全部采用高精度的数据格式参与多个运算过程,加入低精度的数据格式进行运算,这样声码器的运算量会相对减少,那么运算时间就会相应缩短,即可缩短声码器运算过程中的耗时,提升声码器的运算效率,进而就可以提升包括声码器的整个语音合成系统的运算效率。
需要说明的是,本实施例中终端侧单侧进行语音信号合成过程,其主要针对语音信号时延要求较高的场景,例如导航播报,这样可以保证语音信号的时延要求,同时保证应用语音信号的场景的实际需求。
上述语音合成方法中,终端通过根据语音文本获取声学特征,并将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中的目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。在该方法中,由于在语音转换处理的上采样处理中,可以采用多个不同精度的数据格式执行上采样处理中所涉及的多个运算过程,相比单纯采用高精度的数据格式执行整个上采样处理中所涉及的多个运算过程,在保证最终结果的精度的前提下,该方法夹杂的低精度数据格式的处理过程可以降低上采样处理过程的复杂度,节省上采样处理过程中的耗时,从而可以缩短整个语音转换处理过程的耗时,进而提高整个语音合成系统的运算效率。
在另一个实施例中,上述第一精度的数据格式为半精度浮点数,上述第二精度的数据格式为单精度浮点数。
其中,单精度浮点数是用来表示带有小数部分的实数,其占用4个字节(32位)的存储空间,其数值范围为-3.4E38~3.4E38,且其精度非常高,一般可达到2-149。
在现有技术声码器的上采样处理中,其中的多个运算过程均是采用单精度浮点数进行计算的,其获得的运算结果对于声码器而言是冗余的。这是由于1、HifiGAN声码器进行运算时的中间运算结果数据较少,且取值范围较为集中;2、最终通过声码器获得的语音信号假设是由采样点构成的,其中每个采样点的数据长度是16位,过高的数据精度实质上没有意义,反而会加大计算量和增加计算耗时。
基于此,本实施例中加入半精度浮点数参与声码器上采样处理的多个运算过程。其中半精度浮点数指的是二进制浮点数数据类型,该半精度浮点数占用2个字节(16位)的存储空间。半精度浮点数的数据量是单精度浮点数的数据量的一半,这样在声码器运算过程中通过半精度浮点数可以将运算过程中的计算量降低,缩短声码器的运算耗时,提高声码器的运算效率。
本实施例中,第一精度的数据格式为半精度浮点数以及第二精度的数据格式为单精度浮点数,这样声码器中采用半精度浮点数和单精度浮点数混合的方式进行数据运算,可以降低声码器运算过程中的计算量,缩短声码器的运算耗时,提高声码器的运算效率。
在另一个实施例中,上述上采样处理采用单指令多数据流SIMD进行数据运算。
其中,SIMD指的是Single Instruction Multiple Data,中文是单指令多数据流。SMID指令集指的是一种通过单条指令可以处理多条数据流的指令的集合,使用SIMD指令集进行简单数学运算的效率一般明显高于普通的CPU指令。
另外,语音合成系统一般由硬件芯片进行加载并执行,本实施例中的硬件芯片主要采用Arm8.2版本以上的芯片结构。SIMD指令集在Arm芯片上一般对应的是neon指令集。
一般在Arm8.2版本芯片上,使用128位向量寄存器,并采用neon指令集对运算过程进行加速时,运算过程中处理的数据一般需要是16位(即半精度浮点数)的整倍数。对于单精度浮点数,一个neon指令最多可以处理4个单精度浮点数,对于半精度浮点数,一个neon指令最多可以处理8个单精度浮点数,由此可见,采用半精度浮点数进行数据运算时,运算速度/效率可以提升一倍。
本实施例中,通过在上采样处理采用单指令多数据流SIMD进行数据运算,这样在指令集中的每个指令处理数据时,每个指令集单次运算的数据更多,从而可以进一步提升数据的运算速度,进而进一步提升声码器的运算效率。
在另一个实施例中,提供了另一种语音合成方法,在上述实施例的基础上,如图3所示,该方法可以包括以下步骤:
S302,将声学特征输入至声码器中,按照第二精度的数据格式对声学特征进行预卷积处理,确定预卷积结果。
在本步骤中,参见图4所示,为声码器中处理声学特征的具体过程示例图。其中,声码器中包括预采样(例如图中的pre conv1d)、上采样(例如图中的upsampling)、后采样(例如图中的last conv1d)三个大的运算过程。参见图4所示,现有技术中这三个大的运算过程中均采用32位的单精度浮点数进行计算,这样倒是整个运算过程中的耗时非常大,运算效率也较低。
因此,本实施例中采用混合精度浮点数的方式处理声学特征,参见图5所示,为本实施例的声码器中处理声学特征的具体过程示例图,即采用混合精度浮点数处理声学特征的示例图。本实施例中声码器处理声学特征的架构没有改变,只是对其中各个运算过程中计算时采用的数据格式进行了改变。
那么在本实施例中,在从声学模型中获得声学特征之后,由于声学特征在预卷积部分的计算量较小,且在数据计算维度上不是8的整倍数(8的来源是采用neon指令每次执行计算时,一次性可以从128位的寄存器中取出8个16位的半精度浮点数进行计算),如果采用neon指令进行半精度浮点数计算,势必会引入多于的填充数据而导致降低计算速度,即预卷积处理过程中采用半精度浮点数不会缩短计算量,也不会提高计算速度,同时还会增大neon指令而带来的数据搬运方面的开销。因此本实施例在对声学特征进行预卷积处理时,依然采用单精度浮点数(即按照第二精度的数据格式)进行预卷积处理,获得预卷积结果。这里的预卷积处理可以是对声学特征进行1维卷积处理,当然也可以是其他维度的卷积处理。
S304,按照第二精度的数据格式和第一精度的数据格式,对预卷积结果循环进行第一预设次数的上采样处理,确定上采样结果。
在本步骤中,上采样处理过程是声码器中计算耗时最大的部分,该过程包括多次循环上采样操作,即需要执行多次上采样处理操作,每次上采样处理过程中包括激活函数处理、反卷积运算处理以及残差运算处理等多个运算过程。可选的,每次执行上采样处理时,可以是执行上采样处理操作,上采样处理操作包括如下步骤A1-A3:
A1,采用第二精度的数据格式对预卷积结果进行激活函数运算处理,确定第一激活结果;A2,采用第二精度的数据格式对第一激活结果进行反卷积运算处理,确定反卷积结果;A3,采用第一精度的数据格式对反卷积结果进行残差运算处理,确定初始上采样结果。
这里激活函数可以是leaky relu(带泄露修正线性单元)激活函数,由于本步骤中的激活函数运算处理的计算量较低,耗时较低,因此这里对于激活函数运算处理过程也是采用单精度浮点数(即第二精度的数据格式)进行运算,获得第一激活结果。这里获得的第一激活结果对应的数据格式为第二精度的数据格式。
由于反卷积运算处理过程和残差运算过程是上采样处理过程中耗时最大的部分,因此可以对这两部分运算过程中采用的数据格式进行改变。针对反卷积运算处理过程,一般可以采用的方法有插值补零法、交错相加法和小卷积核法等,其中最常用的是插值补零法。本实施例中也是优选采用插值补零法,且在对第一激活结果进行反卷积运算处理时,仍旧采用的单精度浮点数(即第二精度的数据格式)进行运算,获得反卷积结果,这样可以兼顾运算效率和其他方面(例如内存)的开销。这里获得的反卷积结果对应的数据格式为第二精度的数据格式。
针对残差运算处理过程(例如图4和5中的residual stack),本实施例中在对反卷积结果进行运算时,与上述激活函数运算过程以及反卷积运算过程所采用的单精度浮点数(即第二精度的数据格式)不同,这里采用的是半精度浮点数(即第一精度的数据格式)进行运算,获得上采样结果,由于这里的上采样结果还不是最终的上采样结果,因此记为初始上采样结果。这里获得的上采样结果对应的数据格式为第一精度的数据格式。
之后,可以将初始上采样结果作为新的预卷积结果,返回执行上述上采样处理操作,直至达到第一预设次数为止,获得上采样结果。
也就是说,在获得上采样处理第一次循环过程中的初始上采样结果之后,可以将该初始上采样结果作为新的预卷积结果,继续采用第二精度的数据格式对该初始上采样结果进行激活函数运算处理,获得新的第一激活结果;并采用第二精度的数据格式对新的第一激活结果进行反卷积运算处理,获得新的反卷积结果,以及采用第一精度的数据格式对新的反卷积结果进行残差运算处理,获得新的初始上采样结果;之后,可以判断循环次数是否达到第一预设次数,如果循环次数达到第一预设次数,则停止循环,并将此次循环获得的初始上采样结果作为最终的上采样结果。如果循环次数没有达到第一预设次数,则继续进行循环迭代,直至循环次数达到第一预设次数为止,最终获得上采样结果。
对于这里涉及的第一预设次数,其主要指的是上采样处理过程的循环次数,在每次上采样处理过程中,一般还会涉及到上采样的采样倍数,对于每次上采样的采样倍数,可选的,第一预设次数的上采样处理过程中每次上采样的采样倍数不相同。
示例地,这里第一预设次数可以是3次,每次上采样处理过程对应的采样倍数依次是8、4、2。这里通过设置3次上采样循环次数以及每次的采样倍数依次是8、4、2,这样可以简化声码器训练过程的复杂度以及保证声码器的模型精度。
S306,采用第二精度的数据格式对上采样结果进行后卷积处理,确定语音信号。
在本步骤中,与上述S302中预卷积类似,这里后卷积部分的计算量较小,且在数据计算维度上不是8的整倍数,如果采用neon指令进行半精度浮点数计算,势必会引入多于的填充数据而导致降低计算速度,即后卷积处理过程中采用半精度浮点数不会缩短计算量,也不会提高计算速度,同时还会增大neon指令而带来的数据搬运方面的开销。因此本实施例在对上采样结果进行后卷积处理时,依然采用单精度浮点数(即按照第二精度的数据格式)进行处理,获得语音信号。这里的后卷积处理可以是对上采样结果进行1维卷积处理,当然也可以是其他维度的卷积处理。
本实施例中,通过将声学特征输入声码器中按照第二精度的数据格式进行预卷积处理,并采用第二精度和第一精度混合的数据格式对预卷积结果进行上采样处理,以及采用第二精度的数据格式对上采样结果进行后卷积处理,获得语音信号,其中的上采样处理过程最为耗时,采用混合高低精度的数据格式进行数据处理,可以降低一部分上采样处理过程中的计算量,提高运算速度,进而提高声码器的运算效率。另外,上采样处理过程的每次循环中包括激活函数运算、反卷积运算以及残差运算,对耗时最大的残差运算采用低精度的数据格式进行运算,这样可以在最大限度的降低上采样处理过程中的计算量,有效提高上采样处理过程的运算速度,进而有效提高声码器的运算效率。进一步地,通过对于耗时最大的上采样处理过程,每次循环采用不同的采样倍数,这样可以简化声码器训练过程的复杂度以及保证声码器的模型精度。
在另一个实施例中,在上述步骤A3执行之前,由于步骤A2中获得的反卷积结果对应的数据格式为第二精度的数据格式,而步骤A3中残差运算采用的是第一精度的数据格式进行运算,因此这里可以将反卷积结果的数据格式从第二精度的数据格式转换至第一精度的数据格式。也就是说,在进行残差运算之前,可以将反卷积结果的数据格式从单精度浮点数转换至半精度浮点数,以便后续快速且准确地进行残差运算。
相应的,由于步骤A3中获得的初始上采样结果对应的数据格式为第一精度的数据格式,而循环返回步骤A1中激活函数运算采用的是第二精度的数据格式进行运算,因此这里可以将初始上采样结果的数据格式从第一精度的数据格式转换至第二精度的数据格式。也就是说,在进行激活函数运算之前,可以将初始上采样结果的数据格式从半精度浮点数转换至单精度浮点数,以便后续快速且准确地进行激活函数运算。
在另一个实施例中,提供了另一种语音合成方法,在上述实施例的基础上,如图6所示,上述步骤A3可以包括以下步骤:
S402,执行残差运算操作,残差运算操作包括:采用第一精度的数据格式对反卷积结果进行激活函数运算处理,确定第二激活结果;以及,采用第一精度的数据格式对第二激活结果进行对称填充处理,确定填充结果;以及采用第一精度的数据格式对填充结果进行一维卷积处理,确定初始卷积结果。
在本步骤中,通常残差运算过程包括多次循环残差运算操作,即需要执行多次残差运算操作,每次残差运算操作包括激活函数运算(例如图4和5中的leakyrelu)、对称填充处理(例如图4和5中的reflectionpad)、一维卷积处理(例如图4和5中的conv1d)、对称填充处理以及一维卷积处理等多个运算过程。
一般采用不同精度的数据格式在多个运算过程中进行运算时,必然需要进行数据格式的转换,而多次的数据格式的转换的耗时一般不能忽略。在HifiGAN声码器进行上采样处理过程中,存放中间变量的数组最大维度超过二十万,如果频繁进行数据格式的转换将抹去使用半精度浮点数运算带来的加速。因此,对于每次残差运算过程中的多个运算过程,均采用相同的第一精度的数据格式(即半精度浮点数)进行数据运算,这样在每次残差运算过程中不需要进行数据格式转换,从而可以大幅提升残差运算以及上采样处理的运算速度。同时,这里在每次残差运算过程中不需要进行数据格式转换,均采用半精度浮点数进行运算,使得整个声码器模型中保存的数组的数量/权重可以减小到现有技术中的一半,从而也可以节省内存空间。
具体的,在每次残差运算过程中,可以采用半精度浮点数对反卷积结果依次进行激活函数运算处理、对称填充处理、一维卷积处理、对称填充处理以及一维卷积处理等,最终获得初始卷积结果。这里获得的初始卷积结果对应的数据格式为第一精度的数据格式。
S404,将初始卷积结果作为新的反卷积结果,返回执行残差运算操作,直至达到第二预设次数为止,获得初始上采样结果。
在本步骤中,在获得残差运算第一换循环过程中的初始卷积结果之后,可以将该初始卷积结果作为新的反卷积结果,继续采用第一精度的数据格式对新的反卷积结果进行激活函数运算、对称填充处理一维卷积处理、对称填充处理以及一维卷积处理等,获得新的初始卷积结果。之后,可以判断循环次数是否达到第二预设次数,如果循环次数达到第二预设次数,则停止循环,并将此次循环获得的初始卷积结果作为初始上采样结果。如果循环次数没有达到第二预设次数,则继续进行循环迭代,直至循环次数达到第二预设次数为止,最终获得初始上采样结果。
对于这里涉及的第二预设次数,其主要指的是每次上采样处理过程中残差运算过程的循环次数,上述第一预设次数指的是上采样处理过程的循环次数,这里对于第二预设次数和第一预设次数的关系,可选的,第二预设次数与第一预设次数相同,例如第二预设次数也可以是3次。这样设置上采样循环次数和每次上采样中的残差运算循环次数相等,这样可以在保证声码器模型精度的基础上,降低声码器模型的计算量,提升声码器模型的运算效率。
本实施例中,通过采用相同的第一精度的数据格式执行残差运算过程中的激活函数运算、对称填充处理以及一维卷积处理,这样在每次残差运算过程中不需要进行数据格式转换,从而可以大幅提升残差运算以及上采样处理的运算速度。另外,通过循环多次残差运算获得上采样的初始上采样结果,这样多次循环运算可以提升获得的初始上采样结果的准确性。进一步地,通过设置上采样循环次数和每次上采样中的残差运算循环次数相等,这样可以在保证声码器模型精度的基础上,降低声码器模型的计算量,提升声码器模型的运算效率。
在另一个实施例中,如图7所示,提供了另一种语音合成方法,以该方法应用于图1中的服务器为例进行说明,该方法可以包括以下步骤:
S502,接收终端发送的语音文本。
在本步骤,终端可以通过接收上游应用发送的语音文本,并将该语音文本发送至服务器进行处理。对于语音文本的具体释义,可以参见上述S202中的解释说明,这里不再赘述。
S504,根据语音文本获取声学特征。
在本步骤中,服务器在获得语音文本之后,可以对该语音文本进行文本分析,获得语音文本对应的语音特征。之后可以将语音特征输入至声学模型中进行转换,获得语言特征对应的声学特征。具体内容可以参见上述S202中的解释说明,这里不再赘述。
S506,将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号。
其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
在本步骤中,服务器在获得声学特征之后,可以进行语音转换处理,获得语音信号。具体的处理过程可以参见上述S204中的解释说明,这里不再赘述。
S508,将语音信号发送至终端。
在本步骤中,服务器在获得语音信号之后,可以将语音信号再发送给终端,以便终端可以根据获得的语音信号进行语音输出,辅助用户操作。
需要说明的是,本实施例中服务器侧单侧进行语音信号合成过程,其主要针对语音信号时延要求不是很高的场景,例如语音助手,这样可以在保证应用语音信号的场景的实际需求的基础上,降低终端的处理功耗。
本实施例中,服务器通过接收终端发送的语音文本,据语音文本获取声学特征,并将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号,以及将语音信号发送给终端;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中的目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。在该方法中,由于在语音转换处理的上采样处理中,可以采用多个不同精度的数据格式执行上采样处理中所涉及的多个运算过程,相比单纯采用高精度的数据格式执行整个上采样处理中所涉及的多个运算过程,在保证最终结果的精度的前提下,该方法夹杂的低精度数据格式的处理过程可以降低上采样处理过程的复杂度,节省上采样处理过程中的耗时,从而可以缩短整个语音转换处理过程的耗时,进而提高整个语音合成系统的运算效率。同时,采用服务器进行语音信号合成,这样可以在保证应用语音信号的场景的实际需求的基础上,降低终端的处理功耗。
为了便于对本公开实施例更好地理解,以下以终端侧为例,给出一个具体的实施例来对技术方案进行说明,在上述实施例的基础上,上述方法可以包括以下步骤:
S1,根据语音文本获取声学特征。
S2,将声学特征输入至声码器中,按照单精度浮点数对声学特征进行预卷积处理,确定预卷积结果。
S3,采用单精度浮点数对预卷积结果进行激活函数运算处理,确定第一激活结果。
S4,采用单精度浮点数对第一激活结果进行反卷积运算处理,确定反卷积结果。
S5,采用半精度浮点数对反卷积结果进行激活函数运算处理,确定第二激活结果。
S6,采用半精度浮点数对第二激活结果进行对称填充处理,确定填充结果。
S7,采用半精度浮点数对填充结果进行一维卷积处理,确定初始卷积结果。
S8,将初始卷积结果作为新的反卷积结果,返回执行S5-S7,直至达到预设残差循环次数为止,并将达到预设残差循环次数的初始卷积结果作为初始上采样结果。
S9,将初始上采样结果作为新的预卷积结果,返回执行S3-S8,直至达到预设上采样循环次数为止,并将达到预设上采样循环次数的初始上采样结果作为最终的上采样结果。
S10,采用单精度浮点数对上采样结果进行后卷积处理,确定语音信号。
示例地,参见图8所示,假设使用高通8155P芯片(为Arm8.2版本以上的芯片),声码器中使用同一份神经网络参数,针对不同的计算策略,统计每40帧语音合成的耗时,同时给出每种计算策略下的音质情况。
在图8中,计算策略分别包括:1、使用普通CPU指令计算;2、全部采用单精度浮点数对应的neon指令计算;3、全部采用半精度浮点数计算,每次使用neon指令前后均进行浮点数长度转换;4、只在每次残差运算过程的前后进行浮点数长度的转换,残差运算过程内部全程采用半精度浮点数,且经过了CPU的读写优化,减少读写内存次数。每种计算策略对应的每40帧语音合成的耗时分别为:3000ms、230ms、210ms、141ms。每种计算策略对应的音质情况均是“好”。
由上述计算可知,在不影响音质的情况下,第4种计算策略采用半精度和单精度浮点数混合计算的策略,相较于第2种计算策略全部采用单精度浮点数计算的策略,第4种计算策略的耗时比第2种计算策略的耗时减少了230-141=89ms,速度提升了89/230=38.7%。由此可见,本公开实施例中采用半精度和单精度浮点数混合计算的策略,在保证音质的情况下,可以大幅提升语音合成系统的运算效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种语音合成装置,包括:第一确定模块11和第一转换模块12,其中:
第一确定模块11,用于根据语音文本获取声学特征;
第一转换模块12,用于将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
在另一个实施例中,上述第一精度的数据格式为半精度浮点数,上述第二精度的数据格式为单精度浮点数。
在另一个实施例中,上述上采样处理采用单指令多数据流SIMD进行数据运算。
在另一个实施例中,提供了另一种语音合成装置,在上述实施例的基础上,上述第一转换模块12可以包括:
预卷积单元,用于将声学特征输入至声码器中,按照第二精度的数据格式对声学特征进行预卷积处理,确定预卷积结果;以及,
上采样单元,用于按照第二精度的数据格式和第一精度的数据格式,对预卷积结果循环进行第一预设次数的上采样处理,确定上采样结果;以及,
后卷积单元,用于采用第二精度的数据格式对上采样结果进行后卷积处理,确定语音信号。
可选的,上述上采样单元可以包括:
上采样循环执行子单元,用于执行上采样处理操作,上采样处理操作包括:采用第二精度的数据格式对预卷积结果进行激活函数运算处理,确定第一激活结果;以及,采用第二精度的数据格式对第一激活结果进行反卷积运算处理,确定反卷积结果;以及,采用第一精度的数据格式对反卷积结果进行残差运算处理,确定初始上采样结果;
上采样返回执行子单元,用于将初始上采样结果作为新的预卷积结果,返回执行上采样处理操作,直至达到第一预设次数为止,获得上采样结果。
可选的,第一预设次数的上采样处理过程中每次上采样的采样倍数不相同。
可选的,上述上采样循环执行子单元采用第一精度的数据格式对反卷积结果进行残差运算处理,确定初始上采样结果之前,还用于将反卷积结果的数据格式从第二精度的数据格式转换至第一精度的数据格式。
可选的,上述上采样循环执行子单元采用第一精度的数据格式对反卷积结果进行残差运算处理,确定初始上采样结果之后,还用于将初始上采样结果的数据格式从第一精度的数据格式转换至第二精度的数据格式。
在另一个实施例中,提供了另一种语音合成装置,在上述实施例的基础上,上述上采样循环执行子单元,具体用于执行残差运算操作,残差运算操作包括:采用第一精度的数据格式对反卷积结果进行激活函数运算处理,确定第二激活结果;以及,采用第一精度的数据格式对第二激活结果进行对称填充处理,确定填充结果;以及采用第一精度的数据格式对填充结果进行一维卷积处理,确定初始卷积结果;
将初始卷积结果作为新的反卷积结果,返回执行残差运算操作,直至达到第二预设次数为止,获得初始上采样结果。
可选的,第二预设次数与第一预设次数相同。
在另一个实施例中,如图10所示,提供了另一种语音合成装置,包括:接收模块21、第二确定模块22、第二转换模块23和发送模块24,其中:
接收模块21,用于接收终端发送的语音文本;
第二确定模块22,用于根据语音文本获取声学特征;
第二转换模块23,用于将声学特征输入至声码器中进行语音转换处理,获取语音文本对应的语音信号;其中,语音转换处理包括上采样处理,上采样处理包括多个运算过程,且多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度;
发送模块24,用于将语音信号发送至终端。
关于语音合成装置的具体限定可以参见上文中对于语音合成方法的限定,在此不再赘述。上述语音合成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于或独立于终端或服务器中的处理器中,也可以以软件形式存储于终端或服务器中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种终端,其内部结构图可以如图11所示。该终端包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该终端的处理器用于提供计算和控制能力。该终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种语音合成方法。该终端的显示屏可以是液晶显示屏或者电子墨水显示屏,该终端的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种终端,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述终端侧各方法实施例中的步骤。
在一个实施例中,提供了一种服务器,其内部结构图可以如图12所示。该服务器包括通过系统总线连接的处理器、存储器和网络接口。其中,该服务器的处理器用于提供计算和控制能力。该服务器的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该服务器的数据库用于存储语音合成过程中所涉及的语音数据。该服务器的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种语音合成方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种服务器,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述服务器侧各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述终端侧和服务器侧各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述终端侧和服务器侧各方法实施例中的步骤。
需要说明的是,本申请所涉及的数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本公开实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开实施例构思的前提下,还可以做出若干变形和改进,这些都属于本公开实施例的保护范围。因此,本公开实施例专利的保护范围应以所附权利要求为准。
Claims (17)
1.一种语音合成方法,其特征在于,所述方法包括:
根据语音文本获取声学特征;
将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号;
其中,所述语音转换处理包括上采样处理,所述上采样处理包括多个运算过程,且所述多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
2.根据权利要求1所述的方法,其特征在于,所述第一精度的数据格式为半精度浮点数,所述第二精度的数据格式为单精度浮点数。
3.根据权利要求1或2所述的方法,其特征在于,所述上采样处理采用单指令多数据流SIMD进行数据运算。
4.根据权利要求1所述的方法,其特征在于,所述将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号,包括:
将所述声学特征输入至声码器中,按照所述第二精度的数据格式对所述声学特征进行预卷积处理,确定预卷积结果;以及,
按照所述第二精度的数据格式和所述第一精度的数据格式,对所述预卷积结果循环进行第一预设次数的上采样处理,确定上采样结果;以及,
采用所述第二精度的数据格式对所述上采样结果进行后卷积处理,确定所述语音信号。
5.根据权利要求4所述的方法,其特征在于,所述按照所述第二精度的数据格式和所述第一精度的数据格式,对所述预卷积结果循环进行第一预设次数的上采样处理,确定上采样结果,包括:
执行上采样处理操作,所述上采样处理操作包括:采用所述第二精度的数据格式对所述预卷积结果进行激活函数运算处理,确定第一激活结果;以及,采用所述第二精度的数据格式对所述第一激活结果进行反卷积运算处理,确定反卷积结果;以及,采用所述第一精度的数据格式对所述反卷积结果进行残差运算处理,确定初始上采样结果;
将所述初始上采样结果作为新的预卷积结果,返回执行所述上采样处理操作,直至达到所述第一预设次数为止,获得所述上采样结果。
6.根据权利要求4或5所述的方法,其特征在于,所述第一预设次数的上采样处理过程中每次上采样的采样倍数不相同。
7.根据权利要求5所述的方法,其特征在于,所述采用所述第一精度的数据格式对所述反卷积结果进行残差运算处理,确定初始上采样结果之前,所述方法还包括:
将所述反卷积结果的数据格式从第二精度的数据格式转换至所述第一精度的数据格式。
8.根据权利要求5所述的方法,其特征在于,所述采用所述第二精度的数据格式对所述反卷积结果进行残差运算处理,确定初始上采样结果之后,所述方法还包括:
将所述初始上采样结果的数据格式从第一精度的数据格式转换至所述第二精度的数据格式。
9.根据权利要求5所述的方法,其特征在于,所述采用所述第一精度的数据格式对所述反卷积结果进行残差运算处理,确定初始上采样结果,包括:
执行残差运算操作,所述残差运算操作包括:采用所述第一精度的数据格式对所述反卷积结果进行激活函数运算处理,确定第二激活结果;以及,采用所述第一精度的数据格式对所述第二激活结果进行对称填充处理,确定填充结果;以及采用所述第一精度的数据格式对所述填充结果进行一维卷积处理,确定初始卷积结果;
将所述初始卷积结果作为新的反卷积结果,返回执行所述残差运算操作,直至达到第二预设次数为止,获得所述初始上采样结果。
10.根据权利要求9所述的方法,其特征在于,所述第二预设次数与所述第一预设次数相同。
11.一种语音合成方法,其特征在于,所述方法包括:
接收终端发送的语音文本;
根据所述语音文本获取声学特征;
将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号;其中,所述语音转换处理包括上采样处理,所述上采样处理包括多个运算过程,且所述多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度;
将所述语音信号发送至所述终端。
12.一种语音合成装置,其特征在于,所述装置包括:
第一确定模块,用于根据语音文本获取声学特征;
第一转换模块,用于将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号;其中,所述语音转换处理包括上采样处理,所述上采样处理包括多个运算过程,且所述多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度。
13.一种语音合成装置,其特征在于,所述装置包括:
接收模块,用于接收终端发送的语音文本;
第二确定模块,用于根据所述语音文本获取声学特征;
第二转换模块,用于将所述声学特征输入至声码器中进行语音转换处理,获取所述语音文本对应的语音信号;其中,所述语音转换处理包括上采样处理,所述上采样处理包括多个运算过程,且所述多个运算过程中目标运算过程采用的数据格式的第一精度小于其他运算过程采用的数据格式的第二精度;
发送模块,用于将所述语音信号发送至所述终端。
14.一种终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
15.一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求11所述的方法的步骤。
16.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210998608.2A CN117636841A (zh) | 2022-08-19 | 2022-08-19 | 语音合成方法、装置、设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210998608.2A CN117636841A (zh) | 2022-08-19 | 2022-08-19 | 语音合成方法、装置、设备、存储介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117636841A true CN117636841A (zh) | 2024-03-01 |
Family
ID=90030890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210998608.2A Pending CN117636841A (zh) | 2022-08-19 | 2022-08-19 | 语音合成方法、装置、设备、存储介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117636841A (zh) |
-
2022
- 2022-08-19 CN CN202210998608.2A patent/CN117636841A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230206396A1 (en) | Image super-resolution reconstructing | |
CN109947426B (zh) | 应用程序的生成方法、装置及电子设备 | |
US20190369994A1 (en) | Providing multi-element multi-vector (memv) register file access in vector-processor-based devices | |
US20220406290A1 (en) | Text information processing method and apparatus | |
CN110009101B (zh) | 用于生成量化神经网络的方法和装置 | |
US20220092399A1 (en) | Area-Efficient Convolutional Block | |
WO2023088280A1 (zh) | 意图识别方法、装置、可读介质及电子设备 | |
CN115082358A (zh) | 图像增强方法、装置、计算机设备和存储介质 | |
CN111916050A (zh) | 语音合成方法、装置、存储介质和电子设备 | |
CN112309353A (zh) | 一种作曲方法、装置、电子设备及存储介质 | |
CN116128894A (zh) | 图像分割方法、装置及电子设备 | |
US12001510B2 (en) | Method and apparatus for length-aware local tiling in a sparse attention module in a transformer | |
KR20100111660A (ko) | 개선된 영상 압축을 위한 바이트 표현 | |
CN117292237A (zh) | 基于局部Transformer网络的联合重构方法、装置及介质 | |
CN117636841A (zh) | 语音合成方法、装置、设备、存储介质和程序产品 | |
CN111276127B (zh) | 语音唤醒方法、装置、存储介质及电子设备 | |
CN111653261A (zh) | 语音合成方法、装置、可读存储介质及电子设备 | |
CN113593527B (zh) | 一种生成声学特征、语音模型训练、语音识别方法及装置 | |
US20230133305A1 (en) | Methods and devices for accelerating a transformer with a sparse attention pattern | |
CN116008252A (zh) | 一种拉曼光谱下的混合物定量分析方法及装置 | |
US20230102798A1 (en) | Instruction applicable to radix-3 butterfly computation | |
CN113780534A (zh) | 网络模型的压缩方法、图像生成方法、装置、设备及介质 | |
CN114827695A (zh) | 视频录制方法、设备、电子设备及存储介质 | |
CN111798385A (zh) | 图像处理方法及装置、计算机可读介质和电子设备 | |
CN114666008B (zh) | 数据传输方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |