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

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

▶ KDDI株式会社の特許一覧

<>
  • 特許-音声合成装置、方法及びプログラム 図1
  • 特許-音声合成装置、方法及びプログラム 図2
  • 特許-音声合成装置、方法及びプログラム 図3
  • 特許-音声合成装置、方法及びプログラム 図4
  • 特許-音声合成装置、方法及びプログラム 図5
  • 特許-音声合成装置、方法及びプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-13
(45)【発行日】2022-01-13
(54)【発明の名称】音声合成装置、方法及びプログラム
(51)【国際特許分類】
   G10L 13/06 20130101AFI20220105BHJP
【FI】
G10L13/06 140
G10L13/06 240Z
【請求項の数】 10
(21)【出願番号】P 2019060654
(22)【出願日】2019-03-27
(65)【公開番号】P2020160319
(43)【公開日】2020-10-01
【審査請求日】2021-02-08
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【弁理士】
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【弁理士】
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】西澤 信行
【審査官】渡部 幸和
(56)【参考文献】
【文献】特開2017-032839(JP,A)
【文献】特開2017-138596(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-13/10
(57)【特許請求の範囲】
【請求項1】
特定話者のクリーンであると判定される第1音声を分析して第1話者性情報を得る第1分析部と、
前記特定話者の第2音声を分析して第2話者性情報を得る第2分析部と、
前記第1話者性情報と、前記第2話者性情報と、指定されるテキストの音声合成用の中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の音声特徴を予測する予測部と、を備えることを特徴とする音声合成装置。
【請求項2】
前記予測部は、
前記第1話者性情報と、前記中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の第1音声特徴を予測し、
前記第2話者性情報と、前記中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の第2音声特徴を予測し、
前記第1音声特徴及び前記第2音声特徴を組み合わせて前記音声特徴を得ることを特徴とする請求項1に記載の音声合成装置。
【請求項3】
前記予測部は、
前記第2話者性情報と、前記中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の第2音声特徴を予測し、
前記第1話者性情報と、前記第2音声特徴と、に対して学習モデルを適用することで前記音声特徴を得ることを特徴とする請求項1に記載の音声合成装置。
【請求項4】
前記予測部は、
前記第2話者性情報と、前記中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の第2音声特徴を予測し、
前記第1話者性情報と、前記中間表現と、前記第2音声特徴と、に対して学習モデルを適用することで前記音声特徴を得ることを特徴とする請求項1に記載の音声合成装置。
【請求項5】
前記第1話者性情報はスペクトル特徴に関する情報を含み、前記第2話者性情報は韻律的特徴に関する情報を含むことを特徴とする請求項1ないし4のいずれかに記載の音声合成装置。
【請求項6】
前記特定話者のスマート家電に対する操作音声を収集する収集部をさらに備え、
前記第2音声は前記操作音声を含むことを特徴とする請求項1ないし5のいずれかに記載の音声合成装置。
【請求項7】
前記音声特徴を用いて音声合成を行う生成部をさらに備えることを特徴とする請求項1ないし6のいずれかに記載の音声合成装置。
【請求項8】
前記第1分析部及び/又は前記第2分析部はそれぞれ、継続的に新たな第1音声及び/又は第2音声を追加して取得して第1話者性情報及び/又は第2話者性情報を得るようにしており、新たに取得した第1音声及び/又は第2音声のみを用いて得た第1話者性情報及び/又は第2話者性情報が、既に得られている第1話者性情報及び/又は第2話者性情報と閾値判定で異なると判定される場合、当該新たに取得した第1音声及び/又は第2音声を、第1話者性情報及び/又は第2話者性情報を得るために用いる対象から除外することを特徴とする請求項1ないし7のいずれかに記載の音声合成装置。
【請求項9】
特定話者のクリーンであると判定される第1音声を分析して第1話者性情報を得る第1分析段階と、
前記特定話者の第2音声を分析して第2話者性情報を得る第2分析段階と、
前記第1話者性情報と、前記第2話者性情報と、指定されるテキストの音声合成用の中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の音声特徴を予測する予測段階と、を備えることを特徴とする音声合成方法。
【請求項10】
コンピュータを請求項1ないし8のいずれかに記載の音声合成装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、大量に収集することに制約のあるクリーンな音声を必ずしも大量に用いる必要なく、所定精度を確保して特定話者の音声特徴を推定することのできる音声合成装置、方法及びプログラムに関する。
【背景技術】
【0002】
音声合成技術とは音声を人工的に合成する手法である。代表的な利用方法として、テキスト音声変換(Text-To-Speech)が挙げられるが、例えば日本語では、TTSの入力となるテキストは通常、漢字仮名交じり文であり、例えば文字と合成すべき音声の特徴とを直接マッピングすることはその関係性の構造が極めて複雑であることから困難である。そこで抽象化された中間表現を用い、(1)テキストから中間表現、(2)中間表現から音声の特徴、という2段階の変換を経て、音声の特徴の情報にあう音声波形を信号処理的に生成、あるいは事前準備した波形の蓄積から適切なものを選択することで、合成音声波形を得ることができる。
【0003】
(1)中間表現に関して
この中間表現としては、以下では音声合成記号を想定する。音声合成記号には様々な形式があり得るが、例えば、一連の音声を構成する音素の情報と、主としてポーズや声の高さとして表現される韻律的情報を同時に表記したものが考えられる。すなわち音声言語を記述する記号である。そのような音声合成用記号の例として、JEITA(電子情報技術産業協会)規格IT-4006「日本語テキスト音声合成用記号」がある(非特許文献1参照)。以下で述べる音声合成装置とは、このような音声合成記号による入力に基づいてそれに対応する音声波形を生成する装置をいう。
【0004】
(2)中間表現から音声特徴を得ることに関して
このような音声合成装置によりある特定の話者の音声を再現することを考える(以下、再現したい話者を目標話者という)。すなわち先述の抽象化された中間表現から、ある特定の話者の音声の特徴を有する合成音声を生成することを考える。抽象化された中間表現そのものに、話者の特徴を記述する十分な情報は含まれないので、単純には、予め、目標話者の音声の物理的特徴(波形そのものや、あるいは波形から信号処理により抽出した、ケプストラム(周波数スペクトル情報の表現方法の1つ)や基本周波数のような音声特徴量)と、その音声に対応する中間表現との対応関係を調べ、対象となる話者毎に、中間表現から音声特徴への変換規則を定め、その規則を用いて中間表現から音声特徴を予測し、予測結果に対応する音声合成波形を信号処理的に合成すれば良い。一般に各時刻において直接対応する中間表現のみの情報量は、中間表現が抽象的で単純なものであることから限定されたものとなるが、時間的に前後(なお時間的に隣接したものとは限らない)の中間表現についても考慮に加えることで、より複雑な変換規則を定義できる。このような対象時刻以外の情報は、一般的にはコンテキスト(文脈)とも呼ばれる。以下中間表現には、そのようなコンテキストも考慮されているケースも含むものとする。
【0005】
(3)変換規則を自動決定する学習に関して
コンテキストを考慮した場合の複雑な変換規則を人手で全て定めることは困難なことから、決定木やニューラルネットワーク等に基づき、中間表現から音声特徴への変換規則を機械学習手法により定める方法が広く用いられている。この変換規則の自動決定(学習ともいう)を高精度に行うためには、音声データと、それをコンテキストも考慮して記述した中間表現との組を、学習データとして大量に用いる必要がある。すなわち、音声合成における特定話者の音声再現には、目標話者の大量の音声データを収集し、その音声データの全てに例えば人手で中間表現を付与し、両者の関係を機械学習手法により学習すれば良い。例えば、隠れマルコフモデルに基づく音声合成手法であるHMM音声合成は、中間表現に対応する音声をモデル化したHMMのパラメータを、決定木により中間表現から予測し、その予測結果のHMMを用いて音声を合成する手法である(非特許文献2参照)。また、深層学習に基づくニューラルネットワーク(DNN)を用いた音声合成手法の多くでは、中間表現から対応する音声特徴を直接予測し、音声を合成している。
【先行技術文献】
【非特許文献】
【0006】
【文献】「日本語テキスト音声合成用記号」JEITA規格 IT-4006、電子情報技術産業協会、2010年3月
【文献】益子貴史、徳田恵一、小林隆夫、今井 聖、「動的特徴を用いたHMMに基づく音声合成」、電子情報通信学会論文誌(D-II), J79-D-II, 12, pp.2184-2190, Dec. 1996.
【文献】Najim Dehak, Patrick J. Kenny, Reda Dehak, Pierre Dumouchel, and Pierre Ouellet, "Front-End Factor Analysis for Speaker Verification," IEEE Transactions on Audio Speech and Language Processing 19(4), pp.788-798, June 2011.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上記説明したような既存手法の学習では、音声再現させたい特定話者ごとに大量の音声データが必要であり、学習のための手間が過大なものとなってしまうという課題があった。すなわち、実際には、音声合成で再現したい特定の話者の大量の音声データを収集することは困難なことが少なくない。
【0008】
この従来技術の課題に対する対処法として、以下が考えられる。
【0009】
すなわち、話者性について少量の音声データから決定できる何らかの方法で記述し、予め多数の話者の音声に対して、話者性情報、中間表現の組と、音声特徴の間の関係を機械学習手法で学習したモデルを用意しておけば、最低限、話者性情報を予測できるだけの音声データ量で、その話者の音声を模擬した合成音声を作成することができる。(なお、話者性情報を含む形で「中間表現」ということも可能だが、ここでは、中間表現は基本的にテキスト解析のみから得られる情報で構成されている場合を想定する。)
【0010】
もちろんこの方法では、話者性情報、中間表現、音声特徴の3つの間の複雑な関係を事前にモデル化する必要があるため、予め準備するモデルの学習はより困難なものとなる。ただし、これは事前に用意するモデルデータに合成目標話者の音声を含めることは必須ではないため、予め高精度なモデルを学習しておけば良い。
【0011】
一方で、話者性情報を高精度に推定するためには、一般にクリーンな(背景雑音や反響等の少ない)音声が必要となる。話者性情報の抽出において、特に音声のスペクトルの分析では背景雑音や反響等の影響が大きく、大きな背景雑音や反響を含む音声から話者性情報を推定すると、その推定結果の精度が下がるためである。そしてその影響は最終的に話者再現性を低下させることになる。
【0012】
事前学習に使う音声も同様にクリーンな音声が必要だが、こちらはシステムの構築時に用いる音声なので、防音室等で音声を収録することで比較的容易に収集できる。これに対し、目標話者の音声についてもクリーンな音声を大量に要求することは、ユーザの音声収録環境を制約することから、一般に望まれない。
【0013】
上記の従来技術の課題に鑑み、本発明は、大量に収集することに制約のあるクリーンな音声を必ずしも大量に用いる必要なく、所定精度を確保して特定話者の音声特徴を推定することのできる音声合成装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0014】
上記目的を達成するため、本発明は音声合成装置であって、特定話者のクリーンであると判定される第1音声を分析して第1話者性情報を得る第1分析部と、前記特定話者の第2音声を分析して第2話者性情報を得る第2分析部と、前記第1話者性情報と、前記第2話者性情報と、指定されるテキストの音声合成用の中間表現と、に対して学習モデルを適用することで前記テキストを前記特定話者が発声する際の音声特徴を予測する予測部と、を備えることを特徴とする。また、前記音声合成装置に対応する方法及びプログラムであることを特徴とする。
【発明の効果】
【0015】
本発明によれば、第1音声が必ずしも大量に利用可能でなくとも、特定話者の音声特徴を所定精度を確保して予測することができる。
【図面の簡単な説明】
【0016】
図1】一実施形態に係る音声合成装置の機能ブロック図である。
図2】一実施形態に係る音声合成装置の動作のフローチャートである。
図3】予測部が予測するために必要な学習モデルを学習する学習装置の機能ブロック図である。
図4】予測部が第1変形例で構成された音声合成装置の機能ブロック図である。
図5】予測部が第2変形例で構成された音声合成装置の機能ブロック図である。
図6】一般的なコンピュータの構成を示す図である。
【発明を実施するための形態】
【0017】
図1は、実施形態に係る音声合成装置10の機能ブロック図である。図示する通り、音声合成装置10は、収集部1、識別部2、指定部3、第1分析部4、第2分析部5、解析部6、予測部7及び生成部8を備える。図2は、一実施形態に係る音声合成装置10の動作のフローチャートである。以下、図2の各ステップを説明しながら、図1の音声合成装置10の各部の処理内容の概要を説明する。
【0018】
図2のフローが開始されるとまず、ステップS1では、収集部1において人の発声データとしての大量の音声データを収集し、この収集した音声データに対して識別部2において話者の識別及び音声環境の識別処理を施したうえで、識別部2においてこの識別された音声データを保存しておき、ステップS2へと進む。
【0019】
収集部1は、例えば、対話側の音声操作により情報検索やネットワーク家電(スマート家電)の操作を行うことができるスマートスピーカ(スマート家電の一種)において、操作音声などを保存しておくものとして実現してもよいし、このようなスマートスピーカにおいて録音しておいた音声をネットワーク経由で取得するものとして実現してもよい。
【0020】
識別部2では、収集部1で収集された大量の音声データに対して、人による発話がなされている各区間D(i)(i=1,2,…)を検出したうえで、各区間における話者x(x=a,b,c,…)と、各区間の音声環境e(e=1,2とし、e=1が「クリーン音声」を、e=2が「クリーンでない音声」を表す)と、を識別し、その識別結果x=x(i),e=e(i)を区間D(i)と紐付けて保存しておく。
【0021】
識別部2における発話区間D(i)の検出と、区間D(i)での話者x=x(i)の識別と、区間D(i)の音声環境e=e(i)(クリーン音声かそうでないか)の識別と、には、任意の既存手法を用いてよい。例えば、発話区間の検出には零交差や振幅などによる閾値判定を用いてよい。あるいは、クリーン音声か否かをスイッチ操作等によりユーザに入力させても良い。話者の識別には、i-vector等による既存の話者認識技術を用いてよく、識別候補としての話者x=a,b,c,…に関してはそれぞれ、予めi-vector等を求めるための音声を登録しておけばよい。なお、i-vectorに関しては前掲の非特許文献3に開示されている。この際、体調の影響等による一時的な声質変化の影響や、背景雑音の影響による見かけ上の声質変化の影響等を回避するために、一般的な話者識別目的よりも厳しい判定基準を設けて、基準を満たさなかった音声区間は処理の対象から外しても良い。この判定基準には、後述する話者性情報の推定手法と同様の方法を用いても良い。
【0022】
音声環境e=e(i)の自動識別に関しては、生活環境音その他の原因による、話者の発声以外の雑音レベルが所定閾値未満になるものをe=1(クリーン音声)として識別し、この閾値判定を満たさず一定以上の雑音レベルがあると判定されるものをe=2(クリーンでない音声)として識別すればよい。雑音が閾値以上か否かの判定はスペクトル分析などの任意の既存手法を利用することができる。
【0023】
なお、複数人物が同時に発声していると判定された区間に関しては識別部2で保存する区間D(i)に含めないようにしてもよいし、最も音量の大きな話者xを話者識別結果とし、且つ、e=2(クリーンでない音声)として環境識別結果を与えるようにしてもよい。
【0024】
一実施形態では、識別部2はさらに、区間D(i)での発話内容テキストt(i)も識別して、区間D(i)に紐づけて保存するようにしてもよい。テキストt(i)の識別には、既存の任意の音声認識手法を利用してよい。
【0025】
ステップS2では、音声合成装置10を利用するユーザより、指定部3において音声合成を望む話者xの指定と、解析部6において音声合成を望むテキストTの指定と、を受け取ってから、ステップS3へと進む。以下、説明のため、音声合成を望む話者xの指定は「x=a」(aは話者識別子)であるものとする。
【0026】
ステップS3では、まず、指定部3がステップS2にて指定された話者x=aの音声データを識別部2に保存されている話者x(i)及び音声環境e(i)が識別された大量の発話区間D(i)を検索して取得し、第1分析部4にこのうちの第1音声V1(a)を出力し、第2分析部5にこのうちの第2音声V2(a)を出力する。
【0027】
具体的に、大量の発話区間D(i)のうち、「x(i)=a」である、すなわち、指定された話者aによる発話だと識別されており、且つ、音声環境が「e(i)=1」である、すなわち、雑音のないクリーンな音声であると識別されているもの全てを第1音声V1(a)として検索して取得して第1分析部4に出力する。また、大量の発話区間D(i)のうち、「x(i)=a」である、すなわち、指定された話者aによる発話だと識別されており、且つ、音声環境が「e(i)=2」である、すなわち、雑音が混じっておりクリーンでない音声であると識別されているもの全てを第2音声V2(a)として検索して取得して第2分析部5に出力する。集合による表記の式で表すと第1音声V1(a)及び第2音声V2(a)は以下の通りとなる。
V1(a)={D(i)|x(i)=a, e(i)=1}
V2(a)={D(i)|x(i)=a, e(i)=2}
【0028】
ステップS3では、次いで、取得された第1音声V1(a)を第1分析部4が分析して話者aの第1話者性情報s1(a)を求めて予測部7へと出力し、且つ、取得された第2音声V2(a)を第2分析部5が分析して話者aの第2話者性情報s2(a)を求めて予測部7へと出力してから、ステップS4へと進む。
【0029】
なお、識別部2において各区間D(i)にその発声されているテキストt(i)の情報も取得して紐づけている場合には、第1分析部4及び第2分析部5においては第1音声V1(a)及び第2音声V2(a)を分析する際に、この紐づけられているテキスト情報も併せて利用することで、第1話者性情報s1(a)及び第2話者性情報s2(a)をそれぞれ求めるようにすることができる。
【0030】
また、声質変化の影響を抑えるために、第1分析部4の分析結果である第1話者性情報s1(a)が以前の結果と大きく異なる場合は、第1音声V1(a)は破棄し処理を終了する手順としても良い。第2分析部5の分析結果である第2話者性情報s2(a)に対しても同様である。すなわち、収集部1において継続的に音声収集が行われる前提のもと、第1分析部4及び第2分析部5では、継続的に、各期間m(m=1,2,…、例えば1週間ごとの期間など)で新たに収集された第1音声V1(a)[m]及び第2音声V2(a)[m]も追加して第1話者性情報及び第2話者性情報を分析するようにしてよい。この際、過去の期間m-1までの全音声(破棄されたものを除く)を用いて既に分析されている第1話者性情報s1(a)[m-1]及び第2話者性情報s2(a)[m-1]と、現期間mに新たに収集された第1音声V1(a)[m]及び第2音声V2(a)[m]のみを利用して分析した第1話者性情報s1(a)[mのみ]及び第2話者性情報s2(a)[mのみ]とを対比し、相違が閾値以上であると判定された場合、現期間mで新たに収集された第1音声V1(a)[m]及び第2音声V2(a)[m]は、一時的な声質変化(例えば風邪をひいていることなどによる声質変化)が発生しているものとして、第1話者性情報及び第2話者性情報を分析するために用いる対象から削除するようにしてよい。
【0031】
上記したステップS3の後半側の処理としての第1分析部4及び第2分析部5の処理の詳細については後述する。
【0032】
ステップS4では、ステップS2で指定されたテキストTを解析部6が解析してその中間表現im(T)を得て、予測部7へと出力してからステップS5へと進む。解析部6による解析処理は、テキストに対するルールベースの手法などを用いることができ、中間表現im(T)としては例えば前掲の非特許文献1の「日本語テキスト音声合成用記号」ように、予め定義されている所定様式のものを用いればよい。
【0033】
なお、ステップS3とステップS4とは順番を逆にしてもよいし、両ステップが並行して実施されるようにしてもよい。
【0034】
ステップS5では、ステップS3,S4で得られた第1話者性情報s1(a)、第2話者性情報s2(a)及び中間表現im(T)を入力として用いて、話者aによってテキストTが発声される際の音声特徴f(a,T)を予測部7が予測して生成部8へと出力してから、ステップS6へと進む。
【0035】
予測部7で予測する音声特徴f(a,T)は、HMMモデル等に基づく任意の既存の音響特徴量を用いてよく、例えば、基本周波数と所定次元のメルケプストラム係数による静的特徴量及びデルタパラメータ等の動的特徴量の組み合わせ(ベクトル)の当該テキストTに沿ったフレーム時系列として、音声特徴f(a,T)を得ることができる。
【0036】
予測部7による具体的な予測は、予め学習しておいたモデルを用いて行うことが可能であり、その詳細に関しては後述する。
【0037】
ステップS6では、ステップS5において予測部7で得た音声特徴f(a,T)を入力として用いて生成部8が合成処理を行い、話者aがテキストTを発声している合成音声波形W(a,T)を出力し、図2のフローは終了する。合成音声波形の生成処理は、予測部7で予測した音声特徴f(a,T)の種類に応じた所定の波形生成処理を行えばよく、例えば基本周波数と所定次元のメルケプストラム係数の組み合わせで音声特徴が表されているときは、メルケプストラム係数で決まるスペクトル包絡特性を持ったデジタルフィルタを作成し、基本周波数をその駆動周波数とするインパルス列で前述のデジタルフィルタを駆動することで、合成音声波形を生成できる。
【0038】
以上、図2の各ステップを説明した。以下、詳細を後述するとしたステップS3の後半側の第1分析部4及び第2分析部5の処理と、ステップS5で予測部7が予測を行うことを可能にするためのモデル学習と、をこの順番で説明する。
【0039】
第1分析部4及び第2分析部5に関して、この2つを分けて利用することの考え方をまず説明する。前提として、第1分析部4への入力としてのクリーンな第1音声V1(a)は、ノイズのない静寂な環境で取得される必要があるという制約から取得が難しく、取得の手間やコストの存在によりデータ量が少ないことが想定されるものであり、一方、第2分析部5への入力としてのクリーンでない第2音声V2(a)は、取得環境が静寂である制約がないため取得が容易であり、データ量が豊富であることが想定されるものである。
【0040】
第2音声は例えば、日常的な騒音環境下にあるスマート家電への操作音声として、収集部1において大量に容易に取得可能であることが想定されるものである。
【0041】
本実施形態は、利用できる音声データのこのような前提条件を積極的に活用して、少量しかない第1音声V1(a)からでないと求められない話者性情報に関しては第1話者性情報として求め、多量に取得できる第2音声V2(a)からでも求められる話者性情報に関しては第2話者性情報として求めることにより、効率的に、目標話者aのテキストTの音声特徴f(a,T)を予測するものである。
【0042】
ここで、話者性情報に関して、以下のような第1及び第2考察が可能である。
【0043】
(第1考察)
話者性情報のうち、例えば音声のスペクトル特徴は、その推定結果が音声収録環境における雑音、反響等の影響を強く受けるため、高精度な推定にはクリーンな音声を必要とする。しかしスペクトルの特徴の多くは、人間の発声器官の形状および生理学的な運動条件の制約下にあるため、人間の音声生成の音響的特徴のモデルとして、多数の異なる話者の音声からモデルが高精度に学習できていれば、目標話者音声(第1音声集合V1(a))が少量しかなくても、目標話者のスペクトル的な特徴を高精度に推定できることが期待される。
【0044】
(第2考察)
一方、話者特有の音声の長時間(数音節以上)のパワー変化の様式や、基本周波数変化の様式、また音節の継続時間長等の時間軸方向の特徴の変化様式(これらをまとめて以下、韻律的特徴という)は、対象が元々長時間的な特徴であることに加え、生成機構的には変化のさせ方の自由度が比較的大きいため、短時間の音声データから推定することが難しい。しかし、パワー変化や基本周波数の情報は、音声再現に必要なスペクトル分析と比較し、多少の雑音が含む環境下でも抽出することができる。また、時間軸方法の特徴の変化様式を抽出するためには音声認識技術による音素や音節の時刻情報が必要だが、音声認識そのものは声質再現に必要な程のスペクトル精度を要さない。つまり、韻律的特徴は音声対話システムの入力音声情報等(すなわち、第2音声V2(a)のようにノイズ環境下で取得された音声等)からでも推定できる。
【0045】
以上の第1及び第2考察に基づき、第1分析部4では少量のクリーンな第1音声V1(a)の集合より、第1話者性情報s1(a)として話者aの、テキストに依存しない形で一般化されたスペクトル特徴が記述されたベクトル(または第1考察に基づき、スペクトル特徴と同様の特性を有する特徴に関してのテキスト非依存の特徴ベクトル)を得る。また、第2分析部5では、多量のクリーンでない第2音声V2(a)の集合より、第2話者性情報s2(a)として話者aの、テキストに依存しない形で一般化された韻律的特徴が記述されたベクトル(または第2考察に基づき、韻律的特徴と同様の特性を有する特徴に関するテキスト非依存の特徴ベクトル)を得る。
【0046】
第1話者性情報及び第2話者性情報に関しては、それぞれ、あらかじめ人手で定義した複数の印象等に対応する物理的特徴データ(平均ケプストラムや、平均基本周波数のような物理量で定義される多次元のベクトル)で直接構成しても良いし、i-vectorや、ネットワーク構造としてボトルネック層(入力層や出力層のユニット数よりも少ないユニット数で構成される中間層)を持つ、音声特徴から話者(ここでは例えばワンホットベクトルで表される話者ID情報)を推定するニューラルネットワークにおける入力に対するボトルネック層における値(以下、ボトルネック特徴量という)のような、統計処理的な方法で定義された多次元のベクトルでも良い。あるいはその両者の組み合わせによるベクトルでも良い。
【0047】
なお、上記のように統計処理的な方法で話者性情報を求める場合、その処理を行う第1分析部4や第2分析部5(及び後述する図3の特徴抽出部18)は、それぞれを比較的少量の音声から話者性情報を予測するような予測器と考え、予め別の大量の音声データからそれらの予測器を学習しておく。例えば、i-vectorやボトルネック特徴量の推定における誤差評価(ボトルネック特徴量の場合、話者推定するニューラルネットワーク全体を学習する際の誤差評価)で、スペクトルを重く、基本周波数を軽くして学習することで第1分析部4が用いる予測器を学習しておき、逆にスペクトルを軽く、基本周波数を重くして学習することで第2分析部5が用いる予測器を学習しておくことが可能である。
【0048】
こうして、第1分析部4及び第2分析部5においては、予め定義されている第1話者性情報及び第2話者性情報に応じた手法(例えば、上記のスペクトルと基本周波数とのいずれを重視するかで学習時の誤差評価が異なり、結果として得られる異なる予測器による手法)でそれぞれ第1音声V1(a)及び第2音声V2(a)をそれぞれ分析し、第1分析部4においては得られた第1話者性情報を予測部7へと出力し、第2分析部5においては第2話者性情報を予測部7へと出力するようにすればよい。
【0049】
図3は、予測部7が予測するために必要な学習モデルMを学習する学習装置20の機能ブロック図である。学習装置20は、その全体的な動作として、大量の学習用の音声V[n](n=1,2,…)を学習データとして利用することによって、学習モデルMを出力する。図示するように、学習装置20は、加工部13、学習用第1分析部14、学習用第2分析部15、学習用解析部16、学習部17及び特徴抽出部18を備える。
【0050】
これらのうち、加工部13、学習用第1分析部14、学習用第2分析部15、学習用解析部16及び特徴抽出部18は、学習用音声V[n](n=1,2,…)の各々から学習部17で用いる学習用データL[n](n=1,2,…)を用意するための構成である。学習用データL[n]は、後述する学習用第1話者性情報s1[n]、学習用第2話者性情報s2[n]、学習用中間表現im(T[n])及び学習用音声特徴f[n]で構成されるもの(L[n]={ s1[n], s2[n],im(T[n]),f[n]}(n=1,2,…))である。
【0051】
学習用音声V[n](n=1,2,…)の各々は、クリーンな状態(音声合成装置10の識別部2で音声環境を識別した場合にe=1(クリーンな音声)と判定される状態)のものとして用意しておくものとする。学習用音声V[n]は、加工部13、学習用解析部16、特徴抽出部18へとそれぞれ読み込まれる。
【0052】
加工部13では、学習用音声V[n]をそのまま学習用第1音声V1[n]として学習用第1分析部14へと出力する一方、学習用音声V[n]に対してノイズ重畳を施したものを学習用第2音声V2[n]として学習用第2分析部15へと出力する。ここで、学習用第2音声V2[n]を音声合成装置10の識別部2で音声環境を識別した場合にe=2(クリーンでない音声)と判定される程度のノイズ重畳を行えばよい。ただし、例えば基本周波数の推定で見られるように、ノイズの影響による誤りの傾向がランダムな特徴を話者性情報推定に用いる場合等については、加工部13では処理をノイズ重畳を行わず、あるいは加工部13を設けず、クリーン音声をそのまま学習用第2音声V2[n]とする構成でも良い。
【0053】
学習用第1分析部14は、第1分析部4と同じ処理を学習用第1音声V1[n]に対して行うものであり、学習用第1音声V1[n]のうち、同じ話者の音声の集合をそれぞれ分析することによって学習用第1話者性情報s1[n]を得て学習部17へ出力する。学習用第2分析部15は、第2分析部5と同じ処理を学習用第2音声V2[n]に対して行うものであり、学習用第2音声V2[n]のうち、同じ話者の音声の集合をそれぞれ分析することによって学習用第2話者性情報s2[n]を得て学習部17へ出力する。これらの処理は話者単位で行い、同じ話者の音声に対してはそれぞれ同じs1[n]とs2[n]を出力する。(すなわち、学習用音声V[n]は、手動付与及び/又は自動識別によるラベルnによって話者nが予め識別されているものとし、話者nの音声を集めたものを学習用音声V[n]として用いて、学習用第1分析部14及び学習用第2分析部15でそれぞれ学習用第1話者性情報s1[n]及び学習用第2話者性情報s2[n]を出力するようにすればよい。)
【0054】
学習用解析部16は、学習用音声V[n]を音声認識してそのテキストT[n]を得たうえでさらに、音声合成装置10の解析部6と同じ処理によってこのテキストの中間表現im(T[n])を求め、学習部17へと出力する。学習用解析部16における音声認識には任意の既存手法を用いてよい。音声コーパス等により、学習用音声V[n]に予めテキストT[n]が紐づけられている場合、学習用解析部16では音声認識によるテキストT[n]取得を省略してよい。あるいは、音声認識誤りの影響を避けるために、人手による学習用音声の聴取に基づき、手作業で音声合成装置10の解析部6の出力に相当する中間表現im(T[n])を作成しても良い。
【0055】
特徴抽出部18では、学習用音声V[n]を解析して、この音声のフレーム時系列に沿ったデータとして学習用音声特徴f[n]を得て学習部17へと出力する。
【0056】
特徴抽出部18が出力する学習用音声特徴f[n]と同種の特徴が、既に説明した音声合成装置10の予測部7が出力する音声特徴f(a,T)である。(予測部7は学習装置20で学習したモデルMを利用するため。)従って、この学習用音声特徴f[n]も、予測部7において既に説明した通り、メルケプストラム係数等として、既存手法により求めるようにすればよい。
【0057】
学習部17は、以上のように得られる学習データL[n]={ s1[n], s2[n],im(T[n]),f[n]}(n=1,2,…)を用いて学習を行い、予測部7が用いるモデルMを出力する。具体的には、学習用第1話者性情報s1[n]と、学習用第2話者性情報s2[n]と、学習用中間表現im(T[n])と、を入力として、学習用音声特徴f[n]を出力するような、音声合成装置10における予測器7で用いるモデルMを学習する。このモデルMには、第1話者性情報s1[n]と第2話者性情報s2[n]と中間表現im(T[n])の組を説明変数とする決定木や、同様にそれらを入力とするDNN(深層ニューラルネットワーク)を用いることができる。多数の話者nに関する大量の学習用音声V[n](及び対応する大量の中間表現im(T[n]))をもとにモデルMを学習することで、予測部7においても任意の話者a(及び任意のテキストT)に関する予測が可能となることが期待される。
【0058】
予測部7による予測の構成には種々の変形例が可能である。以下、図4及び図5を参照して変形例を説明する。
【0059】
図4は、予測部7が第1変形例で構成された音声合成装置10の機能ブロック図であり、予測部7が第1予測器71及び第2予測器72で構成され、対応する処理を行う以外は図1の音声合成装置10と同様であり、図2のフローに即して動作することが可能なものである。すなわち、予測部7の第1予測器71及び第2予測器72と、これへのデータ入出力を行う構成と、以外に関しては図1及び図2で説明したとの同様の動作であるため、重複した説明を省略する。
【0060】
第1予測器71は、第1分析部4から得られる第1話者性情報s1(a)及び解析部6から得られる中間表現im(T)を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての第1音声特徴f1(a,T)を予測して、生成部8へと出力する。第2予測器72は、第2分析部5から得られる第2話者性情報s2(a)及び解析部6から得られる中間表現im(T)を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての第2音声特徴f2(a,T)を予測して、生成部8へと出力する。
【0061】
ここで、第1予測器71が出力する第1音声特徴f1(a,T)は、第1話者性情報s1(a)と相関が高い特徴量をテキストTに沿った時系列としたものとすることができる。例えばスペクトルに関する特徴量である。また、第2予測器72が出力する第2音声特徴f2(a,T)は、第2話者性情報s2(a)と相関が高い特徴量をテキストTに沿った時系列としたものとすることができる。例えば基本周波数に関する特徴量である。
【0062】
生成部8では、第1音声特徴f1(a,T)及び第2音声特徴f2(a,T)を組み合わせて音声特徴f(a,T)を得て、(第1音声特徴f1(a,T)の各フレームがP次元で第2音声特徴f2(a,T)の各フレームがQ次元である場合、これらを統合してP+Q次元ベクトルを得て、)この音声特徴f(a,T)に対して図1の実施形態の場合と同様の処理により音声合成波形W(a,T)を得ることができる。
【0063】
学習に関しても、第1予測器71が利用するモデルM1と、第2予測器72が利用するモデルM2とを、図3の場合とほぼ同様に、次のように学習して求めることができる。すなわち、大量のクリーンなまたはクリーンでない学習用音声V[n](及び対応テキストT[n])を用いて、学習データとして第1話者性情報s1[n]、第2話者性情報s2[n]、中間表現im(T[n])、第1音声特徴f1[n]及び第2音声特徴f2[n]を用意し、モデルM1は、第1話者性情報s1[n]及び中間表現im(T[n])を入力として第1音声特徴f1[n]を出力するものとしてクリーンな学習用音声V[n]をもとに学習し、モデルM2は、第2話者性情報s2[n]及び中間表現im(T[n])を入力として第2音声特徴f2[n]を出力するものとしてクリーンでない学習用音声V[n]をもとに学習することができる。学習に関しても機械学習(深層学習を含む)を用いればよい。この方法は第1話者性情報s1[n]と第2音声特徴f2[n]、第2話者性情報s2[n]と第1音声特徴f1[n]がそれぞれ独立であることを仮定することになるので、大量の学習データ量がある場合は不利と考えられるが、図1の予測器7におけるモデルMよりも小さいモデルM1とM2を独立に学習できるので、学習データ量が限られている場合は有効である。
【0064】
図5は、予測部7が第2変形例で構成された音声合成装置10の機能ブロック図であり、予測部7が第3予測器73及び第4予測器74で構成され、対応する処理を行う以外は図1の音声合成装置10と同様であり、図2のフローに即して動作することが可能なものである。すなわち、予測部7の第3予測器73及び第4予測器74と、これへのデータ入出力を行う構成と、以外に関しては図1及び図2で説明したとの同様の動作であるため、重複した説明を省略する。
【0065】
図5の実施形態は、線L1の流れ(解析部6から得た中間表現im(T)を第4予測器74へ出力する流れ)がある場合とない場合との2つが可能である。以下、線L1がある場合を説明する。
【0066】
第3予測器73は、第2分析部5から得られる第2話者性情報s2(a)及び解析部6から得られる中間表現im(T)を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての第2音声特徴f2(a,T)を予測して、第4予測器74へと出力する。第4予測器74は、第1分析部4から得られる第1話者性情報s1(a)と、第3予測器73から得られる第2音声特徴f2(a,T)と、解析部6から得られる中間表現im(T)と、を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての音声特徴f(a,T)を予測して、生成部8へと出力する。
【0067】
ここで、第3予測器73が出力する第2音声特徴f2(a,T)は、第2話者性情報s2(a)と相関の高い特徴量をテキストTに沿った時系列としたものとすることができる。一方、第4予測器74が出力する音声特徴f(a,T)は、音声合成に必要な全ての特徴を含んだ特徴量をテキストTに沿った時系列とする必要がある。
【0068】
学習に関しても、第3予測器73が利用するモデルM3と、第4予測器74が利用するモデルM4とを、図3の場合とほぼ同様に、次のように学習して求めることができる。すなわち、大量のクリーンなまたはクリーンでない学習用音声V[n](及び対応テキストT[n])を用いて、学習データとして第1話者性情報s1[n]、第2話者性情報s2[n]、中間表現im(T[n])、第1音声特徴f1[n]及び第2音声特徴f2[n]を用意しておく。
【0069】
モデルM3は、第2話者性情報s2[n]及び中間表現im(T[n])を入力として第2音声特徴f2[n]を出力するものとしてクリーンでない学習用音声V[n]をもとに学習し、モデルM4は、第1話者性情報s1[n]、第2音声特徴f2[n](クリーンでない音声から求められた第2音声特徴f2[n])及び中間表現im(T[n])を入力として音声特徴f[n](クリーンな音声から求めた第1音声特徴f1[n]及びクリーンでない音声から求められた第2音声特徴f2[n]のベクトル要素としての組み合わせ)を出力するものとして学習することができる。学習に関しても機械学習(深層学習を含む)を用いればよい。この方法は第2音声特徴f2[n]に音声の基本周波数が含まれる場合に、音声の基本周波数が音声のスペクトルに与える影響を、中間表現im(T[n])を介した間接的な情報だけでなく、直接的にモデル化することを目指した構成である。
【0070】
また、図5の実施形態で線L1が省略される場合も、以下のように動作することが可能である。
【0071】
第3予測器73は、第2分析部5から得られる第2話者性情報s2(a)及び解析部6から得られる中間表現im(T)を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての第2音声特徴f2(a,T)を予測して、第4予測器74へと出力する。第4予測器74は、第1分析部4から得られる第1話者性情報s1(a)と、第3予測器73から得られる第2音声特徴f2(a,T)と、を用いて、テキストTを話者aが発声する際の特徴量フレーム時系列としての音声特徴f(a,T)を予測して、生成部8へと出力する。
【0072】
ここでは、第4予測器74が出力する音声特徴f2(a,T)に加え、第3予測器73が出力する第2音声特徴f2(a,T)も、音声合成に必要な全ての特徴を含んだ特徴量をテキストTに沿った時系列としたものとする必要がある。
【0073】
学習に関しても、第3予測器73が利用するモデルM3と、第4予測器74が利用するモデルM4とを、図3の場合とほぼ同様に、次のように学習して求めることができる。すなわち、大量のクリーンなまたはクリーンでない学習用音声V[n](及び対応テキストT[n])を用いて、学習データとして第1話者性情報s1[n]、第2話者性情報s2[n]、中間表現im(T[n])、第1音声特徴f1[n]及び第2音声特徴f2[n]を用意しておく。
【0074】
モデルM3は、第2話者性情報s2[n]及び中間表現im(T[n])を入力として第2音声特徴f2[n]を出力するものとしてクリーンでない学習用音声V[n]をもとに学習し、モデルM4は、第1話者性情報s1[n]及び第2音声特徴f2[n](クリーンでない音声から求められた第2音声特徴f2[n])を入力として音声特徴f[n](クリーンな音声から求めた第1音声特徴f1[n]及びクリーンでない音声から求められた第2音声特徴f2[n]のベクトル要素としての組み合わせ)を出力するものとして学習することができる。学習に関しても機械学習を用いればよい。クリーンでない音声がより大量に得られる場合や、例えば背景雑音レベルが低くクリーンでない音声からスペクトルに関連した話者性情報も高精度に得られるような場合においては、中間表現im(T[n])に大きく基づいた音声特徴の予測は第3予測器73だけで高精度に行うことが可能で、第4予測器74の入力に中間表現im(T[n])が含まれないことで、入出力関係がより単純になり、モデルM4の学習がより容易になる。
【0075】
なお、以上の説明では話者毎に話者性情報を求めるとして説明したが、ここで話者は実際の発話者に即したものでなくても良い。例えば、同じ人による発話でも異なる感情表現やスタイルに発話に対しては、別の話者の音声として扱っても良い。このようにすることで、同様の方法で様々な感情やスタイルの音声の合成が可能となる。逆に、話者性情報において類似の異なる話者については、同じ話者として扱うことで、話者性情報の推定のためのデータを増やして推定精度を上げることができる。ここで、話者性情報が類似とは、例えば話者性情報を表すベクトル間の距離が所定値以下といった形で定義できる。
【0076】
図6は、一般的なコンピュータ装置50におけるハードウェア構成を示す図であり、音声合成装置10はこのような構成を有する1台以上のコンピュータ装置50として実現可能である。コンピュータ装置50は、所定命令を実行するCPU(中央演算装置)51、CPU51の実行命令の一部又は全部をCPU51に代わって又はCPU51と連携して実行する専用プロセッサ52(GPU(グラフィック演算装置)や深層学習専用プロセッサ等)、CPU51や専用プロセッサ52にワークエリアを提供する主記憶装置としてのRAM53、補助記憶装置としてのROM54、通信インタフェース55、ディスプレイ56、マイク57及びスピーカ58、キーボード、マウス、タッチパネル等で構成されユーザからの操作入力を受け付ける入力インタフェース59と、これらの間でデータを授受するためのバスBと、を備える。
【0077】
音声合成装置10の各部は、各部の機能に対応する所定のプログラムをROM54から読み込んで実行するCPU51及び/又は専用プロセッサ52によって実現することができる。ここで、表示関連の処理が行われる場合にはさらに、ディスプレイ56が連動して動作し、データ送受信に関する通信関連の処理が行われる場合にはさらに通信インタフェース55が連動して動作し、音声録音に関する処理が行われる場合にはマイク57が連動して動作し、音声再生に関する処理が行われる場合にはスピーカ58が連動して動作する。例えば、生成部8で得た合成音声はスピーカ58から再生して出力されるようにしてもよい。
【0078】
2台以上のコンピュータ装置50で音声合成装置10がシステムとして実現される場合、ネットワーク経由で各処理に必要な情報を送受信するようにすればよい。
【符号の説明】
【0079】
10…音声合成装置、4…第1分析部、5…第2分析部、7…解析部、8…生成部
図1
図2
図3
図4
図5
図6