(57)【要約】【課題】音声認識用の音声データが作成された環境と学習用の音声データが作成された環境との間で、複数の音響条件に違いがある場合であっても、高い精度で音声認識を行う。【解決手段】抽出部２１は、音声データから、第１の入力特徴量および第２の入力特徴量を抽出する。そして、計算部２２は、第２の入力特徴量に基づき、所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する。そして、計算部２２は、第１の入力特徴量および条件特徴量に基づき、音声認識モデル３１に適応した特徴量である適応特徴量を計算する。そして、更新部２３は、音声認識モデル３１に適応特徴量を入力して得られた出力結果を基に、条件特徴量計算モデル３２のパラメータおよび適応特徴量計算モデル３３のパラメータの更新を行う。【選択図】図４
2018031812.tif 000002
【特許請求の範囲】
【請求項１】
所定の環境における音声を基に作成された適応用の音声データから、前記音声の特徴を示す特徴量である第１の入力特徴量、および前記環境の特徴を示す特徴量である第２の入力特徴量を抽出する抽出部と、
ニューラルネットワークを用いた計算モデルである条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する条件特徴量計算部と、
前記条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記要素ごとに、ニューラルネットワークを用いた計算モデルである音声認識モデルに適応した特徴量である適応特徴量を計算する適応特徴量計算部と、
前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、前記条件特徴量計算モデルのパラメータおよび前記適応特徴量計算モデルのパラメータの更新を行う更新部と、
を有することを特徴とする音声データ処理装置。
【請求項２】
前記音声認識モデルを用いて音声認識を行う認識部をさらに有し、
前記抽出部は、所定の環境における音声を基に作成された音声認識用の音声データから、前記第１の入力特徴量、および前記第２の入力特徴量を抽出し、
前記条件特徴量計算部は、前記条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記条件特徴量を計算し、
前記適応特徴量計算部は、前記適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記適応特徴量を計算し、
前記認識部は、前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、音声の認識を行うことを特徴とする請求項１に記載の音声データ処理装置。
【請求項３】
前記抽出部は、前記第１の入力特徴量と、雑音抑圧処理が行われた前記音声データの音声の特徴を示す特徴量と、の差を基に特徴量を計算し、計算した特徴量を前記第２の入力特徴量として抽出することを特徴とする請求項１または２に記載の音声データ処理装置。
【請求項４】
音声データ処理装置で実行される音声データ処理方法であって、
所定の環境における音声を基に作成された適応用の音声データから、前記音声の特徴を示す特徴量である第１の入力特徴量、および前記環境の特徴を示す特徴量である第２の入力特徴量を抽出する抽出工程と、
ニューラルネットワークを用いた計算モデルである条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する条件特徴量計算工程と、
前記条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記要素ごとに、ニューラルネットワークを用いた計算モデルである音声認識モデルに適応した特徴量である適応特徴量を計算する適応特徴量計算工程と、
前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、前記条件特徴量計算モデルのパラメータおよび前記適応特徴量計算モデルのパラメータの更新を行う更新工程と、
を含んだことを特徴とする音声データ処理方法。
【請求項５】
前記音声認識モデルを用いて音声認識を行う認識工程をさらに含み、
前記抽出工程は、所定の環境における音声を基に作成された音声認識用の音声データから、前記第１の入力特徴量、および前記第２の入力特徴量を抽出し、
前記条件特徴量計算工程は、前記条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記条件特徴量を計算し、
前記適応特徴量計算工程は、前記適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記適応特徴量を計算し、
前記認識工程は、前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、音声の認識を行うことを特徴とする請求項４に記載の音声データ処理方法。
【請求項６】
前記抽出方法は、前記第１の入力特徴量と、雑音抑圧処理が行われた前記音声データの音声の特徴を示す特徴量と、の差を基に特徴量を計算し、計算した特徴量を前記第２の入力特徴量として抽出することを特徴とする請求項４または５に記載の音声データ処理方法。
【請求項７】
請求項１〜３のいずれか１項に記載の音声データ処理装置としてコンピュータを機能させる音声データ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声データ処理装置、音声データ処理方法および音声データ処理プログラムに関する。
【背景技術】
【０００２】
従来、音声データに基づき、音声認識モデルの学習および音声認識モデルを用いた音声認識を行う音声データ処理装置が知られている。音声認識用の音声データが作成された環境が、学習用の音声データが作成された環境と異なる場合、音声データ処理装置による音声認識の精度が低下する場合がある。例えば、周囲の雑音や話者の違いが音声認識の精度を低下させる場合がある。そのため、環境の違い、すなわち音響条件に対して頑健（ロバスト）な音声認識技術が知られている（例えば非特許文献１または２を参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】R.Gemello,  F.Mana,  S.Scanzio,  P.Laface,  and  R.De  Mori,“Adaptation  of  hybrid  ANN/HMM  models  using  linear  hidden  transformations  and  conservative  training,”  in  Proc.  Of  ICASSP’06,  vol.1,  2006,  pp.1189-1192.
【非特許文献２】D.Yu  and  L.Deng，“Automatic  speech  recognition：A  deep  learning  approach，”Springer，2015.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術には、音声認識用の音声データが作成された環境と学習用の音声データが作成された環境との間で、複数の音響条件に違いがある場合、高い精度で音声認識を行うことができない場合があるという問題があった。
【０００５】
例えば、従来の技術では、音声データの特徴量を音声認識モデルに適応させるため、音響条件に基づくパラメータを用いて音声データの特徴量を変換していた。しかし、従来の技術において変換に用いられるパラメータは、１つの音響条件にのみ基づくものであったため、音声認識用の音声データが作成された環境と学習用の音声データが作成された環境との間で、複数の音響条件に違いがある場合、高い精度で音声認識を行うことができない場合があった。
【課題を解決するための手段】
【０００６】
また、本発明の音声データ処理装置は、所定の環境における音声を基に作成された適応用の音声データから、前記音声の特徴を示す特徴量である第１の入力特徴量、および前記環境の特徴を示す特徴量である第２の入力特徴量を抽出する抽出部と、ニューラルネットワークを用いた計算モデルである条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する条件特徴量計算部と、前記条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記要素ごとに、ニューラルネットワークを用いた計算モデルである音声認識モデルに適応した特徴量である適応特徴量を計算する適応特徴量計算部と、前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、前記条件特徴量計算モデルのパラメータおよび前記適応特徴量計算モデルのパラメータの更新を行う更新部と、を有することを特徴とする。
【０００７】
また、本発明の音声データ処理方法は、音声データ処理装置で実行される音声データ処理方法であって、所定の環境における音声を基に作成された適応用の音声データから、前記音声の特徴を示す特徴量である第１の入力特徴量、および前記環境の特徴を示す特徴量である第２の入力特徴量を抽出する抽出工程と、ニューラルネットワークを用いた計算モデルである条件特徴量計算モデルに前記第２の入力特徴量を入力し、前記所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する条件特徴量計算工程と、前記条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデルに前記第１の入力特徴量および前記条件特徴量を入力し、前記要素ごとに、ニューラルネットワークを用いた計算モデルである音声認識モデルに適応した特徴量である適応特徴量を計算する適応特徴量計算工程と、前記音声認識モデルに前記適応特徴量を入力して得られた出力結果を基に、前記条件特徴量計算モデルのパラメータおよび前記適応特徴量計算モデルのパラメータの更新を行う更新工程と、を含んだことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、音声認識用の音声データが作成された環境と学習用の音声データが作成された環境との間で、複数の音響条件に違いがある場合であっても、高い精度で音声認識を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、従来技術に係る音声データ処理装置の構成の一例を示す図である。
【図２】図２は、従来技術に係る音声データ処理装置の処理の概要について説明するための図である。
【図３】図３は、従来技術に係る音声認識処理の一例を示すフローチャートである。
【図４】図４は、第１の実施形態に係る音声データ処理装置の構成の一例を示す図である。
【図５】図５は、第１の実施形態に係る音声データ処理装置の処理の概要について説明するための図である。
【図６】図６は、第１の実施形態に係る音声データ処理装置の適応処理について説明するための図である。
【図７】図７は、第１の実施形態に係る音声データ処理装置の音声認識処理について説明するための図である。
【図８】図８は、第１の実施形態に係る音声データ処理装置の適応処理の流れを示すフローチャートである。
【図９】図９は、第１の実施形態に係る音声データ処理装置の音声認識処理の流れを示すフローチャートである。
【図１０】図１０は、プログラムが実行されることにより、第１の実施形態に係る音声データ処理装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本願が開示する音声データ処理装置、音声データ処理方法および音声データ処理プログラムの実施形態の一例の説明に先立ち、実施形態の一例が前提とする従来技術を説明する。その後、本願が開示する音声データ処理装置、音声データ処理方法および音声データ処理プログラムの実施形態の一例を説明する。
【００１１】
なお、以下では、例えばＡがベクトルである場合には“ベクトルＡ”と表記し、例えばＡが行列である場合には“行列Ａ”と表記し、例えばＡがスカラーである場合には単に“Ａ”と表記する。また、例えばＡが集合である場合には、“集合Ａ”と表記する。また、例えばベクトルＡの関数ｆは、ｆ（ベクトルＡ）と表記する。また、ベクトル、行列またはスカラーであるＡに対し、“＾Ａ”と記載する場合は「“Ａ”の直上に“＾”が記された記号」と同等であるとする。また、ベクトル、行列またはスカラーであるＡに対し、“−Ａ”と記載する場合は「“Ａ”の直上に“−”が記された記号」と同等であるとする。また、ベクトルまたは行列であるＡに対し、ＡＴはＡの転置を表す。
【００１２】
従来技術は、例えば文献１「G.  Hinton  et  al.,  “Deep  Neural  Networks  for  Acoustic  Modeling  in  Speech  Recognition,  The  shared  views  of  four  research  groups,”  IEEE  SIGNAL  PROCESSING  MAGAZINE,  Vol.  29，No.  6,  pp.  82−97,  2012.」に示される音声認識技術である。
【００１３】
まず、図１を用いて従来技術に係る音声データ処理装置の構成について説明する。図１は、従来技術に係る音声データ処理装置の構成の一例を示す図である。図１に示すように、第１の従来技術に係る音声データ処理装置１０ａは、特徴量抽出部２１ａ、事後確率計算部２２ａ、単語列検索部２３ａを有する。また、音声データ処理装置１０ａは、記憶部３０ａを有する。
【００１４】
記憶部３０ａは、音響モデルおよび言語モデルをあらかじめ記憶する。音響モデルは、音声の音響的特徴をモデル化したものである。言語モデルは、音素や単語といった多数のシンボル系列から構成されている。一般的に、音声認識用の音響モデルは、各音素のLeft  to  rightのＨＭＭ（Hidden  Markov  Model：隠れマルコフモデル）であり、ニューラルネットワーク（ＮＮ：Neural  Network）で計算されたＨＭＭの各状態の出力確率分布を含む。
【００１５】
すなわち、記憶部３０ａに記憶されている音響モデルは、音素等の各シンボルにおけるＨＭＭの状態遷移確率、ｉ番目の隠れ層に関する重み行列Ｗｉおよびバイアスベクトルｂｉ、アクティベーション関数のパラメータ等を含むニューラルネットワークのパラメータである。ここで、ｉは、隠れ層のインデックスである。これらを音響モデルパラメータと称し、その集合をΩ＝｛Ｗ１，ｂ１，・・・，ＷＩ，ｂＩ｝（Ｉは、隠れ層の総数）とする。言語モデルは、音素や単語といった多数のシンボル系列ｓｊから構成されており、ｐ（ｓｊ）は言語モデルによって得られるシンボル系列ｓｊの確率（言語確率）である。なお、シンボル系列ｓｊとは、音声認識結果となりうる、音素や単語等からなるシンボルの系列である。
【００１６】
特徴量抽出部２１ａは、認識用の音声データから音声の特徴量を抽出する。特徴量としては、例えば、ＭＦＣＣ（Mel  Frequency  Cepstral  Coefficient）、ＬＭＦＣ（log  Mel  Filterbank  coefficients）、ΔＭＦＣＣ（ＭＦＣＣの１回微分）、ΔΔＭＦＣＣ（ＭＦＣＣの２回微分）、対数（スペクトル）パワー、Δ対数パワー（対数パワーの１回微分）等がある。
【００１７】
そして、特徴量抽出部２１ａは、フレームごとに当該フレームおよびその前後５フレーム程度の連続する各フレームから得られる特徴量を連結し、１０〜２０００次元程度の時系列特徴量ベクトルｘｔ（ｔは、１，・・・，Ｍの自然数）を生成する。そして、特徴量抽出部２１ａは、下記（１）式のように、全てのフレームについての時系列特徴量ベクトルｘｔをまとめた特徴量ベクトルｘを生成する。特徴量ベクトルｘは、１からＭフレーム目までのＤ次元ベクトルで表現されるデータである。例えば、フレーム長は、３０ｍｓ程度、フレームシフト長は、１０ｍｓ程度である。
【００１８】
【数１】
2018031812.tif 000003
【００１９】
事後確率計算部２２ａは、記憶部３０ａから音響モデルを取得し、音響モデルパラメータΩに基づき、特徴量ベクトルｘの各フレームｔに対する音響モデルの各ＨＭＭ状態の出力確率を計算する。ＨＭＭ状態の出力確率は、例えば文献１「G.  Hinton  et  al.,  “Deep  Neural  Networks  for  Acoustic  Modeling  in  Speech  Recognition,  The  shared  views  of  four  research  groups,”  IEEE  SIGNAL  PROCESSING  MAGAZINE,  Vol.  29，No.  6,  pp.  82−97,  2012.」の数式（２）で表されるようなニューラルネットワークの出力である。
【００２０】
図２は、従来技術に係る音声データ処理装置の処理の概要について説明するための図である。図２に示すように、従来技術の音声認識に音響モデルを表すニューラルネットワークは、入力と出力との間に、１以上の隠れ層を有する。ニューラルネットワークの入力は、時系列特徴量ベクトルｘｔであり、最前段の隠れ層へ入力される。ニューラルネットワークの出力は、最後段の隠れ層によるＨＭＭ状態の出力確率である。事後確率計算部２２ａが行う各隠れ層における計算は、線形変換による処理およびアクティベーション関数による処理の２つの処理を含む。各隠れ層における線形変換は、下記（２）式のようになる。
【００２１】
【数２】
2018031812.tif 000004
【００２２】
ただし、上記（２）式において、ベクトルｚｉ，ｔは、ｉ番目（ｉは自然数であり、ｉ＝１，２，・・・，Ｉ（ただしＩは隠れ層の総数））の隠れ層における線形変換の出力であり、ベクトルｘｉ−１，ｔは（ｉ−１）番目の隠れ層の出力である。なお、ベクトルｘ０，ｔは、ニューラルネットワークの入力である時系列特徴量ベクトルｘｔである。また、アクティベーション関数の出力は、下記（３）式のようになる。
【００２３】
【数３】
2018031812.tif 000005
【００２４】
ただし、上記（３）式において、ベクトルｘｉ，ｔはｉ番目の隠れ層の出力であり、ｆ（）は、例えばsigmoid関数等のアクティベーション関数であり、ベクトルの要素ごとに計算される。すなわち、事後確率計算部２２ａは、ｉ番目の隠れ層において、前段の隠れ層である（ｉ−１）番目の隠れ層の出力であるベクトルｘｉ−１，ｔに対し上記（２）式による線形変換を行った結果であるベクトルｚｉ，ｔに対して、上記（２）式による処理を行った結果であるベクトルｘｉ，ｔを出力する。そして、事後確率計算部２２ａは、各ベクトルｘｉ，ｔ（ｉ＝１，２，・・・，Ｉ）に基づき、特徴量ベクトルｘの各フレームに対する音響モデルの各ＨＭＭ状態の出力確率を計算する。
【００２５】
単語列検索部２３ａは、事後確率計算部２２ａにより計算された各ＨＭＭ状態の出力確率に基づき、Ｊ個（Ｊは自然数）の対立候補シンボル系列ｓｊを生成し、対立候補シンボル系列ｓｊごとに、音響モデルとの適合尤度を示す音響スコアを計算する。シンボルは、例えば、音素である。ここで、ｊ＝１，２，・・・，Ｊである。
【００２６】
次に、単語列検索部２３ａは、記憶部３０ａから読み込んだ言語モデルに基づき、対立候補シンボル系列ｓｊごとに、言語モデルとの適合尤度を示す言語スコアを計算する。そして、単語列検索部２３ａは、計算した音響スコアおよび言語スコアに基づき、Ｊ個の対立候補シンボル系列ｓｊの中から、認識用の音声データに対応する単語列として最も確からしい、つまり、音響スコアおよび言語スコアを統合したスコアが最も高い対立候補シンボル系列を、記憶部３０ａに記憶される言語モデルから検索し、検索した対立候補シンボル系列を、認識結果である単語列＾Ｓとして出力する。
【００２７】
図３は、従来技術に係る音声認識処理の一例を示すフローチャートである。まず、音声データ処理装置１０ａは、記憶部３０ａから、音響モデルおよび言語モデルを読み込む（ステップＳ１０１ａ）。次に、音声データ処理装置１０ａは、認識用の音声データを読み込む（ステップＳ１０２ａ）。次に、音声データ処理装置１０ａは、読み込んだ認識用の音声データから音声の特徴量を抽出し、特徴量ベクトルｘｔを生成する（ステップＳ１０３ａ）。
【００２８】
次に、音声データ処理装置１０ａは、読み込んだ音響モデルに基づき、特徴量ベクトルｘｔの各フレームに対する音響モデルの各ＨＭＭ状態の出力確率を事後確率として計算する（ステップＳ１０４ａ）。次に、音声データ処理装置１０ａは、事後確率計算部２２ａにより計算された各ＨＭＭ状態の出力確率に基づき、対立候補シンボル系列ｓｊを生成し、対立候補シンボル系列ｓｊごとの音響スコアおよび言語スコアを統合したスコアが最も高い対立候補シンボル系列を言語モデルから検索する（ステップＳ１０５ａ）。次に、音声データ処理装置１０ａは、ステップＳ１０５ａの検索結果を、認識結果である単語列＾Ｓとして出力する（ステップＳ１０６ａ）。
【００２９】
［第１の実施形態の構成］
以下、本願が開示する音声データ処理装置、音声データ処理方法および音声データ処理プログラムの実施形態を説明する。以下の実施形態は、一例を示すに過ぎず、本願が開示する技術を限定するものではない。また、以下に示す実施形態およびその他の実施形態は、矛盾しない範囲で適宜組み合わせてもよい。
【００３０】
まず、図４を用いて、第１の実施形態に係る音声データ処理装置の構成について説明する。図４は、第１の実施形態に係る音声データ処理装置の構成の一例を示す図である。図１に示すように、音声データ処理装置１０は、制御部２０および記憶部３０を有する。
【００３１】
制御部２０は、音声データ処理装置１０全体を制御する。制御部２０は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路である。また、制御部２０は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部２０は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、抽出部２１、計算部２２、更新部２３および認識部２４を有する。
【００３２】
記憶部３０は、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、光ディスク等の記憶装置である。なお、記憶部３０は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）等のデータを書き換え可能な半導体メモリであってもよい。記憶部３０は、音声データ処理装置１０で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。さらに、記憶部３０は、プログラムの実行で用いられる各種情報を記憶する。また、記憶部３０は、音声認識モデル３１、条件特徴量計算モデル３２および適応特徴量計算モデル３３を記憶する。具体的には、記憶部３０は、例えば、各計算モデルを用いて計算を実行するためのパラメータを記憶する。
【００３３】
音声データ処理装置１０は、適応用の音声データを用いて、条件特徴量計算モデル３２および適応特徴量計算モデル３３を音響条件に適応させる。条件特徴量計算モデル３２は、音声認識に用いられる音声データから抽出された特徴量を、音響条件にあわせた特徴量に変換するためのパラメータを計算するための、ニューラルネットワークを用いた計算モデルである。
【００３４】
この場合、まず、抽出部２１は、所定の環境における音声を基に作成された適応用の音声データから、音声の特徴を示す特徴量である第１の入力特徴量、および環境の特徴を示す特徴量である第２の入力特徴量を抽出する。
【００３５】
適応用の音声データから抽出された特徴量には、音声の特徴および環境の特徴の両方が含まれている。抽出部２１は、第１の入力特徴量と第２の入力特徴量を同一の特徴量としてもよい。また、抽出部２１は、第１の入力特徴量と第２の入力特徴量を異なる特徴量としてもよい。例えば、抽出部２１は、第１の入力特徴量と、雑音抑圧処理が行われた音声データの音声の特徴を示す特徴量と、の差を基に特徴量を計算し、計算した特徴量を第２の入力特徴量として抽出してもよい。
【００３６】
例えば、第１の入力特徴量をｘｔとし、雑音抑圧処理が行われた音声データの音声の特徴を示す特徴量をｙｔとすると、抽出部２１は、第２の入力特徴量を下記（４）式により計算することができる。
【００３７】
【数４】
2018031812.tif 000006
【００３８】
そして、計算部２２は、ニューラルネットワークを用いた計算モデルである条件特徴量計算モデル３２に第２の入力特徴量を入力し、所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する。条件特徴量計算モデル３２に含まれる条件は、例えば、話者の性別、年齢、国籍、また、雑音の種類、強さ等を条件とすることができる。
【００３９】
また、計算部２２は、条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデル３３に第１の入力特徴量および条件特徴量を入力し、要素ごとに、ニューラルネットワークを用いた計算モデルである音声認識モデル３１に適応した特徴量である適応特徴量を計算する。このように、計算部２２は、適応特徴量計算モデル３３を用いて、条件特徴量の要素の数、すなわち環境を特徴付ける条件の数と同数の適応特徴量を計算する。
【００４０】
そして、更新部２３は、音声認識モデル３１に適応特徴量を入力して得られた出力結果を基に、条件特徴量計算モデル３２のパラメータおよび適応特徴量計算モデル３３のパラメータの更新を行う。更新部２３は、ニューラルネットワークの誤差逆伝搬等の手法を用いてパラメータの更新を行う。このとき、更新部２３は、条件特徴量計算モデル３２のパラメータおよび適応特徴量計算モデル３３のパラメータの更新に、音声認識モデル３１の出力結果を反映させているため、音響条件を考慮した音声認識モデル３１の音声認識精度が向上していくことになる。
【００４１】
なお、音声認識モデル３１自体の学習は、適応特徴量計算モデル３３の適応と同時に行われてもよいし、別に行われてもよい。以降、音声認識モデル３１の学習のための音声データを学習用の音声データとよび、条件特徴量計算モデル３２の適応のための音声データを適応用の音声データとよぶ。
【００４２】
なお、音声認識モデル３１および条件特徴量計算モデル３２はいずれもニューラルネットワークを用いた計算モデルとすることができるため、音声認識モデル３１の学習、条件特徴量計算モデル３２の適応および音声認識は、従来技術と同様の方法で行うこととしてもよい。
【００４３】
また、適応用の音声データに対応した書き起こし等の正解データが存在する場合、音声データ処理装置１０は、教師あり適応を行うことができる。また、音声データ処理装置１０は、音声認識の出力等に基づき教師なし適応を行うことができる。
【００４４】
音声データ処理装置１０は、音声認識用の音声データを用いて音声認識を行う。この場合、まず、抽出部２１は、所定の環境における音声を基に作成された音声認識用の音声データから、第１の入力特徴量、および第２の入力特徴量を抽出する。抽出部２１は、第１の入力特徴量および第２の入力特徴量を、適応の場合と同様の方法で抽出する。
【００４５】
そして、計算部２２は、条件特徴量計算モデル３２に第２の入力特徴量を入力し、条件特徴量を計算する。そして、計算部２２は、適応特徴量計算モデル３３に第１の入力特徴量および条件特徴量を入力し、適応特徴量を計算する。そして、認識部２４は、音声認識モデル３１に適応特徴量を入力して得られた出力結果を基に、音声の認識を行う。これにより、音声データ処理装置１０は、音響条件を考慮した音声認識を行うことができる。
【００４６】
図５を用いて、音声データ処理装置１０の処理の概要について説明する。図５は、第１の実施形態に係る音声データ処理装置の処理の概要について説明するための図である。図５に示すように、計算部２２は、第２の入力特徴量σｘ，ｔを、条件特徴量計算モデル３２に入力する。そして、計算部２２は、条件特徴量計算モデル３２を用いて計算した条件特徴量の要素α１、α２、α３、および、要素のそれぞれに対応したパラメータ（Ｕ１，ｖ１）、（Ｕ２，ｖ２）、（Ｕ３，ｖ３）を用いて、第１の入力特徴量ｘｔから、適応特徴量−ｘｔを計算する。ここで、Ｕは変換行列であり、ｖはバイアスベクトルである。
【００４７】
また、更新部２３は、音声認識モデル３１に適応特徴量−ｘｔを入力して得られた音声認識結果を基に、条件特徴量計算モデル３２のパラメータおよび適応特徴量計算モデル３３のパラメータの更新を行う。図５に示すように、音声認識モデル３１は、ソフトマクス層に至るまでの各層にパラメータ（Ｗ１，ｂ１）、（Ｗ２，ｂ２）、（Ｗ３，ｂ３）、（Ｗ４，ｂ４）が設定されたＤＮＮ（Deep  Neural  Network）である。
【００４８】
ここで、図６および７を用いて、第１の実施形態に係る音声データ処理装置１０の適応処理および音声認識処理について説明する。図６は、第１の実施形態に係る音声データ処理装置の適応処理について説明するための図である。また、図７は、第１の実施形態に係る音声データ処理装置の音声認識処理について説明するための図である。
【００４９】
以降の説明では、データの流れを明確にするため、音声データ処理装置１０の各処理部が、それぞれさらに処理部を有することとして説明する。具体的には、図６および７に示すように、抽出部２１は、第１の入力特徴量抽出部２１１および第２の入力特徴量抽出部２１２を有する。また、計算部２２は、条件特徴量計算部２２１、特徴量変換部２２２、事後確率計算部２２３を有する。また、更新部２３は、エラー計算部２３１、微分値計算部２３２、パラメータ更新部２３３および収束判定部２３４を有する。また、認識部２４は、単語列検索部２４１を有する。
【００５０】
まず、図６を用いて、音声データ処理装置１０の適応処理について説明する。図６に示すように、第１の入力特徴量抽出部２１１は、適応用の音声データから各フレームの第１の入力特徴量ｘｔを抽出する。また、第２の入力特徴量抽出部２１２は、適応用の音声データから各フレームの第２の入力特徴量σｘ，ｔを抽出する。
【００５１】
次に、条件特徴量計算部２２１は、記憶部３０から条件特徴量計算モデル３２を取得し、第２の入力特徴量σｘ，ｔを用いて、各フレームの条件特徴量αｎ，ｔを計算する。下記（５）式に示すように、条件特徴量計算部２２１は、ニューラルネットワークである条件特徴量計算モデル３２の出力として条件特徴量αｎ，ｔを計算する。なお、Ω´は、条件特徴量計算モデル３２の各層における線形変換のためのパラメータの集合であり、Ω´＝｛Ｗ´１，ｂ´１，・・・，Ｗ´Ｉ´，ｂ´Ｉ´｝（Ｉ´は、隠れ層の総数）とする。また、各層における線形変換の方法は、従来技術と同様である。
【００５２】
【数５】
2018031812.tif 000007
【００５３】
次に、特徴量変換部２２２は、記憶部３０から適応特徴量計算モデル３３を取得し、第１の入力特徴量ｘｔ、条件特徴量αｎ，ｔ、パラメータの組Ｕ１，ｖ２，・・・，ＵＮ，ｖＮに基づいて、下記（６）式を用いて、各フレームの適応特徴量−ｘｔを計算する。ここで、前述の通り、Ｕは変換行列であり、ｖはバイアスベクトルである。
【００５４】
【数６】
2018031812.tif 000008
【００５５】
次に、事後確率計算部２２３は、記憶部３０から音声認識モデル３１を取得し、適応特徴量−ｘｔに基づいて、下記（７）式のように、ＨＭＭ状態の出力確率を各フレームの事後確率ｏｔとして計算する。なお、Ωは、音声認識モデル３１の各層における線形変換のためのパラメータの集合であり、Ω＝｛Ｗ１，ｂ１，・・・，ＷＩ，ｂＩ｝（Ｉは、隠れ層の総数）とする。また、各層における線形変換の方法は、従来技術と同様である。
【００５６】
【数７】
2018031812.tif 000009
【００５７】
更新部２３は、条件特徴量計算モデル３２のパラメータΩ´、および適応特徴量計算モデル３３のパラメータＵ１，ｖ２，・・・，ＵＮ，ｖＮの最適化を行う。更新部２３は、ニューラルネットワークの学習手順に従い、誤差逆伝搬とＳＧＤを用いてパラメータを更新し最適化する。
【００５８】
まず、エラー計算部２３１は、下記（８）式の通りエラー、すなわち各層における逆伝搬した誤差δｉ，ｔを計算する。また、エラー計算部２３１は、δＩ，ｔを下記（９）式の通り計算する。なお、ｄｔは、正解データから得られる正解ＨＭＭ状態である。
【００５９】
【数８】
2018031812.tif 000010
【００６０】
【数９】
2018031812.tif 000011
【００６１】
ここで、微分値計算部２３２は、下記（１０）式で表されるCross  Entropy関数を各パラメータで微分した値を、それぞれ下記（１１）〜（１４）式により計算する。
【００６２】
【数１０】
2018031812.tif 000012
【００６３】
【数１１】
2018031812.tif 000013
【００６４】
【数１２】
2018031812.tif 000014
【００６５】
【数１３】
2018031812.tif 000015
【００６６】
【数１４】
2018031812.tif 000016
【００６７】
また、微分値計算部２３２は、δ´Ｉ´，ｔを、下記（１５）式により計算する。なお、（１５）式中の各インデクス０，ｔ，ｐのうち、１番目のインデクスは層のインデクスである。また、２番目のインデクスは時間フレームのインデクスである。また、３番目のインデクスは各ベクトル内の次元のインデクスである。例えば、ｚ０,t,pは、０番目の層の時間フレームｔにおける出力であるベクトルのｐ次元目の要素である。また、（１５）式の層のインデクスが０である層は、変換層、すなわち特徴量変換部２２２によって適応特徴量計算モデル３３を用いた変換が行われる層である。
【００６８】
【数１５】
2018031812.tif 000017
【００６９】
また、微分値計算部２３２は、（１５）式中のｚｎ，０，ｔを、下記（１６）式により計算する。
【００７０】
【数１６】
2018031812.tif 000018
【００７１】
パラメータ更新部２３３は、微分値計算部２３２による計算結果を基に、下記（１７）〜（２０）式により各パラメータを更新する。なお、ηは、音響モデルパラメータ補正用パラメータであり、例えば0.1〜0.0001等の微小値である。
【００７２】
【数１７】
2018031812.tif 000019
【００７３】
【数１８】
2018031812.tif 000020
【００７４】
【数１９】
2018031812.tif 000021
【００７５】
【数２０】
2018031812.tif 000022
【００７６】
収束判定部２３４は、パラメータ更新部２３３により更新されたパラメータが収束したか否かを判定する。収束判定部２３４がパラメータが収束していないと判定した場合、計算部２２および更新部２３は、さらにパラメータ更新のための処理を実行する。また、収束判定部２３４は、パラメータが収束したと判定した場合、更新後のパラメータを記憶部３０に格納する。
【００７７】
収束判定部２３４は、例えば、１つ前のステップで得られていたパラメータと新たに求めたパラメータとの差分が閾値以下になった場合、繰り返し回数が所定の回数以上になった場合、所定の評価基準に基づく音声認識の評価が悪化した場合等に、パラメータが収束したと判定する。
【００７８】
次に、図７を用いて、音声データ処理装置１０の音声認識処理について説明する。図７に示すように、音声認識を行う場合、音声データ処理装置１０は、認識用の音声データの入力を受け付ける。その後、抽出部２１および計算部２２は、適応処理の場合と同様の処理を行う。そして、認識部２４の単語列検索部２４１は、事後確率ｏｔに基づき、従来技術と同様の方法により認識結果である単語列＾Ｓを検索し出力する。
【００７９】
［第１の実施形態の処理］
図８を用いて、音声データ処理装置１０の適応処理の流れについて説明する。図８は、第１の実施形態に係る音声データ処理装置の適応処理の流れを示すフローチャートである。
【００８０】
まず、音声データ処理装置１０は、記憶部３０から、音声認識モデル３１、条件特徴量計算モデル３２および適応特徴量計算モデル３３を読み込む（ステップＳ１０１）。次に、音声データ処理装置１０は、適応用の音声データを読み込む（ステップＳ１０２）。次に、音声データ処理装置１０は、正解データを読み込む（ステップＳ１０３）。
【００８１】
次に、抽出部２１は、適応用の音声データから音声の特徴を示す第１の入力特徴量を抽出する（ステップＳ１０４）。次に、抽出部２１は、適応用の音声データから環境の特徴を示す第２の入力特徴量を抽出する（ステップＳ１０５）。
【００８２】
そして、計算部２２は、ニューラルネットワークである条件特徴量計算モデル３２に第２の入力特徴量を入力し、条件特徴量を計算する（ステップＳ１０６）。次に、計算部２２は、第１の入力特徴量および条件特徴量に基づき、適応特徴量を計算する（ステップＳ１０７）。次に、計算部２２は、ニューラルネットワークである音声認識モデル３１に、適応特徴量を入力し、事後確率を計算する（ステップＳ１０８）。
【００８３】
そして、更新部２３は、事後確率に基づいて、条件特徴量計算モデル３２および適応特徴量計算モデル３３のパラメータを更新する（ステップＳ１０９）。さらに、更新部２３は、パラメータの更新の結果、パラメータが収束していると判定した場合、処理を終了させる（ステップＳ１１０、Ｙｅｓ）。一方、更新部２３は、パラメータの更新の結果、パラメータが収束していないと判定した場合、処理をステップＳ１０６に戻す（ステップＳ１１０、Ｎｏ）。
【００８４】
次に、図９を用いて、音声データ処理装置１０の音声認識処理の流れについて説明する。図９は、第１の実施形態に係る音声データ処理装置の音声認識処理の流れを示すフローチャートである。
【００８５】
まず、音声データ処理装置１０は、記憶部３０から、音声認識モデル３１、条件特徴量計算モデル３２および適応特徴量計算モデル３３を読み込む（ステップＳ２０１）。次に、音声データ処理装置１０は、音声認識用の音声データを読み込む（ステップＳ２０２）。
【００８６】
次に、抽出部２１は、音声認識用の音声データから音声の特徴を示す第１の入力特徴量を抽出する（ステップＳ２０３）。次に、抽出部２１は、音声認識用の音声データから環境の特徴を示す第２の入力特徴量を抽出する（ステップＳ２０４）。
【００８７】
そして、計算部２２は、ニューラルネットワークである条件特徴量計算モデル３２に第２の入力特徴量を入力し、条件特徴量を計算する（ステップＳ２０５）。次に、計算部２２は、第１の入力特徴量および条件特徴量に基づき、適応特徴量を計算する（ステップＳ２０６）。次に、計算部２２は、ニューラルネットワークである音声認識モデル３１に、適応特徴量を入力し、事後確率を計算する（ステップＳ２０７）。そして、認識部２４は、事後確率に基づいて、スコアが最も大きくなる単語列を検索し（ステップＳ２０８）、検索結果を出力する（ステップＳ２０９）。
【００８８】
なお、第１の実施形態では、音声認識モデル３１および条件特徴量計算モデル３２がFully  connectedニューラルネットワークである場合の例を説明したが、音声認識モデル３１および条件特徴量計算モデル３２は、ＲＮＮ／ＬＳＴＭ、またはＣＮＮ等の他のニューラルネットワークであってもよい。
【００８９】
［第１の実施形態の効果］
抽出部２１は、所定の環境における音声を基に作成された適応用の音声データから、音声の特徴を示す特徴量である第１の入力特徴量、および環境の特徴を示す特徴量である第２の入力特徴量を抽出する。そして、計算部２２は、ニューラルネットワークを用いた計算モデルである条件特徴量計算モデル３２に第２の入力特徴量を入力し、所定の環境を特徴付ける複数の条件のそれぞれに対応した要素を含んだ特徴量である条件特徴量を計算する。そして、計算部２２は、条件特徴量に含まれる複数の要素のそれぞれに対応したパラメータの組を含んだ計算モデルである適応特徴量計算モデル３３に第１の入力特徴量および条件特徴量を入力し、ニューラルネットワークを用いた計算モデルである音声認識モデル３１に適応した特徴量である適応特徴量を計算する。そして、更新部２３は、音声認識モデル３１に適応特徴量を入力して得られた出力結果を基に、条件特徴量計算モデル３２のパラメータおよび適応特徴量計算モデル３３のパラメータの更新を行う。
【００９０】
このように、第１の実施形態では、音声認識用の音声データが作成された環境と学習用の音声データが作成された環境との間で、複数の音響条件に違いがある場合であっても、それぞれの音響条件に対応した特徴量を生成することができる。これにより、第１の実施形態によれば、複数の音響条件を考慮し、音声認識モデルの精度を高めることができるようになる。
【００９１】
また、認識部２４は、音声認識モデル３１を用いて音声認識を行う。このとき、抽出部２１は、所定の環境における音声を基に作成された音声認識用の音声データから、第１の入力特徴量、および第２の入力特徴量を抽出する。そして、計算部２２は、条件特徴量計算モデル３２に第２の入力特徴量を入力し、条件特徴量を計算する。そして、計算部２２は、適応特徴量計算モデル３３に第１の入力特徴量および条件特徴量を入力し、適応特徴量を計算する。そして、認識部２４は、音声認識モデル３１に適応特徴量を入力して得られた出力結果を基に、音声の認識を行う。これにより、複数の音響条件を考慮した、音声認識モデルを用いた音声認識を行うことができる。
【００９２】
また、抽出部２１は、第１の入力特徴量と、雑音抑圧処理が行われた音声データの音声の特徴を示す特徴量と、の差を基に特徴量を計算し、計算した特徴量を第２の入力特徴量として抽出してもよい。これにより、雑音に基づく音響条件を考慮した音声認識を行うことができるようになる。
【００９３】
ここで、従来の技術と第１の実施形態との音声認識精度の比較結果について説明する。比較対象の従来の技術は、音響条件への適応を行わないベースラインである従来技術１（ＤＮＮ）、および、１つの条件に対する適応のみ行う従来技術２（ＬＩＮ）である。なお、ＬＩＮは、linear  input  networkの略称である。また、本発明の技術をＦａｃｔｏｒｉｚｅＬＩＮとよぶ。
【００９４】
表１は、従来技術１、従来技術２および本発明を用いて、音声認識タスクＣＨＩＭＥ  ３に対し音声認識を行った際の単語誤り率を示している。なお、従来技術２および本発明の音響環境への適応は教師なし適応により行った。表１に示すように、本発明は、従来技術１および２のいずれよりも単語誤り率が小さくなった。これより、本発明は、従来技術１および２と比較して音声認識精度が高いといえる。
【００９５】
【表１】
2018031812.tif 000023
【００９６】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００９７】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００９８】
［プログラム］
一実施形態として、音声データ処理装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の適応および音声認識を実行する音声データ処理プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の音声データ処理プログラムを情報処理装置に実行させることにより、情報処理装置を音声データ処理装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００９９】
また、音声データ処理システムは、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の適応および音声認識に関するサービスを提供する音声データ処理サーバ装置として実装することもできる。例えば、音声データ処理サーバ装置は、音声データを入力とし、音声認識結果を出力とする音声データ処理サービスを提供するサーバ装置として実装される。この場合、音声データ処理サーバ装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の音声データ処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【０１００】
図１０は、プログラムが実行されることにより、第１の実施形態に係る音声データ処理装置が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【０１０１】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【０１０２】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、音声データ処理装置１０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、音声データ処理装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【０１０３】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【０１０４】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３およびプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３およびプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【０１０５】
１０  音声データ処理装置
２０  制御部
２１  抽出部
２２  計算部
２３  更新部
２４  認識部
３０  記憶部
３１  音声認識モデル
３２  条件特徴量計算モデル
３３  適応特徴量計算モデル
２１１  第１の入力特徴量抽出部
２１２  第２の入力特徴量抽出部
２２１  条件特徴量計算部
２２２  特徴量変換部
２２３  事後確率計算部
２３１  エラー計算部
２３２  微分値計算部
２３３  パラメータ更新部
２３４  収束判定部
２４１  単語列検索部
【図１】
2018031812.tif 000024
【図２】
2018031812.tif 000025
【図３】
2018031812.tif 000026
【図４】
2018031812.tif 000027
【図５】
2018031812.tif 000028
【図６】
2018031812.tif 000029
【図７】
2018031812.tif 000030
【図８】
2018031812.tif 000031
【図９】
2018031812.tif 000032
【図１０】
2018031812.tif 000033