(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024134928
(43)【公開日】2024-10-04
(54)【発明の名称】音声合成モデル学習装置、音声合成装置及びプログラム
(51)【国際特許分類】
G10L 13/06 20130101AFI20240927BHJP
G10L 21/043 20130101ALI20240927BHJP
G10L 21/0316 20130101ALI20240927BHJP
G10L 21/003 20130101ALI20240927BHJP
【FI】
G10L13/06 230A
G10L21/043
G10L21/0316
G10L21/003
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023045381
(22)【出願日】2023-03-22
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(71)【出願人】
【識別番号】591053926
【氏名又は名称】一般財団法人NHKエンジニアリングシステム
(74)【代理人】
【識別番号】100141139
【弁理士】
【氏名又は名称】及川 周
(74)【代理人】
【識別番号】100171446
【弁理士】
【氏名又は名称】高田 尚幸
(74)【代理人】
【識別番号】100114937
【弁理士】
【氏名又は名称】松本 裕幸
(74)【代理人】
【識別番号】100171930
【弁理士】
【氏名又は名称】木下 郁一郎
(72)【発明者】
【氏名】清山 信正
(72)【発明者】
【氏名】今井 篤
(72)【発明者】
【氏名】熊野 正
(57)【要約】
【課題】発話全体に所望の韻律制御が行われた任意のテキストの合成音を高品質かつ低遅延で生成する。
【解決手段】音声変換部は、発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行った拡張音声信号を生成する。タグ付与部は、発話のテキストデータに韻律制御を表すテキストデータのタグを付与して、拡張音声信号それぞれに対応した学習用入力ラベルを生成する。モデル学習部は、対応する拡張音声信号と学習用入力ラベルとの組を用いて音声合成モデルを学習する。音声合成部は、学習された音声合成モデルに、複数の韻律制御のうち所望の韻律制御のタグが付与された任意の発話内容のテキストデータである入力ラベルを入力して音声信号を得る。
【選択図】
図1
【特許請求の範囲】
【請求項1】
発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行った拡張音声信号を生成する音声変換部と、
前記発話のテキストデータに前記拡張音声信号の生成のため前記音声信号に行われた前記韻律制御を表すテキストデータのタグを付与して、前記拡張音声信号それぞれに対応した学習用入力ラベルを生成するタグ付与部と、
対応する前記拡張音声信号と前記学習用入力ラベルとの組を用いて、前記複数の韻律制御のうち所望の韻律制御を表すタグが付与された任意の発話内容のテキストデータを入力し、入力された前記テキストデータに対応した音声信号を出力する音声合成モデルを学習するモデル学習部と、
を備える音声合成モデル学習装置。
【請求項2】
前記韻律制御の種類は、話速変換と、音量変換と、ピッチ変換と、抑揚変換とのうち一以上である、
請求項1に記載の音声合成モデル学習装置。
【請求項3】
前記タグ付与部は、前記発話のテキストデータに、前記韻律制御の単位の文又は句毎に前記タグを付与する、
請求項1又は請求項2に記載の音声合成モデル学習装置。
【請求項4】
入力されたテキストデータに対応した音声信号を出力する音声合成モデルであって、発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行って得られた拡張音声信号と、前記発話のテキストデータに前記拡張音声信号の生成のため前記音声信号に行われた前記韻律制御を表すテキストデータのタグを付与した学習用入力ラベルとを用いて学習された前記音声合成モデルに、前記複数の韻律制御のうち所望の韻律制御のタグが付与された任意の発話内容のテキストデータである入力ラベルを入力し、入力された前記入力ラベルに対応した音声信号を得る音声合成部、
を備える音声合成装置。
【請求項5】
前記韻律制御の種類は、話速変換と、音量変換と、ピッチ変換と、抑揚変換とのうち一以上である、
請求項4に記載の音声合成装置。
【請求項6】
前記発話内容のテキストデータに、前記韻律制御の単位の文又は句毎に前記所望の韻律制御のタグを付与して前記入力ラベルを生成するタグ付与部をさらに備える、
請求項4又は請求項5に記載の音声合成装置。
【請求項7】
対応する前記拡張音声信号と前記学習用入力ラベルとの組を用いて前記音声合成モデルを学習する学習部をさらに備える、
請求項4に記載の音声合成装置。
【請求項8】
コンピュータを、
請求項1に記載の音声合成モデル学習装置として機能させるためのプログラム。
【請求項9】
コンピュータを、
請求項4に記載の音声合成装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声合成モデル学習装置、音声合成装置及びプログラムに関する。
【背景技術】
【0002】
従来、対応するテキストと音声信号との組に基づいて深層学習(DL:Deep Learning)により統計モデルを学習し、学習した統計モデルを用いて任意のテキストに対する合成音声を得る技術がある(例えば、特許文献1参照)。この技術では、読み方を表す文字又は文字列と、韻律を表す韻律記号と、発話に与える特徴を表す発話スタイル記号とを用いたテキストデータを統計モデルの入力ラベルとすることにより、任意の発話テキストに対する所望の発話スタイルの合成音声信号を得る。
【0003】
また、従来、音声を分析して所望の倍率で話速を変換する技術がある(例えば、特許文献2参照)。この技術では、音声をフレーム単位で音響分析して無音/有音の区間に判別し、有音の区間についてはさらに無声/有声の区間に判別し、判別結果を利用して、所望の倍率に応じて話速を変更した変換音声を得る。
【0004】
また、従来、音量を変更する技術がある(例えば、非特許文献1参照)。この技術では、所望の音量に変更した変換音声を得る。
【0005】
また、従来、音声信号の声質変換を行う技術がある(例えば、特許文献3参照)。この技術では、音声信号から算出された周波数特性やスペクトル包絡に基づいて、声質変換処理が施された音声信号を得る。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2020-034883号公報
【特許文献2】特許第6224325号公報
【特許文献3】特許第6616962号公報
【非特許文献】
【0007】
【非特許文献1】"SoX - Sound eXchange",2015年,[online],[2023年3月1日検索],インターネット<URL:https://sox.sourceforge.net/>
【発明の概要】
【発明が解決しようとする課題】
【0008】
特許文献1の技術では、発話全体に与える特徴は、感情、発話スタイル、又は、話者であり、韻律制御を対象としていない。特許文献1の技術を利用して発話全体に韻律制御された音声を得るには、特許文献1の方法で得られる合成音に対して、非特許文献1、特許文献2、3の技術を用いて、所望の種類の音声変換処理を所望の倍率で実施する必要がある。しかしながら、合成音を音声変換処理した場合、音響分析誤りによる品質劣化が生じる可能性があることに加え、音声変換処理による遅延が生じる。
【0009】
このように、品質劣化および音声変換処理による遅延を伴わずに、発話全体に所望の韻律制御を行った任意テキストの合成音声信号を求めることは困難であり、この問題を解決する方法はなかった。
【0010】
本発明は、このような事情を考慮してなされたものであり、発話全体に所望の韻律制御が行われた任意テキストの合成音を高品質かつ低遅延で生成することができる音声合成モデル学習装置、音声合成装置及びプログラムを提供する。
【課題を解決するための手段】
【0011】
[1]本発明の一態様は、発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行った拡張音声信号を生成する音声変換部と、前記発話のテキストデータに前記拡張音声信号の生成のため前記音声信号に行われた前記韻律制御を表すテキストデータのタグを付与して、前記拡張音声信号それぞれに対応した学習用入力ラベルを生成するタグ付与部と、対応する前記拡張音声信号と前記学習用入力ラベルとの組を用いて、前記複数の韻律制御のうち所望の韻律制御を表すタグが付与された任意の発話内容のテキストデータを入力し、入力された前記テキストデータに対応した音声信号を出力する音声合成モデルを学習するモデル学習部と、を備える音声合成モデル学習装置である。
【0012】
[2]本発明の一態様は、上述の音声合成モデル学習装置であって、前記韻律制御の種類は、話速変換と、音量変換と、ピッチ変換と、抑揚変換とのうち一以上である。
【0013】
[3]本発明の一態様は、上述の音声合成モデル学習装置であって、前記タグ付与部は、前記発話内容のテキストデータに、前記韻律制御の単位の文又は句毎に前記タグを付与する。
【0014】
[4]本発明の一態様は、入力されたテキストデータに対応した音声信号を出力する音声合成モデルであって、発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行って得られた拡張音声信号と、前記発話のテキストデータに前記拡張音声信号の生成のため前記音声信号に行われた前記韻律制御を表すテキストデータのタグを付与した学習用入力ラベルとを用いて学習された前記音声合成モデルに、前記複数の韻律制御のうち所望の韻律制御のタグが付与された任意の発話内容のテキストデータである入力ラベルを入力し、入力された前記入力ラベルに対応した音声信号を得る音声合成部、を備える音声合成装置である。
【0015】
[5]本発明の一態様は、上述の音声合成装置であって、前記韻律制御の種類は、話速変換と、音量変換と、ピッチ変換と、抑揚変換とのうち一以上である。
【0016】
[6]本発明の一態様は、上述の音声合成装置であって、前記発話内容のテキストデータに、前記韻律制御の単位の文又は句毎に前記所望の韻律制御のタグを付与して前記入力ラベルを生成するタグ付与部をさらに備える。
【0017】
[7]本発明の一態様は、上述の音声合成装置であって、対応する前記拡張音声信号と前記学習用入力ラベルとの組を用いて前記音声合成モデルを学習する学習部をさらに備える。
【0018】
[8]本発明の一態様は、コンピュータを、上述した音声合成モデル学習装置として機能させるためのプログラムである。
【0019】
[9]本発明の一態様は、コンピュータを、上述した音声合成装置として機能させるためのプログラムである。
【発明の効果】
【0020】
本発明によれば、所望の韻律制御が行われた任意テキストの合成音を高品質かつ低遅延で生成することが可能となる。
【図面の簡単な説明】
【0021】
【
図1】本発明の実施形態による音声合成装置の動作概要を示す図である。
【
図2】同実施形態による音声合成装置の機能ブロック図である。
【
図3】同実施形態による入力ラベルの例を示す図である。
【
図4】同実施形態による音声合成装置の学習処理を示すフロー図である。
【
図5】同実施形態による音声合成装置の音声合成処理を示すフロー図である。
【
図9】同実施形態による音声合成装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【0022】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
【0023】
図1は、本発明の一実施形態による音声合成装置の動作概要を示す図である。本実施形態の音声合成装置は、まず、音声合成モデルの学習処理を行う。音声合成モデルは、テキストデータの入力ラベルを入力し、入力された入力ラベルに対応した推定の音声信号を出力する統計モデルである。学習処理の際は、事前に、学習用データとして音声コーパスを用意する。音声コーパスは、対応する音声信号と発話テキストとの組を複数含む。発話テキストは、対応する音声信号の発話内容が記述されたテキストデータである。音声合成装置は、音声コーパスに韻律制御を行って学習用データを拡張する。すなわち、音声合成装置は、音声コーパスに含まれる原音の音声信号に音声変換処理を施すことにより、1つの音声信号から種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行った音声信号を生成する。韻律制御の種類は、例えば、話速変換、音量変換、ピッチ変換、抑揚変換である。また、韻律制御の倍率は、離散値である。原音の音声信号に韻律制御を行って得られた音声信号を、拡張音声信号と記載する。音声合成装置は、発話テキストに、拡張音声信号の生成時に原音の音声信号に対して行った韻律制御の種類及び倍率を表すタグを付加し、学習用の入力ラベルを生成する。音声合成装置は、拡張音声信号と学習用の入力ラベルとの組を用いて、音声合成モデルを学習する。
【0024】
音声信号の合成時、本実施形態の音声合成装置は、音声合成用テキストを入力する。音声合成用テキストは、任意の発話内容を記述したテキストデータである。音声合成装置は、音声合成用テキストに、所望の種類及び所望の倍率の韻律制御のタグを付与した音声合成用の入力ラベルを生成する。音声合成装置は、生成した音声合成用入力ラベルを、事前に学習した音声合成モデルに入力することにより、推定の音声信号を出力として得る。これにより、音声合成装置は、任意の発話内容に、所望の韻律制御を施した品質の良い音声信号を、音声変換処理による遅延を伴うことなく生成することができる。なお、音声合成モデルの学習を音声合成モデル学習装置が行い、音声信号の合成を音声合成装置が行ってもよい。
【0025】
図2は、本実施形態による音声合成装置1の構成を示すブロック図である。
図2に示す音声合成装置1は、音声合成モデル学習装置としても機能する。音声合成装置1は、例えば、コンピュータ装置により実現される。音声合成装置1は、入力部10と、モデル記憶部20と、学習部30と、合成部40と、出力部50とを備える。
【0026】
入力部10は、データを取得し、取得したデータを他の機能部へ入力する。入力部10は、例えば、コンピュータ読み取り可能な記録媒体からデータを読み出してもよく、音声合成装置1と接続される他の装置からデータを受信又は読み出してもよい。また、入力部10は、キーボード、ポインティングデバイス(マウス、タブレット等)、ボタン、タッチパネル等の既存の入力装置をユーザが操作することにより入力されたデータを取得してもよい。入力部10は、学習用データ入力部11及び合成用データ入力部12を有する。学習用データ入力部11は、音声コーパスを取得し、学習部30に入力する。音声コーパスは、音声信号と発話テキストとの組を複数含む。合成用データ入力部12は、音声合成用テキストを取得し、合成部40に入力する。モデル記憶部20は、入力ラベルに対応した推定の音声信号を出力する音声合成モデルを記憶する。
【0027】
学習部30は、音声合成モデルを学習する。学習部30は、学習用データ記憶部31と、音声変換部32と、タグ付与部33と、モデル学習部34とを有する。学習用データ記憶部31は、学習用データ入力部11から入力された音声コーパスを記憶する。音声変換部32は、音声コーパスの音声信号に音声変換処理を施すことにより、複数の韻律制御それぞれが行われた拡張音声信号を生成する。タグ付与部33は、音声コーパスの発話テキストに、音声変換部32が音声信号に行った韻律制御の種類及び倍率を表すタグを付加し、発話テキストを拡張した学習用入力ラベルを生成する。モデル学習部34は、拡張音声信号と学習用入力ラベルとの組を用いて、音声合成モデルを学習する。モデル学習部34は、学習した音声合成モデルをモデル記憶部20に格納する。
【0028】
合成部40は、任意のテキストの発話に所望の韻律制御が行われた音声信号を生成する。合成部40は、タグ付与部41と、音声合成部42とを有する。タグ付与部41は、合成用データ入力部12から入力された音声合成用テキストに、所望の韻律制御の種類及び倍率の組み合わせを表すタグを付加し、音声合成用入力ラベルを生成する。音声合成部42は、学習部30が学習した音声合成モデルに、タグ付与部41が生成した音声合成用入力ラベルを入力することにより、推定の音声信号を得る。出力部50は、音声合成部42が生成した音声信号を出力する。出力は、スピーカからの出力でもよく、記録媒体への記録でもよく、音声合成装置1に接続されている他の装置などへの出力でもよい。
【0029】
図3は、発話内容のテキストと、音声合成モデルの入力ラベルの例を示す図である。ここでは、タグ付与部33が発話テキストとしてテキストTを取得した場合を例に説明する。テキストTは、日本語の漢字仮名混じりのテキストデータである。タグ付与部33は、テキストTの文の先頭又は句の先頭に韻律制御を表すテキストデータのタグを付与し、タグ付きテキストTa又はタグ付きテキストTbを生成する。タグには、読みを表す文字、文字列又は記号とは異なる文字、文字列又は記号が用いられる。本実施形態では、韻律制御を表すタグは、韻律制御の種類をx、倍率をyとした場合、「<x_y>」と記述される。話速変換の場合はxに「s」が設定され、音量変換の場合はxに「e」が設定され、ピッチ変換の場合はxに「p」が設定され、抑揚変換の場合はxに「i」が設定され、原音の場合はxに「o」が設定される。また、倍率yには、離散値が設定される。なお、倍率yの範囲や、その範囲内における離散値は任意に設定可能である。
【0030】
タグ付きテキストTaは、文単位で話速変換倍率を1.2に設定する場合の例を示す。文単位で韻律制御を行う場合、タグ付与部33は、テキストTの文の先頭に、韻律制御の種類及び倍率を表すタグ「<s_1.2>」を付加してタグ付きテキストTaを生成する。タグ付与部33は、例えば、形態素解析等を行って、タグ付きテキストTaに含まれる漢字仮名混じりのテキストデータを、読みを表す文字、文字列又は記号に変換して学習用の入力ラベルLaを作成する。
【0031】
一方、タグ付きテキストTbは、各句のピッチ変換倍率を0.8に設定する場合の例を示す。句単位で韻律制御を行う場合、タグ付与部33は、テキストTの各句の先頭に、その句に行う韻律制御の種類及び倍率を表すタグ「<p_0.8>」を付加してタグ付きテキストTbを生成する。タグ付与部33は、例えば、形態素解析等を行って、タグ付きテキストTbに含まれる漢字仮名混じりのテキストデータを、読みを表す文字、文字列又は記号に変換して学習用の入力ラベルLbを作成する。
【0032】
図3では、入力ラベルLa、Lbに読みを表す文字として片仮名を用いているが、平仮名、アルファベット、音素記号などを用いてもよい。また、漢字仮名混じりのテキストTに代えて、読みを表す文字、文字列又は記号により記述されたテキストデータをテキストTとして用いてもよい。この場合、タグ付与部33は、テキストTにタグを付与することにより、形態素解析を行わずに入力ラベルLa又は入力ラベルLbを作成できる。また、タグ付与部33は、漢字仮名混じりのテキストTに形態素解析を行って読みを表す文字、文字列又は記号により記述されたテキストデータ作成した後、タグを付与して入力ラベルLa又は入力ラベルLbを作成してもよい。
【0033】
音声合成時、タグ付与部41は、タグ付与部33と同様の処理により、テキストTのように記述された漢字仮名混じりの音声合成用テキストの文の先頭又は句の先頭に所望の韻律制御を表すタグを付与し、漢字仮名混じりのテキストデータを読みを表す文字のテキストデータに変換して入力ラベルLa又は入力ラベルLbのように記述された音声合成用入力ラベルを生成する。
【0034】
なお、入力ラベルLa、Lbは、中間言語で記述されたテキストデータに、韻律制御の種類及び倍率を表すタグを付与したものであってもよい。中間言語は、特許文献1に記載のように、読みを表す文字、文字列又は記号と、韻律記号とにより記述される。韻律記号には、読みを表す文字、文字列又は記号、及び、タグを表す文字、文字列又は記号とは異なる記号が用いられる。例えば、中間言語に読みを表す仮名と韻律記号とを用いる場合、韻律記号にはアクセント上昇記号を表す「’」、アクセント下降記号を表す「\」、アクセント句の区切りを表す「/」、フレーズの区切りを表す「#」、通常の文末を表す「=」、疑問の文末を表す「?」、ポーズを表す「$%」などを用いることができる。例えば、中間言語は、「ア’ラユ\ル#ゲ’ンジツオ$%」のように記述される。なお、これらの韻律記号は一例であり、他の記号を用いてもよい。
【0035】
続いて、音声合成装置1の処理の例を説明する。
図4は、音声合成装置1の学習処理を示すフロー図である。音声合成装置1の学習用データ入力部11は、音声信号と発話テキストの組からなる音声コーパスを取得し、学習部30に入力する(ステップS11)。学習部30の学習用データ記憶部31は、入力された音声コーパスを記憶する。例えば、音声信号は、モノラルであり、標本化周波数22.050kHz、ビット数16bitで標本化されている。
【0036】
学習部30は、所望の種類および所望の倍率の韻律制御により音声コーパスのデータ拡張を行う。韻律制御の種類には、話速変換、音量変換、ピッチ変換、抑揚変換の4種類が用いられる。ここでは、韻律制御の倍率には、各韻律制御の種類に対して0.5、0.6、0.7、0.8、0.9、1.2、1.4、1.6、1.8、2.0の10段階を用い、全ての韻律制御の種類に共通して1.0を用いる。つまり、学習部30は、4種類の韻律制御と10段階の倍率との組み合わせによる40個の学習用データを作成する。そして、学習部30は、これら40個の学習用データに、共通の倍率1.0の1個の学習用データを加えることにより、一つの音声信号を41個の学習用データに拡張する。なお、この中でも音声変換処理による品質劣化を勘案すると、韻律制御の倍率の実用的な範囲は0.8~1.4である。
【0037】
学習部30は、音声コーパスの音声信号と発話テキストとの組それぞれについて、以下のステップS12~ステップS14の処理を行う。n組目(n=1,2,…)の音声信号及び発話テキストをそれぞれ、音声信号Vn及び発話テキストTnと記載する。学習部30は、ステップS12の処理とステップS13の処理とを並行して行ってもよく、ステップS13の処理をステップS12の処理よりも先に行ってもよい。
【0038】
音声変換部32は、音声コーパスの音声信号Vnに音声変換処理を施し、話速変換(x=s)、音量変換(x=e)、ピッチ変換(x=p)、抑揚変換(x=i)の4つの種類xそれぞれについて、倍率yが0.5、0.6、0.7、0.8、0.9、1.2、1.4、1.6、1.8、2.0の10段階の拡張音声信号Vn(x_y)を作成する(ステップS12)。これにより、40個の拡張音声信号Vn(x_y)と、原音の音声信号Vnとを合わせて41個の学習用音声信号が得られる。
【0039】
タグ付与部33は、原音の音声信号Vnに対応した発話テキストTnの文の先頭又は各句の先頭に、40個の拡張音声信号Vn(x_y)それぞれに施された韻律制御の種類x及び倍率yを表すタグ「<x_y>」を付与し、タグ付きテキストTn(x_y)を生成する。例えば、話速変換1.4倍の場合のタグは「<s_1.4>」であり、音量変換0.8倍の場合のタグは「<e_0.8>」であり、ピッチ変換1.2倍の場合のタグは「<p_1.2>」であり、抑揚変換0.9倍の場合のタグは「<i_0.9>」である。また、タグ付与部33は、発話テキストTnにタグ「<o_1.0>」を付与し、原音の音声信号Vnに対応したタグ付きテキストTn(o_1.0)を生成する。なお、各文の先頭にタグを付与するか、各句の先頭にタグを付与するかは、音声コーパス全体で共通とする。タグ付きテキストTn(x_y)及びTn(o_1.0)は、
図3のタグ付きテキストTa又はタグ付きテキストTbと同様に記述される。
【0040】
タグ付与部33は、タグ付きテキストTn(x_y)及びタグ付きテキストTn(o_1.0)のそれぞれに含まれる発話が漢字仮名混じりのテキストである場合、その漢字仮名混じりのテキストを形態素解析し、読みを表す文字、文字列又は記号に変換する。これにより、タグ付きテキストTn(x_y)から入力ラベルLn(x_y)が生成され、タグ付きテキストTn(o_1.0)から入力ラベルLn(o_1.0)が生成される(ステップS13)。入力ラベルLn(x_y)及び入力ラベルLn(o_1.0)は、
図3の入力ラベルLa又は入力ラベルLbと同様に記述される。タグ付与部33は、タグ付きテキストTn(x_y)及びタグ付きテキストTn(o_1.0)のそれぞれに含まれる漢字仮名混じりのテキストを形態素解析して中間言語に変換し、入力ラベルLn(x_y)及び入力ラベルLn(o_1.0)を生成してもよい。
【0041】
学習用データ記憶部31は、40個の拡張音声信号Vn(x_y)と入力ラベルLn(x_y)との組と、原音の音声信号Vnと入力ラベルLn(o_1.0)との組とを、学習用音声信号と学習用入力ラベルとからなる41個の学習用データとして記憶する(ステップS14)。
【0042】
モデル学習部34は、学習用データ記憶部31に記憶された学習用データを用いて、音声合成モデルを学習する(ステップS15)。例えば、モデル学習部34は、学習用データ全体のうち、8割の音声コーパスから作成された学習用データを音声合成モデルの訓練用に、1割の音声コーパスから作成された学習用データを訓練パラメータ調整用に、1割の音声コーパスから作成された学習用データを音声合成モデルの評価用に使用して、音声合成モデルとして用いる統計モデルを学習する。この統計モデルの学習には、以下の参考文献1に記載された方法を利用することができる。
【0043】
(参考文献1)ESPnet,[2023年3月1日検索],インターネット<URL:https://github.com/espnet/espnet
【0044】
音声合成モデルには、テキストから音声信号を推定するモデル(T2W:Text to Wave)の1段階の構造を用いてもよく、テキストから音響特徴量を推定する音響特徴量推定モデル(T2M:Text to Mel-Spectrogram)と、音響特徴量推定モデルにより推定された音響特徴量から音声信号を推定する音声信号推定モデル(M2W:Mel-Spectrogram to Wav)とからなる2段階の構造を用いてもよい。
【0045】
モデル学習部34は、音声合成モデルがT2Wモデルの場合、学習用入力ラベルを入力に、学習用入力ラベルに対応した学習用音声信号を出力に用いて学習を行う。モデル学習部34は、音声合成モデルがT2Mモデル及びM2Wモデルの2段階の構造の場合、学習用入力ラベルを入力に、学習用入力ラベルに対応した学習用音声信号から算出した音響特徴量を出力に用いてT2Mモデルを学習し、学習用音声信号から算出した音響特徴量を入力に、その学習用音声信号を出力としてM2Wモデルを学習する。あるいは、モデル学習部34は、学習用入力ラベルを入力に、学習用入力ラベルに対応した学習用音声信号から算出した音響特徴量を出力に用いてT2Mモデルを先に学習した後、学習したT2Mモデルに学習用入力ラベルを入力して得られた音響特徴量を入力に、学習用入力ラベルに対応した学習用音声信号を出力に用いてM2Wモデルを学習してもよい。これらの音響特徴量は、フレーム単位のメルスペクトログラムである。モデル学習部34は、学習した音声合成モデルをモデル記憶部20に格納する。
【0046】
上記では、全ての韻律制御の種類とも同一の倍率及び段階を用いる例を示したが、韻律制御の種類によって倍率及び段階を変えてもよい。例えば、上記の例と同様に各韻律制御の種類に10段階の倍率がある場合でも、話速変換(x=s)の倍率yには0.5、0.6、0.7、0.8、0.9、1.6、2.2、2.8、3.4、4.0を使用し、音量変換(x=e)の倍率yには0.00001、0.2、0.4、0.6、0.8、1.2、1.4、1,6、1.8、2.0を使用し、ピッチ変換(x=p)の倍率yには0.5、0.6、0.7、0.8、0.9、1.2、1.4、1.6、1.8、2.0を使用し、抑揚変換(x=i)の倍率yには0.0、0.2、0.4、0.6、0.8、1.2、1.4、1.6、1.8、2.0を使用してもよい。そしてさらに、話速変換、音量変換、ピッチ変換及び抑揚変換の全てに共通して1.0を用いる。
【0047】
図5は、音声合成装置1の音声合成処理を示すフロー図である。音声合成装置1の合成用データ入力部12は、音声合成用テキストを合成部40に入力する(ステップS21)。音声合成用テキストは、日本語の漢字仮名混じりのテキストデータでもよく、読みを表す文字、文字列又は記号により記述されたテキストデータもよい。
【0048】
タグ付与部41は、音声合成用テキストの文の先頭又は各句の先頭に、所望の韻律制御の種類及び倍率を表すタグを付与し、タグ付きテキストを生成する。所望の韻律制御の種類及び倍率は、例えば、合成用データ入力部12により入力される。この韻律制御の種類及び倍率の組み合わせは、学習処理において使用されたものの中から選択される。
図4のステップS13において、各文の先頭にタグを付与して入力ラベルが生成された場合、タグ付与部41は、音声合成用テキストの各文の先頭にタグを付与してタグ付きテキストを生成する。この場合、文単位で所望の韻律制御の種類及び倍率を指定可能である。例えば、音声合成用テキストが「これは日本語音声合成のテストです。」であり、所望の韻律制御の種類及び倍率が抑揚変換倍率1.2の場合、タグ付きテキストは、「<i_1.2> これは日本語音声合成のテストです。」となる。
【0049】
一方、
図4のステップS13において、各句の先頭にタグを付与して入力ラベルが生成された場合、タグ付与部41は、音声合成用テキストの各句の先頭にタグを付与してタグ付きテキストを生成する。この場合、句単位で所望の韻律制御の種類及び倍率を指定可能である。例えば、音声合成用テキストが「これは日本語音声合成のテストです。」であり、部分的に音量倍率0.8を指定する場合、タグ付きテキストは、「<o_1.0> これは <e_0.8> 日本語 <e_0.8> 音声合成の <o_1.0> テストです。」となる。
【0050】
音声合成用テキストが漢字仮名混じりのテキストデータである場合、生成されるタグ付きテキストは、
図3に示すタグ付きテキストTa又はタグ付きテキストTbと同様に記述される。タグ付与部41は、形態素解析を行って、タグ付きテキストに含まれる漢字仮名混じりのテキストデータを、読みを表す文字、文字列又は記号に変換して音声合成用入力ラベルを生成する(ステップS22)。音声合成用入力ラベルは、
図3の入力ラベルLa又は入力ラベルLbと同様に記述される。なお、音声合成用テキストが読みを表す文字、文字列又は記号により記述されたテキストデータの場合、タグ付きテキストがそのまま入力ラベルとして用いられる。また、ステップS14において生成された学習用入力ラベルに中間言語が用いられている場合、タグ付与部41は、形態素解析を行って、タグ付きテキストに含まれる漢字仮名混じりのテキストデータを中間言語に変換し、音声合成用入力ラベルを生成するか、中間言語の音声合成用テキストにタグを付与して音声合成用入力ラベルを生成する。
【0051】
音声合成部42は、モデル記憶部20に記憶されている音声合成モデルと音声合成用入力ラベルとに基づいて、音声信号を得る(ステップS23)。音声合成モデルがT2Wモデルである場合、音声合成部42は、T2Wモデルに、音声合成用入力ラベルを入力し、出力として音声信号を得る。音声合成モデルがT2MモデルとM2Wモデルとから構成される場合、音声合成部42は、T2Mモデルに、音声合成用入力ラベルを入力し、出力として推定の音響特徴量を得る。さらに、音声合成部42は、得られた音響特徴量をM2Wモデルに入力し、出力として音声信号を得る。出力部50は、得られた音声信号を出力する。
【0052】
上記の実施形態では、韻律制御の種類として話速変換、音量変換、ピッチ変換及び抑揚変換の4種類を用いたが、これらのうち一部を用いてもよい。
【0053】
続いて、本実施形態の有効性を確認するため評価実験について述べる。
図6は、実験条件を示す図である。従来法と、本実施形態とのそれぞれにより、音声合成用テキストに対応した音声信号を生成した。韻律制御の倍率は、0.8~1.4倍の実用的な範囲で実施した。
【0054】
従来法及び本実施形態によるモデル学習のための音声コーパスとして、女性話者1名の7184文、約10時間の音声と発話テキストを使用した。音声合成モデルの学習時に、7184文のうち6684文を訓練用に使用し、250文を訓練パラメータ調整用(開発)に使用し、250文を評価用に使用した。
【0055】
従来法では、上記の訓練用及び訓練パラメータ調整用の音声コーパスを用いて、E2E(End-to-End)音声合成モデルを学習した。そして、学習されたE2E音声合成モデルに評価用の音声コーパスの発話テキストを入力して合成音を生成し、生成された合成音に、話速、音量、ピッチ、抑揚の4種類それぞれの韻律制御を、韻律制御倍率0.8、0.9、1.0、1.2、1.4の5段階で行う音声変換処理を施し、20種類の音声信号を得た。
【0056】
一方、本実施形態の手法では、音声合成装置1の学習部30は、音声コーパスに、話速、音量、ピッチ、抑揚の4種類それぞれの韻律制御を、韻律制御倍率0.8、0.9、1.0、1.2、1.4の5段階で行う音声変換処理を施した。音声コーパスに施した音声変換処理は、従来法と同じである。これにより、学習部30は、音声コーパスを20倍の学習用データに拡張し、訓練用及び訓練パラメータ調整用の学習用データを、E2E音声合成モデルの学習に用いた。音声合成装置1の合成部40は、評価用のコーパスの発話テキストを音声合成用テキストとし、上記の韻律制御の種類及び倍率の組み合わせを表すタグをそれぞれ付加した音声合成用入力ラベルを生成した。合成部40は、生成した各音声合成用入力ラベルを、学習されたE2E音声合成モデルに入力することにより、20種類の合成音の音声信号を直接作成した。
【0057】
従来法により得られた音声信号及び本実施形態の手法で得られた音声信号の客観評価尺度として、原音と合成音をフレームごとに対応付けたメルケプストラム距離(MCD)、原音と合成音をフレームごとに対応付けた対数ピッチ二乗平均平方根誤差(LF0_RMSE)、文字認識誤り率(CER)、及び、主観評価(5段階のMean Opinion Score)の推定値(UTMOS:参考文献2参照)を算出した。ここでは、韻律制御の種類ごとに、従来法と本実施形態の手法のそれぞれについてこれら客観評価尺度の平均と95%信頼区間を算出した。さらに、音声合成用テキストの入力から音声信号が生成されるまでの処理時間を、合成音の時間長で除算したリアルタイム性能(RTF)を算出し、従来法と本実施形態の手法のそれぞれについて平均と95%信頼区間を算出した。
【0058】
(参考文献2)UTMOS:Utokyo-SaruLab MOS Prediction System,[2023年3月13日検索],インターネット<URL:https://github.com/sarulab-speech/UTMOS22>
【0059】
図7は、客観評価尺度の評価結果を示す図である。
図7では、MCD、LF0_RMSE、CER、UTMOSそれぞれの95%信頼区間における平均を示している。また、
図8は、リアルタイム性能の評価結果を示す図である。
図8では、リアルタイム性能(RTF)の95%信頼区間における平均を示している。
図7及び
図8において、下矢印↓は値が低いほど評価が良い指標であり、上矢印↑は値が高いほど評価が良い指標であることを示す。また、
図7及び
図8において、下線は、有意に優れることを示す。
【0060】
図7に示す客観評価から、本実施形態の手法は従来法と同等か優れることがわかる。また、
図8に示すリアルタイム性能から、本実施形態の手法は、従来法の約4倍高速なことがわかる。これらの結果から、本実施形態の有効性が確認された。
【0061】
上述の音声合成装置1は、内部にコンピュータシステムを有している。そして、音声合成装置1の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU(Central processing unit)及び各種メモリやOS(Operation System)、周辺機器等のハードウェアを含むものである。また、音声合成装置1の機能の全て又は一部は、ASIC(Application specific integrated circuit)やPLD(Programmable logic device)やFPGA(Field programmable gate array)等のハードウェアを用いて実現されてもよい。
【0062】
音声合成装置1は、1台以上のコンピュータ装置により実現してもよい。この場合、音声合成装置1の機能部をいずれのコンピュータ装置により実現するかは任意とすることができる。また、同一の機能部を複数のコンピュータ装置により実現してもよい。例えば、学習用データ入力部11、モデル記憶部20及び学習部30を1台又は複数台のサーバコンピュータにより実現し、合成用データ入力部12、合成部40及び出力部50をクライアント端末で実現してもよい。あるいは、学習用データ入力部11、モデル記憶部20、学習部30及び音声合成部42を1台又は複数台のサーバコンピュータにより実現し、合成用データ入力部12、タグ付与部41及び出力部50をクライアント端末で実現してもよい。またあるいは、学習用データ入力部11、モデル記憶部20、学習部30及び合成部40を1台又は複数台のサーバコンピュータにより実現し、合成用データ入力部12及び出力部50をクライアント端末で実現してもよい。また、音声合成装置1が学習用データ入力部11及び学習部30を有せず、音声合成モデル学習装置が学習用データ入力部11及び学習部30を備えてもよい。この場合、音声合成モデル学習装置は、さらに、モデル記憶部20を備えてもよい。
【0063】
図9は、音声合成装置1のハードウェア構成例を示す図である。音声合成装置1は、プロセッサ71と、記憶部72と、通信インタフェース73と、ユーザインタフェース74とを備える。プロセッサ71は、演算や制御を行う中央演算装置である。プロセッサ71は、例えば、CPU(central processing unit)やGPU(Graphics Processing Unit)である。プロセッサ71は、記憶部72からプログラムを読み出して実行する。記憶部72は、さらに、プロセッサ71が各種プログラムを実行する際のワークエリアなどを有する。通信インタフェース73は、他装置と通信可能に接続するものである。ユーザインタフェース74は、ボタン、キーボード、ポインティングデバイスなどの入力装置や、ディスプレイなどの表示装置や、スピーカなどの音声出力装置である。
【0064】
音声変換部32、タグ付与部33、モデル学習部34及び合成部40の機能の全て又は一部は、プロセッサ71が記憶部72からプログラムを読み出して実行することより実現される。なお、これらの機能の全て又は一部は、ASICやPLD等のハードウェアを用いて実現されてもよい。
【0065】
以上説明した実施形態によれば、音声合成モデル学習装置は、音声変換部と、タグ付与部と、モデル学習部とを備える。音声変換部は、発話の音声信号に、種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行った拡張音声信号を生成する。タグ付与部は、発話のテキストデータに拡張音声信号の生成のため音声信号に行われた韻律制御を表すテキストデータのタグを付与して、拡張音声信号それぞれに対応した学習用入力ラベルを生成する。モデル学習部は、対応する拡張音声信号と学習用入力ラベルとの組を用いて、複数の韻律制御のうち所望の韻律制御を表すタグが付与された任意の発話のテキストデータを入力し、入力されたテキストデータに対応した音声信号を出力する音声合成モデルを学習する。
【0066】
また、音声合成装置は、音声合成部を備える。音声合成部は、入力されたテキストデータに対応した音声信号を出力する音声合成モデルであって、発話の音声信号に種類及び倍率の組み合わせが異なる複数の韻律制御それぞれを行って得られた拡張音声信号と、発話のテキストデータに拡張音声信号の生成のため音声信号に行われた韻律制御を表すテキストデータのタグを付与した学習用入力ラベルとを用いて学習された音声合成モデルに、複数の韻律制御のうち所望の韻律制御のタグが付与された任意の発話のテキストデータである入力ラベルを入力し、入力された入力ラベルに対応した音声信号を得る。
【0067】
韻律制御の種類は、話速変換と、音量変換と、ピッチ変換と、抑揚変換とのうち一以上である。
【0068】
音声合成モデル学習装置のタグ付与部は、発話のテキストデータに、韻律制御の単位の文又は句毎にタグを付与してもよい。また、音声合成装置は、発話内容のテキストデータに、韻律制御の単位の文又は句毎に所望の韻律制御のタグを付与して入力ラベルを生成するタグ付与部をさらに備えてもよい。また、音声合成装置は、音声合成モデル学習装置の各部を備えてもよい。
【0069】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0070】
1 音声合成装置
10 入力部
11 学習用データ入力部
12 合成用データ入力部
20 モデル記憶部
30 学習部
31 学習用データ記憶部
32 音声変換部
33 タグ付与部
34 モデル学習部
40 合成部
41 タグ付与部
42 音声合成部
50 出力部
71 プロセッサ
72 記憶部
73 通信インタフェース
74 ユーザインタフェース