図1は、本実施例1に係るシステムの一例を示す図である。図1に示すように、このシステムは、マイク30、雑音抑圧装置35、認識装置40、学習装置100、音声補正装置200を有する。マイク30は、雑音抑圧装置35に接続される。
音声補正装置200は、雑音抑圧装置35、認識装置40、学習装置100に接続される。図示を省略するが、音声補正装置200は、ネットワークを介して、雑音抑圧装置35、学習装置100、認識装置40に接続されてもよい。マイク30、雑音抑圧装置35、音声補正装置200、認識装置40は、車両等に搭載されていてもよい。また、マイク30、雑音抑圧装置35、音声補正装置200が、車両等に搭載され、音声補正装置200は、ネットワークを介して、認識装置40、学習装置100に接続されていてもよい。
マイク30は、集音した音声信号を雑音抑圧装置35に出力する装置である。マイク30は、雑音の発生する環境において、音声信号を集音する。たとえば、マイク30は、車内に設置される。
雑音抑圧装置35は、マイク30が集音した音声信号に対して、雑音抑圧処理を行う処理部である。雑音抑圧処理は、スペクトルサブトラクションやマイクアレイなどに対応する処理である。雑音抑圧装置35は、雑音抑圧処理を行った音声信号(雑音抑圧信号)を、音声補正装置200に出力する。以下の説明では、雑音抑圧処理を行った音声信号を「雑音抑圧信号」と表記する。
認識装置40は、音声補正装置200から出力される音声信号に対して、音声認識を行う装置である。後述するように、音声補正装置200から出力される音声信号は、雑音抑圧信号を補正した音声信号である。
学習装置100は、予め準備された、雑音抑圧信号と、教師信号とを基にして、モデルを機械学習する装置である。教師信号は、雑音の発生していない理想的な環境においてマイクが集音(録音)した音声信号である。学習装置100は、機械学習したモデルの情報を、音声補正装置200に通知する。
ここで、学習装置100は、モデルを機械学習する場合に、次の処理を行う。学習装置100は、教師信号の全帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調する。以下の説明では、強調した教師信号を「強調信号」と表記する。本実施例1では、学習装置100は、教師信号の帯域のうち、パワーが閾値未満となる帯域に対応するパワーに1より大きいゲインを乗算することで、強調信号を生成する。
学習装置100は、雑音抑圧信号のパワースペクトルの形状が、強調信号のパワースペクトルの形状に近づくように補正するモデルを機械学習する。雑音抑圧信号のパワースペクトルの形状と、強調信号のパワースペクトルの形状との差分は、上記の強調により、SNRの低い帯域(パワースペクトルのパワーの低い帯域)においてより大きくなるため、学習装置100の機械学習により学習されるモデルでは、SNRの低い帯域を優先した重み付けによる補正が行われる。
音声補正装置200は、学習装置100により学習されたモデルを用いて、雑音抑圧信号を補正する装置である。音声補正装置200は、補正した雑音抑圧信号を、認識装置40に出力する。
上記のように、学習装置100により学習されるモデルでは、SNRの低い帯域を優先した重み付けによる補正が行われる。このため、雑音抑圧信号に含まれるSNRの低い帯域に含まれる歪みに対応する補正を行うことができ、これにより、雑音の発生する環境で雑音抑圧処理を行った音声信号の認識精度を高めることができる。
次に、図1に示した学習装置100の構成の一例について説明する。図2は、本実施例1に係る学習装置の構成を示す機能ブロック図である。図2に示すように、この学習装置100は、記憶部110と、窓掛部120a,120b、FFT処理部130a,130b、パワースペクトル算出部140a,140b、強調部145、学習部150、通知部160を有する。
各処理部(120a,120b、130a,130b、140a,140b、145、150、160)は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、学習装置100内部に記憶されたプログラムがRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、各処理部は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
記憶部110は、雑音抑圧信号データベース110aと、教師信号データベース110bと、学習モデル情報110cとを有する。記憶部110は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
雑音抑圧信号データベース110aは、雑音抑圧信号を格納するデータベースである。かかる雑音抑圧信号は、雑音環境で録音された音声信号に対して、雑音抑圧処理を行った信号である。
教師信号データベース110bは、教師信号を格納するデータベースである。かかる教師信号は、雑音の発生しない理想的な環境で録音された音声信号である。
学習モデル情報110cは、学習部150により学習されるモデルである。たとえば、学習部150により学習されるモデルは、ニューラルネットワークである。ニューラルネットワークは、入力層、隠れ層、出力層の各層を有し、各層において、複数のノードがエッジで接続される。各層は、活性化関数と呼ばれる関数を持ち、エッジは、重みを持つ。
窓掛部120aは、雑音抑圧信号データベース110aから雑音抑圧信号を取得し、窓掛を行う処理部である。たとえば、窓掛部120aは、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部120aは、窓掛を行った雑音抑圧信号を、FFT処理部130aに出力する。
窓掛部120bは、教師信号データベース110bから教師信号を取得し、窓掛を行う処理部である。たとえば、窓掛部120bは、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部120bは、窓掛を行った教師信号を、FFT処理部130bに出力する。
FFT処理部130aは、窓掛部120aにより設定された時間窓に対応する雑音抑圧信号に対して、FFTを行うことで、雑音抑圧信号の周波数毎の成分を抽出する処理部である。FFT処理部130aは、雑音抑圧信号の周波数毎の成分の情報をパワースペクトル算出部140aに出力する。
FFT処理部130bは、窓掛部120bにより設定された時間窓に対応する教師信号に対して、FFTを行うことで、教師信号の周波数毎の成分を抽出する処理部である。FFT処理部130bは、教師信号の周波数毎の成分の情報をパワースペクトル算出部140bに出力する。
パワースペクトル算出部140aは、雑音抑圧信号の周波数毎の成分を基にして、周波数毎のパワースペクトルを算出する処理部である。パワースペクトル算出部140aは、雑音抑圧信号の周波数毎のパワーの情報を、学習部150に出力する。以下の説明では、雑音抑圧信号の周波数毎のパワーの情報を「雑音抑圧パワースペクトル」と表記する。
パワースペクトル算出部140bは、教師信号の周波数毎の成分を基にして、周波数毎のパワーを算出する処理部である。パワースペクトル算出部140bは、教師信号の周波数毎のパワーの情報を、強調部145に出力する。以下の説明では、教師信号の周波数毎のパワーの情報を「教師パワースペクトル」と表記する。
強調部145は、教師信号の全帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調する。ここで、雑音抑圧信号のSNRの低い帯域は、パワースペクトルのパワーが低い帯域に対応する。強調部145は、図3に示すパワースペクトルのパワーに応じたゲインを、教師パワースペクトルに乗算することで、強調する。
図3は、パワースペクトルのパワーとゲインとの関係を示す図である。図3に示すグラフの横軸は、パワースペクトルの周波数毎のパワーに対応する軸である。グラフの縦軸は、ゲインに対応する軸である。図3に示すように、パワースペクトルの帯域のうち、パワーがPt以上の帯域に対しては、ゲイン=1が乗算される。パワースペクトルの帯域のうち、パワーがPt未満の帯域に対しては、1を超えるゲイン(最大a)が乗算される。aは、事前に設定される値である。
図4は、本実施例1に係る強調部の処理を説明するための図である。図4に示すグラフは、教師パワースペクトルの一例である。このグラフの横軸は周波数に対応する軸である。グラフの縦軸は、パワーに対応する軸である。図4に示す例では、帯域ftにおいて、パワーがPt未満となる。このため、強調部145は、帯域ftに対応するパワーに、図3に示したグラフに基づくゲイン(1を超えるゲイン)を乗算することで、教師パワースペクトルを強調する。その他の帯域については、パワーがPt以上となるため、乗算されるゲインが1となり、強調されない。以下の説明では、強調部145の処理後の教師パワースペクトルの情報を、「強調パワースペクトル」と表記する。強調部145は、強調パワースペクトルを、学習部150に出力する。
図2の説明に戻る。学習装置100の窓掛部120a,120b、FFT処理部130a,130b、パワースペクトル算出部140a,140b、強調部145は、上記の処理を繰り返し実行することで、雑音抑圧パワースペクトルと、強調パワースペクトルとの複数の組を、学習部150に出力する。
学習部150は、雑音抑圧パワースペクトルと強調パワースペクトルとの複数の組を基にして、雑音抑圧パワースペクトルの形状が、強調パワースペクトルの形状に近づくように補正するモデルを機械学習する処理部である。学習部150は、機械学習したモデルの情報を、学習モデル情報110cとして、記憶部110に格納する。
たとえば、学習部150は、ニューラルネットワーク(NN)の入力層に、雑音抑圧パワースペクトルの各周波数のパワー(P1(f0)、P1(f1)、P1(f2)、・・・、P1(fn))を入力する。この場合に、NNの出力層から出力される各周波数のパワーを(P1’(f0)、P1’(f1)、P1’(f2)、・・・、P1’(fn))とする。
学習部150は、(P1’(f0)、P1’(f1)、P1’(f2)、・・・、P1’(fn))と、強調パワースペクトルの各周波数のパワー(P3(f0)、P3(f1)、P3(f2)、・・・、P3(fn))の差分とに基づく評価関数が0に近づくように、NNの重みを調整する。学習部150は、雑音抑圧パワースペクトルと強調パワースペクトルとの複数の組を基にして、上記処理を繰り返し行うことで、NNの重みを学習する。
雑音抑圧信号のパワースペクトルの形状と、強調パワースペクトルの形状との差分は、上記の強調部145の強調により、SNRの低い帯域(パワースペクトルのパワーの低い帯域)においてより大きくなる。このため、学習部150の機械学習により学習されるモデルを用いて補正を行うと、SNRの低い帯域を優先した重み付けによる補正が行われる。
通知部160は、学習モデル情報110cを、音声補正装置200に通知する処理部である。
次に、図1に示した音声補正装置200の構成の一例について説明する。図5は、本実施例1に係る音声補正装置の構成を示す機能ブロック図である。図5に示すように、この音声補正装置200は、取得部205、記憶部210、窓掛部220、FFT処理部230、パワースペクトル算出部240、補正部250、逆強調部255、IFFT処理部260、オーバーラップ加算部270、通信部280を有する。
各処理部(205、220、230、240、250、255、260、270、280)は、例えば、CPUやMPU等によって、音声補正装置200内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、各処理部は、例えば、ASICやFPGA等の集積回路により実現されてもよい。
取得部205は、雑音抑圧装置35から、雑音抑圧信号を取得する処理部である。取得部205は、雑音抑圧信号を、記憶部210の雑音抑圧信号データ210aに格納する。
記憶部210は、学習モデル情報110cと、雑音抑圧信号データ210aと、補正音声信号データ210bとを有する。記憶部210は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
学習モデル情報110cは、学習装置100から通知される学習モデルの情報である。学習モデル情報110cに関する説明は、図2で説明した、学習モデル情報110cに関する説明と同様である。
雑音抑圧信号データ210aは、雑音抑圧信号を格納するデータ領域である。かかる雑音抑圧信号は、雑音環境で録音された音声信号に対して、雑音抑圧処理を行った信号である。
補正音声信号データ210bは、雑音抑圧信号を補正した音声信号を格納するデータ領域である。以下の説明では、雑音抑圧信号を補正した音声信号を「補正音声信号」と表記する。
窓掛部220は、雑音抑圧信号データ210aから雑音抑圧信号を取得し、窓掛を行う処理部である。たとえば、窓掛部220は、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部220は、窓掛を行った雑音抑圧信号を、FFT処理部230に出力する。
FFT処理部230は、窓掛部220により設定された時間窓に対応する雑音抑圧信号に対して、FFTを行うことで、雑音抑圧信号の周波数毎の成分を抽出する処理部である。FFT処理部230は、雑音抑圧信号の周波数毎の成分の情報をパワースペクトル算出部240に出力する。また、FFT処理部230は、FFTを行った際のスペクトルの情報を、IFFT処理部260に出力する。
パワースペクトル算出部240は、雑音抑圧信号の周波数毎の成分を基にして、周波数毎のパワースペクトル(雑音抑圧パワースペクトル)を算出する処理部である。パワースペクトル算出部240は、雑音抑圧パワースペクトルを、補正部250に出力する。
補正部250は、学習装置100により学習された学習モデル情報110cのモデル(NN)を用いて、雑音抑圧パワースペクトルの形状を補正する処理部である。補正部250は、補正した雑音抑圧パワースペクトルを、逆強調部255に出力する。
補正部250は、雑音抑圧パワースペクトルの周波数毎のパワーを、NNの入力層に入力し、NNの出力層から出力される各パワー(周波数毎のパワー)を、補正した雑音抑圧パワースペクトルとする。学習装置100により学習された学習モデル情報110cのモデルを用いて補正を行うと、SNRの低い帯域(パワーの低い帯域)を優先した重み付けによる補正が行われる。以下の説明では、補正した雑音抑圧パワースペクトルを「補正パワースペクトル」と表記する。
逆強調部255は、図3に示すパワースペクトルのパワーに応じたゲインを用いて、補正パワースペクトルを除算することで、補正パワースペクトルの帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域のパワーを弱める(逆強調する)。
図6は、本実施例1に係る逆強調部の処理を説明するための図である。図6に示すグラフは、補正パワースペクトルの一例である。このグラフの横軸は周波数に対応する軸である。グラフの縦軸は、パワーに対応する軸である。図6に示す例では、帯域ftにおいて、パワーがPt未満となる。このため、強調部145は、帯域ftに対応するパワーを、図3に示したグラフに基づくゲイン(1を超えるゲイン)により除算することで、教師パワースペクトルを弱める。その他の帯域については、パワーがPt以上となるため、除算に用いるゲインが1となり、変化しない。
以下の説明では、逆強調部255が処理した補正パワースペクトルを、単に「補正パワースペクトル」と表記する。逆強調部255は、補正パワースペクトルを、IFFT処理部260に出力する。
IFFT処理部260は、FFT処理部230からのスペクトルのパワーを、IFFT処理部260の中で計算する補正前のパワースペクトルと逆強調部255からの補正パワースペクトルの比を用いて補正して、逆フーリエ変換を行うことで、補正パワースペクトルを、時間と振幅との関係を示す音声信号に変換する処理部である。IFFT処理部260が逆フーリエ変換を行う際には、FFT処理部230から通知されるスペクトルの情報を利用する。IFFT処理部260は、逆フーリエ変換した音声信号を、オーバーラップ加算部270に出力する。
オーバーラップ加算部270は、IFFT処理部260から出力される各音声信号を、50%オーバーラップさせて加算する処理部である。オーバーラップ加算部270は、オーバーラップ加算した音声信号(補正した雑音抑圧信号)を、補正音声信号データ210bに格納する。
通信部280は、学習装置100および認識装置40との間でデータ通信を実行する処理部である。たとえば、通信部280は、学習装置100から、学習モデル情報110cの通知を受信した場合には、受信した学習モデル情報110cを記憶部210に格納する。また、通信部280は、補正音声信号データ210bに格納された雑音抑圧信号を、認識装置40に送信する。
次に、本実施例1の学習装置100の処理手順の一例について説明する。図7は、本実施例1に係る学習装置の処理手順を示すフローチャートである。図7に示すように、学習装置100の窓掛部120aは、雑音抑圧信号に対して窓掛を行う。学習装置100の窓掛部120bは、教師信号に対して窓掛を行う(ステップS101)。
学習装置100のFFT処理部130aは、窓掛された雑音抑圧信号に対して、FFT処理を行う。学習装置100のFFT処理部130bは、窓掛された教師信号に対して、FFT処理を行う(ステップS102)。
学習装置100のパワースペクトル算出部140aは、FFT処理された雑音抑圧信号のパワースペクトル(雑音抑圧パワースペクトル)を算出する。学習装置100のパワースペクトル算出部140bは、FFT処理された教師信号のパワースペクトル(教師パワースペクトル)を算出する(ステップS103)。
学習装置100の強調部145は、教師パワースペクトルの帯域のうち、パワーが閾値未満となる帯域を特定する(ステップS104)。たとえば、パワーが閾値未満となる帯域は、雑音抑圧信号のSNRの低い帯域に相当するものである。強調部145は、教師パワースペクトルの帯域のうち、パワーが閾値未満となる帯域に対して、1を超えるゲインを乗算した強調パワースペクトルを生成する(ステップS105)。
学習部150は、雑音抑圧パワースペクトルと強調パワースペクトルとを基にして、機械学習を行う(ステップS106)。学習装置100は、機械学習を継続する場合には(ステップS107,Yes)、ステップS101に移行する。一方、学習装置100は、機械学習を継続しない場合には(ステップS107,No)、ステップS108に移行する。学習装置100の通知部160は、学習モデル情報110cを、音声補正装置200に通知する(ステップS108)。
次に、本実施例1に係る音声補正装置200の処理手順の一例について説明する。図8は、本実施例1に係る音声補正装置の処理手順を示すフローチャートである。図8に示すように、音声補正装置200の取得部205は、雑音抑圧装置35から、雑音抑圧信号を取得し、雑音抑圧信号データ210aに格納する(ステップS201)。
音声補正装置200の窓掛部220は、雑音抑圧信号に対して、窓掛を行う(ステップS202)。音声補正装置200のFFT処理部230は、窓掛された雑音抑圧信号に対して、FFT処理を行う(ステップS203)。
音声補正装置200のパワースペクトル算出部240は、FFT処理された雑音抑圧信号のパワースペクトル(雑音抑圧パワースペクトル)を算出する(ステップS204)。音声補正装置200の補正部250は、学習モデル情報110cに基づくモデルに雑音抑圧パワースペクトルを入力して、補正処理を実施する(ステップS205)。
音声補正装置200の逆強調部255は、補正パワースペクトルの帯域のうち、パワーが閾値未満となる帯域を特定する(ステップS206)。逆強調部255は、補正パワースペクトルの帯域のうち、パワーが閾値未満となる帯域を1を超えるゲインで除算する(ステップS207)。
音声補正装置200のIFFT処理部260は、補正パワースペクトルのパワーで、S203の結果のスペクトルのパワーを補正してIFFT処理を行う(ステップS208)。音声補正装置200のオーバーラップ加算部270は、オーバーラップ加算を実行する(ステップS209)。オーバーラップ加算部270は、オーバーラップ加算した音声信号を、補正音声信号データ210bに格納する(ステップS210)。
音声補正装置200の通信部280は、補正音声信号データ210bの音声信号を、認識装置40に送信する(ステップS211)。音声補正装置200は、処理を継続する場合には(ステップS212,Yes)、ステップS201に移行する。音声補正装置200は、処理を継続しない場合には(ステップS212,No)、処理を終了する。
次に、本実施例1に係る学習装置100および音声補正装置200の効果について説明する。学習装置100は、教師パワースペクトルの全帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調することで、強調パワースペクトルを生成する。学習装置100は、雑音抑圧パワースペクトルの形状が、強調パワースペクトルの形状に近づくように補正するモデルを機械学習する。雑音抑圧信号のパワースペクトルの形状と、強調信号のパワースペクトルの形状との差分は、強調処理により、SNRの低い帯域(パワースペクトルのパワーの低い帯域)においてより大きくなるため、学習装置100の機械学習により学習されるモデルでは、SNRの低い帯域を優先した重み付けによる補正が行われる。
音声補正装置200は、学習装置100により学習されたモデル(学習モデル情報)を基にして、雑音抑制信号を補正することで、SNRの低い帯域に発生した歪みを補正することができる。この補正により、雑音の発生する環境で雑音抑圧処理を行った音声信号の認識精度を高めることができる。
学習装置100は、教師信号を強調する場合に、教師パワースペクトルの帯域のうち、パワーが閾値未満となる帯域のパワーに1を超えるゲインを乗算する。これにより、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調することができる。
音声補正装置200は、補正部250が補正した補正パワースペクトルの帯域のうち、パワーが閾値未満となる帯域のパワーに1を超えるゲインで除算する。かかる処理を行うことで、補正パワースペクトルの歪みを補正した上で、補正パワースペクトルから、学習装置100の強調処理による影響を除去することができる。
なお、発明者は、高速走行時(85miles/h)の雑音混じり音声(8話者、計1,920発声)の雑音抑圧後の音声信号に対し、アイドリング時の雑音混じり音声(同じ8話者、同じ発声 計1,920発声)を教師信号とし、学習処理と補正処理の実験を実施した。
評価の程度を式(1)で評価するものとする。式(1)の値が大きいほど、補正の効果が大きいことを示す。
10×log10{(教師信号のパワー)/(教師信号のパワー-補正結果の音声信号のパワー)}dB・・・(1)
実験の結果、従来技術では、式(1)の値が2.2dBとなり、本発明では、式(1)の値が「9.5dB」となった。すなわち、本実施例1で説明した学習装置100、音声補正装置200によって、雑音の発生する環境で雑音抑圧処理を行った音声信号の認識精度を高めることができる。
ところで、本実施例1で説明した学習装置100と音声補正装置200とは、異なる装置である場合について説明したが、学習装置100と、音声補正装置200とは、同一の装置に含まれていてもよい。すなわち、音声補正装置200は、図2に示した各データ、各処理部を有し、上述した学習装置100と同様の学習処理を行って、学習モデル情報110cを生成してもよい。
また、学習装置100の強調部145は、図7のステップS104、S105において、教師パワースペクトルの帯域のうち、パワーが閾値未満となる帯域を特定し、特定した帯域のパワーに対して、ゲインを乗算していた。しかし、強調部145の処理は、これに限定されるものではない。たとえば、強調部145は、教師パワースペクトルの各帯域のパワーに、パワーに応じたゲインを乗算することで、強調パワースペクトルを生成してもよい。
音声補正装置200の逆強調部245は、図8のステップS206、207において、補正パワースペクトルの帯域のうち、パワーが閾値未満となる帯域を特定し、特定した帯域のパワーを、ゲインで除算していた。しかし、逆強調部245の処理は、これに限定されるものではない。たとえば、逆強調部245は、補正パワースペクトルの各帯域のパワーを、パワーに応じたゲインで除算することで、強調処理の影響を除外してもよい。
図9は、本実施例2に係るシステムの一例を示す図である。図9に示すように、このシステムは、マイク30、雑音抑圧装置35、認識装置40、学習装置300、音声補正装置400を有する。マイク30は、雑音抑圧装置35に接続される。
音声補正装置400は、雑音抑圧装置35、認識装置40、学習装置300に接続される。図示を省略するが、音声補正装置400は、ネットワークを介して、雑音抑圧装置35、学習装置300、認識装置40に接続されてもよい。マイク30、雑音抑圧装置35、音声補正装置400、認識装置40は、車両等に搭載されていてもよい。また、マイク30、雑音抑圧装置35、音声補正装置400が、車両等に搭載され、音声補正装置400は、ネットワークを介して、認識装置40、学習装置300に接続されていてもよい。
マイク30、雑音抑圧装置35、認識装置40の説明は、図1で説明したマイク30、雑音抑圧装置35、認識装置40の説明と同様である。
学習装置300は、予め準備された、雑音抑圧信号と、教師信号とを基にして、モデルを機械学習する装置である。学習装置300は、機械学習したモデルの情報を、音声補正装置400に通知する。
ここで、学習装置100は、モデルを機械学習する場合に、次の処理を行う。学習装置300は、教師信号の全帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調する。以下の説明では、強調した教師信号を「強調信号」と表記する。本実施例2では、学習装置300は、教師信号のパワースペクトルから、雑音抑圧信号のパワースペクトルを減算することで、強調信号を生成する。
学習装置300は、雑音抑圧信号のパワースペクトルの形状が、強調信号のパワースペクトルの形状に近づくように補正するモデルを機械学習する。雑音抑圧信号のパワースペクトルの形状と、強調信号のパワースペクトルの形状との差分は、上記の強調により、SNRの低い帯域(パワースペクトルのパワーの低い帯域)においてより大きくなるため、学習装置100の機械学習により学習されるモデルでは、SNRの低い帯域に対する補正の度合いをより大きくすることができる。
音声補正装置400は、学習装置300により学習されたモデルを用いて、雑音抑圧信号を補正する装置である。音声補正装置400は、補正した雑音抑圧信号を、認識装置40に出力する。
上記のように、学習装置300により学習されるモデルでは、SNRの低い帯域により大きな補正が加えられるような重み付けが行われる。このため、雑音抑圧信号に含まれるSNRの低い帯域に含まれる歪みに対応する補正を行うことができ、これにより、雑音の発生する環境で雑音抑圧処理を行った音声信号の認識精度を高めることができる。
次に、図9に示した学習装置300の構成の一例について説明する。図10は、本実施例2に係る学習装置の構成を示す機能ブロック図である。図10に示すように、この学習装置300は、記憶部310と、窓掛部320a,320b、FFT処理部330a,330b、パワースペクトル算出部340a,340b、強調部345、学習部350、通知部360を有する。
各処理部(320a,320b、330a,330b、340a,340b、345、350、360)は、例えば、CPUやMPU等によって、学習装置300内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、各処理部は、例えば、ASICやFPGA等の集積回路により実現されてもよい。
記憶部310は、雑音抑圧信号データベース310aと、教師信号データベース310bと、学習モデル情報310cとを有する。記憶部310は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
雑音抑圧信号データベース310aは、雑音抑圧信号を格納するデータベースである。かかる雑音抑圧信号は、雑音環境で録音された音声信号に対して、雑音抑圧処理を行った信号である。
教師信号データベース310bは、教師信号を格納するデータベースである。かかる教師信号は、雑音の発生しない理想的な環境で録音された音声信号である。
学習モデル情報310cは、学習部350により学習されるモデルである。たとえば、学習部350により学習されるモデルは、ニューラルネットワークである。ニューラルネットワークは、入力層、隠れ層、出力層の各層を有し、各層において、複数のノードがエッジで接続される。各層は、活性化関数と呼ばれる関数を持ち、エッジは、重みを持つ。
窓掛部320aは、雑音抑圧信号データベース310aから雑音抑圧信号を取得し、窓掛を行う処理部である。たとえば、窓掛部320aは、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部320aは、窓掛を行った雑音抑圧信号を、FFT処理部330aに出力する。
窓掛部320bは、教師信号データベース310bから教師信号を取得し、窓掛を行う処理部である。たとえば、窓掛部320bは、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部320bは、窓掛を行った教師信号を、FFT処理部330bに出力する。
FFT処理部330aは、窓掛部320aにより設定された時間窓に対応する雑音抑圧信号に対して、FFTを行うことで、雑音抑圧信号の周波数毎の成分を抽出する処理部である。FFT処理部330aは、雑音抑圧信号の周波数毎の成分の情報をパワースペクトル算出部340aに出力する。
FFT処理部330bは、窓掛部320bにより設定された時間窓に対応する教師信号に対して、FFTを行うことで、教師信号の周波数毎の成分を抽出する処理部である。FFT処理部330bは、教師信号の周波数毎の成分の情報をパワースペクトル算出部340bに出力する。
パワースペクトル算出部340aは、雑音抑圧信号の周波数毎の成分を基にして、周波数毎のパワースペクトルを算出する処理部である。パワースペクトル算出部340aは、雑音抑圧信号の周波数毎のパワーの情報を、強調部345および学習部350に出力する。以下の説明では、雑音抑圧信号の周波数毎のパワーの情報を「雑音抑圧パワースペクトル」と表記する。
パワースペクトル算出部340bは、教師信号の周波数毎の成分を基にして、周波数毎のパワーを算出する処理部である。パワースペクトル算出部340bは、教師信号の周波数毎のパワーの情報を、強調部345に出力する。以下の説明では、教師信号の周波数毎のパワーの情報を「教師パワースペクトル」と表記する。
強調部345は、教師信号の全帯域のうち、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分を強調する。ここで、雑音抑圧信号のSNRの低い帯域は、パワースペクトルのパワーが低い帯域に対応する。具体的には、強調部345は、教師パワースペクトルから、雑音抑圧パワースペクトルを減算することで、「強調パワースペクトル」を生成する。強調部345は、強調パワースペクトルの情報を学習部350に出力する。
図11は、本実施例2に係る強調部の処理を説明するための図である。図11では、教師パワースペクトル50a、雑音抑圧パワースペクトル50b、強調パワースペクトル50cを示す。各パワースペクトル50a,50b,50cの横軸は、周波数に対応する軸であり、縦軸は、パワーに対応する軸である。雑音抑圧信号のSNRの低い帯域は、パワーの低い帯域であり、たとえば、周波数ftとなる。強調部345は、教師パワースペクトル50aから、雑音抑圧パワースペクトル50bを減算することで、強調パワースペクトル50cを生成する。強調パワースペクトル50cでは、雑音抑圧信号のSNRの低い帯域に対応する周波数のパワーが強調される。
図10の説明に戻る。学習装置300の窓掛部320a,320b、FFT処理部330a,330b、パワースペクトル算出部340a,340b、強調部345は、上記の処理を繰り返し実行することで、雑音抑圧パワースペクトルと、強調パワースペクトルとの複数の組を、学習部350に出力する。
学習部350は、雑音抑圧パワースペクトルと強調パワースペクトルとの複数の組を基にして、雑音抑圧パワースペクトルの形状が、強調パワースペクトルの形状に近づくように補正するモデルを機械学習する処理部である。学習部350は、機械学習したモデルの情報を、学習モデル情報310cとして、記憶部310に格納する。学習部350が、雑音抑圧パワースペクトルと強調パワースペクトルとの複数の組を基にして、機械学習を行う処理は、実施例1で説明した学習部150の機械学習と同様である。
通知部360は、学習モデル情報310cを、音声補正装置400に通知する処理部である。
次に、図9に示した音声補正装置400の構成の一例について説明する。図12は、本実施例2に係る音声補正装置の構成を示す機能ブロック図である。図12に示すように、この音声補正装置400は、取得部405、記憶部410、窓掛部420、FFT処理部430、パワースペクトル算出部440、補正部450、逆強調部455、IFFT処理部460、オーバーラップ加算部470、通信部480を有する。
各処理部(405、420、430、440、450、455、460、470、480)は、例えば、CPUやMPU等によって、音声補正装置400内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、各処理部は、例えば、ASICやFPGA等の集積回路により実現されてもよい。
取得部405は、雑音抑圧装置35から、雑音抑圧信号を取得する処理部である。取得部405は、雑音抑圧信号を、記憶部410の雑音抑圧信号データ410aに格納する。
記憶部410は、学習モデル情報310cと、雑音抑圧信号データ410aと、補正音声信号データ410bとを有する。記憶部410は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
学習モデル情報310cは、学習装置300から通知される学習モデルの情報である。学習モデル情報310cに関する説明は、図10で説明した、学習モデル情報310cに関する説明と同様である。
雑音抑圧信号データ410aは、雑音抑圧信号を格納するデータ領域である。かかる雑音抑圧信号は、雑音環境で録音された音声信号に対して、雑音抑圧処理を行った信号である。
補正音声信号データ410bは、雑音抑圧信号を補正した音声信号を格納するデータ領域である。以下の説明では、雑音抑圧信号を補正した音声信号を「補正音声信号」と表記する。
窓掛部420は、雑音抑圧信号データ410aから雑音抑圧信号を取得し、窓掛を行う処理部である。たとえば、窓掛部420は、ハニング窓などの時間窓を50%オーバーラップさせて、窓掛を行う。窓掛部420は、窓掛を行った雑音抑圧信号を、FFT処理部430に出力する。
FFT処理部430は、窓掛部420により設定された時間窓に対応する雑音抑圧信号に対して、FFTを行うことで、雑音抑圧信号の周波数毎の成分を抽出する処理部である。FFT処理部430は、雑音抑圧信号の周波数毎の成分の情報をパワースペクトル算出部440に出力する。また、FFT処理部430は、FFTを行った際のスペクトルの情報を、IFFT処理部460に出力する。
パワースペクトル算出部440は、雑音抑圧信号の周波数毎の成分を基にして、周波数毎のパワースペクトル(雑音抑圧パワースペクトル)を算出する処理部である。パワースペクトル算出部440は、雑音抑圧パワースペクトルを、補正部450および逆強調部455に出力する。
補正部450は、学習装置300により学習された学習モデル情報310cのモデル(NN)を用いて、雑音抑圧パワースペクトルの形状を補正する処理部である。補正部450は、補正した雑音抑圧パワースペクトルを、逆強調部455に出力する。
補正部450は、雑音抑圧パワースペクトルの周波数毎のパワーを、NNの入力層に入力し、NNの出力層から出力される各パワー(周波数毎のパワー)を、補正した雑音抑圧パワースペクトルとする。学習装置300により学習された学習モデル情報310cのモデルを用いて補正を行うと、SNRの低い帯域に対する補正の度合いがより大きくなる。以下の説明では、補正した雑音抑圧パワースペクトルを「補正パワースペクトル」と表記する。
逆強調部455は、補正部450による補正を行った上で、補正パワースペクトルに雑音パワースペクトルを加算することで、学習装置300の強調部345の処理の影響(減算の影響)を除去する。
図13は、本実施例2に係る逆強調部の処理を説明するための図である。図13では、補正パワースペクトル51a、雑音抑圧パワースペクトル51b、加算結果のパワースペクトル51cを示す。各パワースペクトル51a,51b,51cの横軸は、周波数に対応する軸であり、縦軸は、パワーに対応する軸である。逆強調部455は、補正パワースペクトル51aと、雑音抑圧パワースペクトル51bとを加算することで、加算結果のパワースペクトル51cを生成する。かかる処理を逆強調部455が実行することで、減算の影響が除去される。
逆強調部455は、加算結果のパワースペクトル51cを、IFFT処理部460に出力する。以下の説明では、補正パワースペクトル51aと、雑音抑圧パワースペクトル51bとを加算して得られる加算結果のパワースペクトル51cを、単に、補正パワースペクトルと表記する。
IFFT処理部460は、FFT処理部430からのスペクトルのパワーを、IFFT処理部460の中で計算する補正前のパワースペクトルと逆強調部455からの補正パワースペクトルの比を用いて補正して、逆フーリエ変換を行うことで、補正パワースペクトルを、時間と振幅との関係を示す音声信号に変換する処理部である。IFFT処理部460が逆フーリエ変換を行う際には、FFT処理部430から通知されるスペクトルの情報を利用する。IFFT処理部460は、逆フーリエ変換した音声信号を、オーバーラップ加算部470に出力する。
オーバーラップ加算部470は、IFFT処理部460から出力される各音声信号を、50%オーバーラップさせて加算する処理部である。オーバーラップ加算部470は、オーバーラップ加算した音声信号(補正した雑音抑圧信号)を、補正音声信号データ410bに格納する。
通信部480は、学習装置300および認識装置40との間でデータ通信を実行する処理部である。たとえば、通信部480は、学習装置300から、学習モデル情報310cの通知を受信した場合には、受信した学習モデル情報310cを記憶部410に格納する。また、通信部480は、補正音声信号データ410bに格納された雑音抑圧信号を、認識装置40に送信する。
次に、本実施例2の学習装置300の処理手順の一例について説明する。図14は、本実施例2に係る学習装置の処理手順を示すフローチャートである。図14に示すように、学習装置300の窓掛部320aは、雑音抑圧信号に対して窓掛を行う。学習装置300の窓掛部320bは、教師信号に対して窓掛を行う(ステップS301)。
学習装置300のFFT処理部330aは、窓掛された雑音抑圧信号に対して、FFT処理を行う。学習装置300のFFT処理部330bは、窓掛された教師信号に対して、FFT処理を行う(ステップS302)。
学習装置300のパワースペクトル算出部340aは、FFT処理された雑音抑圧信号のパワースペクトル(雑音抑圧パワースペクトル)を算出する。学習装置300のパワースペクトル算出部340bは、FFT処理された教師信号のパワースペクトル(教師パワースペクトル)を算出する(ステップS303)。
学習装置300の強調部345は、教師パワースペクトルから雑音抑圧パワースペクトルを減算して、強調パワースペクトルを生成する(ステップS304)。
学習装置300の学習部350は、雑音抑圧パワースペクトルと強調パワースペクトルとを基にして、機械学習を行う(ステップS305)。学習装置300は、機械学習を継続する場合には(ステップS306,Yes)、ステップS301に移行する。一方、学習装置300は、機械学習を継続しない場合には(ステップS306,No)、ステップS307に移行する。学習装置300の通知部360は、学習モデル情報310cを、音声補正装置400に通知する(ステップS307)。
次に、本実施例2に係る音声補正装置400の処理手順の一例について説明する。図15は、本実施例2に係る音声補正装置の処理手順を示すフローチャートである。図15に示すように、音声補正装置400の取得部405は、雑音抑圧装置35から、雑音抑圧信号を取得し、雑音抑圧信号データ410aに格納する(ステップS401)。
音声補正装置200の窓掛部220は、雑音抑圧信号に対して、窓掛を行う(ステップS402)。音声補正装置400のFFT処理部430は、窓掛された雑音抑圧信号に対して、FFT処理を行う(ステップS403)。
音声補正装置400のパワースペクトル算出部440は、FFT処理された雑音抑圧信号のパワースペクトル(雑音抑圧パワースペクトル)を算出する(ステップS404)。音声補正装置400の補正部450は、学習モデル情報310cに基づくモデルに雑音抑圧パワースペクトルを入力して、補正処理を実施する(ステップS405)。
音声補正装置400の逆強調部455は、補正パワースペクトルに、雑音抑圧パワースペクトルを加算する(ステップS406)。
音声補正装置400のIFFT処理部460は、補正パワースペクトルに対してIFFT処理を行う(ステップS407)。音声補正装置400のオーバーラップ加算部470は、オーバーラップ加算を実行する(ステップS408)。オーバーラップ加算部470は、オーバーラップ加算した音声信号を、補正音声信号データ410bに格納する(ステップS409)。
音声補正装置400の通信部480は、補正音声信号データ410bの音声信号を、認識装置40に送信する(ステップS410)。音声補正装置400は、処理を継続する場合には(ステップS411,Yes)、ステップS401に移行する。音声補正装置400は、処理を継続しない場合には(ステップS411,No)、処理を終了する。
次に、本実施例2に係る学習装置300および音声補正装置400の効果について説明する。学習装置100は、教師パワースペクトルから雑音抑圧パワースペクトルを減算することで、雑音抑圧信号のSNRの低い帯域に対応する帯域の成分が強調された、強調パワースペクトルを生成する。学習装置300は、雑音抑圧パワースペクトルの形状が、強調パワースペクトルの形状に近づくように補正するモデルを機械学習する。雑音抑圧信号のパワースペクトルの形状と、強調信号のパワースペクトルの形状との差分は、強調処理により、SNRの低い帯域(パワースペクトルのパワーの低い帯域)においてより大きくなるため、学習装置100の機械学習により学習されるモデルでは、SNRの低い帯域の補正の度合いがより大きくなる。
音声補正装置400は、学習装置300により学習されたモデル(学習モデル情報)を基にして、雑音抑制信号を補正することで、SNRの低い帯域に発生した歪みを補正することができる。この補正により、雑音の発生する環境で雑音抑圧処理を行った音声信号の認識精度を高めることができる。
音声補正装置400は、補正部450が補正した補正パワースペクトルに雑音抑圧パワースペクトルを加算する。かかる処理を行うことで、補正パワースペクトルの歪みを補正した上で、補正パワースペクトルから、学習装置300の強調処理(減算)による影響を除去することができる。
ところで、本実施例2で説明した学習装置300と音声補正装置400とは、異なる装置である場合について説明したが、学習装置300と、音声補正装置400とは、同一の装置に含まれていてもよい。すなわち、音声補正装置400は、図12に示した各データ、各処理部を有し、上述した学習装置300と同様の学習処理を行って、学習モデル情報310cを生成してもよい。
ここで、実際の音声信号を用いた場合の強調処理、逆強調処理の一例について説明する。図16は、実際の音声信号を用いた場合の強調処理を示す図である。図16では、教師パワースペクトル52a、雑音抑圧パワースペクトル52b、強調パワースペクトル52cを示す。各パワースペクトル52a,52b,52cの横軸は、周波数に対応する軸であり、縦軸は、パワーに対応する軸である。強調部345は、教師パワースペクトル52aから、雑音抑圧パワースペクトル52bを減算することで、強調パワースペクトル52cを生成する。強調パワースペクトル52cでは、雑音抑圧信号のSNRの低い帯域に対応する周波数のパワー(領域A1、A2、A3、A4に含まれるパワー)が強調されている。
図17は、実際の音声信号を用いた場合の逆強調処理を示す図である。図17では、補正パワースペクトル53a、雑音抑圧パワースペクトル53b、加算結果のパワースペクトル53cを示す。各パワースペクトル53a,53b,53cの横軸は、周波数に対応する軸であり、縦軸は、パワーに対応する軸である。図17の補正パワースペクトル53aは、補正部450に補正されたパワースペクトルであり、領域B1、B2、B3、B4、B5、B6、B7に含まれるパワーがより大きく補正される。領域B1、B2、B3、B4、B5、B6、B7は、雑音抑圧信号のSNRの低い帯域に対応するものである。逆強調部455は、補正パワースペクトル53aと、雑音抑圧パワースペクトル53bとを加算することで、加算結果のパワースペクトル53cを生成する。かかる処理を逆強調部455が実行することで、図16でおこなった、減算の影響が除去される。
次に、本実施例1、2に示した認識装置40の構成の一例について説明する。図18は、認識装置の構成を示す機能ブロック図である。図18に示すように、この認識装置40は、通信部41と、記憶部42と、制御部43とを有する。ここでは一例として、認識総理40が、音声補正装置200に接続されている場合について説明する。
通信部41は、音声補正装置200とデータ通信を行う処理部である。たとえば、通信部41は、通信装置に対応する。後述する制御部43は、通信部41を介して、音声補正装置200とデータをやり取りする。たとえば、通信部41は、雑音抑圧信号を補正した音声信号を受信し、受信した音声信号を、制御部43に出力する。
記憶部42は、音声信号データ42aを有する。記憶部42は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
音声信号データ42aは、音声補正装置200から送信される音声信号を格納するデータ領域である。音声補正装置200から送信される音声信号は、雑音抑圧信号を補正した音声信号である。
制御部43は、取得部43a、音声認識部43b、通知部43cを有する。制御部43は、CPUやMPU等によって、認識装置40内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、制御部43は、例えば、ASICやFPGA等の集積回路により実現されてもよい。
取得部43aは、音声補正装置200から音声信号を取得し、取得した音声信号を、音声信号データ42aに格納する処理部である。
音声認識部43bは、音声信号データ42aに格納された音声信号を取得し、音声認識を行う処理部である。たとえば、音声認識部43は、予め音声認識辞書情報を保持しておき、かかる音声認識辞書情報と、音声信号とを比較して、音声認識を行う。たとえば、音声認識部43bは、音声認識の結果を基にして、音声信号を文字列に変換してもよいし、音声信号の特徴を抽出して、音声信号に対応する人物の識別等をおこなってもよい。音声認識部43bは、音声認識結果を、通知部43cに出力する。音声認識部43bは、音声認識結果を、記憶部42に格納してもよい。
通知部43cは、音声認識結果を予め指定された外部装置(図示略)に通知する処理部である。また、通知部43cは、図示しない表示装置に、音声認識結果を出力して表示させてもよい。
なお、実施例1、2では、音声補正装置100,200と、認識装置40とが別々の装置である場合について説明したがこれに限定されるものではない。音声補正装置100,200は、図18で説明した各処理部、各データを有し、認識装置40と同様の処理を行ってもよい。
次に、実施例に示した学習装置100,300、音声補正装置200,400と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図19は、本実施例に係る学習装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図19に示すように、コンピュータ500は、各種演算処理を実行するCPU501と、ユーザからのデータの入力を受け付ける入力装置502と、ディスプレイ503とを有する。また、コンピュータ500は、記憶媒体からプログラム等を読み取る読み取り装置504と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置505とを有する。コンピュータ500は、各種情報を一時記憶するRAM506と、ハードディスク装置507とを有する。そして、各装置501~507は、バス508に接続される。
ハードディスク装置507は、窓掛プログラム507a、FFT処理プログラム507b、パワースペクトル算出プログラム507c、強調プログラム507d、学習プログラム507e、通知プログラム507fを有する。CPU501は、窓掛プログラム507a、FFT処理プログラム507b、パワースペクトル算出プログラム507c、強調プログラム507d、学習プログラム507e、通知プログラム507fを読み出してRAM506に展開する。
窓掛プログラム507aは、窓掛プロセス506aとして機能する。FFT処理プログラム507bは、FFT処理プロセス506bとして機能する。パワースペクトル算出プログラム507cは、パワースペクトル算出プロセス506cとして機能する。強調プログラム507dは、強調プロセス506dとして機能する。学習プログラム507eは、学習プロセス506eとして機能する。通知プログラム507fは、通知プロセス506fとして機能する。
窓掛プロセス506aの処理は、窓掛部120a,120b,320a,320bの処理に対応する。FFT処理プロセス506bの処理は、FFT処理部130a,130b,330a,330bの処理に対応する。パワースペクトル算出プロセス506cの処理は、パワースペクトル算出部140a,140b,340a,340bの処理に対応する。強調プロセス506dの処理は、強調部145,345の処理に対応する。学習プロセス506eの処理は、学習部150,350の処理に対応する。通知プロセス506fの処理は、通知部160,360の処理に対応する。
なお、各プログラム507a~507fについては、必ずしも最初からハードディスク装置507に記憶させておかなくてもよい。例えば、コンピュータ500に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ500が各プログラム507a~507fを読み出して実行するようにしてもよい。
図20は、本実施例に係る音声補正装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図20に示すように、コンピュータ600は、各種演算処理を実行するCPU601と、ユーザからのデータの入力を受け付ける入力装置602と、ディスプレイ603とを有する。また、コンピュータ600は、記憶媒体からプログラム等を読み取る読み取り装置604と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置605とを有する。コンピュータ600は、各種情報を一時記憶するRAM606と、ハードディスク装置607とを有する。そして、各装置601~607は、バス608に接続される。
ハードディスク装置607は、取得プログラム607a、窓掛プログラム607b、FFT処理プログラム607c、パワースペクトル算出プログラム607d、補正プログラム607eを有する。ハードディスク装置607は、逆強調プログラム607f、IFFT処理プログラム607g、オーバーラップ加算プログラム607h、通信プログラム607iを有する。CPU601は、各プログラム607a~607iを読み出してRAM606に展開する。
取得プログラム607aは、取得プロセス606aとして機能する。窓掛プログラム607bは、窓掛プロセス606bとして機能する。FFT処理プログラム607cは、FFT処理プロセス606cとして機能する。パワースペクトル算出プログラム607dは、パワースペクトル算出プロセス606dとして機能する。補正プログラム607eは、補正プロセス606eとして機能する。逆強調プログラム607fは、逆強調プロセス606fとして機能する。IFFT処理プログラム607gは、IFFT処理プロセス606gとして機能する。オーバーラップ加算プログラム607hは、オーバーラップ加算プロセス606hとして機能する。通信プログラム607iは、通信プロセス606iとして機能する。
取得プロセス606aの処理は、取得部205,405の処理に対応する。窓掛プロセス606bの処理は、窓掛部220,420の処理に対応する。FFT処理プロセス606cの処理は、FFT処理部230、430の処理に対応する。パワースペクトル算出プロセス606dの処理は、パワースペクトル算出部240,440の処理に対応する。補正プロセス606eの処理は、補正部250,450の処理に対応する。逆強調プロセス606fの処理は、逆強調部255,455の処理に対応する。IFFT処理プロセス606gの処理は、IFFT処理部260,460の処理に対応する。オーバーラップ加算プロセス606hの処理は、オーバーラップ加算部270,470の処理に対応する。通信プロセス606iの処理は、通信部280,480の処理に対応する。
なお、各プログラム607a~607iについては、必ずしも最初からハードディスク装置607に記憶させておかなくてもよい。例えば、コンピュータ600に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ600が各プログラム607a~607iを読み出して実行するようにしてもよい。
図21は、本実施例に係る認識装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。コンピュータ700は、各種演算処理を実行するCPU701と、ユーザからのデータの入力を受け付ける入力装置702と、ディスプレイ703とを有する。また、コンピュータ700は、記憶媒体からプログラム等を読み取る読み取り装置604と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置705とを有する。コンピュータ700は、各種情報を一時記憶するRAM706と、ハードディスク装置707とを有する。そして、各装置701~707は、バス708に接続される。
ハードディスク装置707は、取得プログラム707a、音声認識プログラム707b、通知プログラム707cを有する。CPU701は、各プログラム707a~707cを読み出してRAM706に展開する。
取得プログラム707aは、取得プロセス706aとして機能する。音声認識プログラム707bは、音声認識プロセス706bとして機能する。通知プログラム707cは、通知プロセス706cとして機能する。
取得プロセス706aの処理は、取得部43aの処理に対応する。音声認識プロセス706bの処理は、音声認識部43bの処理に対応する。通知プロセス706cの処理は、通知部43cの処理に対応する。
なお、各プログラム707a~707cについては、必ずしも最初からハードディスク装置707に記憶させておかなくてもよい。例えば、コンピュータ700に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ700が各プログラム707a~707cを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)雑音が発生している際に録音された音声情報であって、かつ、雑音抑圧処理の行われた第1音声情報と、雑音の発生していない環境で録音された音声情報を示す第2音声情報とを取得し、前記第2音声情報の帯域のうち、前記第1音声情報のSNR(Signal Noise Ratio)が低い帯域に対応する帯域の成分を強調した強調情報を生成する強調部と、
前記第1音声情報と、前記強調情報とを基にして、モデルを機械学習する学習部と、
前記学習部によって機械学習されたモデルを基にして、雑音抑圧処理の行われた第3音声情報を補正した補正音声情報を生成する補正部と
を有することを特徴とする音声補正装置。
(付記2)前記強調部は、前記第2音声情報の帯域のうち、成分の値が閾値未満となる帯域を強調対象の帯域として特定し、前記第2音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分に1より大きいゲインを乗算することで、前記強調情報を生成することを特徴とする付記1に記載の音声補正装置。
(付記3)前記補正部によって補正された前記補正音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分を前記ゲインで除算する逆強調部と、前記補正音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分を前記ゲインで除算された情報を基にして音声認識を行う音声認識部を更に有することを特徴とする付記2に記載の音声補正装置。
(付記4)前記強調部は、前記第2音声情報から前記第1音声情報を減算することで、前記強調情報を生成することを特徴とする付記1に記載の音声補正装置。
(付記5)前記補正部によって補正された前記補正音声情報に、前記第3音声情報を加算する逆強調部と、前記補正音声情報に前記第3音声情報が加算された情報を基にして音声認識を行う音声認識部を更に有することを特徴とする付記4に記載の音声補正装置。
(付記6)コンピュータが、
雑音が発生している際に録音された音声情報であって、かつ、雑音抑圧処理の行われた第1音声情報と、雑音の発生していない環境で録音された音声情報を示す第2音声情報とを取得し、前記第2音声情報の帯域のうち、前記第1音声情報のSNR(Signal Noise Ratio)が低い帯域に対応する帯域の成分を強調した強調情報を生成し、
前記第1音声情報と、前記強調情報とを基にして、モデルを機械学習し、
機械学習された前記モデルを基にして、雑音抑圧処理の行われた第3音声情報を補正した補正音声情報を生成する
処理を実行することを特徴とする音声補正方法。
(付記7)前記強調情報を生成する処理は、前記第2音声情報の帯域のうち、成分の値が閾値未満となる帯域を強調対象の帯域として特定し、前記第2音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分に1より大きいゲインを乗算することで、前記強調情報を生成することを特徴とする付記6に記載の音声補正方法。
(付記8)前記補正音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分を前記ゲインで除算し、前記補正音声情報の帯域のうち、前記強調対象の帯域に対応する帯域の成分を前記ゲインで除算した情報を基にして音声認識を行う処理を更に実行することを特徴とする付記7に記載の音声補正方法。
(付記9)前記強調情報を生成する処理は、前記第2音声情報から前記第1音声情報を減算することで、前記強調情報を生成することを特徴とする付記6に記載の音声補正方法。
(付記10)前記補正音声情報に、前記第3音声情報を加算し、前記補正音声情報に前記第3音声情報が加算した情報を基にして音声認識を行う処理を更に実行することを特徴とする付記9に記載の音声補正方法。