(57)【特許請求の範囲】
【請求項１】
１または複数のコマンドの各々に対応付けてそのコマンドの発話音声の特徴を示す特徴量が格納されたコマンドデータベースと、
マイクロホンの出力信号を解析し、当該出力信号の表わす音声についての特徴量を算出する特徴量算出手段と、
前記特徴量算出手段により算出される特徴量とコマンド毎に前記コマンドデータベースに格納されている特徴量との類似度に基づいて音声認識を行い、尤度を示すスコア値をコマンド毎に算出し、そのスコア値が高い上位Ｎ（Ｎは、１以上の整数）個のコマンドをコマンド候補として選択するコマンド候補選択手段と、
前記マイクロホンの出力信号の示す音声の単位時間当たりの音素数を当該音声の発話速度として算出する発話速度算出手段と、
前記コマンド候補選択手段により選択されたコマンド候補の各々のスコア値を前記発話速度が予め定められた上限値に近い値であるほど小さな値に補正し、補正後のスコア値が所定の閾値を下回っているものをコマンド候補から除外するコマンド候補絞込み手段と、を有し、
前記上限値は、電子機器に対してコマンド入力を行う際の発話音声の発話速度の出現頻度の分布と人同士の会話音声の発話速度の出現頻度の分布とから定められる
ことを特徴とする音声認識装置。
【請求項２】
前記発話速度算出手段は、前記コマンド候補選択手段により選択されたコマンド候補の各々について単位時間当たりの音素数をそのコマンド候補の発話速度として算出し、
前記コマンド候補絞込み手段は、前記各コマンド候補についてその発話速度と前記マイクロホンの出力信号の示す音声の発話速度との一致度が低いほどそのスコア値を小さな値に補正し、補正後のスコア値が所定の閾値を下回っているものをコマンド候補から除外する
ことを特徴とする請求項１に記載の音声認識装置。
【請求項３】
前記発話速度算出手段は、発話速度の算出対象となる音声の変調スペクトルを算出し、当該変調スペクトルが最大となる周波数を当該音声の発話速度として出力することを特徴とする請求項１または２の何れかに記載の音声認識装置。
【請求項４】
前記マイクロホンの出力信号の表す音声の発話速度が前記上限値を超えている場合には、当該音声は前記１または複数のコマンドの何れの発話音声でもないと判定する判定手段をさらに有することを特徴とする請求項１から３の何れか１に記載の音声認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識技術に関し、特に、音声入力されるコマンドを電子機器に識別させる技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータや音楽プレイヤ、家庭用ゲーム機、カーナビゲーション装置などの電子機器に対するコマンド入力インタフェースとして、音声認識技術を利用したコマンド制御装置が用いられる場合がある。この種のコマンド制御装置では、ユーザの発した音声が予め辞書登録されたコマンドの何れに該当するのかを判定し、何れかのコマンドに該当すると判定される場合には、そのコマンドに応じて当該電子機器の作動制御を行う処理（以下、コマンド制御）が実行される。この種のコマンド制御装置で採用される音声認識技術の一例としては、ＤＰマッチングを利用したもの（例えば、特許文献１）や、隠れマルコフモデル（Hidden Markov Model：以下、ＨＭＭ）を利用したものが挙げられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２３３０７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の音声認識技術においては、例えばキー操作等により認識処理の開始を指示する必要があったが、コマンド入力のたびにそのような操作を行うことは非常に煩わしいことである。このため、電子機器の電源が投入されてからその切断が行われるまでの間、常に周囲の音声を収音させ、そのようにして得られた連続音声から認識対象の音声（以下、認識対象音声）を切り出して音声認識を行うようにすることが望まれていた。
【０００５】
しかし、連続音声から認識対象音声を切り出す場合、ＤＰマッチングを利用した音声認識技術では、電子機器の周囲で行われた人同士の会話の音声がその電子機器へのコマンド入力であると誤認識される場合がある、という問題があった。例えば、”おんがく”、”さいせい”、”すとっぷ”、”つぎ”、および”まえ”といった５種類のコマンドを対象としてＤＰマッチングを利用した音声認識を行う音楽プレイヤにおいて、”十分なメモリ削減の工夫が・・・”といった音声が”おんがく”というコマンドの入力音声であると誤認識される場合がある、といった具合である。一般に人同士の会話の音声は、その発話速度（単位時間あたりの音素数）がコマンド入力を意図して発せられた音声に比較して速いといった特徴を有するのであるが、ＤＰマッチングでは絶対的な時間を考慮せずに音色が似ている部分同士を比較するため、このような不具合が生じ易いのである。
【０００６】
また、ＨＭＭを利用した音声認識技術では、音素の継続時間の統計的な分布を状態遷移確率で表現することができるものの、指数的に減衰する音声を表わす音声モデルであり、認識結果の尤もらしさを示すスコア値を発話速度に応じて調整することは困難で、上記のような誤認識を回避することは難しい。つまり、ＤＰマッチングやＨＭＭを利用した従来の音声認識技術をそのまま用いたのでは、人同士の会話の音声をコマンド入力音声と誤認識することを回避しつつ、連続音声から認識対象音声を切り出してコマンド制御を実現することは難しいのである。
本発明は、上記課題に鑑みて為されたものであり、電子機器に対するコマンド入力を目的として発せられたものではない音声がコマンド入力を意図したものであると誤認識されることを回避しつつ、連続音声から認識対象音声を切り出してコマンド制御を行うことを可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明は、１または複数のコマンドの各々に対応付けてそのコマンドの発話音声の特徴を示す特徴量が格納されたコマンドデータベースと、マイクロホンの出力信号を解析し、当該出力信号の表わす音声についての特徴量を算出する特徴量算出手段と、前記特徴量算出手段により算出される特徴量とコマンド毎に前記コマンドデータベースに格納されている特徴量との類似度に基づいて音声認識を行い、尤度を示すスコア値をコマンド毎に算出し、そのスコア値が高い上位Ｎ（Ｎは、１以上の整数）個のコマンドをコマンド候補として選択するコマンド候補選択手段と、前記マイクロホンの出力信号の示す音声の単位時間当たりの音素数を当該音声の発話速度として算出する発話速度算出手段と、前記コマンド選択手段により選択されたコマンド候補の各々のスコア値を前記発話速度が予め定められた上限値に近い値であるほど小さな値に補正し、補正後のスコア値が所定の閾値を下回っているものをコマンド候補から除外するコマンド候補絞込み手段とを有することを特徴とする音声認識装置、を提供する。
【０００８】
これは、人同士の会話の発話音声は電子機器に対するコマンド入力を意図して発せられる音声に比較して発話速度が速いことが一般的であることに着目したものであり、上記上限値を適切に定めておけば、人同士の会話のために発せられた音声が電子機器に対するコマンド入力を意図したものであると誤認識されることを回避することができる。何故ならば、このような音声認識装置によれば、マイクロホンの出力信号が示す音声の発話速度が上記上限値に近いほど、その音声に対して音声認識により選択されたコマンド候補のスコア値は小さい値に補正され、全てのコマンド候補が除外されることが起こり得る。全てのコマンド候補が除外されたのであれば、その音声はコマンド入力音声ではないと考えられるからである。ここで、上記上限値をどのように定めるのかについては種々の方法が考えられる。その一例としては、多数の人について、人同士の会話の発話音声の発話速度と電子機器に対してコマンド入力を行う際の発話音声の発話速度とを集計して両発話速度の分布を求めるとともに、それら２つの分布を最も高い信頼度で切り分けられるように上記上限値を定める態様が考えられる。なお、本発明の別の態様においては、コンピュータを上記各手段として機能させるプログラムを提供しても良い。
【０００９】
ここで認識対象音声の発話速度をどのよう算出するのかについては、種々の態様が考えられる。一例を挙げると、認識対象音声の変調スペクトルを算出し、当該変調スペクトルが最大となる周波数を当該音声の発話速度として出力する、といった具合である。変調スペクトルが最大となる周波数を認識対象音声の発話速度とすることの妥当性については、発明の詳細な説明において明らかにする。
【００１０】
また、上記課題を解決するために本発明は、１または複数のコマンドの各々に対応付けてそのコマンドの発話音声の特徴を示す特徴量が格納されたコマンドデータベースと、マイクロホンの出力信号を解析し、当該出力信号の表わす音声についての特徴量を算出する特徴量算出手段と、前記特徴量算出手段により算出される特徴量とコマンド毎に前記コマンドデータベースに格納されている特徴量との類似度に基づいて音声認識を行い、尤度を示すスコア値をコマンド毎に算出し、そのスコア値が高い上位Ｎ（Ｎは、１以上の整数）個のコマンドをコマンド候補として選択するコマンド候補選択手段と、前記マイクロホンの出力信号の示す音声の単位時間当たりの音素数を当該音声の発話速度として算出するとともに、前記コマンド選択手段により選択されたコマンド候補の各々について単位時間当たりの音素数をそのコマンド候補の発話速度として算出する発話速度算出手段と、前記各コマンド候補についてその発話速度と前記マイクロホンの出力信号の示す音声の発話速度との一致度が低いほどそのスコア値を小さな値に補正し、補正後のスコア値が所定の閾値を下回っているものをコマンド候補から除外するコマンド候補絞込み手段とを有することを特徴とする音声認識装置、を提供する。
【００１１】
このような音声認識装置によれば、認識対象音声とは発話速度が大きく異なる（換言すれば、認識対象音声とは音素数が大きく異なる）コマンドは、その音声に対するコマンド候補から除外される。このような態様によっても、人同士の会話のために発せられる音声がコマンド入力のためのものであると誤認識されることを回避することが可能になる。なお、本発明の別の態様においては、コンピュータを上記各手段として機能させるプログラムを提供しても良い。
【００１２】
より好ましい態様においては、上記各音声認識装置は、マイクロホンの出力信号の表す音声の発話速度が予め定められた上限値を超えている場合には、当該音声は前記１または複数のコマンドの何れの発話音声でもないと判定する判定手段をさらに有することを特徴とする。前述したように、人同士の会話の発話音声は電子機器に対するコマンド入力を意図して発せられる音声に比較して発話速度が速いことが一般的であり、上記上限値を適切に定めておけば、コマンド候補のスコア値の補正を行うまでもなく、その上限値を超えて早い発話速度の発話音声は電子機器に対するコマンド入力を目的として発せられたものではないと判断することができるからである。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態である音声認識装置３０を含むコマンド制御装置１の構成例を示すブロック図である。
【図２】同音声認識装置３０の構成例を示すブロック図である。
【図３】同音声認識装置３０の制御部３１０が実行する音声認識処理の流れを示すフローチャートである。
【図４】同音声認識処理の発話速度算出処理３１３０にて算出される変調スペクトルの一例を示す図である。
【図５】同音声認識処理のコマンド候補絞込み処理３１４０にて使用される重み付け関数ｆおよびｇの一例を示す図である。
【図６】人同士の会話の音声の発話速度の分布と電子機器に対するコマンド入力音声の発話速度の分布の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照しつつ本発明の実施形態について説明する。
（Ａ：構成）
図１は、本発明の一実施形態である音声認識装置３０を含むコマンド制御装置１の構成例を示すブロック図である。このコマンド制御装置１は、電子機器（本実施形態では、音楽プレイヤ）に組み込まれ、その電子機器のコマンド入力インタフェースの役割を果たす。図１に示すようにコマンド制御装置１は、マイクロホン１０、Ａ／Ｄ変換器２０、音声認識装置３０、およびコマンドインタプリタ４０を含んでいる。
【００１５】
マイクロホン１０は、コマンド制御装置１が組み込まれた電子機器の周囲の音を収音し、その音波形を示すアナログオーディオ信号を出力する。入力を所望するコマンドの発話が当該電子機器のユーザによって行われると、その発話音声はマイクロホン１０によって収音され、その発話音声を表わすアナログオーディオ信号が後段回路へ与えられる。Ａ／Ｄ変換器２０は、マイクロホン１０の出力信号にＡ／Ｄ変換を施し、その変換結果であるデジタルオーディオデータ（以下、音声データ）を音声認識装置３０に与える。なお、マイクロホン１０がデジタルオーディオデータを出力するものである場合には、Ａ／Ｄ変換器２０を省略し、マイクロホン１０の出力データを音声認識装置３０に直接与えるようにすれば良い。
【００１６】
音声認識装置３０は、Ａ／Ｄ変換器２０から与えられる音声データに音声認識処理を施し、予め登録された複数種のコマンドの何れかの発話音声を表すものであるか否かを判定し、何れかのコマンドの発話音声と判定される場合には、そのコマンドの実行指示をコマンドインタプリタ４０に与える。コマンドインタプリタ４０は、音声認識装置３０から与えられる指示にしたがってコマンドを実行し、電子機器の各部の作動制御を行う。これにより、音声入力されたコマンドが実行され、そのコマンドに応じた処理が実行されるのである。
【００１７】
さて、図１に示すコマンド制御装置１では、当該コマンド制御装置１を含む電子機器の電源が投入されてから、その切断が行われるまでの間、マイクロホン１０による音声の収音およびその音声に対する音声認識処理が継続して実行される。そして、図１の音声認識装置３０は、Ａ／Ｄ変換器２０から順次与えられる音声データを蓄積し、それら音声データから無音区間（本実施形態では、音量レベルが予め定められた閾値未満の区間）により区画される有音区間の音波形を表す波形データを切り出し、その波形データに対して音声認識処理を施すのである。このため、本実施形態では、音声認識処理の開始を逐一ユーザに指示させる必要はない。加えて、本実施形態の音声認識装置３０は、音声認識処理により得られるスコア値（認識結果の尤もらしさ（尤度）を示す値：本実施形態では、０〜１の範囲の値であって、１に近いほど尤度が高いことを示す）を、その認識対象音声（すなわち、有音区間の音声）の発話速度（本実施形態では、単位時間当たりの音素数：以下、単に「話速」とも呼ぶ）に応じて補正する処理を実行する。これは、人同士の会話の音声の発話速度はコマンド入力のための音声の発話速度に比較して速いことが多い、ということに着目したものであり、これにより、前者を後者であると誤認識することが回避される。
以下、本実施形態の特徴を顕著に示す音声認識装置３０を中心に説明する。
【００１８】
図２は、音声認識装置３０の構成例を示すブロック図である。
図２に示すように音声認識装置３０は、制御部３１０、インタフェース群３２０、記憶部３３０、および、これら各構成要素間のデータ授受を仲介するバス３４０を含んでいる。制御部３１０は、例えばＣＰＵ（Central Processing Unit）である。制御部３１０は、記憶部３３０（より正確には、不揮発性記憶部３３４）に記憶されている音声認識プログラム３３４ｂを実行することにより、音声認識装置３０の制御中枢として機能する。
【００１９】
インタフェース群３２０は、例えばシリアルインタフェースやＮＩＣ（Network Interface Card）など他の電子機器との間でデータの授受を行うためのインタフェースの集合体である。Ａ／Ｄ変換器２０やコマンドインタプリタ４０は、インタフェース群３２０に含まれる各種インタフェースのうちの適当なものに接続され、そのインタフェースを介して音声認識装置３０（より正確には、制御部３１０）との間でデータの授受を行う。
【００２０】
記憶部３３０は、図２に示すように揮発性記憶部３３２と不揮発性記憶部３３４を含んでいる。揮発性記憶部３３２は、例えばＲＡＭ（Random Access Memory）である。この揮発性記憶部３３２は、音声認識処理を実行する際のワークエリアとして制御部３１０によって利用される。不揮発性記憶部３３４は、例えばハードディスクである。この不揮発性記憶部３３４には、コマンドデータベース３３４ａと音声認識プログラム３３４ｂが予め格納されている。
【００２１】
コマンドデータベース３３４ａには、コマンド制御装置１を含む電子機器に対して入力され得る複数種のコマンドの各々を示すコマンド識別子（例えば、コマンドの発話音声を構成する音素の配列を示す文字列）に対応付けてそのコマンドの発話音声の特徴を示す特徴量とそのコマンドの発話音声の発話速度を示す発話速度データが格納されている。前述したように、本実施形態においてコマンド制御装置１が組み込まれた電子機器は音楽プレイヤであり、”おんがく”、”さいせい”、”すとっぷ”、”つぎ”、および”まえ”の５種類のコマンドが入力され得る。そして、本実施形態では、これら５種類のコマンドのコマンド識別子として、ongaku、saisei、sutopqu、tsugi、およびmaeが用いられている。
【００２２】
これら５種類のコマンドのうち、”おんがく”というコマンドは当該電子機器に記憶されている楽曲の一覧である楽曲リストの先頭にポインタを位置付けるコマンドである。”さいせい”というコマンドは、ポインタの指し示す楽曲の再生開始を指示するコマンドであり、”すとっぷ”というコマンドは楽音の再生停止を指示するコマンドである。そして、”つぎ”というコマンドは、上記ポインタを楽曲リストの次の楽曲に位置付けることを指示するコマンドであり、”まえ”というコマンドは上記ポインタを楽曲リスト上の一つ手前の楽曲に位置付けるコマンドである。
【００２３】
また、本実施形態では、上記特徴量として以下の要領で算出されるＭＦＣＣ（Mel-Frequency
Cepstrum Coefficient）が採用されている。各コマンド識別子に対応付けてコマンドデータベース３３４ａに格納されているＭＦＣＣは、そのコマンド識別子の表わすコマンドの発話音声の波形データを所定の時間単位（例えば、５００ｍｓ）分ずつに分割し、それら所定単位時間分の波形データの各々に対してＦＦＴを施してパワースペクトルを算出し、そのパワースペクトルの対数値にメル尺度に基づく窓関数を乗算する等して算出されたものである。なお、本実施形態では、特徴量としてＭＦＣＣを用いたが、パワースペクトルの対数値（以下、対数パワースペクトル）やケプストラム（対数パワースペクトルに逆フーリエ変換を施して得られる値）を用いても勿論良く、また、これらのうちの複数種を組み合わせて用いても良い。
【００２４】
音声認識プログラム３３４ｂは、Ａ／Ｄ変換器２０から引渡される音声データの表わす音声が上記５種類のコマンドの何れかの入力を指示するものであるか否かを判定し、コマンドの入力を指示するものであると判定された場合には、その判定の尤もらしさが最も高いコマンド（前述したスコア値が最も高いコマンド）のコマンド識別子をコマンドインタプリタ４０に与え、そのコマンドの実行を指示する音声認識処理を制御部３１０に実行させるプログラムである。ただし、本実施形態の音声認識プログラム３３４ｂは、マイクロホン１０により収音された音声の発話速度を算出し、その音声にて入力を指示されたと推定されるコマンド（以下、コマンド候補）のスコア値をその発話速度に基づいて補正する処理を制御部３１０に実行させる点が従来のものと異なる。この音声認識プログラム３３４ｂにしたがって制御部３１０が実行する音声認識処理の詳細については重複を避けるため動作例において明らかにする。
以上が音声認識装置３０の構成である。
【００２５】
（Ｂ：動作）
次いで、音声認識装置３０の動作を説明する。
図３は、音声認識装置３０の制御部３１０が音声認識プログラム３３４ｂにしたがって実行する音声認識処理の流れを示すフローチャートである。図３に示すように、この音声認識処理には、波形切り出し処理３１００、特徴量算出処理３１１０、コマンド候補選択処理３１２０、発話速度算出処理３１３０、コマンド候補絞込み処理３１４０が含まれる。
【００２６】
波形切り出し処理３１００は、Ａ／Ｄ変換器２０から順次引渡される音声データを揮発性記憶部３３２（より正確には、揮発性記憶部３３２内に確保される記憶領域により構成されるＦＩＦＯやリングバッファ）に書き込んで蓄積するとともに、それら連続音声の音声データから無音区間（前述したように、本実施形態では、音量レベルが所定の閾値未満の区間）により区画される有音区間の音波形（すなわち、認識対象音声の音波形）を示す波形データを切り出す処理である。ここで、音量レベルが所定の閾値未満の区間を無音区間としたのは、環境音等など雑音による影響を緩和するためであり、無音区間か否かを判別するための閾値をどの程度の値にするのかについては、適宜実験等を行って定めるようにすれば良い。図３に示すように波形切り出し処理３１００により得られる波形データは、特徴量算出処理３１１０および発話速度算出処理３１３０の処理対象データとなる。
【００２７】
特徴量算出処理３１１０は、波形切り出し処理３１００により得られる波形データを解析し、コマンドデータベース３３４ａに格納されているものと同種の特徴量（本実施形態では、ＭＦＣＣ）を算出する処理である。より詳細に説明すると、この特徴量算出処理３１１０では、制御部３１０は、波形切り出し処理３１００により得られる波形データを所定の時間単位（５００ｍｓ）分ずつ分割し、それら所定単位時間分の波形データの各々に対してＦＦＴを施してパワースペクトルを算出し、そのパワースペクトルの対数値にメル尺度に基づく窓関数を乗算する等して特徴量（ＭＦＣＣ）を算出する。
【００２８】
コマンド候補選択処理３１２０では、制御部３１０は、特徴量算出処理３１１０にて算出された特徴量とコマンドデータベース３３４ａの格納内容とを用いて音声認識（本実施形態では、ＤＰマッチング）を行い、５種類のコマンドの各々について認識対象音声をそのコマンドの入力指示であるとした場合の尤度を示すスコア値を算出し、そのスコア値が高い上位Ｎ（Ｎは、１以上の予め定められた整数）個のコマンドをコマンド候補として選択する。ここでスコア値の算出アルゴリズムとしては種々のものが考えられる。例えば、コマンドデータベース３３４ａにコマンド毎に格納されている特徴量および特徴量算出処理３１１０にて算出される特徴量が多次元ベクトル形式のものである場合には、それら特徴量ベクトル間の距離（或いは、両特徴量ベクトルのなす角度）を０〜１の範囲に規格化してスコア値とする態様が考えられる。また、音声認識アルゴリズムとしてＨＭＭを利用したものを採用する場合には、所謂ビタビアルゴリズムなどの最尤推定アルゴリズムを用いてスコア値を算出するようにすれば良い。そして、制御部３１０は、このようにして算出されるスコア値が高いものからＮ（本実施形態では、Ｎ＝５）個のコマンドをコマンド候補として選び出し、それらコマンドのコマンド識別子とそのスコア値とを対応付けてスコア値の降順に配列したコマンド候補リストを出力する。例えば、本実施形態では、認識対象音声に対して以下の表１に示すようなコマンド候補リストが生成される。
【表１】
0005532880.tif 000002
【００２９】
従来の音声認識技術では、上記のようにして生成されたコマンド候補リストにて最上位のコマンドのスコア値が所定の閾値（例えば、０．５など）を上回っているのであれば、認識対象音声は当該最上位のコマンドの入力を指示するものであると判定され、そのコマンドに応じた処理が実行されていた。しかし、このような態様では、人同士の会話のために発せられた音声に偶然、何れかのコマンドと類似する音色を有する部分が含まれている場合などに誤認識を生じさせてしまう場合があることは前述した通りである。そこで、本実施形態では、認識対象音声の発話速度を考慮することで、このような誤認識の発生を回避するものであり、図３の発話速度算出処理３１３０およびコマンド候補絞込み処理３１４０は本実施形態の中核を成すのである。
【００３０】
発話速度算出処理３１３０は、波形切り出し処理３１００により得られる波形データの表す音声の発話速度を算出する処理である。より詳細に説明すると、この発話速度算出処理３１３０では、制御部３１０は、まず、上記波形データに対してローパスフィルタ処理を施し、所定周波数（本実施形態では、８００Ｈｚ）以上の周波数を有する高周波成分を除去する。ここで、所定周波数以上の高周波成分を除去するのは、発話音声以外の雑音（例えば、周囲の環境音等）による影響を緩和するためである。
【００３１】
次いで、制御部３１０は、高周波成分を除去した波形データを所定の単位時間（５００ｍｓ）分ずつに分割し、変調スペクトルを算出する。ここで、変調スペクトルとは、単位時間分の波形データの対数パワースペクトルの時間軌跡を表わすデータ列にフーリエ変換を施して得られるものである。つまり、制御部３１０は、高周波成分を除去した波形データを上記単位時間分ずつの波形データに区切って対数パワースペクトルを算出し、その算出結果にフーリエ変換を施すことで変調スペクトルを算出するのである。
【００３２】
図４は、発話速度算出処理３１３０にて制御部３１０が算出する変調スペクトルの一例を示すグラフである。音声を分析して得られる変調スペクトルは、一般に０から２０Ｈｚの帯域にピークをもつ山型の形状となることが知られており、図４においても当該ピークが現れている。制御部３１０は、このようにして得られた変調スペクトルのピーク周波数（すなわち、変調スペクトルが最大となる周波数）を表わすデータを上記波形データの表わす音声の発話速度を表わす発話速度データとして出力する。ここで、変調スペクトルのピーク周波数を発話速度とする理由は以下の通りである。前述したように、変調スペクトルは、音声の対数パワースペクトルの時間軌跡を表わすデータ列にフーリエ変換を施して得られるものであり、その音声にて対数パワースペクトルが変化する周期とその周期での対数パワースペクトルの変化の出現頻度とを表している。つまり、変調スペクトルのピーク周波数は、そのピーク周波数に応じた周期で対数パワースペクトルが変化する頻度が最も高いことを示しているのである。音素の境界ではそれら特徴量は当然に変化するのであるから、変調スペクトルのピーク周波数は、単位時間当たりにどの程度の頻度で音素の切り換りが発生したのか（すなわち、単位時間当たりの音素数）を表わすこととなり、これは発話速度に他ならない。これが、変調スペクトルのピーク周波数を発話速度とする理由である。
【００３３】
図３のコマンド候補絞込み処理３１４０は、コマンド候補選択処理３１２０にて生成されたコマンド候補リスト（表１参照）に含まれるＮ個のコマンド候補の各々のスコア値を認識対象音声の発話速度（すなわち、発話速度算出処理３１３０にて算出される発話速度データの示す発話速度）に応じて補正し、その補正後のスコア値が所定の閾値未満のものをコマンド候補から除外する処理である。本実施形態では、上記各スコア値に上記発話速度に応じた重みを乗算することでその補正が行われる。そして、各コマンド候補のスコア値に乗算する重みとしては、認識対象音声の発話速度にのみ依存する第１の重みと、認識対象音声の発話速度とコマンド候補の発話速度に依存する第２の重みの２種類が用いられる。
【００３４】
図５（ａ）は、第１の重みを表す関数ｆの特性を表わすグラフである。この関数ｆは、認識対象音声の発話速度を引数とし、０から１までの何れかの値をとる関数である。より詳細に説明すると、関数ｆの値は、その引数である発話速度が所定の値ＶＢ（図５（ａ）に示すように、本実施形態では、５[Ｈｚ]）未満である場合には１となり、発話速度が所定の上限値ＶＡに近くづくにつれて０に向って減少する。このような特性の重み付け関数ｆを用いて重み付けを行う理由は以下の通りである。
【００３５】
前述したように人同士の会話の音声の発話速度は電子機器に対するコマンド入力音声の発話速度に比較して早いことが一般的である。このため、多数の人（以下、モニタと呼ぶ）を対象として人同士の会話の音声の発話速度と電子機器に対するコマンド入力音声の発話速度を計測し、各々の出現頻度を集計すれば、図６に示すような分布が得られると考えられる。図６において破線で描画された曲線は人同士の会話の音声の発話速度の出現頻度の分布を表す分布曲線であり、実線で描画された曲線は電子機器に対するコマンド入力音声の発話速度の出現頻度の分布曲線である。これら２つの分布曲線は、モニタの数が多いほど正規分布に近づくと考えられる。例えば、図６にて人同士の会話の音声の発話速度の出現頻度の分布曲線がゼロから立ち上がり始める発話速度を図５（ａ）のＶＢとし、同図６において、コマンド入力音声の発話速度の出現頻度の分布曲線がそのピークから次第に減少し略ゼロとなったときの発話速度を図５（ａ）のＶＡとすれば、上記重み付け関数ｆを用いることによって、認識対象音声の発話速度が上限値ＶＡに近いほど各コマンド候補のスコア値は小さな値に補正され、認識対象音声に対するコマンド候補として選択されにくくなる。これは、図６にて発話速度がＶＢからＶＡの区間では発話速度がＶＡに近いほどその音声は人同士の会話の音声である可能性が高くなっていることと整合する。つまり、第１の重みを表わす関数ｆは、認識対象音声の話速が上限値ＶＡに近いほど、その音声に対して選択された全てのコマンド候補のスコア値を小さな値に補正し、何れのコマンド候補も選択されないようにする役割を果たすのである。
【００３６】
一方、第２の重みを表わす関数ｇは、認識対象音声の発話速度とコマンド候補の発話速度の一致度が高いほど１に近く、一致度が低いほど０に近い値となる関数である。図５（ｂ）は、本実施形態における関数ｇの特性を表わすグラフである。この関数ｇは、認識対象音声の発話速度とコマンド候補の発話速度の比ｒを引数とする。この関数ｇの値は、図５（ｂ）に示すように、その引数ｒが０．５〜２の場合には１となり、引数ｒが０．５より小さくなるほど、或いは２より大きくなるほど０に近い値となる。この関数ｇは、認識対象音声の発話速度との一致度が低い発話速度のコマンド候補ほどそのスコア値を小さな値に補正し、それらコマンド候補が選択されにくくなるようにする、といった役割を果たすのである。
【００３７】
関数ｆおよびｇの各々は、何れも０〜１の範囲の値をとるのであるから、これら関数ｆおよびｇによる重みを乗算した後のスコア値は、その乗算前のスコア値と等しい値か、またはより小さい値に更新されることになる。したがって、これら関数ｆおよびｇを用いて重み付けを行うことにより、上記コマンド候補リストは、例えば、以下の表２のように更新される。なお、表２においては、ｆおよびｇを乗算した後のスコア値（表２では、スコア値（新）と表記）のほかに、その乗算前のスコア値（表２では、スコア値（旧）と表記）と、ｆとｇの積の値を併記した。
【表２】
0005532880.tif 000003
【００３８】
コマンド候補絞込み処理３１４０では、制御部３１０は、関数ｆおよびｇによる重み付けを行った後のスコア値が最大であるコマンド候補のコマンド識別子をコマンドインタプリタ４０に出力するのであるが、それらコマンド候補にスコア値が所定の閾値（例えば、０．５）未満のものが含まれている場合には、まず、それらを除外する。関数ｆおよびｇによる重み付け後のスコア値が所定の閾値を下回るコマンド候補については、認識対象音声はそのコマンド候補の入力を指示したものではないと考えられるからである。表２を参照すれば明らかなように、本動作例においては、最も順位が高いコマンド候補“ongaku”であっても、そのスコア値（新）は上記閾値未満であるから、全てのコマンド候補が除外され、コマンドインタプリタ４０にコマンド候補のコマンド識別子が引渡されることはない。全てのコマンド候補が除外されたのであれば、認識対象音声は予め登録された複数種のコマンドの何れの入力も指示するものではなく、人同士の会話のために発話された音声の可能性が高いと判断される、ということである。
【００３９】
このように、本実施形態では、図５（ａ）および（ｂ）に示す関数ｆおよびｇを用いて各コマンド候補のスコア値を補正した後に絞り込みを行うようにしたため、マイクロホン１０により収音された音声の発話速度が速すぎる場合（すなわち、認識対象音声の発話速度が上限値ＶＡに近いほど）には、関数ｆは０近傍の値となり、各コマンド候補のスコア値は０近傍の値まで引き下げられ、その音声に対応するコマンド候補が音声認識装置３０からコマンドインタプリタ４０に引渡されることはない。前述したように、電子機器に対するコマンド入力のために発せられる音声の発話速度は、人同士の会話の発話速度に比較して遅いことが一般的であり、上記のような発話速度の速さに応じたフィルタリングを行うことによって、会話のための音声が電子機器に対するコマンド入力であると誤認識されることが回避される。なお、認識対象音声の発話速度が上限値ＶＡを上回っている場合には、コマンド候補のスコア値の補正を行うことなく認識対象音声はコマンド入力を意図して発せられたものではないと判定するようにしても良い。加えて、本実施形態では、マイクロホンにより収音された音声の発話速度とはかけ離れた発話速度を有するものは関数ｇが０近傍の値になるため、やはりコマンド候補から除外される。このため、マイクロホンによる収音された音声がその音声とは極端に異なる音素数のコマンドの入力を意図したものであると誤認識されること（例えば、”十分なメモリ削減の工夫が”といった音声が”おんがく”といったコマンド入力を意図するものであると誤判断されること）も回避される。
【００４０】
このように、本実施形態の音声認識装置３０によれば、電子機器に対するコマンド入力を目的として発せられたものではない音声がコマンド入力を意図したものであると誤認識されることを回避しつつ、連続音声から認識対象音声を切り出してコマンド制御を行うことが可能になる。
【００４１】
（Ｃ：変形）
以上、本発明の一実施形態について説明したが、かかる実施形態に以下に述べる変形を加えても良い。
（１）上述した実施形態では、音楽プレイヤに本実施形態のコマンド制御装置１を組み込んだ場合について説明した。しかし、本実施形態のコマンド制御装置１の組み込み対象の電子機器は、音楽プレイヤに限定されるものではなく、パーソナルコンピュータや家庭用ゲーム機、カーナビゲーション装置などであっても良い。要は、何らかのコマンド入力を要する電子機器であれば、本実施形態のコマンド制御装置１を組み込むことによってそのコマンド入力を音声で行わせることが可能になる。また、上述した実施形態では、コマンドデータベース３３４ａに５種類のコマンドが予め登録されていたが、１〜４種類のコマンドが予め登録されている態様であっても良く、また、６種類以上のコマンドが予め登録されている態様でも良い。要は、１または複数種類のコマンドが登録されている態様であれば良い。
【００４２】
（２）上述した実施形態では、関数ｆおよび関数ｇの両方を用いてスコア値の重み付けを行ったが、何れか一方のみを用いて重み付けを行っても良い。なお、関数ｆのみを用いて重み付けを行う場合には、音声認識により選択される各コマンド候補の発話速度は必要なく、発話速度を示すデータをコマンドデータベース３３４ａに格納しておく必要はない。また、関数ｇを用いて（関数ｇのみ、或いは関数ｇと関数ｆとを用いて）スコア値の重み付けを行う態様であっても、各コマンド候補の発話速度そのものを示すデータをコマンドデータベース３３４ａに格納しておく必要はなく、発話速度の算出に要するデータ（例えば、各コマンドの発話音声の音素数と発話時間を示すデータや、各コマンドの発話音声の変調スペクトルを表わすデータや、その波形データそのもの等）をコマンドデータベース３３４ａに格納しておけば良い。
【００４３】
（３）上述した実施形態では、音声認識アルゴリズムとしてＤＰマッチングを用いたが、ＨＭＭを利用したアルゴリズムを用いても良く、また、ＳＶＭ（Support Vector Machine）などＤＰマッチングやＨＭＭ以外のアルゴリズムを用いても良い。また、上述した実施形態では、変調スペクトルを算出しそのピーク周波数を認識対象音声の発話速度としたが、他の手法により発話速度を算出しても勿論良い。また、上述した実施形態では、図６にて人同士の会話の音声の発話速度の出現頻度の分布曲線がゼロから立ち上がり始める発話速度がコマンド入力音声の発話速度の出現頻度の分布曲線がそのピークから次第に減少し略ゼロとなったときの発話速度よりも遅い場合について説明したが、逆に、前者が後者よりも早い場合には、前者（人同士の会話の音声の発話速度の出現頻度の分布曲線がゼロから立ち上がり始める発話速度）を図５（ａ）の上限値ＶＡとしても勿論良い。
【００４４】
（４）上述した実施形態では、音声認識プログラム３３４ｂが音声認識装置３０の不揮発性記憶部３３４に予め格納されていた。しかし、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などのコンピュータ読み取り可能な記録媒体に音声認識プログラム３３４ｂを書き込んで配布しても良く、また、インターネットなどの電気通信回線経由のダウンロードにより配布しても良い。このようにして配布される音声認識プログラム３３４ｂをパーソナルコンピュータなどの一般的なコンピュータに記憶させ、そのＣＰＵをその音声認識プログラム３３４ｂにしたがって作動させることで、このような一般的なコンピュータを本実施形態の音声認識装置３０として機能させることが可能になるからである。また、上述した実施形態では、本発明の特徴を顕著に示す音声認識処理をソフトウェアにより実現したがハードウェアにより実現することも可能である。具体的には、波形切り出し処理３１００を実行する波形切出し手段、特徴量算出処理３１１０を実行する特徴量算出手段、コマンド候補選択処理３１２０を実行するコマンド候補選択手段、発話速度算出処理３１３０を実行する発話速度算出手段、およびコマンド候補絞込み処理３１４０を実行するコマンド候補絞込み手段の各手段を電子回路で構成し、これら各手段と、コマンドデータベース３３４ａを記憶した記憶装置とを組み合わせて音声認識装置を構成し、上記各手段を図３に示しように順次作動させるようにすれば良い。
【符号の説明】
【００４５】
１…コマンド制御装置、１０…マイクロホン、２０…Ａ／Ｄ変換器、３０…音声認識装置、３１０…制御部、３２０…インタフェース群、３３０…記憶部、３３２…揮発性記憶部、３３４…不揮発性記憶部、３３４ａ…コマンドデータベース、３３４ｂ…音声認識プログラム、３４０…バス、３１００…波形切り出し処理、３１１０…特徴量算出処理、３１２０…コマンド候補選択処理、３１３０…発話速度算出処理、３１４０…コマンド絞込み処理、４０…コマンドインタプリタ。
【図１】
0005532880.tif 000004
【図２】
0005532880.tif 000005
【図３】
0005532880.tif 000006
【図４】
0005532880.tif 000007
【図５】
0005532880.tif 000008
【図６】
0005532880.tif 000009