IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2023-27747音声処理方法、装置、機器、及びコンピュータ記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023027747
(43)【公開日】2023-03-02
(54)【発明の名称】音声処理方法、装置、機器、及びコンピュータ記憶媒体
(51)【国際特許分類】
   G10L 13/10 20130101AFI20230222BHJP
   G10L 13/06 20130101ALI20230222BHJP
【FI】
G10L13/10 113Z
G10L13/06 120Z
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022075811
(22)【出願日】2022-05-02
(31)【優先権主張番号】202110942535.0
(32)【優先日】2021-08-17
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ジャン、リキアン
(72)【発明者】
【氏名】ホウ、ジャンカン
(72)【発明者】
【氏名】スン、タオ
(72)【発明者】
【氏名】ジア、レイ
(57)【要約】      (修正有)
【課題】ボコーダ特徴の偏差によって引き起こされる発音誤差を低減し、音声合成の効果を向上させる音声処理方法、装置、機器及びコンピュータ記憶媒体を提供する。
【解決手段】音声処理方法は、テキストに対して得られたボコーダ特徴を取得するステップと、ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、ボコーダ特徴におけるUV特徴に対して値修正を行うステップと、合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するステップと、を含む。
【選択図】図2
【特許請求の範囲】
【請求項1】
音声処理方法であって、
テキストに対して得られたボコーダ特徴を取得するステップと、
前記ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うステップと、
合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するステップと、を含む、
音声処理方法。
【請求項2】
前記ボコーダ特徴におけるエネルギー特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うステップは、
前記ボコーダ特徴におけるUV特徴シーケンスの値変化境界上の値が1のフレームに対応するエネルギー特徴値が0より小さいか否かをそれぞれ判断し、そうである場合、当該フレームのUV特徴値を0に修正するステップと、
前記UV特徴シーケンスの値変化境界上の値が0のフレームに対応するエネルギー特徴値と、値が1の隣接フレームに対応するエネルギー特徴値との間の比率が予め設定された比率の閾値より大きいか否かをそれぞれ判断し、そうである場合、当該値が0のフレームのUV特徴値を1に修正するステップと、を含む、
請求項1に記載の音声処理方法。
【請求項3】
前記ボコーダ特徴における音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うステップは、
各フレームについて、当該フレームにおける前記音声スペクトル特徴の前のM次元の最大値が予め設定された第1の閾値より小さい場合、当該フレームのUV特徴値を1に設置するステップと、
当該フレームにおける前記音声スペクトル特徴の前のM次元の最大値が予め設定された第2の閾値より大きい場合、当該フレームのUV特徴値を0に設置するステップと、を含み、
前記Mは予め設定された正の整数であり、前記第2の閾値は前記第1の閾値より大きい、
請求項1に記載の音声処理方法。
【請求項4】
前記音声スペクトル特徴はメルスペクトル特徴であり、
前記Mは20であり、
前記第1の閾値は2であり、
前記第2の閾値は2.5である、
請求項3に記載の音声処理方法。
【請求項5】
前記ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うステップの前に、
予め設定された補間倍数に従って、前記ボコーダ特徴に対して線形補間処理を行うステップをさらに含む、
請求項1に記載の音声処理方法。
【請求項6】
前記修正後のボコーダ特徴をボコーダに提供するステップの前に、
前記修正後のボコーダ特徴内の予め設定されたタイプの特徴シーケンスに対して逆正規化処理を行うステップをさらに含み、
前記逆正規化処理は、音声合成モデルのトレーニングプロセス中に前記予め設定されたタイプの特徴シーケンスに対して行われる正規化処理に対応し、
前記音声合成モデルは、前記テキストに対して得られたボコーダ特徴を取得するソースである、
請求項1から5のいずれか一項に記載の音声処理方法。
【請求項7】
前記テキストに対して得られたボコーダ特徴を取得するステップは、
前記テキストから抽出された韻律特徴を取得するステップと、
前記テキストと前記韻律特徴を音声合成モデルに入力して、ボコーダ特徴を取得するステップと、を含み、
前記音声合成モデルは、第2のエンコーダ、第2のデコーダ、及び後予測ネットワークを含み、
前記第2のエンコーダは、前記テキストから言語特徴を抽出した後、前記言語特徴と前記韻律特徴をスプライシングし、又は、前記言語特徴、韻律特徴、及び話者特徴をスプライシングし、スプライシングされた第2のスプライシング特徴を前記第2のデコーダに出力し、
前記第2のデコーダは、予測された前のフレームの音響特徴、及び前記第2のスプライシング特徴を使用して、現在のフレームの音響特徴を予測して前記後予測ネットワークに出力し、前記音響特徴は音声スペクトル特徴を含み、
前記後予測ネットワークは音響特徴を使用してボコーダ特徴を予測して取得する、
請求項1から5のいずれか一項に記載の音声処理方法。
【請求項8】
前記後予測ネットワークが音響特徴を使用してボコーダ特徴を予測して取得するステップは、
前記後予測ネットワークが音響特徴をCBHGモジュールで処理した後、次に、N個の予測モジュールの予測を経て、予測結果からボコーダ特徴を構成するステップを含み、
前記予測モジュールは、双方向ゲート付き回帰ユニット(GRU)と線形投影層を含み、
前記Nは正の整数である、
請求項7に記載の音声処理方法。
【請求項9】
前記テキストから抽出された韻律特徴を取得するステップは、
前記テキストを韻律予測モデルに入力して、前記韻律特徴を取得するステップを含み、
前記韻律予測モデルは、第1のエンコーダと第1のデコーダを含み、
前記第1のエンコーダは、前記テキストから言語特徴を抽出した後、前記言語特徴を前記第1のデコーダに出力し、前記第1のデコーダは、予測された前のフレームの韻律特徴と前記言語特徴を使用して、現在のフレームの韻律特徴を予測して取得し、
又は、
前記第1のデコーダは、前記テキストから言語特徴を抽出した後、前記テキストから抽出された放送スタイル特徴と前記言語特徴をスプライシングし、取得された第1のスプライシング特徴を前記第1のデコーダに入力し、前記第1のデコーダは、予測された前のフレームの韻律特徴と前記第1のスプライシング特徴を使用して、現在のフレームの韻律特徴を予測して取得する、
請求項7に記載の音声処理方法。
【請求項10】
音声処理装置であって、
テキストに対して得られたボコーダ特徴を取得するための特徴取得ユニットと、
前記ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うためのUV修正ユニットと、
合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するための特徴送信ユニットと、を含む、
音声処理装置。
【請求項11】
前記UV修正ユニットは、具体的には、前記ボコーダ特徴におけるUV特徴シーケンスの値変化境界上の値が1のフレームに対応するエネルギー特徴値が0より小さいか否かをそれぞれ判断し、そうである場合、当該フレームのUV特徴値を0に修正し、
前記UV特徴シーケンスの値変化境界上の値が0のフレームに対応するエネルギー特徴値と、値が1の隣接フレームに対応するエネルギー特徴値との間の比率が予め設定された比率の閾値より大きいか否かをそれぞれ判断し、そうである場合、当該値が0のフレームのUV特徴値を1に修正するために用いられる、
請求項10に記載の音声処理装置。
【請求項12】
前記UV修正ユニットは、具体的には、各フレームについて、当該フレームにおける前記音声スペクトル特徴の前のM次元の最大値が予め設定された第1の閾値より小さい場合、当該フレームのUV特徴値を1に設置し、
当該フレームにおける前記音声スペクトル特徴の前のM次元の最大値が予め設定された第2の閾値より大きい場合、当該フレームのUV特徴値を0に設置するために用いられ、
前記Mは予め設定された正の整数であり、
前記第2の閾値は前記第1の閾値より大きい、
請求項10に記載の音声処理装置。
【請求項13】
前記音声スペクトル特徴はメルスペクトル特徴であり、
前記Mは20であり、
前記第1の閾値は2であり、
前記第2の閾値は2.5である、
請求項12に記載の音声処理装置。
【請求項14】
前記音声処理装置は、
予め設定された補間倍数に従って、前記特徴取得ユニットによって取得されたボコーダ特徴に対して線形補間処理を行い、線形補間処理後のボコーダ特徴を前記UV修正ユニットに提供するための線形補間ユニットをさらに含む、
請求項10に記載の音声処理装置。
【請求項15】
前記音声処理装置は、前記UV修正ユニットによって修正されたボコーダ特徴内の予め設定されたタイプの特徴シーケンスに対して逆正規化処理を行い、処理後のボコーダ特徴を前記特徴送信ユニットに提供するための逆正規化ユニットをさらに含み、
前記逆正規化処理は、音声合成モデルのトレーニングプロセス中に前記予め設定されたタイプの特徴シーケンスに対して行われる正規化処理に対応し、
前記音声合成モデルは、前記テキストに対して得られたボコーダ特徴を取得するソースである、
請求項10から14のいずれか一項に記載の音声処理装置。
【請求項16】
前記特徴取得ユニットは、具体的には、前記テキストから抽出された韻律特徴を取得し、前記テキストと前記韻律特徴を音声合成モデルに入力して、ボコーダ特徴を取得するために用いられ、
前記音声合成モデルは、第2のエンコーダ、第2のデコーダ、及び後予測ネットワークを含み、
前記第2のエンコーダは、前記テキストから言語特徴を抽出した後、前記言語特徴と前記韻律特徴をスプライシングし、又は前記言語特徴、韻律特徴、及び話者特徴をスプライシングし、スプライシングされた第2のスプライシング特徴を前記第2のデコーダに出力し、
前記第2のデコーダは、予測された前のフレームの音響特徴、及び前記第2のスプライシング特徴を使用して、現在のフレームの音響特徴を予測して前記後予測ネットワークに出力し、前記音響特徴は音声スペクトル特徴を含み、
前記後予測ネットワークは音響特徴を使用してボコーダ特徴を予測して取得する、
請求項10から14のいずれか一項に記載の音声処理装置。
【請求項17】
前記特徴取得ユニットは、具体的には、前記テキストを韻律予測モデルに入力して、前記韻律特徴を取得するために用いられ、
前記韻律予測モデルは、第1のエンコーダと第1のデコーダを含み、
前記第1のエンコーダは、前記テキストから言語特徴を抽出した後、前記言語特徴を前記第1のデコーダに出力し、前記第1のデコーダは、予測された前のフレームの韻律特徴と前記言語特徴を使用して、現在のフレームの韻律特徴を予測して取得し、又は、
前記第1のデコーダは、前記テキストから言語特徴を抽出した後、前記テキストから抽出された放送スタイル特徴と前記言語特徴をスプライシングし、取得された第1のスプライシング特徴を前記第1のデコーダに入力し、前記第1のデコーダは、予測された前のフレームの韻律特徴と前記第1のスプライシング特徴を使用して、現在のフレームの韻律特徴を予測して取得する、
請求項16に記載の音声処理装置。
【請求項18】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~5のいずれかの一つに記載の音声処理方法を実行する、
電子機器。
【請求項19】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~5のいずれかの一つに記載の音声処理方法を実行させる、
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項20】
コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサによって実行される時に請求項1~5のいずれかの一つに記載の音声処理方法を実現する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータアプリケーション技術の分野に関し、特に人工知能技術の分野における音声、深層学習などの技術に関する。
【背景技術】
【0002】
音声合成は,入力されたテキストを自然に理解できる音声に合成する技術である。音声合成の流暢さ、表現力、及び音質はユーザ体験に直接影響する。しかし、音声合成のプロセスでは、予測過程に現れるずれにより、最終的に合成された音声は発音に誤差が生じ、効果を向上する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0003】
これに鑑みて、本開示は、音声合成後の発音効果を向上させるための音声処理方法、装置、機器、及びコンピュータ記憶媒体を提供する。
【課題を解決するための手段】
【0004】
本開示の第1の態様によれば、音声処理方法を提供し、
テキストに対して得られたボコーダ特徴を取得するステップと、
前記ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV(有声音及び無声音)特徴に対して値修正を行うステップと、
合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するステップと、を含む。
【0005】
本開示の第2の態様によれば、音声処理装置を提供し、
テキストに対して得られたボコーダ特徴を取得するための特徴取得ユニットと、
前記ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、前記ボコーダ特徴におけるUV特徴に対して値修正を行うためのUV修正ユニットと、
合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するための特徴送信ユニットと、を含む。
【0006】
本開示の第3の態様によれば、電子機器を提供し、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサと通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記の方法を実行させる。
【0007】
本開示の第4の態様によれば、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、前記コンピュータに上記の方法を実行させる。
【0008】
本開示の第5の態様によれば、コンピュータプログラム製品を提供し、コンピュータプログラムを含み、前記コンピュータプログラムがプロセッサによって実行される時に上記の方法を実現する。
【0009】
本明細書で説明された内容は、本開示の実施例のキーまたは重要な特徴を特定することを意図しておらず、本開示の範囲を制限するためにも使用されないことを理解されたい。本開示の他の特徴は、以下の明細書を通じて容易に理解できる。
【図面の簡単な説明】
【0010】
図面は、本出願をより良く理解するためのものであり、本出願を限定しない。
図1】本開示に係る基本アーキテクチャの概略図である。
図2】本開示の実施例により提供される音声処理方法のフローチャートである。
図3】本開示の実施例により提供されるUV修正の方法のフローチャートである。
図4】本開示の実施例により提供される音声合成方法のフローチャートである。
図5a】本開示の実施例により提供される韻律予測モデルの概略構造図である。
図5b】本開示の実施例により提供される韻律予測モデルの概略構造図である。
図6】本開示の実施例により提供される音声合成モデルの概略構造図である。
図7】本開示の実施例により提供される後予測ネットワークの概略構造図である。
図8a】本開示の実施例により提供される第1の音声合成モデルのトレーニング方法のフローチャートである。
図8b】本開示の実施例により提供される第1の音声合成モデルのトレーニングアーキテクチャの概略図である。
図9a】本開示の実施例により提供される第2の音声合成モデルのトレーニング方法のフローチャートである。
図9b】本開示の実施例により提供される第2の音声合成モデルのトレーニングアーキテクチャの概略図である。
図9c】本開示の実施例により提供される韻律抽出モデルの概略構造図である。
図10a】本開示の実施例により提供される第3の音声合成モデルのトレーニング方法のフローチャートである。
図10b】本開示の実施例により提供される第3の音声合成モデルのトレーニングアーキテクチャの概略図である。
図11a】本開示の実施例により提供される第4の音声合成モデルのトレーニング方法のフローチャートである。
図11b】本開示の実施例により提供される第4の音声合成モデルのトレーニングアーキテクチャの概略図である。
図12】本開示の実施例により提供される音声処理装置の概略構造図である。
図13】本開示の実施例により提供される音声合成装置の概略構造図である。
図14】本開示の実施例を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0011】
以下、図面に基づいて、本出願の例示の実施例を説明する。理解を容易にするために、本出願の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本出願の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識するはずである。同様に、簡明のために、以下の説明では、よく知られた機能と構造の説明は省略される。
【0012】
本開示により提供される技術的解決策の理解を容易にするために、まず、本開示に係る基本アーキテクチャについて簡単に説明する。図1に示すように、本開示に係る基本アーキテクチャは、音声合成装置、後処理装置、およびボコーダを含む。
【0013】
音声合成装置は、合成しようとするテキストを処理し、ボコーダ特徴の出力として変換する。後処理装置は、本開示の実施例における音声処理方法の主な実行主体であり、音声合成装置から出力されるボコーダ特徴を最適化処理した後、ボコーダに出力する。ボコーダはボコーダ特徴を使用して最終的に合成された音声を取得する。
【0014】
図2は本開示の実施例により提供される音声処理方法のフローチャートである。当該方法の実行主体は音声処理装置であり、当該音声処理装置は、図1に示すアーキテクチャの中の後処理装置に設置する。当該装置は、ユーザ端末のアプリケーションに位置することができるか、又は端末のアプリケーションのプラグインまたはソフトウェア開発キット(Software Development Kit、SDK)などの機能ユニットに位置することもできるか、又は、サーバ側に位置することもでき、本発明の実施例はこれについて特に限定しない。図2に示すように、当該方法は、以下のステップを含むことができ、
201では、テキストに対して得られたボコーダ特徴を取得する。
【0015】
202では、ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、ボコーダ特徴におけるUV特徴に対して値修正を行う。
【0016】
203では、合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供する。
【0017】
上記の技術的解決策から分かるように、ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、ボコーダ特徴におけるUV特徴に対して値修正を行って、ボコーダ特徴の偏差によって引き起こされる発音誤差を低減し、音声合成の効果を向上させる。
【0018】
以下は実施例を組み合わせ上記の各ステップに対して詳細に説明する。まず、ステップ201では、取得されたボコーダ特徴は、図1に示す音声合成装置から由来することができ、音声合成装置は、音声合成モデルを使用して入力されたテキストからボコーダ特徴を取得する。本開示では任意の形式の音声合成モデルを使用してボコーダ特徴を取得することができ、後続に好ましい実施方式を提供して詳細に説明する。
【0019】
上記のボコーダ特徴は、様々なタイプの情報を含むことができ、具体的には、多次元の情報として具現されることができる。エネルギー特徴、SP(Spectral envelope、スペクトルエンベロープ)、CAP(Coarse aperiodic parameter、非周期的な粗さパラメータ)特徴、LF0(Logarithmic fundamental frequency、対数基本周波数)特徴、UV特徴を含むことができるが、これらに限定しない。本開示では主にUV特徴に対する修正を実現する。
【0020】
UV特徴は、すなわちUnvoiced(無声音)とVoiced(有声音)特徴である。ボコーダ特徴では、各フレームは、すべて1つのUV特徴を有する値で当該フレームオーディオの発音特性を表す。1つのテキストについて、これに対応するのは、1つのオーディオシーケンスであり、通常、複数のフレームから構成され、従って、ボコーダ特徴におけるUV特徴は、1つのシーケンス、すなわちUV特徴シーケンスとして具現される。UV特徴シーケンスは、各フレームのUV特徴値を含む。
【0021】
UV特徴値は0と1を含み、0はUnvoicedを表し、1はVoicedを表す。
【0022】
従来の音声合成モデルではボコーダ特徴の予測を行う時、UV特徴については分類確率に基づいて行われる予測であり、一定の誤差が存在する可能性があり、これらの誤差は、母音と子音の分布が発音法則に符合せず、音声合成の効果が低くなる。
【0023】
以下は実施例を組み合わせて上記のステップ202に対して詳細に説明する。
【0024】
本ステップでは、ボコーダ特徴におけるエネルギー特徴に基づいてボコーダ特徴におけるUV特徴シーケンスに対して値変化境界の修正を行うことができる。音声スペクトル特徴に基づいてUV特徴シーケンスの各値に対してそれぞれ判断と修正を行うこともできる。すなわち、ボコーダ特徴におけるエネルギー特徴に基づいてボコーダ特徴におけるUV特徴シーケンスに対して値変化境界の修正を行い、音声スペクトル特徴に基づいてUV特徴シーケンスの各値に対してそれぞれ判断と修正を行うこともできる。
【0025】
以下は1つの好ましい実施方式で上記の2つの方式を使用することを例として説明する。図3に示すように、上記のステップ202は、具体的には、以下のステップを含むことができ、
2021では、ボコーダ特徴におけるUV特徴シーケンスの値変化境界上の値が1のフレームに対して1つずつ判断し、当該フレームに対応するエネルギー特徴値が0より小さい場合、当該フレームのUV特徴値を0に修正する。
【0026】
前述のように、ボコーダ特徴にはエネルギー特徴が含まれ、本ステップでは、まず、ボコーダにおけるエネルギー特徴を使用してUV特徴シーケンスの値変化境界上の値が1のフレームを判断する。
【0027】
値変化境界上の値が1のフレームとは、UV特徴シーケンスに、隣接する0から1までが存在する場合、値変化境界とみなし、隣接する0と1の値が1のフレームを判断する。
【0028】
値が1のフレームは、当該フレームが音声合成モデルによって有声音として認識されることを意味する。有声音とは、発音時に声帯が振動する音を指す。無声音とは、発音時に声帯が振動しない音を指す。通常の状況では、有声音の発音は、無声音よりも大きく、無声音は、ボコーダ特徴に対応するエネルギー特徴値が通常、0より小さいため、UV特徴シーケンスの値変化境界上の値が1のフレームに対応するエネルギー特徴値が0より小さい場合、当該フレームは無声音である可能性が高く、そのUV特徴値を0に修正する。対応するエネルギー特徴値が0以上である場合、当該フレームのUV特徴値は変更しないように保持する。
【0029】
本ステップでは、UV特徴シーケンスにおけるすべての値境界上の値が1のフレームをすべて判断する。UV特徴値の修正を行った後に新しい値境界が生成された場合、新しい値境界上の値が1のフレームに対しても判断する必要がある。例えば、元のUV特徴シーケンスに「…0、1、1…」という1つのセグメントがある。その中の0、1境界上の1を判断し、それを0に修正した後、当該0値と後の値1は、また新しい値境界を構成すると、後の値1に対応するフレームに対して上記の判断を続ける。
【0030】
2022では、UV特徴シーケンスの値変化境界上の値が0のフレームを1つずつ判断し、当該フレームに対応するエネルギー特徴値と値が1の隣接フレームに対応するエネルギーとの間の比率が予め設定された比例の閾値より大きい場合、当該値が0のフレームのUV特徴値を1に修正する。
【0031】
値が0のフレームは、当該フレームが音声合成モデルによって無声音として認識されることを意味し、異なるユーザにとって、発音時のエネルギー値が異なる場合がある。しかし、無声音と有声音の発音時には一定の区別がある。値変化境界上の値が0のフレームと値が1のフレームに対応するエネルギー間の比率が予め設定された比例の閾値(例えば50%)より大きい場合、つまり、当該フレームが隣接する有声音とあまり差がない場合、当該フレームも有声音である可能性が高いとみなすので、当該フレームのUV特徴値を1に修正する。それ以外の場合、当該フレームのUV特徴値は変更しないように保持する。
【0032】
本ステップでは、UV特徴シーケンスにおけるすべての値境界上の値が0のフレームをすべて判断することができる。UV特徴値の修正を行った後に新しい値境界が生成された場合、また、新しい値境界上の値が0のフレームを判断する必要がある。例えば、元のUV特徴シーケンスに「…1、0、0…」という1つのセグメントがある。その中の1、0境界上の0を判断し、それを1に修正した後、当該1値と後の値0は、また新しい値境界を構成すると、後の値0に対応するフレームに対して上記の判断を続ける。本ステップでは1つのnをパラメータとして設置することができ、1つの値境界での前方または後方に最大にnフレームを連続的に判断し、すなわちnフレーム後に新しい値境界が生成されても、判断と修正を継続せず、nは予め設定された正の整数であり、例えば、8を取る。異なる人の異なる発音習慣に応じて、異なる話者に対して異なるn値を取ることができる。
【0033】
2023では、フレームごとに判断し、当該フレーム音声スペクトル特徴の前のM次元の最大値が予め設定された第1の閾値より小さい場合、当該フレームのUV特徴値を1に設置し、当該フレーム音声スペクトル特徴の前のM次元の最大値が予め設定された第2の閾値より大きい場合、当該フレームのUV特徴値を0に設置する。
【0034】
Mは予め設定された正の整数であり、例えば、20と取る。第2の閾値は第1の閾値より大きく、例えば、第1の閾値は2を取り、第2の閾値は2.5を取る。
【0035】
音声合成モデルはボコーダ特徴を出力する以外、テキストに対応する音響特徴を出力することもでき、音声スペクトル特徴を含む。その中の比較的に汎用的で一般的な音声スペクトル特徴はmel(メル)スペクトルである。
【0036】
melスペクトルを例とし、melスペクトルの値は0~4である。観察と研究した後に、有声音に対応するmelスペクトルの前の20次元の値が比較的大きく、無声音に対応するmelスペクトルの前の20次元の値が比較的小さい。したがって、melスペクトルの前の20次元の最大値が2より小さい場合、当該フレームは有声音である可能性が高いため、当該フレームのUV特徴値を1に設置する。当該フレームのUV特徴値自体が1である場合、変更しないように保持し、0である場合、それを1に修正する。melスペクトルの前の20次元の最大値が2.5より大きい場合、当該フレーム無声音である可能性が高いため、当該フレームのUV特徴値を0に設置する。
【0037】
melスペクトルの前の20次元の最大値が2以上であり、且つ2.5以下である場合、当該フレームのUV特徴値は変更しないように保持する。
【0038】
上記の図3に示す実施例で使用される実行順序は好ましい実行順序であり、最適なUV修正効果に達成することができる。しかし、本開示は上記の実行ステップと実行順序に限定されず、その中の一部または全部のステップのみを実行する場合、又は他の実行順序を使用する場合も、同様に本開示の保護範囲内である。
【0039】
さらに、いくつかの場合によって、ボコーダの合成能力は音声合成モデルによって出力されたボコーダ特徴より高く、例えば音声合成モジュールは、フレームシフトが10msのボコーダ特徴を出力するが、ボコーダが5ms特徴を合成する音質が10ms特徴より高いので、予め設定された補間倍数に従って、上記のステップ101で取得されたボコーダ特徴に対して線形補間処理を行うことができる。その中、補間倍数は、ボコーダの合成能力に基づいて予め設定することができ、上記の例では補間倍数を2倍に設置することができる。このような方式は、音声合成モジュールの計算量を減らし、後処理の線形補間によって10msの音声合成モジュールも5msの音声合成モジュールに近い効果に達成できることを実現する。
【0040】
また、通常、音声合成モデルをトレーニングする時、モデルトレーニングの難易度と精度を低減するために、トレーニング時にいくつかのタイプの特徴に対して正規化処理を行う。これらの正規化は、異なる話者または異なる放送スタイルに対することであってもよい。しかし、実際の音声合成プロセスでは、音声合成モデルによって出力された正規化のボコーダ特徴は、最終的にボコーダによって合成された音声効果に影響を与える。したがって、好ましい実施方式とし、ステップ202の後に、さらに、修正後のボコーダ特徴内の予め設定されたタイプの特徴シーケンスに対して逆正規化処理を行うことができる。その中、逆正規化処理は、音声合成モデルのトレーニングプロセス中に予め設定されたタイプの特徴シーケンスに対して行われる正規化に対応する。
【0041】
それ以外、正規化プロセス中に分散と平均値を適切に調整することもでき、高周波エネルギーと基本周波数の効果を向上させることができる。分散を調整すると、最終的に合成された音声がより透過させることができ、平均値を調整すると、最終的に合成された音声がより大きく明瞭ではっきりすることができる。
【0042】
上記の処理後のボコーダ特徴はボコーダに提供して音声合成を行った後、合成された音声品質を大幅に向上させることができる。上記のステップ203で使用されるボコーダタイプは、本開示に限定されず、例えば、worldボコーダなどを使用することができる。
【0043】
以下は実施例を組み合わせて図1に示す音声合成装置の実現を詳細に説明する。
【0044】
図4は本開示の実施例により提供される音声合成方法のフローチャートである。当該方法の実行主体は図1に示す音声合成装置である。当該装置は、ユーザ端末のアプリケーションに位置することができるか、又は端末のアプリケーションのプラグインまたはソフトウェア開発キット(Software Development Kit、SDK)などの機能ユニットに位置することもできるか、又は、サーバ側に位置することもでき、本発明の実施例はこれについて特に限定しない。図4に示すように、当該方法は以下のステップを含むことができ、
401では、合成しようとするテキストを取得する。
【0045】
402では、テキストから抽出された韻律特徴を取得する。
【0046】
403では、テキストと韻律特徴を音声合成モデルに入力して、ボコーダ特徴を取得する。
【0047】
本開示により提供される技術的解決策は、テキストから韻律特徴を抽出した後、音声合成モデルは韻律特徴を使用してテキストを組み合わせてボコーダ特徴を取得して、ボコーダがボコーダ特徴を直接使用して音声を合成することによって、音声合成技術の効率を向上させ、次いで高いリアルタイム率を確保することを分かることができる。
【0048】
以下は実施例を組み合わせ上記の各ステップに対して詳細に説明する。まず、上記のステップ401を詳細に説明する。
【0049】
本開示に関する合成しようとするテキストは、予め設定された内容であってもよく、例えば、起動語の内容、歓迎語の内容、特定のシナリオで固定放送の内容などである。例えば、ユーザ端末がある新しい地域に位置決めする時、「XX地域へようこそ」(「XX」はある具体的な地域名を表す)を放送する。また、例えば、ナビゲーションシナリオでのナビゲーションテキスト「前方XXXで左折」(「XXX」はある具体的な建物名を表す)などである。
【0050】
合成しようとするテキストは、第三者から取得されたテキスト内容であってもよく、例えば、第三者から取得されたニュース内容、文章内容などである。
【0051】
合成しようとするテキストは、ユーザとインタラクション中に、ユーザが入力した音声に応答して生成されたテキストであってもよい。例えば、ユーザが音声「XXXXはどこにありますか」を入力し、ユーザが入力した当該音声に応答して放送テキスト「XXXXは建設中路三号にある」を生成する。
【0052】
以下は実施例を組み合わせて上記のステップ402、すなわち「テキストから抽出された韻律特徴を取得する」を詳細に説明する。
【0053】
本開示の実施例では、韻律特徴は、韻律予測モデルによってテキストから抽出することができる。韻律予測モデルによってテキストから韻律特徴を抽出し、韻律特徴を言語合成モデルに出力する。言語合成モデルでテキストと韻律特徴を使用してボコーダ特徴を出力する。
【0054】
以下は韻律予測モデルの実現を詳細に説明する。図5aに示すように、韻律予測モデルは、主に第1のエンコーダと第1のデコーダを含む。なお、本開示に関する「第1」、「第2」などの表現は、例えば「第1のエンコーダ」、「第2のエンコーダ」、「第1のデコーダ」、「第2のデコーダ」、「第1の閾値」、「第2の閾値」などは、名称を区別するためにのみ使用され、追加の限定がない限り、数、順序、及び大きさの制限は備えられない。
【0055】
その中、第1のエンコーダは、テキストから言語特徴を抽出した後、言語特徴を第1のデコーダに出力する。第1のデコーダは、予測された前のフレームの韻律特徴と前記言語特徴を使用して、現在のフレームの韻律特徴を予測して取得する。
【0056】
具体的には、第1のエンコーダにテキストを入力し、まず、文字埋め込み処理を経て、次に、畳み込み層と双方向LSTM層を経た後に言語特徴を取得する。第2のデコーダは、1つの自己回帰ネットワークであり、予測された前のフレームの韻律特徴は、まず、Pre-net(前予測ネットワーク)を通過した後、pre-netの出力結果と言語特徴をスプライシングした後にLSTMに共に入力し、次に、線形予測層の処理を経て予測された韻律特徴を取得する。
【0057】
上記の方式に加えて、韻律予測モデルは、さらに、放送スタイルを組み合わせて韻律特徴の抽出を行うこともできる。この場合の韻律予測モデル構造は、図5bに示すようにすることができる。この時、第1のエンコーダは、テキストから言語特徴を抽出した後、放送スタイル特徴と言語特徴をスプライシングし、取得された第1のスプライシング特徴を第1のデコーダに入力する。放送スタイル特徴は、話者情報から抽出することができ、例えば、話者情報に対して埋め込み処理を行う。テキストから抽出することもでき、例えば、テキストのセマンティック情報、領域知識などから抽出する(この場合は図には示されていない)。第1のデコーダは、予測された前のフレームの韻律特徴と第1のスプライシング特徴を使用して、現在のフレームの韻律特徴を予測して取得する。このように、音声合成モデルが様々な放送スタイルの音声合成能力を備えることができる。
【0058】
上記の2つの構造は、本開示により提供される2つの実現方式であり、それ以外、他の方式を使用してテキストから韻律特徴を抽出することもできる。
【0059】
以下は実施例を組み合わせて上記のステップ403、すなわち「テキストと韻律特徴を音声合成モデルに入力して、ボコーダ特徴を取得する」を詳細に説明する。
【0060】
図6は本開示の実施例により提供される音声合成モデルの概略構造図である。図6に示すように、音声合成モデルは、第2のエンコーダ、第2のデコーダ、及び後予測ネットワークを含む。
【0061】
第2のエンコーダは、テキストから言語特徴を抽出した後、言語特徴と韻律特徴をスプライシングし、又は前記言語特徴、韻律特徴、及び話者特徴をスプライシングし、スプライシングされた第2のスプライシング特徴を第2のデコーダに出力し、
第2のデコーダは、予測された前のフレームの音響特徴、及び第2のスプライシング特徴を使用して、現在のフレームの音響特徴を予測して前記後予測ネットワークに出力し、前記音響特徴は音声スペクトル特徴を含む。
【0062】
後予測ネットワーク(Post-net)は、音響特徴を使用してボコーダ特徴を予測して取得する。
【0063】
図6に示すように、第2のエンコーダにテキストを入力し、まず、文字埋め込み処理を経て、次に、畳み込み層と双方向LSTM層を経た後に言語特徴を取得する。当該言語特徴とステップ402で取得された韻律特徴は、すなわち韻律予測モデルによって出力された韻律特徴をスプライシングした後に、第2のスプライシング特徴を取得する。さらに、話者情報に対して埋め込み処理を行った後に話者特徴を取得し、言語特徴、話者特徴、及び韻律特徴をスプライシングした後に第2のスプライシング特徴を取得することもでき、図6に示されるのはこのような好ましい方式である。
【0064】
第2のデコーダは、1つの自己回帰ネットワークであり、前のフレームの音響特徴がPre-net(前予測ネットワーク)を通過した後に取得された特徴と、注意力処理後の第2のスプライシング特徴をスプライシングし、第3のスプライシング特徴を取得する。第3のスプライシング特徴は、LSTM処理後に線形予測層に入力され、線形予測層から現在のフレームの音響特徴を予測して取得する。本開示の実施例に係る音響特徴は音声スペクトル特徴を含む。その中の比較的に汎用的で一般的な音声スペクトル特徴はmel(メル)スペクトルである。
【0065】
第2のデコーダは、実際には、1つの自己回帰ネットワークを使用して時系列予測を行ってmelスペクトルを取得し、第2のエンコーダでテキストの言語特徴、韻律特徴、話者特徴などを共にスプライシングして文脈特徴とし、次に、前のフレーム予測によって取得されたmelスペクトルを使用して文脈特徴を組み合わせて現在のフレームのmelスペクトルを予測し、順次に予測すると1つのmelスペクトルシーケンスを取得することができる。
【0066】
後予測ネットワークの構造は、図7に示すことができ、後予測ネットワークは、音響特徴をCBHG(Convolution bank+highway network+bidirectional GRU)モジュールを経て処理した後、次に、N個の予測モジュールの予測を経て、予測結果からボコーダ特徴を構成する。予測モジュールは、双方向GRU(Gate Recurrent Unit、ゲート付き回帰ユニット)と線形投影層を含むことができ、Nは正の整数である。例えば、図7に示すように、Nは4に設置する。SPエンベロープは、高周波数、中周波数、低周波数に分割され、1つの予測モジュールによってそれぞれ予測して出力され、他のエネルギー特徴、CAP特徴、LF0特徴、UV特徴などは、残りの1つの予測モジュールによって予測して出力される。最終的に出力されるすべてのこれらの特徴は、ボコーダ特徴を構成する。
【0067】
上記の音声合成と後処理方法により、音声合成の高いリアルタイム率と少量の計算量を確保し、オフライン音声合成に基礎を提供することができる。実験的な検証を経て、当該音声合成方法のエラー率は1000分の3より低く、携帯電話オフライン地図ナビゲーションなどの低いリソース要求シナリオの音声合成方法に適する。
【0068】
以下は実施例を組み合わせて音声合成モデルのトレーニング方法を詳細に説明する。図8aは本開示の実施例により提供される第1の音声合成モデルのトレーニング方法のフローチャートである。図8aに示すように、当該方法は、以下のステップを含むことができ、
801では、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた韻律特徴及びボコーダ特徴を含む。
【0069】
本実施例では、トレーニングサンプルを取得する方式は、音声から開始し、例えば、いくつかの特定の話者または特定のスタイルなどの音声を標準音声として取得することができる。当該標準音声に対して音声認識を行った後、音声認識結果をテキストサンプルとする。人工的に認識する方式で標準音声に対応するテキストを認識し、当該テキストをテキストサンプルとすることもできる。
【0070】
次に、標準音声からボコーダ特徴と韻律特徴を抽出し、抽出されたボコーダ特徴と韻律特徴を使用してテキストサンプルをラベリングする。音声からボコーダ特徴と韻律特徴を抽出するのは、現在、比較的成熟した技術であるため、ここでは詳しく説明しない。
【0071】
802では、テキストサンプルと、ラベリングされた韻律特徴を音声合成モデルの入力とし、ラベリングされたボコーダ特徴を音声合成モデルのターゲット出力とし、音声合成モデルをトレーニングする。
【0072】
このようなトレーニング方式は、図8bに示すように、実際には、テキストサンプルの韻律特徴とボコーダ特徴をすべてラベリングする。トレーニングプロセス中に、各反復において、テキストサンプルと韻律特徴を音声合成モデルに入力する。音声合成モデルは予測されたボコーダ特徴を出力した後、予測されたボコーダ特徴とラベリングされたボコーダ特徴との間の差異を最小化してトレーニングターゲットとする。具体的には、学習目標を使用して損失関数を予め設計し、次に、例えば、反復停止条件に達するまで、最急降下法などの方式を使用して音声合成モデルのモデルパラメータを反復的に更新することができる。反復停止条件は、例えば、モデルパラメータ収束と、損失関数の値が予め設定された要求を満たすことと、予め設定された反復回数の閾値に達するなどであってもよい。
【0073】
音声合成モデルの構造は、依然として、図6に示すように、本実施例のトレーニングプロセス中に、音声合成モデルにおける第2のエンコーダは、テキストサンプルから言語特徴を抽出した後、言語特徴とラベリングされた韻律特徴をスプライシングし、又は言語特徴、韻律特徴、及び話者特徴(話者特徴は標準音声から抽出する)をスプライシングし、スプライシングされた第2のスプライシング特徴を第2のデコーダに出力する。
【0074】
第2のデコーダは、予測された前のフレームの音響特徴、及び第2のスプライシング特徴を使用して、現在のフレームの音響特徴を予測して前記後予測ネットワークに出力し、音響特徴はmelスペクトルなどの音声スペクトル特徴を含む。
【0075】
後予測ネットワークは音響特徴を使用してボコーダ特徴を予測して取得する。後予測ネットワークの構造は、図7に示すように、後予測ネットワークが音響特徴をCBHGモジュールで処理した後、次に、N個の予測モジュールの予測を経て、予測結果からボコーダ特徴を構成し、予測モジュールは双方向GRUと線形投影層を含み、Nは正の整数であり、例えば、4を取る。SPエンベロープは、高周波数、中周波数、低周波数に分割され、1つの予測モジュールによってそれぞれ予測して出力され、他のエネルギー特徴、CAP特徴、LF0特徴、UV特徴などは、残りの1つの予測モジュールによって予測して出力される。最終的に出力されるすべてのこれらの特徴は、ボコーダ特徴を構成する。
【0076】
トレーニング終了後に取得された音声合成モデルは、上記音声合成方法の実施例に使用されて、合成しようとするテキストに対してボコーダ特徴の抽出を行うことを使用されることができる。
【0077】
図9aは本開示の実施例により提供される第2の音声合成モデルのトレーニング方法のフローチャートである。図9aに示すように、当該方法は、以下のステップを含むことができ、
901では、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた音響特徴及びボコーダ特徴を含む。
【0078】
本実施例では、トレーニングサンプルを取得する方式は上記実施例と類似し、音声から開始し、例えば、いくつかの特定の話者または特定のスタイルなどの音声を標準音声として取得することができる。当該標準音声に対して音声認識を行った後、音声認識結果をテキストサンプルとする。人工的に認識する方式で標準音声に対応するテキストを認識し、当該テキストをテキストサンプルとすることもできる。
【0079】
次に、標準音声からボコーダ特徴と音響特徴を抽出し、抽出されたボコーダ特徴と音響特徴を使用してテキストサンプルをラベリングする。音声からボコーダ特徴と音響特徴を抽出するのは、現在、比較的成熟した技術であるため、ここでは詳しく説明しない。
【0080】
902では、ラベリングされた音響特徴を韻律抽出モデルの入力とし、韻律抽出モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、韻律抽出モデルと音声合成モデルをトレーニングし、トレーニングされた音声合成モデルは、合成しようとするテキストのボコーダ特徴を取得するために用いられる。
【0081】
本実施例では、音声合成モデルをトレーニングするプロセスにおいて韻律抽出モデルを使用して補助トレーニングを行う。韻律抽出モデルは、音響特徴を入力した場合に韻律特徴を出力することができる。図9bに示すように、実際には、テキストサンプルの音響特徴とボコーダ特徴をすべてラベリングする。トレーニングプロセス中に、各反復において、すべてのラベリングされた音響特徴を韻律抽出モデルに入力し、韻律抽出モデルによって出力された韻律特徴と上記のテキストサンプルを音声合成モデルに入力する。音声合成モデルは予測されたボコーダ特徴を出力した後、予測されたボコーダ特徴とラベリングされたボコーダ特徴との間の差異を最小化してトレーニングターゲットとする。具体的には、学習目標を使用して損失関数を予め設計することができ、次に、例えば、反復停止条件に達するまで、最急降下法などの方式を使用して音声合成モデルと韻律抽出モデルのモデルパラメータを反復的に更新することができる。反復停止条件は、例えば、モデルパラメータ収束と、損失関数の値が予め設定された要求を満たすことと、予め設定された反復回数の閾値に達するなどであってもよい。
【0082】
音声合成モデルの構造及び原理は、前の実施例と同じであり、説明は省略する。以下は上記の韻律抽出モデルの構造を説明する。図9cは本開示の実施例により提供される韻律抽出モデルの概略構造図である。図9cに示すように、韻律抽出モデルは、畳み込み層、双方向GRU層、及び注意力層を含む。
【0083】
ラベリングされた音響特徴、例えばmelスペクトルは、畳み込み層と双方向GRU層を経た後、双方向GRU層によって出力された特徴と音声合成モデルの第2のエンコーダによって抽出された言語特徴を注意力層に入力して注意力処理を行い、韻律特徴を取得する。
【0084】
上記のトレーニングプロセス中に、韻律抽出モデルと音声合成モデルを共に共同トレーニングを行い、最終的にトレーニングされた音声合成モデルは、合成しようとするテキストのボコーダ特徴を取得するために用いられる。
【0085】
図10aは本開示の実施例により提供される第3の音声合成モデルのトレーニング方法のフローチャートである。図10aに示すように、当該方法は、以下のステップを含むことができ、
1001では、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされたボコーダ特徴を含む。
【0086】
本実施例では、トレーニングサンプルを取得する方式は上記実施例と類似し、音声から開始し、例えば、いくつかの特定の話者または特定のスタイルなどの音声を標準音声として取得することができる。当該標準音声に対して音声認識を行った後、音声認識結果をテキストサンプルとする。人工的に認識する方式で標準音声に対応するテキストを認識し、当該テキストをテキストサンプルとすることもできる。
【0087】
次に、標準音声からボコーダ特徴を抽出し、抽出されたボコーダ特徴を使用してテキストサンプルをラベリングする。音声からボコーダ特徴を抽出するのは、現在、比較的成熟した技術であるため、ここでは詳しく説明しない。
【0088】
1002では、テキストサンプルを韻律予測モデルの入力とし、韻律予測モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、韻律予測モデルと音声合成モデルをトレーニングし、トレーニングされた音声合成モデルは、合成しようとするテキストのボコーダ特徴を取得するために用いられる。
【0089】
本実施例では、音声合成モデルをトレーニングするプロセスにおいて韻律予測モデルを使用して共同トレーニングを行う。韻律予測モデルは、テキストを入力する場合に韻律特徴を出力することができる。図10bに示すように、テキストサンプルのボコーダ特徴のみをすべてラベリングする必要がある。トレーニングプロセス中に、各反復において、すべてのテキストサンプルを韻律予測モデルと音声合成モデルに入力する。韻律予測モデルによって出力された韻律特徴も、音声合成モデルに入力する。音声合成モデルは、テキストと韻律特徴を入力した場合に予測されたボコーダ特徴を出力し、予測されたボコーダ特徴とラベリングされたボコーダ特徴との間の差異を最小化してトレーニングターゲットとする。具体的には、学習目標を使用して損失関数を予め設計することができ、次に、例えば、反復停止条件に達するまで、最急降下法などの方式を使用して音声合成モデルと韻律予測モデルのモデルパラメータを反復的に更新する。反復停止条件は、例えば、モデルパラメータ収束と、損失関数の値が予め設定された要求を満たすことと、予め設定された反復回数の閾値に達するなどであってもよい。
【0090】
音声合成モデルの構造及び原理は、前の実施例と同じであり、韻律予測モデルの構造及び原理は、図5a、5bに示すように、第1のエンコーダと第1のデコーダを含む。
【0091】
第1のエンコーダは、テキストサンプルから言語特徴を抽出した後、言語特徴を第1のデコーダに出力し、第1のデコーダは、予測された前のフレームの韻律特徴と言語特徴を使用して、現在のフレームの韻律特徴を予測して取得する。
【0092】
具体的には、第1のエンコーダにおいてテキストサンプルを入力し、まず、文字埋め込み処理を経て、次に、畳み込み層と双方向LSTM層を経た後に言語特徴を取得する。第2のデコーダは、1つの自己回帰ネットワークであり、予測された前のフレームの韻律特徴は、まず、Pre-net(前予測ネットワーク)を通過した後、pre-netの出力結果と言語特徴をスプライシングした後にLSTMに共に入力し、次に、線形予測層の処理を経て予測された韻律特徴を取得する。
【0093】
又は、第1のデコーダがテキストサンプルから言語特徴を抽出した後、テキストサンプルから抽出された放送スタイル特徴と言語特徴をスプライシングし、取得された第1のスプライシング特徴を第1のデコーダに入力し、第1のデコーダは、予測された前のフレームの韻律特徴と第1のスプライシング特徴を使用して、現在のフレームの韻律特徴を予測して取得する。
【0094】
上記のトレーニングプロセス中に、韻律予測モデルと音声合成モデルに対して共に共同トレーニングを行い、最終的にトレーニングされた音声合成モデルは、合成しようとするテキストのボコーダ特徴を取得するために用いられる。
【0095】
図11aは本開示の実施例により提供される第4の音声合成モデルのトレーニング方法のフローチャートである。図11aに示すように、当該方法は、以下のステップを含むことができ、
1101では、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた音響特徴及びボコーダ特徴を含む。
【0096】
本実施例では、トレーニングサンプルを取得する方式は上記実施例と類似し、音声から開始し、例えば、いくつかの特定の話者または特定のスタイルなどの音声を標準音声として取得することができる。当該標準音声に対して音声認識を行った後、音声認識結果をテキストサンプルとする。人工的に認識する方式で標準音声に対応するテキストを認識し、当該テキストをテキストサンプルとすることもできる。
【0097】
次に、標準音声からボコーダ特徴と音響特徴を抽出し、抽出されたボコーダ特徴と音響特徴を使用してテキストサンプルをラベリングする。音声からボコーダ特徴と音響特徴を抽出するのは、現在、比較的成熟した技術であるため、ここでは詳しく説明しない。
【0098】
1102では、ラベリングされた音響特徴を韻律抽出モデルの入力とし、韻律抽出モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、テキストサンプルを韻律予測モデルの入力とし、韻律抽出モデルによって出力された韻律特徴を韻律予測モデルのターゲット出力とし、韻律予測モデルと、韻律抽出モデルと、音声合成モデルをトレーニングし、トレーニングされた音声合成モデルは、合成しようとするテキストのボコーダ特徴を取得するために用いられる。
【0099】
本実施例では、音声合成モデルをトレーニングするプロセスにおいて韻律抽出モデルと韻律予測モデルを使用して共同トレーニングを行う。韻律抽出モデルはラベリングされた音響特徴を入力した場合に韻律特徴を出力し、韻律予測モデルはテキストサンプルを入力した場合に韻律特徴を出力することができる。図11bに示すように、テキストサンプルのボコーダ特徴と音響特徴に対してすべてラベリングする必要がある。トレーニングプロセス中に、各反復において、すべてのテキストサンプルを韻律予測モデルと音声合成モデルに入力し、ラベリングされた音響特徴を韻律抽出モデルに入力する。韻律抽出モデルによって出力された韻律特徴も、音声合成モデルに入力する。音声合成モデルは、テキストと韻律特徴を入力した場合に予測されたボコーダ特徴を出力し、予測されたボコーダ特徴とラベリングされたボコーダ特徴との間の差異を最小化し、韻律予測モデルによって予測された韻律特徴と韻律抽出モデルによって抽出された韻律特徴との間の差異を最小化してトレーニングターゲットとする。具体的には、学習目標を使用して2つの損失関数を予め設計することができ、すなわち予測されたボコーダ特徴とラベリングされたボコーダ特徴との間の差異を最小化して損失関数L1を構築し、韻律予測モデルによって予測された韻律特徴と韻律抽出モデルによって抽出された韻律特徴との間の差異を最小化して損失関数L2を構築する。L1とL2を使用して全損失関数を構築し、当該全損失関数に基づいて、例えば、反復停止条件に達するまで、最急降下法などの方式を使用して音声合成モデルと韻律予測モデルのモデルパラメータを反復的に更新する。反復停止条件は、例えば、モデルパラメータ収束と、損失関数の値が予め設定された要求を満たすことと、予め設定された反復回数の閾値に達するなどであってもよい。
【0100】
上記の音声合成モデルは、トレーニングデータに対する要求が低く、通常、数百の文で商業的な安定的効果、表現力、及び流暢さを達成することができる。
【0101】
以上は、本開示により提供される方法に対する詳細な説明であり、以下は、実施例を組み合わせて本開示により提供される装置を詳細に説明する。
【0102】
図12は本開示の実施例により提供される音声処理装置の概略構造図である。当該音声処理装置は図1に示す後処理装置に設置することができ、図12に示すように、当該装置1200は、特徴取得ユニット1201、UV修正ユニット1202、及び特徴送信ユニット1203を含むことができる、線形補間ユニット1204、及び逆正規化ユニット1205をさらに含むこともできる。各構成ユニットの主な機能は、以下のようである。
特徴取得ユニット1201は、テキストに対して得られたボコーダ特徴を取得するために用いられる。
【0103】
UV修正ユニット1202は、ボコーダ特徴におけるエネルギー特徴及び/又は音声スペクトル特徴に基づいて、ボコーダ特徴におけるUV特徴に対して値修正を行うために用いられる。
【0104】
特徴送信ユニット1203は、合成された音声を取得するように、修正後のボコーダ特徴をボコーダに提供するために用いられる。
【0105】
1つの実現方式として、UV修正ユニット1202は、具体的には、ボコーダ特徴におけるUV特徴シーケンスの値変化境界上の値が1のフレームに対応するエネルギー特徴値が0より小さいか否かをそれぞれ判断し、そうである場合、当該フレームのUV特徴値を0に修正し、UV特徴シーケンスの値変化境界上の値が0のフレームに対応するエネルギー特徴値と、値が1の隣接フレームに対応するエネルギー特徴値との間の比率が予め設定された比率の閾値より大きいか否かをそれぞれ判断し、そうである場合、当該値が0のフレームのUV特徴値を1に修正するために用いられる。
【0106】
別の実現方式として、UV修正ユニット1202は、具体的には、各フレームについて、当該フレーム音声スペクトル特徴の前のM次元の最大値が予め設定された第1の閾値より小さい場合、当該フレームのUV特徴値を1に設置し、当該フレーム音声スペクトル特徴の前のM次元の最大値が予め設定された第2の閾値より大きい場合、当該フレームのUV特徴値を0に設置するために用いられ、Mは予め設定された正の整数であり、第2の閾値は第1の閾値より大きい。
【0107】
好ましい実施方式として、音声スペクトル特徴はメルスペクトル特徴であり、Mは20であり、第1の閾値は2であり、第2の閾値は2.5である。
【0108】
線形補間ユニット1204は、予め設定された補間倍数に従って、特徴取得ユニット1201によって取得されたボコーダ特徴に対して線形補間処理を行い、線形補間処理後のボコーダ特徴をUV修正ユニット1202に提供するために用いられる。
【0109】
逆正規化ユニット1205は、UV修正ユニット1202に対して修正した後のボコーダ特徴内の予め設定されたタイプの特徴シーケンスに対して逆正規化処理を行い、処理後のボコーダ特徴を特徴送信ユニット1203に提供するために用いられ、逆正規化処理は、音声合成モデルのトレーニングプロセス中に予め設定されたタイプの特徴シーケンスに対して行われる正規化処理に対応し、音声合成モデルは、テキストに対して得られたボコーダ特徴を取得するソースである。
【0110】
図13は開示の実施例により提供される音声合成装置の概略構造図である。すなわち図1に示す音声合成装置である。図13に示すように、当該装置1300は、テキスト取得ユニット1301、韻律抽出ユニット1302、及び音声合成ユニット1303を含むことができ、モデルトレーニングユニット1304をさらに含むこともできる。各構成ユニットの主な機能は、以下のようである。
テキスト取得ユニット1301は、合成しようとするテキストを取得するために用いられる。
【0111】
韻律抽出ユニット1302は、テキストから抽出された韻律特徴を取得するために用いられる。
【0112】
音声合成ユニット1303は、テキストと韻律特徴を音声合成モデルに入力して、ボコーダ特徴を取得するために用いられる。
【0113】
韻律抽出ユニット1302は、具体的には、テキストを韻律予測モデルに入力して、韻律特徴を取得するために用いられる。韻律予測モデルは、第1のエンコーダと第1のデコーダを含む。
【0114】
1つの実現方式として、第1のエンコーダは、テキストから言語特徴を抽出した後、言語特徴を第1のデコーダに出力するために用いられ、第1のデコーダは、予測された前のフレームの韻律特徴と言語特徴を使用して、現在のフレームの韻律特徴を予測して取得する。
【0115】
別の実現方式として、第1のデコーダは、テキストから言語特徴を抽出した後、テキストから抽出された放送スタイル特徴と言語特徴をスプライシングし、取得された第1のスプライシング特徴を第1のデコーダに入力し、第1のデコーダは予測された前のフレームの韻律特徴と第1のスプライシング特徴を使用して、現在のフレームの韻律特徴を予測して取得するために用いられる。
【0116】
音声合成モデルは、第2のエンコーダ、第2のデコーダ、及び後予測ネットワークを含むことができる。
【0117】
第2のエンコーダは、テキストから言語特徴を抽出した後、言語特徴と韻律特徴をスプライシングし、又は言語特徴、韻律特徴、及び話者特徴をスプライシングし、スプライシングされた第2のスプライシング特徴を第2のデコーダに出力するために用いられる。
【0118】
第2のデコーダは、予測された前のフレームの音響特徴と、第2のスプライシング特徴を使用して、現在のフレームの音響特徴を予測して後予測ネットワークに出力するために用いられ、音響特徴は音声スペクトル特徴を含む。
【0119】
後予測ネットワークは、音響特徴を使用してボコーダ特徴を予測して取得するために用いられる。
【0120】
1つの実現可能な方式として、第2のデコーダは、前のフレームの音響特徴が前予測ネットワークを通過した後に取得された特徴と、注意力処理後の第2のスプライシング特徴をスプライシングし、第3のスプライシング特徴を取得し、第3のスプライシング特徴は、長短期記憶ネットワークLSTMを経て処理した後に線形予測層に入力し、線形予測層から現在のフレームの音響特徴を予測して取得する。
【0121】
1つの実現可能な方式として、後予測ネットワークは、音響特徴がCBHGモジュールを経て処理した後、次に、N個の予測モジュールの予測を経て、予測結果からボコーダ特徴を構成し、予測モジュールは、双方向ゲート付き回帰ユニットGRUと線形投影層を含み、Nは正の整数である。
【0122】
上記のモデルトレーニングユニット1304は、以下のいくつかのトレーニング方式を使用することができるこれらに限定しない。
第1のトレーニング方式:モデルトレーニングユニット1304は、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた韻律特徴及びボコーダ特徴を含み、テキストサンプルと、ラベリングされた韻律特徴を音声合成モデルの入力とし、ラベリングされたボコーダ特徴を音声合成モデルのターゲット出力とし、音声合成モデルをトレーニングする。
【0123】
第2のトレーニング方式:モデルトレーニングユニット1304は、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた音響特徴及びボコーダ特徴を含み、ラベリングされた音響特徴を韻律抽出モデルの入力とし、韻律抽出モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、韻律抽出モデルと音声合成モデルをトレーニングする。
【0124】
第3のトレーニング方式:モデルトレーニングユニット1304は、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされたボコーダ特徴を含み、テキストサンプルを韻律予測モデルの入力とし、韻律予測モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、韻律予測モデルと音声合成モデルをトレーニングする。
【0125】
第4のトレーニング方式:モデルトレーニングユニット1304は、トレーニングサンプルを取得し、各トレーニングサンプルは、テキストサンプルとテキストサンプルにラベリングされた音響特徴及びボコーダ特徴を含み、ラベリングされた音響特徴を韻律抽出モデルの入力とし、韻律抽出モデルによって出力された韻律特徴とテキストサンプルを言語合成モデルの入力とし、ラベリングされたボコーダ特徴を言語合成モデルのターゲット出力とし、テキストサンプルを韻律予測モデルの入力とし、韻律抽出モデルによって出力された韻律特徴を韻律予測モデルのターゲット出力とし、韻律予測モデルと、韻律抽出モデルと、音声合成モデルをトレーニングする。
【0126】
上記の第2のトレーニング方式と第4のトレーニング方式に関する韻律抽出モデルは、畳み込み層、双方向GRU層、及び注意力層を含むことができる。
【0127】
ラベリングされた音響特徴は、畳み込み層と双方向GRU層を経た後、取得された特徴と音声合成モデルにおける第2のエンコーダによって抽出された言語特徴を注意力層に入力して注意力処理を行い、韻律特徴を取得する。
【0128】
上記の4つの方式では、モデルトレーニングユニット1304は、標準音声を取得し、標準音声に対応するテキストをテキストサンプルとして決定することができる。標準音声から音響特徴とボコーダ特徴のうちの少なくとも1つをテキストサンプルとして抽出してラベリングする。テキストサンプルから韻律特徴を抽出してテキストサンプルをラベリングする。
【0129】
本明細書の各実施例は、すべて漸進的な方式を使用して説明し、各実施例間の同一および類似の部分は、互いに参照すればよく、各実施例は、すべて他の実施例との違いについて重点的に説明する。特に、装置の実施例は、方法の実施例に基本的に類似するため、説明は比較的に簡単であり、関連するところは、方法の実施例の部分の説明を参照すればよい。
【0130】
本開示の技術案において、関するユーザ個人情報の取得、記憶、応用などは、すべて関連する法律および規定を満たし、公序良俗に違反しない。
【0131】
本開示の実施例によれば、本開示は、電子機器、読み取り可能な記憶媒体、及びコンピュータプログラム製品をさらに提供する。
【0132】
図14に示すように、本開示の実施例に係る音声処理方法の電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様の計算デバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0133】
図14に示すように、機器1400は計算ユニット1401を含み、計算ユニット1401は、読み取り専用メモリ(ROM)1402に記憶されているコンピュータプログラムまたは記憶ユニット1408からランダムアクセスメモリ(RAM)1403にローディングされたコンピュータプログラムに基づいて、様々な適切な動作と処理を実行することができる。RAM1403には、機器1400が動作するに必要な様々なプログラムとデータも記憶することができる。計算ユニット1401、ROM1402、およびRAM1403は、バス1404を介してお互いに接続される。入出力(I/O)インターフェース1405もバス1404に接続される。
【0134】
機器1400内の複数のコンポーネントは、I/Oインターフェース1405に接続されており、キーボード、マウスなどの入力ユニット1406と、様々なタイプのディスプレイ、スピーカなどの出力ユニット1407と、ディスク、光ディスクなどの記憶ユニット1408と、およびネットワークカード、モデム、無線通信トランシーバなどの通信ユニット1409と、を含む。通信ユニット1409は、機器1400が、インターネットなどのコンピュータネットワーク、および/または様々な電気通信ネットワークを介して他の機器と情報/データを交換することを可能にする。
【0135】
計算ユニット1401は、様々な処理と計算能力を備える汎用および/または専用の処理コンポーネントである。計算ユニット1401のいくつかの例は、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、様々な機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)、および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット1401は、音声処理方法などの上記の様々な方法と処理を実行する。例えば、いくつかの実施例では、音声処理方法は、記憶ユニット1408などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現することができる。
【0136】
いくつかの実施例では、コンピュータプログラムの一部または全部は、ROM1402および/または通信ユニット1409を介して機器1400にローディングおよび/またはインストールされる。コンピュータプログラムがRAM1403にローディングされて計算ユニット1401によって実行される場合、上記の音声処理方法の一つまたは複数のステップを実行することができる。代替的に、他の実施例では、計算ユニット1401は、他の任意の適切な方式(例えば、ファームウェアによって)を介して音声処理方法を実行するように構成されることができる。
【0137】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SOC)、ローディングプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0138】
本開示の方法を実施するためのプログラムコードは、一つまたは複数のプログラミング言語の任意の組み合わせを使用して作成することができる。これらのプログラムコードは、プログラムコードがプロセッサまたはコントローラによって実行される時にフローチャートおよび/またはブロック図に規定された機能/動作が実施されるように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサまたはコントローラに提供することができる。プログラムコードは、完全に機械上で実行されたり、部分的に機械上で実行されたり、独立したソフトウェアパッケージとして部分的に機械上で実行され、部分的にリモート機械上実行されたり、または完全にリモート機械またはサーバ上で実行されたりすることができる。
【0139】
本開示の文脈において、機械読み取り可能な媒体は、命令実行システム、装置、または機器の使用、または命令実行システム、装置または機器と組み合わせて使用するプログラムを含むか、または記憶することができる有形の媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線、または半導体システム、装置または機器、または上記の内容の任意の適切な組み合わせを含むが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、一つまたは複数のワイヤに基づく電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM またはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶装置、磁気記憶装置、または上記の内容の任意の適切な組み合わせを含む。
【0140】
ユーザとのインタラクションを提供するために、ここで説明されているシステム及び技術をコンピュータ上で実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0141】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0142】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。サーバは、クラウドサーバであってもよく、クラウド計算またはクラウドホストとも呼ばれ、クラウド計算サービスシステムの中の一つのホスト製品であり、従来の物理ホストと仮想プライベートサーバ(VPs、VI irtual Private Server)サービスに、存在する管理困難度が高く、業務拡張性が弱い欠陥を解決する。サーバは、分散システムのサーバであってもよく、またはブロックチェーンを組み合わせるサーバであってもよい。
【0143】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0144】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。
図1
図2
図3
図4
図5a
図5b
図6
図7
図8a
図8b
図9a
図9b
図9c
図10a
図10b
図11a
図11b
図12
図13
図14