図1は、本発明の一実施形態である音声変換装置1の機能の構成を示すブロック図である。本発明に係る音声変換方法は、音声変換装置1によって実行される。音声変換装置1は、後述する変換関数を用いて、変換対象の話者の音声(以下「変換対象音声」という)を、変換目標の話者の音声(以下「変換目標音声」という)に変換する装置である。厳密には、変換対象の話者の音声を、変換目標の話者の音声を模した疑似音声に変換することであるが、本願では、変換対象の話者の音声を変換目標の話者の疑似音声に変換することを、単に変換対象の話者の音声を変換目標の話者の音声に変換するという。
音声変換装置1は、たとえば中央処理装置(以下「CPU」という)および記憶装置を含むパーソナルコンピュータなどの従来の技術による図示しないコンピュータによって構成される。音声変換装置1は、コンピュータの他に、キーボードおよびマウスなどの図示しない入力装置、液晶ディスプレイなどの図示しない表示装置、マイクロフォンなどの図示しない音声入力装置、およびスピーカなどの図示しない音声出力装置を含んで構成される。
入力装置は、入力された情報をCPUに送り、表示装置は、CPUから指示される情報を表示する。音声入力装置は、マイクロフォンから入力された音声のアナログ信号をデジタル信号に変換し、変換したデジタル信号を音声データとしてCPUに送るアナログデジタル変換器を含む。音声出力装置は、CPUから受け取る音声データのデジタル信号をアナログ信号に変換するデジタルアナログ変換器、およびデジタルアナログ変換器で変換されたアナログ信号を増幅してスピーカから出力させる増幅器を含む。
音声変換装置1は、学習部10および実行部20を含んで構成される。学習部10および実行部20は、CPUが記憶装置に記憶されるプログラムを実行することによって実現される機能である。記憶装置は、たとえば半導体メモリあるいはハードディスク装置によって構成され、CPUで実行されるプログラム、およびCPUが学習部10および実行部20の機能を実現するために用いる情報を記憶する。記憶装置に記憶される情報は、CPUによって書き込みおよび読み出しが行われる。
音声変換装置1は、変換対象音声から変換目標音声への変換を、学習部10によって実行される学習段階、および実行部20によって実行される実行段階の2つの段階で行う。生成ステップである学習段階では、学習部10は、変換対象の話者(以下「対象話者」という)が発声する5つの母音、つまり「あ」、「い」、「う」、「え」および「お」の母音の音声データと、変換目標の話者(以下「目標話者」という)が発声する5つの母音の音声データとから個別変換関数を生成するとともに、生成した個別変換関数から、実行時に用いる実行時変換関数を合成するための変換関数合成用汎関数を生成する。また、個別変換関数の生成に用いた母音の変換対象音声のスペクトル包絡から、実行時変換関数の生成に用いる母音テンプレートも生成する。
スペクトル包絡は、音声を分析することによって求められるパラメタであり、音声のパワースペクトルに含まれる周期性などの音源の性質に起因する微細な構造を取り除いたものである。母音テンプレートは、「あ」、「い」、「う」、「え」および「お」などの、それぞれの母音カテゴリに属する音声から求められたスペクトル包絡を代表する情報表現である。具体的には、たとえば、同一の母音カテゴリに属する音声から求められたスペクトル包絡の平均値を用いてもよい。さらに、この平均値からMFCCを求めたものを母音テンプレートとして用いてもよい。音声変換装置1では、この母音テンプレートの求め方にも特徴がある。MFCCは、音声認識で良く用いられるパラメタである。
実行段階では、実行部20は、対象話者の音声が入力装置から入力され、アナログデジタル変換器でデジタル信号に変換された変換対象音声の音声データから、変換対象音声のスペクトル包絡を求める。そして、求めたペクトル包絡と学習段階で生成された母音テンプレートとの類似度を計算し、計算した類似度に基づいて、学習段階でそれぞれの母音に対して生成された個別変換関数に含まれる後述する母音変換関数を、変換関数合成用汎関数を用いて合成して、実行時変換関数を生成する。さらに、合成された実行時変換関数を用いて、変換対象音声のスペクトル包絡を変換し、変換したスペクトル包絡と、変換した基本周波数および変換した非周期性指標を用いて、変換目標音声を合成する。
基本周波数および非周期性指標は、スペクトル包絡の変換と同時に、分析フレームごとに変換される。分析フレームは、分析によって、様々な時刻において求められた音声パラメタを指定するために付与される通し番号によって認識されるフレームのことである。通常は、音声の分析は、一定周期、たとえば5msの周期で行われており、通し番号は、分析を開始したときから、1回の分析ごとに1ずつ増加される。一定の周期ではなく、不均一な時間間隔で分析が行われることもある。分析フレームという用語は、その通し番号で指定された時刻における音声パラメタを指定するために用いられることもある。非周期性指標は、音声の中の周期的な成分と非周期的な成分との割合を示す。
図2は、個別変換関数30の構成を示す図である。個別変換関数30は、母音変換関数31と基本周波数変換関数39とによって構成される。母音変換関数31は、母音ごとに生成される母音別変換関数32、具体的には母音/a/用変換関数32a、母音/i/用変換関数32i、母音/u/用変換関数32u、母音/e/用変換関数32eおよび母音/o/用変換関数32oを含む。各母音別変換関数32は、周波数軸変換関数33、スペクトル概形変換関数34および非周期性指標変換関数35を含む。
周波数軸変換関数33は、変換対象音声と変換目標音声との周波数軸の対応関係に基づいて周波数軸を変換する関数である。スペクトル概形変換関数34は、変換された周波数軸の上でのスペクトル包絡の概形の違いを少なくするように変換する関数である。非周期性指標変換関数35は、音声の中の周期的な成分と非周期的な成分との割合を示す非周期性指標を変換するための関数である。基本周波数変換関数39は、それぞれの話者の基本周波数の平均値、および平均値のまわりの標準偏差の違いを変換するための関数である。
図1を参照して、生成部である学習部10は、変換対象音声パラメタ抽出部11、変換目標音声パラメタ抽出部12および変換関数生成部13を含んで構成される。変換部である実行部20は、音声分析部21、実行用合成変換関数生成部22および変換音声合成部23を含んで構成される。
変換対象音声パラメタ抽出部11は、変換対象音声の母音の音声データから変換対象音声の音声パラメタを抽出し、抽出した変換対象音声の音声パラメタを変換関数生成部13に送る。変換目標音声パラメタ抽出部12は、変換目標音声の母音の音声データから変換目標音声の音声パラメタを抽出し、抽出した変換目標音声の音声パラメタを変換関数生成部13に送る。変換関数生成部13は、変換対象音声パラメタ抽出部11からの変換対象音声の音声パラメタ、および変換目標音声パラメタ抽出部12からの変換目標音声の音声パラメタに基づいて、個別変換関数および変換関数合成用汎関数、ならびに母音テンプレートを生成する。
音声分析部21は、入力装置から入力される変換対象となる話者の音声の音声データを分析し、音声パラメタを生成する。実行用合成変換関数生成部22は、音声分析部21で生成された音声パラメタに基づいて、変換関数生成部13で生成された母音変換関数を、変換関数生成部13で生成された変換関数合成用汎関数を用いて合成して、実行時変換関数を生成する。変換音声合成部23は、実行用合成変換関数生成部22で生成された実行時変換関数(以下「実行用合成変換関数」ともいう)を用いて、変換対象音声のスペクトル包絡を変換し、変換したスペクトル包絡と、変換した基本周波数および変換した非周期性指標を用いて、変換目標音声を合成する。
図3は、学習部10が個別変換関数を設計する個別変換関数設計処理手順を示す図である。入力装置から学習段階を実行する指示があると、処理A1に移る。処理A1では、変換対象音声パラメタ抽出部11は、学習のための変換対象音声の母音の音声データをアナログデジタル変換器から取得する。処理A2では、変換対象音声パラメタ抽出部11は、取得した変換対象音声の母音の音声データから、変換対象音声の音声パラメタ(図3では「パラメタ」と記す)を抽出する。
本実施例では、音声パラメタは、TANDEM−STRAIGHT(特許文献2,非特許文献3参照)によって求められるパラメタである。この場合、音声パラメタは、スペクトル包絡、基本周波数、および非同期性指標の三種類から構成されている。スペクトル包絡は、分析時刻における周波数ごとのパワーとして、基本周波数は、分析時刻における周波数を表す数値として、非同期性指標は、分析時刻における周波数ごとの周期成分と非周期成分との割合として表わされる。処理A3では、変換対象音声パラメタ抽出部11は、取得した変換対象音声の母音の音声データから、変換対象音声のラベル情報を生成する。
ラベル情報は、それぞれの話者の発した音声の母音の区間と、その区間における母音の種類とを表す情報である。区間は、各母音の音声が継続している区間である。母音の種類は、「あ」、「い」、「う」、「え」および「お」の母音の種類のうちいずれであるかを示す情報であり、たとえば母音「あ」のラベル情報は「a」であり、母音「い」のラベル情報は「i」であり、母音「う」のラベル情報は「u」であり、母音「え」のラベル情報は「e」であり、母音「お」のラベル情報は「o」である。このラベル情報は、操作者が入力装置によって手作業で付与する場合と、音声認識プログラムを用いて自動的に付与される場合とがある。発声内容が予め分かっている場合には、音声認識プログラムの機能を用いて、発声内容の母音情報と、音声信号との対応付けを行うことは、それらの情報がない状態で音声認識を行うよりも、はるかに容易な問題であり、信頼性も高い。
処理A4では、変換目標音声パラメタ抽出部12は、学習のための変換目標音声の母音の音声データをアナログデジタル変換器から取得する。処理A5では、変換目標音声パラメタ抽出部12は、取得した変換目標音声の母音の音声データから、変換目標音声の音声パラメタを抽出する。処理A6では、変換目標音声パラメタ抽出部12は、取得した変換目標音声の母音の音声データから、変換目標音声のラベル情報を生成し、生成したラベル情報を記憶装置に記憶する。
処理A7では、変換関数生成部13は、抽出された変換対象音声の音声パラメタおよび変換目標音声の音声パラメタ、ならびに変換対象音声のラベル情報および変換目標音声のラベル情報に基づいて、個別変換関数と音声テンプレートとを設計つまり生成する。以下同様に生成することを、設計するともいう。変換関数生成部13は、個別変換関数の設計では、周波数軸変換関数、スペクトル概形変換関数、非周期性指標変換関数、基本周波数変換関数および変換関数合成用汎関数を設計する。これらの関数の設計および音声テンプレートの設計については後述する。処理A8では、変換関数生成部13は、設計した個別変換関数を記憶装置に記憶し、そして、処理A9では、変換関数生成部13は、設計した音声テンプレートを記憶装置に記憶し、個別変換関数設計処理手順を終了する。
図4は、変換関数生成部13が実行する周波数軸変換関数を設計する周波数軸変換関数設計処理手順を示す図である。周波数軸変換関数は、対象話者の母音の周波数軸を、目標話者の母音の周波数軸に対応づける関数である。周波数軸変換関数設計処理手順は、図3の処理A7で実行される。
処理B1では、変換関数生成部13は、周波数軸変換関数の初期値を設定する。具体的には、周波数軸変換関数を規定するパラメタの初期値つまり関数に含まれる係数の初期値を設定する。
処理B2では、変換関数生成部13は、周波数軸変換関数の初期値を用いて、周波数軸変換関数候補を設定する。すなわち、周波数軸変換関数候補は、設定した初期値を代入した関数である。
処理B3では、変換関数生成部13は、図3に示した処理A2,A5と同様に、TANDEM−STRAIGHT(特許文献2,非特許文献3参照)によって、対象話者の母音の音声データから、対象話者の母音のスペクトル包絡を求める。スペクトル包絡は、求められた音声パラメタを構成する要素の1つである。
処理B4では、変換関数生成部13は、記憶装置から変換対象音声のラベル情報を読み出す。処理B5では、変換関数生成部13は、目標話者の母音の音声データから、目標話者の母音のスペクトル包絡を求める。処理B6では、変換関数生成部13は、記憶装置から目標話者のラベル情報を読み出す。
処理B7では、変換関数生成部13は、変換対象音声のすべての分析フレームについて、変換対象音声のラベル情報が示す母音に対応する周波数軸変換関数候補を選択する。そして、選択した周波数軸変換関数候補を用いて、対象話者の母音のスペクトル包絡を、目標話者の母音の周波数軸の上のスペクトル包絡に変換する。すなわち、対象話者の母音の周波数軸を目標話者の母音の周波数軸にあわせる。
処理B8では、変換関数生成部13は、変換対象音声および変換目標音声のラベル情報に基づいて、同じ母音に属する目標話者の母音スペクトル包絡(以下「目的母音スペクトル包絡」という)と、対象話者の母音スペクトル包絡(以下「対象母音スペクトル包絡」という)を処理B7によって変換した母音スペクトル包絡との間のスペクトル距離を計算し、さらにその距離をすべての母音について総合した総合スペクトル距離を求める。
処理B9では、変換関数生成部13は、求められた総合スペクトル距離が、周波数軸変換関数を規定するパラメタについての最小値である場合は、周波数軸変換関数候補の更新を終了し、最小値に対応する周波数軸変換関数候補を、学習されたパラメタを設計値とする周波数変換関数として決定する。たとえば、周波数軸変換関数を規定するパラメタの値を様々に変えて、それぞれの場合に総合スペクトル距離を計算し、それらを比較することによって、最小値を求める。パラメタの次元数が多い場合には、simplex法など、広く用いられている非線形最適化計算アルゴリズムを用いることによって、最小値を求めることができる。
具体例として、たとえばパラメタの値に、微小な乱数を加えたものを、新たなパラメタの値として総合スペクトル距離を求めることを、パラメタの次元数だけの回数繰り返し、いずれの場合にも求められた総合スペクトル距離が、元の総合スペクトル距離よりも小さくならない場合に、そのパラメタの値が総合スペクトル距離の最小値を与えるパラメタとなる。
学習されたパラメタとは、最小値である場合のパラメタである。また、変換関数生成部13は、音声テンプレートも設計する。音声テンプレートの設計については、後述する。
求められた総合スペクトル距離が、周波数軸変換関数を規定するパラメタについての最小値でない場合は、周波数軸変換関数を規定するパラメタを変更し、周波数変換関数個補を更新し、処理B2に戻る。たとえば最小値でない場合には、総合スペクトル距離をより小さくするような、乱数で生成されたパラメタが少なくとも1つあることになる。そのパラメタの中で、最も総合スペクトル距離を小さくするものを用いてパラメタを更新する。
処理B10では、変換関数生成部13は、学習された周波数軸変換関数を記憶装置に記憶し、そして、処理B11では、変換関数生成部13は、設計された音声テンプレートを記憶装置に記憶し、周波数軸変換関数設計処理手順を終了する。
ある母音xの周波数軸変換関数T(f) V:xは、式(1)で表される。ここで、対象話者の周波数軸上の周波数をf(src)と表し、目標話者の周波数軸上の周波数をf(tgt)と表す。
周波数軸変換関数T(f) V:xの具体例としては、式(2)のような直交関数による展開を用いる。式(2)を用いることによって、周波数軸の対応関係が、一意で単調増加であることが保証される。
初期値としては、恒等関数を用いる。すなわち、パラメタakおよびbkを、変数k=0,1,……,Mについて、すべて「0」と置く。Mの値としては、「1」または「2」を用いる。fLとfUは、注目する周波数範囲を表している。具体的には、fLは、0Hz、fUは、標本化周波数の半分の周波数が相当する。g(f)は、聴覚特性に近づけるための関数であり、g−1(λ)は、その逆関数である。具体的には人間の聴覚末梢系における周波数分解能に基づいて作られたERBN number(非特許文献「B.C.J.
Moore:“An introduction to psychology of hearing, 5th edition”,
Academic Press,San Diego, CA (2003).(邦訳は「聴覚心理学概論」ただし、第三版の訳)」)を用いる。周波数軸をERBN numberを用いて非線形変換してfERBとすると、fERBは、周波数fの関数として式(3)のように表される。
この周波数軸変換関数を用いて変換したスペクトル包絡の間の距離が最小となるように、パラメタakおよびbkを更新する。具体的には、ある方法Mnに基づくスペクトル包絡の間の距離をdMn(P1(f),P2(f))としたとき、式(4)によって周波数軸を変換した場合のスペクトル包絡の間の距離を求める。
方法Mnとして、以下のようにして求められる周波数平滑化された重み付き対数スペクトル距離dWdBを用いる。この距離を人間の聴覚的印象に更に近づけるために、聴覚の周波数分解能に基づく、周波数平滑化を加える。これは、周波数軸をERBN numberを用いて非線形変換してパワースペクトルを表現し、その上で平滑化関数を用いて平滑化し、その後で対数スペクトルに変換することによって実現する。STRAIGHT(特許文献2および非特許文献3参照)によって求められたパワースペクトルPTST(f)を、式(5)によって、ERBN number軸上の平滑化された対数スペクトルPLS(fERB)に変換する。ここでは、dBを用いて対数スペクトルを表すことにする。
なお、平滑化関数h(λ)は、式(6)で表わされ、正規化されているものとする。
この平滑化関数の第一次近似として、式(7)のように、幅がERBN number軸上で「1」である矩形の関数を用いる。
また、第二次近似としては、式(8)のように、底辺が「2」の長さの二等辺三角形を用いる。
ここでは、第二近似のh2(λ)を用いる。
重み付き対数スペクトル距離dWdB(P1(f),P2(f))は、このようにしてP1(f)とP2(f)とを、ERBN number軸上での平滑化された対数スペクトルに変換されたものを、それぞれPLS1(fERB)とPLS2(fERB)と表すと、式(9)のように計算される。fUERBおよびfLERBは、距離を評価する周波数の上限および下限をERBN numberを用いて表したものである。これらの周波数の値としては、たとえば、4000Hzと400Hzとをそれぞれに用いる。
総合スペクトル距離は、評価に用いられた重み付き対数スペクトル距離dWdB(P1(f),P2(f))を、平均したものになる。dMnという書き方は、様々な距離の求め方を一般的に表すための説明に用いた書き方である。この具体例では、dWdB(P1(f),P2(f))だけを用いているので、dMnを用いることは、必ずしも必要ではい。このような書き方を行ったのは、dWdBの代わりにMFCCに基づく距離を用いても、同じ形式で議論が可能であるからである。すなわち、その場合には、dWdBの代わりにMFCCに基づく距離を用いても、全く同じ手順で最適化を行うことができる。
図5は、変換関数生成部13が実行するスペクトル概形変換関数を設計するスペクトル概形変換関数設計処理手順を示す図である。スペクトル概形変換関数は、対象話者の母音のスペクトル概形を、目標話者の母音のスペクトル概形に変換する関数である。スペクトル概形は、スペクトル包絡の概形のことである。スペクトル概形変換関数設計処理手順は、図3の処理A7で実行される。
処理C1では、変換関数生成部13は、スペクトル概形変換関数を規定するパラメタの初期値を設定する。処理C2では、変換関数生成部13は、スペクトル概形変換関数の初期値を用いて、スペクトル概形変換関数候補を設定する。処理C3では、変換関数生成部13は、対象話者の母音の音声データから、対象話者の母音のスペクトル包絡を求める。スペクトル包絡の求め方は、周波数軸変換関数の場合と同じ求め方である。
処理C4では、変換関数生成部13は、記憶装置から変換対象音声のラベル情報を読み出す。処理C5では、変換対象音声のラベル情報が示す母音に対応する周波数軸変換関数を選択する。処理C6では、変換関数生成部13は、目標話者の母音の音声データから、目標話者の母音のスペクトル包絡を求める。処理C7では、変換関数生成部13は、記憶装置から目標話者のラベル情報を読み出す。
処理C8では、変換関数生成部13は、変換対象音声のすべての分析フレームについて、変換対象音声のラベル情報が示す母音に対応する周波数軸変換関数を用いて、対象話者の母音のスペクトル包絡を、目標話者の母音の周波数軸の上のスペクトル包絡に変換する。そして、変換されたスペクトル包絡に含まれるスペクトル概形成分を、変換対象音声のラベル情報が示す母音に対応するスペクトル概形変換関数候補を用いて変換することによって、スペクトル概形を変換したスペクトル包絡に変換する。
処理C9では、変換関数生成部13は、変換対象音声および変換目標音声のラベル情報に基づいて、同じ母音に属する目的母音スペクトル包絡と対象母音スペクトル包絡との間のスペクトル距離を計算し、さらにその距離をすべての母音について総合した総合スペクトル距離を求める。
処理C10では、変換関数生成部13は、求められた総合スペクトル距離が、スペクトル概形変換関数を規定するパラメタについての最小値である場合は、スペクトル概形変換関数候補の更新を終了し、最小値に対応するスペクトル概形変換関数候補を、学習されたパラメタを設計値とするスペクトル概形変換関数として決定する。求められた総合スペクトル距離が、スペクトル概形変換関数を規定するパラメタについての最小値でない場合は、スペクトル概形変換関数を規定するパラメタを変更し、スペクトル概形変換関数候補を更新し、処理C2に戻る。処理C11では、変換関数生成部13は、決定したスペクトル概形変換関数を記憶装置に記憶し、スペクトル概形変換関数設計処理手順を終了する。
あるスペクトルP(f)のスペクトル概形PS(f)は、STRAIGHTによって求められた音声のスペクトル包絡から計算される平滑化対数スペクトルPLS(fERB)をコサイン級数に展開したものの、低次の係数から構成される。まず、展開係数pkを求める。kを、「0」からたとえば「7」までの整数とし、合計8つの係数pkを式(10)によって求める。
このpkを用いて、スペクトル概形PS(f)は、式(11)のように求められる。
スペクトル概形の変換関数の初期値は、周波数軸を変換した対象話者のスペクトル概形PS (src)(T(f) V:x(f))と、目標話者のスペクトル概形PS (tgt)(f)との差で与えられる。この概形の変換関数を表すパラメタpk (cnv)は、式(12)によって、それぞれの展開係数の差で与えられる。
すなわち、スペクトル概形変換関数は、式(11)の展開係数pkに式(12)のパラメタpk (cnv)を代入したものである。
図6は、変換関数生成部13が実行する非周期性指標変換関数を設計する非周期性指標変換関数設計処理手順を示す図である。非周期性指標変換関数は、対象話者の母音の非周期性指標を目標話者の母音の非周期性指標に変換する関数である。非周期性指標変換関数設計処理手順は、図3の処理A7で実行される。
処理D1では、変換関数生成部13は、非周期性指標変換関数を規定するパラメタの初期値を設定する。処理D2では、変換関数生成部13は、非周期性指標変換関数の初期値を用いて、非周期性指標変換関数候補を設定する。処理D3では、変換関数生成部13は、対象話者の母音の音声データから、対象話者の母音の非周期性指標を求める。非周期性指標は、TANDEM−STRAIGHT(特許文献2,非特許文献3参照)による分析によって求める。
処理D4では、変換関数生成部13は、記憶装置から変換対象音声のラベル情報を読み出す。処理D5では、変換対象音声のラベル情報が示す母音に対応する周波数軸変換関数を選択する。処理D6では、変換関数生成部13は、目標話者の母音の音声データから、目標話者の母音の非周期性指標を求める。処理D7では、変換関数生成部13は、記憶装置から目標話者のラベル情報を読み出す。
処理D8では、変換関数生成部13は、変換対象音声のすべての分析フレームについて、変換対象音声のラベル情報が示す母音に対応する周波数軸変換関数を用いて、対象話者の母音の非周期性指標を、目標話者の母音の周波数軸の上の非周期性指標に変換した後、変換された非周期性指標を、変換対象音声のラベル情報が示す母音に対応する非周期性指標変換関数候補を用いて、さらに変換する。
処理C9では、変換関数生成部13は、変換対象音声および変換目標音声のラベル情報に基づいて、同じ母音に属する目標話者の非周期性指標(以下「目的母音非周期性指標」という)と、対象話者の母音の変換された非周期性指標(以下「対象母音非周期性指標」という)との間の非周期性指標距離を計算し、さらにその距離をすべての母音について総合した総合非周期性指標距離を求める。非周期性指標距離および総合非周期性指標距離の求め方は、後述する。
処理D10では、変換関数生成部13は、求められた総合非周期性指標距離が、非周期性指標変換関数を規定するパラメタについての最小値である場合は、非周期性指標変換関数候補の更新を終了し、最小値に対応する非周期性指標変換関数候補を、学習されたパラメタを設計値とする非周期性指標変換関数として決定する。求められた総合非周期性指標距離が、非周期性指標変換関数を規定するパラメタについての最小値でない場合は、非周期性指標変換関数を規定するパラメタを変更し、非周期性指標変換関数候補を更新し、処理D2に戻る。処理D11では、変換関数生成部13は、決定した非周期性指標変換関数を記憶装置に記憶し、非周期性指標変換関数設計処理手順を終了する。
非周期性指標AP(f)は、それぞれの周波数における非周期成分のパワーPaperiodic(f)が、その周波数におけるパワーP(f)のどれだけを占めるかを表す指標であり、dBを用いて、式(13)のように定義されている。非周期性指標は、たとえばSTRAIGHTによって求められる。
非周期性指標変換関数TAPの初期値は、式(14)によって、周波数軸を変換した対象話者の非周期性指標AP (src)(T(f) V:x(f))と、目標話者の非周期性指標AP (tgt)(f)との差で与えられる。
非周期性指標変換関数TAPは、式(14)によって表される。実際には、この差を、スペクトル概形の場合と同じようにERBN軸上でコサイン級数に展開し、その係数の差を初期値とするのが、1つの実現形態になる。
非周期性指標距離は、式(15)によって与えられる。
総合非周期性指標距離は、それぞれの評価に用いられたフレーム同士の非周期性指標距離を平均したものとして求める。
基本周波数の変換は、基本周波数の対数の平均値と標準偏差とに基づいて行われる。v0 (src)(t)を、対象話者の基本周波数の対数、v0 (tgt)(t)を、目標話者の基本周波数の対数とする。それぞれ、対象話者の基本周波数f0 (src)(t)と、目標話者の基本周波数f0 (tgt)(t)から、式(16),(17)によって定義される。
v〜0 (src)を、対象話者の基本周波数の対数の平均値、v〜0 (tgt)を、目標話者の基本周波数の対数の平均値とする。また、σv0 (src)を、対象話者の基本周波数の対数の標準偏差、σv0 (tgt)を、目標話者の基本周波数の対数の標準偏差とする。基本周波数変換関数は、式(18)で表わされる。基本周波数変換関数は、対象話者の基本周波数の対数を、式(18)によって変換し、変換された基本周波数の対数0 (cnv)(t)を求める。
変換された基本周波数f0 (cnv)(t)は、この変換された基本周波数の対数0 (cnv)(t)から、式(19)によって求められる。
混合割合を指定するパラメタをrとすると、この変換関数を用いて、指定した混合割合で変換した基本周波数の対数v0 (mrp)(t,r)は、式(20)で求められる。
rが「0」の場合には、対象話者の基本周波数の対数がそのまま用いられ、rが「1」の場合には、変換関数によって変換された基本周波数の対数が用いられることになる。それ以外の場合には、rの値に基づいて、内挿あるいは外挿した値となる。
指定した混合割合で変換した基本周波数f0 (mrp)(t,r)は、このv0 (mrp)(t,r)から、式(21)で求められる。
基本周波数変換関数は、実行時にフレームごとに音声パラメタを変換する場合の合成変換関数を求める際に用いる。実行時にフレームごとに基本周波数を変換する際には、変換関数合成用汎関数の入力である変換割合指定の値rに基づいて、式(20)の形に変えて用いる。
図7は、変換関数生成部13が実行する変換関数合成用汎関数を設計する変換関数合成用汎関数設計処理手順を示す図である。変換関数合成用汎関数は、対象話者の音声の音声パラメタの入力の値に基づいて、音声パラメタを変換するために用いられる三種類の変換関数を合成する汎関数である。対象話者の音声の音声パラメタの入力は、対象話者の音声を分析することによって求められるものである。実行時には、図8に示した処理F3であり、汎関数の設計時には、図7に示した処理E3が入力に相当する。
三種類の変換関数とは、周波数軸変換関数、スペクトル概形変換関数および非周期性指標変換関数のことである。変換関数合成用汎関数設計処理手順は、図3の処理A7で実行される。
変換関数合成用汎関数は、個別変換関数を合成することで、対象話者の音声を、目標話者の音声に近づけることを目的として、対象話者の音声の母音テンプレートと入力された対象話者の音声のスペクトルとの類似度を求める関数のパラメタを設計する。個別変換関数を合成するとは、具体的には、入力された対象話者の音声のスペクトルと、対象話者の音声の母音テンプレートとの類似度に基づいて、変換関数を規定するパラメタの値を補間することである。
対象話者の音声が、目標話者の音声に近づいたか否かを判定するための、分布類似度の計算においては、汎関数を用いて合成された変換関数により変換された対象話者の音声のスペクトルと、目標話者の母音テンプレートとの距離の分布を利用する。具体的には、変換された対象話者の音声のスペクトルと、その音声のフレームに付されている母音のラベル情報と同じカテゴリである目標話者の母音テンプレートとのスペクトル距離の分布と、その音声のフレームに付されている母音のラベル情報と異なったカテゴリである目標話者の母音テンプレートとのスペクトル距離の分布とが交差する点における確率、すなわち、誤り率に相当する確率が、最も小さくなるように、対象音声の母音テンプレートと入力された対象音声のスペクトルとの類似度を求める関数のパラメタを設計するのである。対象音声の母音テンプレートと入力された対象音声のスペクトルとの類似度を求める関数は、母音カテゴリごとに求められる。
処理E1では、変換関数生成部13は、変換関数合成用汎関数を規定するパラメタの初期値を設定する。処理E2では、変換関数生成部13は、変換関数合成用汎関数の初期値を用いて、変換関数合成用汎関数候補を設定する。処理E3では、変換関数生成部13は、対象話者の母音の音声データから、対象話者の母音のスペクトル包絡を求める。処理E4では、変換関数生成部13は、記憶装置から、個別変換関数を読み出す。処理E5では、変換関数生成部13は、読み出した個別変換関数を、設定した変換関数合成用汎関数候補を用いて合成し、合成した変換関数を用いて、目標話者の母音のスペクトル包絡を変換する。
処理E6では、変換関数生成部13は、目標話者の母音の音声データから、目標話者の母音のスペクトル包絡を求める。処理E7では、変換関数生成部13は、記憶装置から目標話者のラベル情報を読み出す。処理E8では、変換関数生成部13は、記憶装置から変換対象音声のラベル情報を読み出す。
処理E9では、変換関数生成部13は、変換対象音声のラベル情報が示す母音に対応する対象話者のスペクトル包絡の距離分布、および変換目標音声のラベル情報が示す母音に対応する変換された目標話者の母音のスペクトル包絡の距離分布を計算する。スペクトル包絡の距離分布については、後述する。 処理E10では、変換関数生成部13は、対象話者のスペクトル包絡の距離分布と、目標話者の母音のスペクトル包絡の距離分布との類似度である分布類似度を計算する。
処理E11では、変換関数生成部13は、計算された分布類似度に基づいて、変換関数合成用汎関数候補の更新を終了するか継続するかを判定する。し、変換関数合成用汎関数候補の更新を終了するときは、計算された分布類似度に対応する変換関数合成用汎関数候補を、学習されたパラメタを設計値とする変換関数合成用汎関数として決定する。変換関数合成用汎関数候補の更新を継続するときは、変換関数合成用汎関数を規定するパラメタを変更して、変換関数合成用汎関数候補を更新し、処理E2に戻る。処理E12では、変換関数生成部13は、決定した変換関数合成用汎関数を記憶装置に記憶し、変換関数合成用汎関数設計処理手順を終了する。
スペクトル包絡の距離分布とは、スペクトル包絡の距離を確立分布Xとおいたとき、その距離がある閾値dθ以下、あるいは閾値dθ以上である確率として、それぞれ式(22),(23)によって定義される。
Pr(X<dθ) …(22)
Pr(X>dθ) …(23)
要するに、求められた距離が、どのように分布しているかを表したものであり、具体的には、図13に示す分布で表わされる。
具体的には、距離は、周波数軸変換関数のところで説明した重み付き対数スペクトル距離、あるいはMFCC距離を用いる。すなわち、対象音声の母音テンプレートと入力された対象音声のスペクトルとの類似度を求める関数は、2つのシグモイド関数を合成して作成する。シグモイド関数は、式(24)のような関数であり、aおよびbの2つのパラメタによって形状が決まる。
図8は、実行部20が実行する第1の音声合成処理手順を示す図である。入力装置から実行段階を実行する指示があると、処理F1に移る。第1の音声合成処理手順は、学習段階で設計された変換関数合成用汎関数と、学習段階で生成された一人の対象話者の母音テンプレートとを用いて、対象話者の音声を目標話者の音声に、指定された割合で近づける音声変換の実行手順である。指定された割合とは、音声の属性を混ぜる割合であり、音そのものではなく、音の様々な性質、たとえばその人の声の個性を変換したものである。たとえば割合が100%であれば、対象話者の割合が0%および目標話者の割合が100%の割合であり、割合が50%であれば対象話者の割合が50%および目標話者の割合が50%の割合ということである。
処理F1では、音声分析部21は、目標話者の音声に変換するための変換対象音声の音声データをアナログデジタル変換器から取得する。処理F2では、音声分析部21は、取得した音声データの分析を行い、フレームごとに音声パラメタを生成する。処理F3では、音声分析部21は、生成した音声パラメタを実行用合成変換関数生成部22に送る。
処理F4では、実行用合成変換関数生成部22は、記憶装置から対象話者の母音テンプレートを読み出す。処理F5では、実行用合成変換関数生成部22は、記憶装置から個別変換関数を読み出す。処理F6では、実行用合成変換関数生成部22は、入力装置から指定される変換割合指定を取得する。
処理F7では、実行用合成変換関数生成部22は、フレームごとに、音声分析部21から受け取る音声パラメタ、読み出した母音テンプレートおよび個別変換関数、ならびに取得した変換割合指定を、変換関数合成用汎関数に与え、実行用合成変換関数を生成し、生成した実行用合成変換関数を変換音声合成部23に送る。フレームごとに、音声パラメタ、母音テンプレート、個別変換関数、および変換割合指定を、どのように変換関数合成用汎関数に与えて、実行用合成変換関数を生成するのかについては、図9で詳述する。
処理F8では、変換音声合成部23は、実行用合成変換関数生成部22から実行用合成変換関数を受け取る。処理F9では、変換音声合成部23は、実行用合成変換関数を用いて、現在のフレームの音声パラメタを変換する。具体的には、TANDEM−STRAIGHT(特許文献2,非特許文献3参照)の合成部に、スペクトル包絡、基本周波数、および非同期性指標を加えることによって、音声パラメタに変換する。処理F10では、変換音声合成部23は、変換した音声パラメタを用いて音声合成を行う。
処理F11では、変換音声合成部23は、音声合成した音声データを音声出力装置に送り、音声合成した音声を出力し、第1の音声合成処理手順を終了する。
図9は、個別変換関数30、変換関数合成用汎関数40および実行用合成変換関数50の関係を示す図である。変換関数合成用汎関数40は、対象話者の音声の音声パラメタの入力の値に基づいて、音声パラメタを変換するために用いられる実行用合成変換関数50を合成する汎関数である。実行用合成変換関数50は、周波数軸変換関数、スペクトル概形変換関数および非周期性指標変換関数の3種類の変換関数を含む。これら三種類の変換関数は、母音に対応する個別変換関数を、適切な割合で合成することによって求められる。
変換関数合成用汎関数40は、スペクトル包絡変換関数を合成するのためのスペクトル包絡変換関数合成汎関数43と、周波数軸変換関数を合成するのための周波数軸変換関数合成汎関数44と、非周期性指標変換関数を合成のための非周期性指標変換関数合成汎関数45とを含む。また、変換関数合成用汎関数40は、適切な割合を決めるために、入力音声パラメタ51の中のスペクトル包絡を計算するスペクトル包絡部41と、記憶装置に記憶される対象話者の母音テンプレートに基づいて、スペクトル包絡部41で計算されたスペクトル包絡と各母音テンプレートとの類似度を計算する類似度計算部42とを含む。
スペクトル包絡変換関数合成汎関数43は、個別変換関数30に含まれるスペクトル概形変換関数を、類似度計算部42によって計算された類似度と、変換割合指定53によって指定される変換割合とに基づいて、実行用合成変換関数50に含まれるスペクトル概形変換関数を合成する。
周波数軸変換関数合成汎関数44は、個別変換関数30に含まれる周波数軸変換関数を、類似度計算部42によって計算された類似度と、変換割合指定53によって指定される変換割合とに基づいて、実行用合成変換関数50に含まれる周波数軸変換関数を合成する。非周期性指標変換関数合成汎関数45は、個別変換関数30に含まれる非周期性指標変換関数を、類似度計算部42によって計算された類似度と、変換割合指定53によって指定される変換割合とに基づいて、実行用合成変換関数50に含まれる非周期性指標変換関数を合成する。
類似度に基づいて、具体的にどのように個別の変換関数を合成するかを説明する。周波数軸変換関数は、パラメタakおよびbkにより規定される。ある母音xについての個別の周波数軸変換関数を規定する係数をak V:xとbk V:xと表す。ここでkは、「0」から「M」までの整数である。合成された周波数軸変換関数を規定する係数つまりパラメタをak (cmp)とbk (cmp)と表す。また、母音xと現在のフレームの類似度をWV:xと表し、指定する変換割合をrとすると、合成された変換関数を規定する係数は、個別の変換関数を規定する係数から、式(25),(26)によって求められる。
ここで、Num(Vowel)は、母音の集合Vowelの要素の数を求める関数である。日本語の場合には、Num(Vowel)は、「5」となる。母音の集合Vowelは、日本語の場合には、「あ」、「い」、「う」、「え」および「お」を要素とする。
スペクトル概形変換関数も同様に、ある母音についてのスペクトル概形変換関数を規定する係数をpk V:xと表すと、合成されたスペクトル概形変換関数を規定する係数pk (cmp)は、式(27)で求められる。
あるフレームのスペクトルは、こうして合成された周波数軸変換関数を用いて、変換された後、こうして合成されたスペクトル概形変換関数を用いて、スペクトル概形が変換される。
式(25)(26)が、周波数軸変換関数合成汎関数であり、式(27)が、スペクトル包絡変換関数合成汎関数である。式(27)で求められた係数で規定されるスペクトル概形変換関数が実行用合成変換関数のスペクトル概形変換関数である。実行用合成変換関数の周波数軸変換関数は、式(25),(26)で求められた係数で規定される周波数軸変換関数である。これらの関数は、関数を設定するパラメタを計算する関数であるので、「関数の関数」という汎関数の定義に一致する。実行用合成変換関数の非周期性指標変換関数は、スペクトル概形変換関数と同じ形の式で表わされる。
図10は、実行部20が実行する第2の音声合成処理手順を示す図である。入力装置から実行段階を実行する指示があると、処理G1に移る。第2の音声合成処理手順は、学習段階で設計された複数の話者の変換関数合成用汎関数と、学習段階で生成された対象話者の母音テンプレートを用いて、対象話者の音声を、複数の目標話者を指定された割合で混合した音声に、近づける音声変換の実行手順である。複数の目標話者を指定された割合で混合した音声とは、複数の目標話者の音声を合成した場合に、合成後の音声の中に占める各目標話者の割合が、変換割合で指定された割合になるように混合した音声である。この場合対象話者の割合は0%である。処理G1〜3,G9〜G12は、図8に示した処理F1〜3,F8〜11と同じ処理であり、重複を避けるために説明は省略する。
処理G4N,G5N,G6Nは、第N番目の目標話者(以下「目標話者N」という。Nは、目標話者の数を表す自然数であり、任意に設定することができる)について、実行用合成変換関数生成部22が実行する処理である。処理G4Nでは、実行用合成変換関数生成部22は、記憶装置から対象話者の母音テンプレートを読み出す。処理G5Nでは、実行用合成変換関数生成部22は、記憶装置から個別変換関数を読み出す。処理G6Nでは、実行用合成変換関数生成部22は、フレームごとに、音声分析部21から受け取る音声パラメタ、読み出した母音テンプレートおよび個別変換関数を、変換関数合成用汎関数に与える。
処理G7では、実行用合成変換関数生成部22は、入力装置から指定される混合割合指定を取得する。処理G8では、実行用合成変換関数生成部22は、目標話者1〜Nの音声パラメタ、母音テンプレートおよび個別変換関数が与えられた変換関数合成用汎関数を、指定された混合割合で混合した変換関数混合用汎関数を生成し、生成した変換関数混合用汎関数によって実行用合成変換関数を生成し、生成した実行用合成変換関数を変換音声合成部23に送る。
複数の目標話者の混合を行う場合には、個別の変換関数を規定する係数および類似度を、個別の母音xの添字と目標話者を指定する添字Cをつけて、ak V:xCおよびbk V:xC、pk V:xC、WV:xCと表すこととする。さらに混合割合指定は、rCと、目標話者を添字とする数字の組となる。これらを用いて、合成された変換関数を規定する係数は、式(28)〜式(30)のように求められる。ここでTalkerは、話者の集合を表す。式(28)〜式(30)が、変換関数混合用汎関数である。
図11は、目標話者の母音ごとの音声波形の一例を示す図である。以下、具体的な実施例について、図11〜図15を用いて説明する。図11は、目標話者が5つの母音「あ」、「い」、「う」、「え」および「お」を単独で発生した音声の波形である。縦軸が音声の振幅であり、横軸が時間である。時間は、音声の波形の上側に示され、単位は秒である。左から順に母音「あ」、「い」、「う」、「え」および「お」の音声の波形が示され、それぞれの音声の波形の区間の下側に、各母音のラベル情報、具体的には「a」、「i」、「u」、「e」および「o」が示されている。
図12は、対象話者の音声波形の一例を示す図である。対象話者が「コーヒーにミルクを入れますか?」という文章を読み上げたときの音声の波形を示す。縦軸および横軸は、図11と同じであり、図11と同様に、音声の波形の下側にラベル情報が示されている。上述した実施形態では、対象話者の5つの母音を用いたが、文章を読み上げた音声の中に、「あ」、「い」、「う」、「え」および「お」の5つの母音が含まれていれば、その音声の中の5つの母音を用いることによって変換することができる。母音は、子音とくみあわされていてもよい。たとえば「た」あるいは「は」があれば、「あ」の母音を抽出することができる。
これらの音声の波形は、TANDEM−STRAIGHT(特許文献2,非特許文献3参照)によって分析され、5msごとに、スペクトル包絡PTST(ω,t)、基本周波数f0(t)、非周期性指標R(ω,t)が求められる。以下、音声の話者を区別する必要がある場合には、対象話者には(src)、目標話者には(tgt)を、それぞれの変数の上付きの添字として明記する。
周波数軸変換関数の設計では、代表的なフレームの選択、および母音テンプレートの設計を行う。上述した実施形態では、すべてのフレームについて行ったが、代表的なフレームとしても本質的な問題は生じない。すなわち、代表的なフレームを選択して、それを対象とするフレームとしてもよいし、母音のラベルがついている区間全部を対象とするフレームとしてもよい。母音のラベルが付与された区間のなkでも、始まりの部分や終りの部分の分析フレームで求められるスペクトル包絡は、調音結合という現象の影響を大きく受けて、典型的な母音のスペクトル包絡が崩れてしまうことがある。そのようなフレームを母音テンプレートの設計に持ちたっ倍には、変換音声の品質の劣化につながるので、このような場合には、そのような問題を有しない代表的なフレームを選択するとよい。このような代表的なフレームを選択することによって、学習に必要な計算時間を大きく削減することができる。
代表的なフレームの選択では、まず、それぞれのラベル付けられた母音区間を代表するようなフレームを選択するために、予め、スペクトル包絡をMFCCに変換しておく。ここでは、M(k,t)で表すこととする。
ある一つの母音区間の2つの時刻をti,tjとし、「MFCC距離dMFCC(i,j)」を式(31)で定義する。
このdMFCC(i,j)を、各時刻において小さなものから順に並び替え、小さいものから40%の順位における距離が最も小さくなる時刻を、その母音区間を代表する時刻として選択する。
このようにすることで、様々な原因で生ずる離れ値の影響を受けない代表を選択することができる。
次に、母音テンプレートの設計では、母音を代表するテンプレートを設計する。まず、こうして選択された母音区間を代表するMFCCを、対象話者の場合にはMV:a (src)(k,j)、目標話者の場合にはMV:a (tgt)(k,j)と表すこととする。下付き添字は、母音の種類を表す。たとえば、母音「あ」の場合には、V:a、「い」の場合にはV:iのように、母音に対応する英文字を用いることにする。MFCCの第2番目の添字jは、同じ母音に属する母音区間のいずれであるかを示す通し番号である。
このような準備の下、同一カテゴリに属する母音間の距離の分布と、異なるカテゴリに属する母音間の距離の分布を求める。同じカテゴリに属する母音間の距離をdV:a:in(i,j)と標記し、異なるカテゴリに属する母音間の距離をdV:a:out(i,j)と標記することとする。同じカテゴリに属する母音間の距離dV:a:in(i,j)、および異なるカテゴリに属する母音間の距離dV:a:out(i,j)は、式(32)、式(33)で表わされる。
ここで、x,yには、母音のカテゴリを表す英字が代入される。距離が、対象話者であるか、目標話者であるかを明記する場合には、同様に上付きの添字とし,対象話者には(src)、目標話者には(tgt)を付す。
図13は、目標話者および対象話者について同一カテゴリに属する母音間の距離と、異なったカテゴリに属する母音間の距離との分布を示す図である。縦軸は確率であり、累積分布(図13では「cumulative distribution」と記す)の形で表している。横軸は、スペクトルの距離(図13では「spectral distance(dB)」と記す)である。
累積分布とは、具体的には、あるフレームの母音のMFCCから同一カテゴリに属する母音のMFCCまでの距離がある閾値dθ以下である確率Pr(dV:x:in(i,j)<dθ)と、あるフレームの母音のMFCCから異なるカテゴリに属する母音のMFCCまでの距離がある閾値dθ以下である確率Pr(dV:x:out(i,j)<dθ)を、スペクトル距離の閾値dθの関数として表している。確率Pr(dV:x:in(i,j)<dθ)および確率Pr(dV:x:out(i,j)<dθ)は、分析結果のデータから計算される確率である。
図13(a)は、図11に示した目標話者の音声波形の場合の累積分布であり、図13(b)は、図12に示した対象話者の音声波形の場合の累積分布である。目標話者の音声は単独発声された母音であるため、同一カテゴリと異なったカテゴリとの母音の間の距離の分布は、明確に分かれている。一方、対象話者の音声の場合には、文章中の母音区間が対象であるため、同一カテゴリの母音間の距離が異なったカテゴリの母音間の距離よりも大きな場合が生じている。
ここで、Pr(dV:x:in(i,j)<dθ)は、注目している母音区間と同じ母音カテゴリの区間のMFCCが同じものであることを見逃す確率であり、Pr(dV:x:out(i,j)<dθ)は、注目している母音区間とは別の母音カテゴリの区間のMFCCを同じカテゴリに属しているものと誤認する確率である。見逃しの確率と誤認する確率とが等しくなる場合の確率の値は、注目している母音区間を代表するMFCCの『良さ』を表す一つの指標である。この場合、確率が低いほど『良い』ことになる。この『良さ』に基づいて、それぞれの母音カテゴリの上位N個の区間のMFCCを平均することによって、それぞれの母音テンプレートを作成する。
図14は、各母音について上位3個の母音区間の平均として求めた母音テンプレートの一例を示す図である。上位3個とは、MFCCの『良さ』の上位3個ということである。
実線は、対象話者の母音テンプレートであり、破線は、話者の母音テンプレートである。目標図14の母音テンプレートでは、ピークの位置も、スペクトル全体の傾きや強くなっている部分なども目標話者と対象話者とでは異なっていることが分かる。なお、ここでは、人間の知覚特性と同じような見方でスペクトルを表示するために、対数周波数軸を用いている。
このようにして求められた対象話者と目標話者との母音テンプレートに共通する特性の違いを、人間の聴覚系の周波数分解能を対数周波数軸よりも精密に模した「ERBN number周波数fERB」軸上でのコサイン級数による展開の低次係数を用いた近似によって抽出する。ERBN number周波数fERBは、周波数fの関数として、式(34)によって表される。
fERB=21.4log10(0.00437f+1) …(34)
ERBN numberについては、たとえば非特許文献「B.C.J. Moore: “An
introduction to psychology of hearing, 5th edition”, Academic Press,San Diego,
CA (2003).(邦訳は「聴覚心理学概論」ただし、第三版の訳)」に記載されている。こうして求めた対象話者と目標話者との母音テンプレートに共通する特性の違いを用いて、母音テンプレートを補償しておく。
対数スペクトルで表した対象話者および目標話者の母音テンプレートのそれぞれの平均値の差をD(fERB)と表し、それを平滑化したものをDS(fERB)とする。DS(fERB)は、D(fERB)をコサイン級数で展開し、低次の係数を用いて合成することで、式(35)によって求められる。
このskを用い、平均値の差を平滑化したDS(f)は、式(36)のように求められる。
このDS(f)を予め目標話者の母音テンプレートから引いて取り除いておくことによって、スペクトル概形変換関数に共通の成分が含まれることを防ぐことができる。DS(f)は、DS(fERB)を、実際の周波数fの関数として表したものである。音声のスペクトル包絡は、周波数の関数として求められているので、実際に母音のテンプレートを補償するためには、DS(fERB)を、周波数fの関数であるDS(f)に変換して用いる必要がある。ここでは、この2段階を1つの式にまとめて表している。
図15は、対象話者と目標話者との母音テンプレートに共通する特性の違いを示す図である。縦軸は、バイアス(図15では「bias(dB)」と記す)であり、横軸は周波数(図15では「frequency(Hz)」と記す)である。破線は、平滑化前の共通する特性の違いを示し、実線は、8次のコサイン級数によって平滑化された共通する特性の違いを示す。
図16は、エラーレベルを用いた評価結果を示す図である。この評価結果は、本発明の効果を示すために行った評価の結果である。縦軸はエラーレベル(図16では「error
level(%)」と記す)であり、誤判断の確率を表している。誤判断の確率とは、目標話者の母音テンプレートと、同じ母音カテゴリに属する母音ラベルが付されている対象話者の母音区間を代表するスペクトル包絡との間の距離の分布と、異なる母音カテゴリに属する母音ラベルが付されている対象話者の母音区間を代表するスペクトル包絡との間の距離の分布とが交差する距離を閾値として母音カテゴリを判断した場合の誤判断の確率を表している。
横軸は、対象話者の音声に加えられた処理の種類(図16では「conditions」と記す)を示す。エラーレベルは、エラーレベルの値が小さいほどよい。処理の種類として、4つの処理の種類、具体的には、条件WO、条件SS、条件CVおよび条件FLを横軸に付している。
条件WOは、対象話者と目標話者との母音テンプレート間のバイアス補償なしの距離を用いた場合である。条件SSは、対象話者と目標話者との母音テンプレート間のバイアス補償ありの距離を用いた場合である。条件CVは、対象話者と目標話者との母音テンプレート間のバイアス補償ありで、かつ本発明の変換関数を用いて変換した距離を用いた場合である。条件FLは、条件CVに、さらにケプストラムを用いた重み付けによるスペクトルの強調を行った距離を用いた場合である。
図17は、誤判断の確率の求め方を説明するための図である。縦軸は、誤判定の確率(図17では「sample probability」と記す)を示し、横軸はMFCC距離(図17では「spectral distance in MFCC(dB)」と記す)を示す。図17は、処理の種類ごとに、距離と累積分布との関係を示している。
左上がりの曲線は、同じ母音カテゴリの母音区間に含まれるフレームのスペクトルと、目標話者の母音テンプレートとの距離が、横軸の値つまり距離よりも大きな場合の確率を示す。右上がりの曲線は、異なった母音カテゴリの母音区間に含まれるフレームのスペクトルと、目標話者の母音テンプレートとの距離が、横軸の値つまり距離よりも大きな場合の確率を示す。この左上がりの曲線と右上がりの曲線との交点の縦軸の値として、誤り率、つまり誤判断の確率が求められる。
図16では、本発明の変換関数を用いた条件CVのときにエラーレベルが小さくなっていることがわかる。すなわち、本発明によって、対象話者と目標話者の特徴点の抽出を手作業で行うことなしに、STRAIGHTを用いて、音声のテクスチャマッピングの考え方を応用した母音に基づく音声変換方法(非特許文献7参照)と同程度の高い品質を有する音声に変換することができる。
このように、学習部10によって、変換対象の話者の母音の音声と変換目標の話者の母音の音声とに基づいて、変換対象の話者の音声を変換目標の話者の音声に変換するための個別変換関数が母音ごとに生成される。
したがって、音声の特徴点を抽出する手作業なしに、極めて少ない学習用のデータ、具体的には5つの母音の音声データに基づいて、ある話者によって話された音声を、その話者以外の話者によって話されたような高い品質を有する音声に変換することができる。
また本発明によれば、学習部10によって、母音ごとの個別変換関数を生成した後、生成した母音ごとの個別変換関数を合成して変換対象の話者の音声を変換目標の話者の音声に変換する実行時変換関数を生成するための変換関数合成用汎関数が生成される。したがって、音声の特徴点を抽出する手作業なしに、変換対象の話者の音声を変換目標の話者の音声に変換する実行時変換関数を生成するための変換関数合成用汎関数を、個別変換関数とともに生成することができる。
また本発明によれば、実行部20によって、学習部10で生成された母音ごとの個別変換関数および変換関数合成用汎関数を含む変換関数に基づいて実行時変換関数が生成され、生成された実行時変換関数を用いて、変換対象の話者の音声が変換目標の話者の音声に変換される。したがって、変換対象の話者の音声を入力するだけで、学習部10によって生成された個別変換関数および変換関数合成用汎関数を用いて実行時変換関数し、生成した実行時変換関数を用いて、変換対象の話者の音声を変換目標の話者の音声に変換することができる。
また本発明によれば、学習部10によって、母音ごとの個別変換関数として、変換対象の話者の音声と変換目標の話者の音声との周波数軸の対応関係に基づいて周波数軸を変換する周波数軸変換関数、周波数軸変換関数によって変換された周波数軸の上でのスペクトル包絡の概形の違いを少なくするように変換するスペクトル概形変換関数、および音声の中の周期的な成分と非周期的な成分との割合を示す非周期性指標を変換する非同期性指標変換関数が生成される。したがって、周波数軸、スペクトル概形および非周期性指標を勘案した個別変換関数とすることができる。
また本発明によれば、変換対象の話者の音声を変換目標の話者の音声に変換する音声変換装置が音声を変換するにあたって、学習段階では、変換対象の話者の母音の音声と変換目標の話者の母音の音声とに基づいて、変換対象の話者の音声を変換目標の話者の音声に変換するための個別変換関数を母音ごとに生成する。
したがって、音声の特徴点を抽出する手作業なしに、極めて少ない学習用のデータ、具体的には5つの母音の音声データに基づいて、ある話者によって話された音声を、その話者以外の話者によって話されたような高い品質を有する音声に変換することができる。