JP6959901B2 - 時系列データ生成装置、方法及びプログラム - Google Patents

時系列データ生成装置、方法及びプログラム Download PDF

Info

Publication number
JP6959901B2
JP6959901B2 JP2018195035A JP2018195035A JP6959901B2 JP 6959901 B2 JP6959901 B2 JP 6959901B2 JP 2018195035 A JP2018195035 A JP 2018195035A JP 2018195035 A JP2018195035 A JP 2018195035A JP 6959901 B2 JP6959901 B2 JP 6959901B2
Authority
JP
Japan
Prior art keywords
time
series data
order
parameter
feature
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.)
Active
Application number
JP2018195035A
Other languages
English (en)
Other versions
JP2020064143A (ja
Inventor
信行 西澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2018195035A priority Critical patent/JP6959901B2/ja
Publication of JP2020064143A publication Critical patent/JP2020064143A/ja
Application granted granted Critical
Publication of JP6959901B2 publication Critical patent/JP6959901B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Description

本発明は、音声合成やその他の目的のために滑らかな時系列データを生成するための特徴パラメータ軌跡生成に関して、計算結果の品質を確保しつつ計算量も抑制することが可能な時系列データ生成装置、方法及びプログラムに関する。
音声合成技術の代表的な利用方法として、テキスト音声変換(Text-To-Speech)が挙げられる。以下、テキスト解析等の結果得られる音素の種類や韻律的特徴を表記した記号(以下、音声合成記号と呼ぶ。)を入力とし、音声波形を生成する装置を音声合成装置と呼ぶ。すなわち、音声合成装置は以下の第二処理を担うものであることから、以下の第一処理及び第二処理を担うテキスト音声変換システムの構成要素として利用可能である。
(第一処理)テキストを入力として音声合成記号を出力する。
(第二処理)音声合成記号を入力として音声波形を出力する。
音声合成装置への入力としての音声合成記号には様々な形式があり得るが、ここでは、一連の音声を構成する音素の情報と、主としてポーズや声の高さとして表現される韻律的情報を同時に表記したものを考える。そのような音声合成用記号の例として、JEITA(電子情報技術産業協会)規格IT−4006「日本語テキスト音声合成用記号」がある(非特許文献1参照)。音声合成装置は、このような音声合成記号に基づいてそれに対応する音声波形を生成する。ただし、一般に音声波形は合成対象の音素だけでなく、前後の音素の種類や韻律的特徴の影響を強く受けるため、一般的に音声合成記号と音声波形の対応関係は複雑になる。
音声合成装置による音声波形の生成方法には様々な方式があるが、音声の短時間スペクトルの特徴や有声・無声情報、基本周波数(F0)を特徴パラメータとし、5ms(ミリ秒)程度の間隔で特徴パラメータを更新し、更新される特徴パラメータに基づき音声波形を信号処理的に生成する方法がある。以下、この更新間隔を1フレームと呼ぶ。自然音声の分析により求めた各フレームの特徴パラメータと、当該自然音声の当該フレームに対応する音声合成記号の組を学習データとして、音声合成記号から対応する音声特徴パラメータを予測するモデルを機械学習手法により推定し、このように学習したモデルを用いて音声合成を行う手法が広く用いられている。
その1つであるHMM(隠れマフコフモデル)音声合成方式では、時間軸方向の音声の特徴変化をHMMの隠れ状態遷移に対応させてモデル化している。一音素内でも音声特徴パラメータは変化するが、音素内の状態遷移を学習データとして陽に与えるのではなく、隠れ状態としており、状態遷移も同時に学習される形となる。最終的に、音声合成記号からHMMの各パラメータを予測する決定木が学習される。一方、音声合成時はそのように学習したモデルから隠れ状態の遷移を決定的に決めている。このため音声合成の際、ある時刻に状態が切り替わると、その時刻でHMMの出力も不連続に変化する。実際の音声の特徴は時間的に連続的に変化するので、HMMの出力を直接音声合成に用いてしまうと、自然音声と比較し聴感的にも不連続な音声となる。この問題に対処するため、元の特徴の動的特徴量、具体的にはデルタパラメータ(一階差分)やデルタデルタパラメータ(二階差分)も併せて特徴としてモデル化する手法が用いられる(非特許文献2参照)。
非特許文献2の手法は次の通りである。
以下、ある時刻の元の音声特徴パラメータに直接対応する特徴を静的特徴といい、ある時刻の動的特徴は、複数時刻(当該ある時刻の所定近傍範囲(過去及び未来の両方向に延びる範囲)での複数時刻)の静的特徴値の重み付け和で計算できるものとする。この関係は以下の式(1)で表現することができる。
o=Wc …(1)
式(1)でcは静的特徴を時刻順に並べたベクトル(すなわち音声合成パラメータの時系列データ(軌跡)を表すベクトル)であり、oはHMMの出力ベクトルで、静的特徴と動的特徴を連結し、それをさらに時刻順に並べたベクトルである。Wはcからoへの変換行列である。
音声合成で最終的に必要となるのはcだが、HMM音声合成ではまず音声合成記号から、HMMの出力ベクトルoの分布に関するパラメータを決定木等で予測し、この分布のパラメータで決まる出力oのモデルの尤度が最大となるようなベクトルcを音声合成に用いる。oの分布を正規分布でモデル化する場合、oの分布平均ベクトルをμ、oの分散共分散行列をΣとすると、対数尤度を最大化するベクトルcは以下の式(2)を解くことで求めることができる。
Dc{(Wc-μ)TΣ-1(Wc-μ)}=0 …(2)
式(2)においてDc{・}はベクトルcの各要素による偏微分∂/∂cの演算を表す。また、T(上付きのT)は転置を表し、以下同様とする。式(2)を解くことで以下の式(3)のようにベクトルcを得ることができる。
c=(WTΣ-1W)-1WTΣ-1μ …(3)
このように計算したcは動的特徴も考慮された特徴パラメータ軌跡になる。動的特徴は音声特徴パラメータ軌跡の時間的な連続性に対する強い制約となるので、HMM状態遷移を決定的に決めることでHMMの出力であるoが不連続に変化しても、計算されるcはある程度連続なものとなる。(従って、cから得られる音声も動的特徴を考慮しない場合と比べてより自然なものとなる。)より一般的には、o=Wc(式(1))で求まる、元の音声特徴パラメータに対応するベクトルcよりも次元数の大きい連続性に関する何らかの特徴を要素として含んだベクトルoを定義し、oの分布パラメータで表現されるoのモデルの尤度を最大にするcを求めることで連続性を考慮した特徴パラメータ軌跡を求める方法といえる。このような計算に基づく処理は、特徴パラメータ軌跡生成処理と呼ばれる。なお、これまでの説明では、oの分布を決めるためにHMMを用いていたが、ここで説明する特徴パラメータ軌跡生成処理はHMMを用いることが必須ではない。各フレームのoの分布が何らかの方法で決まれば良く、例えば、音素先頭からの相対位置と音声合成記号から各フレームのoの分布をそれぞれ決定木で決める方法や、ニューラルネットワークを用いて決める方法を用いても良い。この場合、音素の長さも同様に決定木やニューラルネットワークを用いて決めることで、各フレームにおいて音素と音素先頭からの相対位置から決まり、全てのフレームのoの分布をそれぞれ音声合成記号から決めることができる。
ここで、分散共分散行列Σとして対角行列を採用することが多い。これはベクトルoの各次元間に相関がないことを仮定していることに対応し、cを構成する多次元の特徴に対しても、その次元間の相関を無視できると仮定したことになる。なお、多次元の音声特徴における次元間の相関を無視した場合の影響が大きくないことは経験的にも知られている。さらに対象時刻の前後限られた区間のcの要素からoを計算するようにWを定義すると、式(3)の(WTΣ-1W)はバンド幅が((考慮するフレーム数)−1)の対称帯行列となり、cを求めるために必要な計算量はcの大きさのみに比例する。cの大きさは音声合成対象の音声のフレーム数に対応するので、合成対象の音声が時間的に長い場合、一度にcを計算しようとすると、cの大きさに比例する処理時間が掛かってしまい、音声合成指示から音声再生が開始されるまでの時間、すなわちシステムの応答遅延が長くなるという問題がある。また、cから信号処理で実際の音声合成波形を生成する処理(波形生成処理)のためにcを一時的に保存する必要があり、cが大きくなるとそのために必要なメモリ量も増えるという問題もある。
このような問題に対して、システムの応答遅延を短縮することを主な目的として、特徴パラメータ軌跡生成をRLS(再帰的最小二乗法)アルゴリズムに相当する計算アルゴリズムで行う方法は提案されており、これを用いることでフレーム毎の逐次パラメータ計算が可能となる(非特許文献3参照)。
「日本語テキスト音声合成用記号」JEITA規格 IT−4006、電子情報技術産業協会、2010年3月 益子貴史、徳田恵一、小林隆夫、今井 聖、「動的特徴を用いたHMMに基づく音声合成」、電子情報通信学会論文誌(D-II), J79-D-II, 12, pp.2184-2190, Dec. 1996. Kazuhito Koishida, Keiichi Tokuda, Takashi Masuko and Takao Kobayashi, ``Vector quantization of speech spectral parameters using statistics of static and dynamic features,'' IEICE Trans. Inf. & Syst., vol. E84-D, no. 10, pp. 1427-1434, October, 2001.
非特許文献3においては上記の通りシステムの応答遅延は短縮できたものの、こうした従来技術には特徴パラメータ軌跡生成の計算処理量の最適化に関して更なる改善の余地が残っていた。
すなわち、非特許文献3の手法はパラメータ計算において考慮する過去の出力フレーム数の二乗に比例する計算量となるため、考慮する過去の出力フレーム数を増やす(長くする)と一発話全体の処理量が大幅に増加することになる。つまり、応答遅延は短縮できても、処理量の増加に対処すべく、より高速な計算器を必要とするものであった。一方で、非特許文献3の手法において処理量の増加を抑制するための単純な対処として、考慮する過去の出力フレーム数を減らしたとすると、一発話全体で誤差を最小としていたベース手法(非特許文献2の手法)との誤差が大きくなり、合成音声品質が劣化する可能性が高い。
その他にも、非特許文献2や3の手法を前提として特徴パラメータ軌跡生成の計算の最適化を行うアプローチとして図1ないし図3で示すものも考えられるが、以下に説明する通り、このようなアプローチも改善の余地がある。
図1の手法は次のような考察に基づく。音声合成では多くの場合、発話単位で音声合成指示が与えられるので、一発話の音声合成処理開始時点で、その発話の終了時点までの指令情報が確定している。従って、極端なメモリ削減や応答遅延時間の短縮が必要なければ、フレーム毎のパラメータの逐次計算を行うのではなく、数十から数百フレームを1ブロックとして、各ブロックをベース手法(非特許文献2)で計算する方法を発話先頭から順に繰り返し、最終的に一発話分のパラメータを計算する方法を取ることができる。図1ではこのようなブロック例として4つのブロックC(k1),(Ck2),C(k3),C(k4)が示されている。この方法でも、1発話全体のcを最初に一度計算する方法よりも処理遅延時間を短縮でき、かつメモリ量を抑えることができる。
図1の手法ではさらに、次のような考察に基づき、ブロック間に重複を設けるようにしている。すなわち、ブロック分割して計算する場合、動的特徴に、既に確定したブロックより前のフレームの値を反映させることで、ブロックの先頭側についてはパラメータ軌跡の連続性を担保できるが、ブロックの末尾に近い部分では、当該ブロックよりもさらに後ろの情報を考慮せずにパラメータ軌跡計算をすることになるので、一発話全体を一度に計算した場合とパラメータ軌跡の差異が大きくなると考えられる(例えば図1の[3]に示すブロックC(k1)の後端側部)。さらに確定した値が次のブロックに影響するので、実際には、ブロックの末尾部分だけでなく、先頭部分も同様の影響を受ける(例えば図1の[1]に示すブロックC(k1)の前端側部)。これらを除いた中間部は影響が少なくパラメータ軌跡の差異は小さい(例えば図1の[2]に示すブロックC(k1)の中間部)。
この影響を緩和するためには、単純には、1ブロックのパラメータ軌跡計算において、ブロックのさらに後ろのフレームまで考慮して計算し、ブロック範囲の外側のパラメータ軌跡計算結果を捨てればよい。図1ではこのようにブロックの後端側部の結果を捨てることが可能なように各ブロックに重複を設けている。ここで、捨てるものとして考慮する後ろのフレームの数(長さ)を長くするほど、ベース手法(非特許文献2)で一度に一発話分を計算した結果に近づくと考えられるが、処理量が増加する。例えば一ブロックの長さが100フレームで、1ブロックの計算でブロック終端からさらに10フレーム後まで計算した場合、従来法と比較して一発話全体の処理量は10%増加することになる。
しかし、図1の手法を用いるとしても、実際の特徴パラメータ軌跡の計算においては、多次元で構成される特徴パラメータの各次元のパラメータをどのような順番で計算するか、ということに関して検討の余地が残っている。
当該順番に関して、まず、音声合成出力の理想的には1フレーム毎に特定の特徴の次元のパラメータ軌跡計算を行い、多数次元のパラメータ軌跡計算が特定時間内に集中しないようにすることが望ましい。例えば図2は全次元のパラメータ軌跡生成を行ってから音声波形生成処理を行う例であり、図3は音声波形生成処理の1フレーム分毎に1次元分のパラメータ軌跡計算を行う例である。ここで、F0(k1:k2)は時刻k1(フレーム時刻)からk2までの基本周波数F0のパラメータ軌跡生成処理、Cm(k1:k2)は時刻k1からk2のメルケプストラムm次係数(図2,3では例としてm=0,1,2,…,7)(スペクトル包絡特性を表す特徴量である)のパラメータ軌跡生成処理、W(k)はフレーム時刻kの音声波形生成処理である。ここで、F0(k1:k2)やCm(k1:k2)は最終的な生成対象が時刻k1からk2までであることを意味し、図1の手法として説明したように、実際の生成処理ではフレーム時刻k2よりも後についても考慮した処理方法を用いることができること(すなわち、フレーム時刻k2よりも後のフレーム時刻k3までも計算しておくが、当該計算したk2<k≦k3の間のフレーム時刻kに関して生成されたパラメータは音声合成には利用しないようにすること)に注意されたい。
図2では横軸を処理時刻(フレーム時刻kとは別の、各パラメータ軌跡生成処理を行う実時刻に対応した処理時刻t)とし、[1]にパラメータ軌跡生成処理が示され、[2]に音声波形生成処理が示されている。(なお、既に述べた図1も、横軸はこの意味での処理時刻tとなっている。)図3でも同様に横軸方向を処理時刻tとして、[1]にパラメータ軌跡生成処理が示され、[2]に音声波形生成処理が示されている。
合成音声を実際に出力する処理が途切れないようにするためには、図2のタイミングでは特徴パラメータ軌跡処理([1])を出来るだけ高速化し、(すなわち、完了時刻t1,t2等が可能な限り早くなるようにし、)かつ音声波形生成結果([2]の結果)をバッファリングして、特徴パラメータ軌跡処理の処理中に音が途切れないようにする必要がある。なお、既にパラメータ軌跡の記号に関して定義した通り、図2において時刻t1はフレーム時刻kからk+8までの全パラメータF0,C0,…,C7の生成完了時刻であり、時刻t2はフレーム時刻k+9からk+17までの全パラメータF0,C0,…,C7の生成完了時刻である。図3の処理順にすることで、処理負荷が時間的に平滑化(処理完了時刻の分布が平滑化)され、バッファリングのためのメモリサイズも削減される。これにより低い性能の計算機でも処理が可能になる。
図3では、パラメータX(例えばX=F0(k:k+8))の生成完了時刻をt[X]と表記している。図3の処理順は(その少なくとも一部が)示される通り、生成対象のパラメータの種類をF0,C0,C1,…,C7と所定順序で切り替えつつ、生成対象のパラメータのフレーム時刻範囲を(k:k+8),(k+1:k+9),(k+2,k+10),…,(k+8:k+16)と1ずつ前方(時刻の進む方向)へとシフトさせていく、というものである。また、これと並行させて、時刻範囲(k+i:k+i+8)(i=0,1,2,…,8)のパラメータ生成が完了したところで、フレーム時刻k+iにおける全種類のパラメータF0,C0,C1,…,C7が生成完了していることにより、音声波形W(k+i)を生成するようにしている。図示される範囲外となるフレーム時刻k+9以降やフレーム時刻k以前に関してもこれと同様に周期的なパラメータ及び音声波形の生成処理が行われることとなる。
しかしながら、図2や図3の手法において、各次元の計算は図1と同じ手法によるものであるため、計算の際に計算において考慮するブロック末尾よりさらに後のフレーム数を減らしてしまうと、ベース手法(非特許文献2)による計算結果との相違が大きくなるという問題は同様に発生する。
先述したように、図1の手法では、メモリ消費量削減および応答遅延時間短縮の目的に、ベース手法(非特許文献2)を繰り返す方法でパラメータ軌跡計算を行う場合、処理量を減らすために計算において考慮するブロック末尾よりさらに後のフレーム数を減らしてしまうと、特にブロック境界付近(ブロック先頭に近いフレームおよびブロック末尾に近いフレーム)において、一発話全体をベース手法で計算した結果との差異が大きくなると考えられる。特に図2のタイミングによる方法の場合、差異が大きくなる時刻が全ての特徴を通じて同じような時刻になって短時間的に影響がより大きくなってしまう。一方、図3の方法では差異が大きくなる時刻が特徴毎に異なり、図2よりも影響は小さくなる。しかし、差異への影響がより大きい複数の特徴において、差異が大きくなる時刻が近接し、依然としてその部分だけ短時間的に差異が大きくなってしまう可能性がある。
以上のように、従来技術においては、ベース手法での計算結果からの相違(当該相違が大きいほど得られる合成音声も不自然となる)すなわち計算結果の品質と計算量(メモリ消費量(空間計算量)や応答遅延(時間計算量)として評価される計算量)との間のトレードオフがあるなかで、必ずしも特徴パラメータ軌跡計算処理の最適化がなされていないという課題があった。以上では合成音声の場合を例として説明したが、その他一般の時系列データにおける特徴パラメータ軌跡計算処理に関しても同様の課題が成立する。
本発明は、当該従来技術の課題に鑑み、計算結果の品質を確保しつつ計算量も抑制することが可能な時系列データ生成装置、方法及びプログラムを提供することを目的とする。
上記目的を達成するため、本発明は、各時刻において複数時刻の値の組み合わせとして定義される複数種類の特徴分布パラメータ時系列を入力として、所定の基準に基づき系列として最適化された多次元時系列データを出力する時系列データ生成装置であって、前記時系列データ生成装置は、処理単位ステップごとに当該ステップ回数に応じて時間進行方向に移動するウィンドウ内のフレームデータとして特徴分布パラメータ時系列を読み込み、当該ステップ回数に応じた所定の繰り返し順序で多次元時系列データの各次元の時系列データを算出し、当該所定の繰り返し順序は、多次元時系列データの各次元のうち、誤差がある場合の影響が大きくなる次元同士が当該順序において離れるように構成されていることを特徴とする。また、前記生成装置に対応する方法及びプログラムであることを特徴とする。
本発明によれば、誤差がある場合の影響が大きくなるもの同士が当該順序上において離れるように構成された繰り返し順序で各次元の特徴パラメータを、ウィンドウ内のフレームデータから得るようにすることで、結果的に得られる特徴パラメータ軌跡において影響の大きなものの出現を時間軸上で分散させることが可能となり、計算結果の品質を確保しつつ計算量も抑制して特徴パラメータ軌跡を生成することが可能となる。
パラメータ特徴軌跡計算の一手法を示す図である。 パラメータ特徴軌跡計算の一手法を示す図である。 パラメータ特徴軌跡計算の一手法を示す図である。 一実施形態に係る時系列データ生成装置の機能ブロック図である。 一実施形態に係る時系列データ生成装置の動作のフローチャートである。 図5のフローチャートの動作によって処理されるデータの模式例を示す図である。 図5のフローチャートの動作によって処理されるデータの模式例を示す図である。 図6の対比例を示す図である。 図7の対比例を示す図である。 設定部においてインデックスを2進数表現上で逆順にする方法を適用した具体的な計算過程を示す図である。
図4は、一実施形態に係る生成装置の機能ブロック図である。生成装置10は、生成部1、合成部2及び設定部3を備え、音声を扱う場合、その全体的な動作として前述した第二処理を行うことが可能なもの、すなわち、音声合成対象となる音声合成記号を変換して得られる各フレーム時刻kの分布パラメータ(以下説明する前処理による)を入力とし、当該分布パラメータを処理して、音声波形合成のための多次元の特徴パラメータを各フレーム時刻kの時系列として逐次的に出力するものであり、さらに当該特徴パラメータを音声合成して合成音声を出力することも可能なものである。なお、後述するように、生成装置10は音声以外に関する時系列データについても同様に扱うことが可能であるが、以下の説明において具体例に言及する場合には、音声を例とする。
音声を扱う場合、次の前処理を予め行うことで時系列データ生成装置10の入力データを用意すればよいが、当該前処理は時系列データ生成装置10内で実施してもよい。すなわち、テキストから変換された音素及び韻律の情報を含んだ音声合成記号(時間進行方向の記号列となっている)に対し、音声合成記号に含まれる各音素の継続フレーム数を音声合成記号から決定して、各フレームの静的特徴量および動的特徴量の分布のモデルに対するパラメータ(正規分布であれば平均と分散、以下、「特徴分布パラメータ」という)を逐次的に読み込むようにすればよい。こうして、生成部1では、入力された特徴分布パラメータで決まる値の分布のモデルに対する最尤な出力時系列として、音声波形合成のための多次元の特徴パラメータを時系列として逐次的に出力することができる。
生成部1での逐次的な読み込み及び出力は、設定部3において予め設定しておいた順序に従ってなされる。設定部3で設定する順序やこれに従った生成部1での逐次的な処理の詳細は、図5ないし図7を参照して後述する。
合成部2は、生成部1から得られた多次元時系列データに対してさらに合成処理を行うものであり、例えば音声を扱う場合であれば、実際の音声波形としての音声を合成して出力する。なお、生成装置10からは合成部2を省略し、合成音声ではなくて生成部1で生成された特徴パラメータを出力するようにする構成も可能である。
図5は、一実施形態に係る時系列データ生成装置10の動作のフローチャートである。当該フローチャートの説明のための前提事項をまず説明する。図示されるように、図5のフローチャートの全体は、ステップS10,S11,S12,S13が繰り返されることで生成部1等での逐次的な処理が実現されるものである。当該繰り返し回数i=1,2,3,…は生成部1等での処理単位ステップの回数に相当するものであり、また、生成部1等での計算処理等の時間進行に沿ったものとなる。ただし、回数iと実際の計算時間の経過とは必ずしも比例で対応している必要はなく、回数iの経過と共に計算時間も経過してゆくという関係があることによって、回数iは現時刻番号iの意味も有する。以下、このような回数(現時刻番号)i=1,2,3,…により各ステップが繰り返されるものとして、図5の各ステップの説明を行う。
図5のフローは、回数(現時刻番号)i=1(初期値)のもとで開始されてステップS10へと進む。ステップS10では、生成部1が入力として、現時刻番号iに対応するパラメータ種別p(i)及びフレームデータf(i)(これらは特徴分布パラメータの各次元のものであるが、以下、図5のフロー等の説明においては、時系列データとしての処理内容を明確化するために、このような用語によって参照するものとする)を取得してからステップS11へと進む。
ステップS10にて、生成部1が出力する多次元の特徴パラメータの次元数がNであるものとすると、現時刻iに対応するパラメータ種別p(i)は当該N次元のいずれかとして取得され、具体的には現時刻番号iを次元数Nで割った余り(剰余)「i mod N」によって一意に定まるものとして、パラメータ種別p(i)=p(i mod N)を取得する。剰余「i mod N」に応じて取得されるパラメータ種別p(i mod N)は、生成部1での処理順序を表現したものであり、設定部3において予め設定しておく順序である。
ここで、設定部3による当該順序の設定例を述べる。そのための前提として、生成部1で得る特徴パラメータは、1次元のパラメータである基本周波数と、所定の次元のメルケプストラム係数で構成され、メルケプストラムの次元数はシステムにより異なるが、ここでは説明を簡単にするため、8次元(0次係数〜7次係数)とする。(これは図2,3で例示したのと同じ設定である。)実際のシステムは例えば30〜50次元程度でありより高次元であるが、8次元としても説明の一般性は失わない。この場合、1つの基本周波数と8つのメルケプストラム係数とによって、次元数N=1+8=9となる。
一般にメルケプストラムは低次係数ほど値の絶対値が大きくスペクトル包絡に大きく影響する。さらに基本周波数も聴感的影響が大きい。(すなわち、当該パラメータの算出値の誤差が大きい場合に、得られる合成音声の品質の低下度合いがより顕著となる。)ここでは、基本周波数(F0)、メルケプストラム(C0〜C7)を合わせて、影響が大きい順に
F0, C0, C1, C2, C3, C4, C5, C6, C7 …(影響順序1)
であるものとする。設定部3では、上記の(影響順序1)を入れ替えて、誤差の影響が大きいパラメータ同士が順序上においては離れるようなものとして、処理順番を設定する。例えば、上記の(影響順番1)をもとにして、以下の(処理順序1)を設定することができる。(当該設定するための手法の詳細については図10等を参照して後述する。)ここで、影響の大きなF0は9個中の1番目、C0は9個中の6番目となっており、影響の大きなF0,C0が当該順序上において離れていることを見て取ることができる。
F0, C7, C3, C1, C5, C0, C4, C2, C6 …(処理順序1)
上記の(処理順番1)の場合、ステップS10で取得するパラメータ種別p(i)=p(i mod N)=p(i mod 9)は次のようになる。
p(1)=F0, p(2)=C7, p(3)=C3, p(4)=C1, p(5)=C5, p(6)=C0, p(7)=C4, p(8)=C2, p(9)=p(0)=C6
以上、ステップS10で取得するパラメータ種別p(i)を説明した。ステップS10ではさらに、現時刻番号iに対応する特徴分布パラメータのフレームデータf(i)を次のようにして取得する。ここで、特徴分布パラメータのフレームデータは番号j=1,2,3,…でそのフレーム時刻位置jにあるデータd(j)が指定されるものとする。現時刻番号iに対応するフレームデータf(i)は、データ系列d(j)上を現時刻番号iの進行と共にフレーム番号jの増加方向へと移動する、所定のウィンドウW(i)内にあるようなデータ群{d(j)}として取得することができる。
ステップS11では、ステップS10で取得したフレームデータf(i)を入力として、生成部1において前述の式(3)の計算をステップS10で取得したパラメータ種別p(i)に対して行うことで、一定長さの当該パラメータ種別p(i)の特徴パラメータ軌跡pt(i)を得てから、ステップS12へと進む。
ステップS11では、入力されるフレームデータf(i)及び計算対象となっているパラメータ種別p(i)に対応する式(3)の平均ベクトルμ及び分散共分散行列Σ(これらμ及びΣは前述のように前処理において音声合成用に予め学習済みのHMM、決定木、ニューラルネットワーク等から求められている)に対して式(3)の計算を行うことで、その出力cとして時刻iの多次元の特徴パラメータ軌跡の値pt(i)を得ることができる。具体的な計算に関しては前掲の非特許文献2のベース手法を用いれば良い。あるいは、前掲の非特許文献3によるRLS(再帰的最小二乗法)アルゴリズムに相当する計算アルゴリズムを用いてもよい。
なお、ステップS11では式(3)から出力cの計算対象の次元のある区間の値の系列を一度得たうえで、出力cにおいて時間進行方向の先端側の所定長さのデータは削除したものとして、時刻iの特徴パラメータ軌跡の値pt(i)を得るようにしてもよい。すなわち、図1の[3]で説明したような、差異が大きくなると考えられる所定長さの後端側部(時間が未来の側)は削除して、時刻iの特徴パラメータ軌跡の値pt(i)を得るようにしてもよい。
ただしここで説明するように、S11で1次元分の特徴を計算する場合は、削除処理の後も保持する特徴パラメータ値のpt(i)の時間方向の長さは少なくともNであるように削除を行うものとする。仮に保持する値の長さをより短くする場合は、後述するステップS12において音声合成が可能となる(すなわち、ある分布パラメータのフレーム時刻jのデータd(i)に関して、N個の全ての特徴パラメータが算出される)ように1回のS11で計算しなければならない特徴の次元数はより多くなる。また、同様に後述するステップS12において音声合成が可能となるように、ステップS10での現時刻iに応じて移動する所定のウィンドウW(i)の位置(及び範囲)も設定しておくものとする。
ステップS12では、現時刻番号iにおいて初めて、ある特徴分布パラメータのフレーム時刻jのデータd(i)に関して、N個の全ての特徴パラメータP(j)が既に算出済み(現時刻i以前の一連のステップS11の計算結果の蓄積によって算出済み)となっている場合に、当該N個全て揃った特徴パラメータP(j)を生成部1が出力してから、ステップS13へと進む。ステップS12ではさらに、当該出力した1時刻以上の特徴パラメータP(j)に対して合成部2が音声波形としての音声データを合成するようにしてもよい。この際、得られた特徴パラメータP(j)をただちに音声合成処理するのではなく、所定のバッファリング処理等により合成部2において合成音声を得るタイミングを調整するようにしてもよい。
ステップS13では現時刻番号iを次の番号i+1へと更新したうえでステップS10へと戻る。こうして、図5のフローチャートの前提事項として既に説明した通り、以上説明したステップS10〜S13が各時刻番号(処理ステップ回数)i=1,2,3,…について繰り返されることとなる。
図6及び図7は、図5のフローチャートの動作によって処理されるデータの模式例を、ステップS10で例示したN=9個のパラメータF0,C0,…,C7を(処理順序1)に従って処理する場合に関して示すものである。図6及び図7は共に、横軸方向が読み込む特徴分布パラメータデータd(j)のフレーム位置j=1,2,3,…を表し、縦軸方向が図5のフローチャートにおける回数(現時刻番号)i=1,2,3,…を表している。図6では各回数i=1,2,3,…による一連のステップS11で生成される特徴パラメータ軌跡pt(i)の例が示され、図7では図6で当該示したものに上書きする形で、各回数i=1,2,3,…による一連のステップS12で出力されるN=9個全て揃った特徴パラメータP(j)(j=9,10,11,…)が示されている。
図6に示されるように、時刻i=1ではパラメータ種別p(1)=F0であってその長さ9の特徴パラメータ軌跡pt(1)=F0(1),F0(2),…,F0(9)(当該表記は図1,2で説明したのと同様であり、以下でも同様)が得られる。時刻i=2ではパラメータ種別p(2)=C7であってその長さ9の特徴パラメータ軌跡pt(2)=C7(2),…,C7(10)が得られ、…といったようにして以下同様に、各時刻i=1〜18(i=1が初期時刻)で(処理順序1)の順番で、移動するウィンドウW(i)と共に移動する、パラメータ種別p(i)のパラメータ軌跡pt(i)が得られている。
さらに、図7に示されるように、時刻i=9の時点で初めてフレーム位置j=9でのデータd(9)の変換結果としてのN=9個全て揃った特徴パラメータP(9)={F0(9),C0(9),…,C7(9)}が出力され、時刻i=10の時点で初めてフレーム位置j=10でのデータd(10)の変換結果としてのN=9個全て揃った特徴パラメータP(10)={F0(10),C0(10),…,C7(10)}が出力され、…といったようにして以下同様に、時刻i=9,10,11,…,18においてそれぞれフレーム位置j=9,10,11,…,18のN=9個全て揃った特徴パラメータP(j)={F0(j),C0(j),…,C7(j)}が出力されることとなる。
(処理順序1)に関して既に説明した通り、当該並び替えられた順序においては影響の大きなパラメータF0,C0が当該順序上において離れている。既に説明した通り、パラメータF0,C0は、ウィンドウW(i)の時間進行方向の先端側において算出された場合に、合成音声の品質を顕著に損なう可能性があるものであり、図6及び図7では当該損なう可能性のあるF0,C0のデータF0(9),C0(14),F0(18),C0(23)を破裂マークで明示している。しかしながら、図7に示される通り、当該破裂マークで示される箇所は、出力される特徴パラメータP(j)(j=9,10,11,…,18)においては、P(9),P(14),P(18)と(フレーム)時間軸j上で離れたものとなっている。当該時間軸j上で離れた配置になるのは、(処理順序1)の設定による効果であり、本発明によればこのように出力される特徴パラメータP(j)のフレーム時間軸j上において、合成音声の品質を損ないうる特徴パラメータの発生を時間的に分散させることができ、計算量を抑制すると共に、合成音声の品質も確保することが可能となる。
図8及び図9はそれぞれ、図6及び図7の対比例として、(処理順序1)ではなく、(影響順序1)をそのまま処理順序として採用した場合を示している。図8及び図9では、合成音声の品質を損なう可能性のある、後端側に位置するF0,C0のデータF0(9),C0(10),F0(18),C0(19)を破裂マークで明示しており、図9に示される通り、当該破裂マークで示される箇所は、出力される特徴パラメータP'(j)(j=9,10,11,…,18)においては、P'(9),P'(10),P'(17)(及び不図示のP'(18))と、(フレーム)時間軸j上で近接したものとなっている。劣化(算出パラメータが適切な値から大きな相違をもって算出されること)が時間軸上で近接して現れることから、図8及び図9の対比例の手法では、合成音声の品質劣化も顕著なものとなってしまう。
なお、図8及び図9の対比例の手法は、前掲の図3の手法に該当するものである。
以下、設定部3が前述のような(影響順序1)を並び替えて(処理順序1)を得る手法の詳細を説明する。前述の通りこの例は多次元の特徴パラメータの次元数N=9としているが、一般のNの場合にも当該手法はそのまま適用可能である。
当該手法の一例として、インデックスを2進数表現上で逆順にする方法がある。まずは、影響の大きい特徴から順に、0から始まる仮想インデックスを先頭から順に付与する。(影響順序1)では以下の通りとなる。
0:F0, 1:C0, 2:C1, 3:C2, 4:C3, 5:C4, 6:C5, 7:C6, 8:C7
これに対して、仮想インデックスの2進数表現のビット順を逆にする。ここでは特徴の次元数N=9のため、まず2のべきで9以上の最も小さい値である16次元に拡張する。具体的には、仮想インデクス9〜15を付与して
9:9φ, 10:φ10, 11:φ11, 12:φ12, 13:φ13, 14:φ14, 15:φ15
の7次元を特徴に追加する。9φ〜15φは実際には何もない仮想的な特徴(並び替えのために導入したダミー特徴)である。
この仮想インデックスの2進数表現のビット順を逆にした値を小さい順に並べると、仮想インデックスの順で、
0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15
となり、これを実際の特徴順に並べると、同時にφを削除すると、
F0, C7, C3, C1, C5, C0, C4, C2, C6
となり、影響の大きいF0やC0の処理間隔を大きくできる。
このようにして影響の大きな順に並んだパラメータを並び替えた処理順序を得ることで、仮に大きな誤差が生じてしまう場合であっても影響の大きい特徴の大きな誤差が生じやすい部分が時間的に重なりにくくなり、誤差の影響を時間的に拡散させ緩和できる。
図10は、以上のインデックスを2進数表現上で逆順にする方法をその通りに適用した具体的な計算過程を示す図である。[1]では9次元F0,C0,…,C7に加えて7つのダミー次元φ9〜φ15をインデクスと共に設け、[2]では当該インデクスを2進数表現し、[3]では当該2進数表現を逆順とし、[4]では当該逆順を小さい順に並べ、[5]では当該並べた中からダミー次元φ9〜φ15のものを除外することで、最終的な(処理順序1)が得られている。
ここでは2進数表現におけるビット逆順による方法を示したが、これに限定されない。例えば、影響が大きい特徴が大きい順にF0, C0, C1, C2の4種類で、それ以外の5種類の特徴において影響の大きさの順序関係の影響が小さければ、先の例のうち、F0, C0, C1, C2のみ先述の例としての(処理順序1)と同じ位置として、それ以外は順に並べた
「F0」, C3, C4, 「C1」, C5,「C0」, C6, 「C2」, C7
のような順序で処理してもよい。上記では(処理順序1)と同じ位置となるものを「」で囲んで示している。その他、次元数Nと影響順序とを指定して予め設定してあるマニュアル規則によって処理順序を得るようにしてもよい。
以上、本発明によれば、上記で説明した基本周波数やメルケプストラム低次係数、またメルケプストラム以外でスペクトル特徴を表すシステムにおいても、そのような多次元特徴量の一部、例えばケプストラムの低次係数やLSP等の低次係数といった、合成音声への影響が大きい特徴のパラメータ軌跡計算を時間的に離すことで、従来法(音声を扱う場合に一発話全体を一括で処理する方法)との差異が特定フレーム周辺に集中してしまうことを避け、従来法との差異の発生を時間的に拡散させて聴感上の差異を抑えることができる。
生成装置10は一般的な構成のコンピュータとして実現可能である。すなわち、CPU(中央演算装置)、当該CPUにワークエリアを提供する主記憶装置、ハードディスクやSSDその他で構成可能な補助記憶装置、キーボード、マウス、タッチパネルその他といったユーザからの入力を受け取る入力インタフェース、ネットワークに接続して通信を行うための通信インタフェース、表示を行うディスプレイ、カメラ及びこれらを接続するバスを備えるような、一般的なコンピュータによって生成装置10を構成することができる。ここでさらに、音声出力のためのスピーカを備えていてもよい。また、図4に示す生成装置10の各部の処理はそれぞれ、当該処理を実行させるプログラムを読み込んで実行するCPUによって実現することができるが、任意の一部の処理を別途の専用回路等において実現するようにしてもよい。
なお、本発明の対象は音声合成に限定されない。例えば口唇の形状をパラメータ化し、パラメータから動画像を用いるようなシステムの特徴パラメータ軌跡計算に適用することも可能である。入力も音素や韻律情報ではなく、静的特徴量、動的特徴量の分布を予測するようなシンボルであれば良く、例えば、ロボット等を対象に、動き指令に対する滑らかなモーションデータの生成に用いることができる。
10…時系列データ生成装置、1…生成部、2…合成部、3…設定部

Claims (6)

  1. 各時刻において複数時刻の値の組み合わせとして定義される複数種類の特徴分布パラメータ時系列を入力として、所定の基準に基づき系列として最適化された多次元時系列データを出力する時系列データ生成装置であって、
    前記時系列データ生成装置は、処理単位ステップごとに当該ステップ回数に応じて時間進行方向に移動するウィンドウ内のフレームデータとして特徴分布パラメータ時系列を読み込み、当該ステップ回数に応じた所定の繰り返し順序で多次元時系列データの各次元の時系列データを算出し、
    当該所定の繰り返し順序は、多次元時系列データの各次元のうち、誤差がある場合の影響が大きくなる次元同士が当該順序において離れるように構成されていることを特徴とする時系列データ生成装置。
  2. 前記所定の繰り返し順序は、多次元時系列データの各次元に影響の大きくなる順番で割り当てたインデクスを二進数表現としたうえで、当該二進数表現の上位と下位とを逆転させた二進数の順序であることを特徴とする請求項1に記載の時系列データ生成装置。
  3. 前記時系列データ生成装置は、各ウィンドウにおいて、前記ウィンドウの進行時間順で末尾位置からさらに先の所定範囲までフレームデータを読み込み時系列データを算出したうえで、当該先の所定範囲に関して算出した時系列データは破棄することを特徴とする請求項1または2に記載の時系列データ生成装置。
  4. 前記複数種類の特徴分布パラメータ時系列は音声に関するものであり、
    前記多次元時系列データは、基本周波数と所定次元のスペクトル包絡特性を表す特徴量とを含んで構成されることを特徴とする請求項1ないし3のいずれかに記載の時系列データ生成装置。
  5. 各時刻において複数時刻の値の組み合わせとして定義される複数種類の特徴分布パラメータ時系列を入力として、所定の基準に基づき系列として最適化された多次元時系列データを出力する時系列データ生成方法であって、
    前記時系列データ生成方法は、処理単位ステップごとに当該ステップ回数に応じて時間進行方向に移動するウィンドウ内のフレームデータとして特徴分布パラメータ時系列を読み込み、当該ステップ回数に応じた所定の繰り返し順序で多次元時系列データの各次元の時系列データを算出し、
    当該所定の繰り返し順序は、多次元時系列データの各次元のうち、誤差がある場合の影響が大きくなる次元同士が当該順序において離れるように構成されていることを特徴とする時系列データ生成方法。
  6. コンピュータを請求項1ないし4のいずれかに記載の時系列データ生成装置として機能させることを特徴とするプログラム。
JP2018195035A 2018-10-16 2018-10-16 時系列データ生成装置、方法及びプログラム Active JP6959901B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018195035A JP6959901B2 (ja) 2018-10-16 2018-10-16 時系列データ生成装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018195035A JP6959901B2 (ja) 2018-10-16 2018-10-16 時系列データ生成装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020064143A JP2020064143A (ja) 2020-04-23
JP6959901B2 true JP6959901B2 (ja) 2021-11-05

Family

ID=70387210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018195035A Active JP6959901B2 (ja) 2018-10-16 2018-10-16 時系列データ生成装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6959901B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265882A (zh) * 2021-12-24 2022-04-01 中冶赛迪重庆信息技术有限公司 时序信号点异常检测方法、系统、设备及介质

Also Published As

Publication number Publication date
JP2020064143A (ja) 2020-04-23

Similar Documents

Publication Publication Date Title
CN110624247B (zh) 使用机器学习模型确定与实时语音相对应的嘴部的运动
WO2005109399A1 (ja) 音声合成装置および方法
JP2011028230A (ja) 歌唱合成用データベース生成装置、およびピッチカーブ生成装置
WO2010119534A1 (ja) 音声合成装置、方法およびプログラム
JP5807921B2 (ja) 定量的f0パターン生成装置及び方法、f0パターン生成のためのモデル学習装置、並びにコンピュータプログラム
JP6959901B2 (ja) 時系列データ生成装置、方法及びプログラム
JP2015038725A (ja) 発話アニメーション生成装置、方法、及びプログラム
JP5474713B2 (ja) 音声合成装置、音声合成方法および音声合成プログラム
JP4631077B2 (ja) アニメーション作成装置
JP5531654B2 (ja) 制御情報生成装置および形状制御装置
JP4617500B2 (ja) リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル生成装置
JP5268731B2 (ja) 音声合成装置、方法およびプログラム
JP5874639B2 (ja) 音声合成装置、音声合成方法及び音声合成プログラム
JP2007004011A (ja) 音声合成装置、音声合成方法、音声合成プログラムおよびその記録媒体
JP4476855B2 (ja) 音声合成装置及びその方法
JP4230254B2 (ja) 音声生成モデル話者適応化方法、その装置、そのプログラム及びその記録媒体
JP2010224419A (ja) 音声合成装置、方法およびプログラム
JP5387410B2 (ja) 音声合成装置、音声合成方法および音声合成プログラム
JP4034751B2 (ja) 音声合成装置、音声合成方法および音声合成プログラム
JP6137708B2 (ja) 定量的f0パターン生成装置、f0パターン生成のためのモデル学習装置、並びにコンピュータプログラム
JP6163454B2 (ja) 音声合成装置、その方法及びプログラム
JP5763414B2 (ja) 特徴パラメータ生成装置、特徴パラメータ生成方法および特徴パラメータ生成プログラム
WO2024089995A1 (ja) 楽音合成方法、楽音合成システムおよびプログラム
JP3576792B2 (ja) 音声情報処理方法
JP2001282273A (ja) 音声情報処理装置とその方法と記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211008

R150 Certificate of patent or registration of utility model

Ref document number: 6959901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150