首页 / 专利库 / 信号处理 / 音素 / 検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラム

検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラム

阅读:212发布:2020-05-11

专利汇可以提供検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラム专利检索,专利查询,专利分析的服务。并且,下面是検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラム专利的具体信息内容。

検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備える検索インデックス生成装置。検索対象の音声信号を取得する取得工程と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定工程と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得工程と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得工程と、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定工程と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成工程と、 を含む検索インデックス生成方法。コンピュータを、 検索対象の音声信号を取得する取得手段、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成手段、 として機能させるためのプログラム。検索インデックス生成部と、音声検索部と、を備える音声検索装置であって、 前記検索インデックス生成部は、 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備え、 前記音声検索部は、 前記第1の確率を記憶する出力確率記憶手段と、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記出力確率記憶手段が記憶する前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定手段と、 を備えることを特徴とする音声検索装置。前記検索対象の音声信号と前記クエリ音声信号とを比較する区間であるフレーム毎に、前記クエリ音声信号の特徴量を取得するクエリ特徴量取得手段と、 前記クエリ特徴量取得手段が取得したクエリ音声信号の特徴量に基づき、前記第2の確率を、音響モデルの音素の各状態と対応付けてフレーム毎に取得するクエリ出力確率取得手段と、 をさらに備えることを特徴とする請求項4に記載の音声検索装置。前記検索対象の音声信号におけるクエリ音声信号の発話時間長を有する区間である尤度取得区間を複数指定する区間指定手段と、 前記区間指定手段が指定した尤度取得区間が前記クエリ音声信号が発せられている区間であることの尤もらしさを示す尤度を、前記第1の確率と前記第2の確率とに基づいて取得する尤度取得手段と、 をさらに備え、 前記区間指定手段は、前記検索対象の音声信号における前記尤度取得区間の先頭位置を変えて複数の尤度取得区間を指定し、 前記尤度取得手段は、前記複数の尤度取得区間のそれぞれについて尤度を取得し、 前記特定手段は、前記区間指定手段が指定した尤度取得区間のそれぞれについて前記尤度取得手段が取得した尤度に基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する、 ことを特徴とする請求項4または5に記載の音声検索装置。前記複数の尤度取得区間のそれぞれについて、前記第1の確率と前記第2の確率とを前記尤度取得区間に含まれるフレーム毎に掛け合わせた第3の確率を取得する第2出力確率取得手段をさらに設け、 前記尤度取得手段は、前記第2出力確率取得手段がフレーム毎に取得した第3の確率の対数をとった値を加算して前記尤度取得区間の尤度を取得する、 ことを特徴とする請求項6に記載の音声検索装置。前記クエリ出力確率取得手段が取得した第2の確率について、音素を構成する状態の中で最も出力確率が高い状態の出力確率を、その音素の代表出力確率として抽出し、抽出した出力確率をその音素の代表出力確率として設定する第2の代表確率設定手段をさらに設けたことを特徴とする請求項5に記載の音声検索装置。検索対象の音声信号を取得する取得工程と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定工程と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得工程と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得工程と、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定工程と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成工程と、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定工程と、 を含む音声検索方法。コンピュータを、 検索対象の音声信号を取得する取得手段、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定手段、 として機能させるためのプログラム。検索インデックス生成部と、音声検索部と、を備える音声検索装置であって、 前記検索インデックス生成部は、 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備え、 前記音声検索部は、 前記第1の確率を記憶する出力確率記憶手段と、 検索文字列を取得する検索文字列取得手段と、 前記検索文字列取得手段が取得した検索文字列を音素列に変換し、時間長記憶部から取得した音素の時間長の長さで音響モデルを並べたクエリ音素列を作成する変換手段と、 全クエリ音素列に含まれるフレーム毎に取得され、前記クエリ音素列の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記出力確率記憶手段が記憶する前記第1の確率とに基づいて、前記検索対象の音声信号の中からクエリ音声信号が発せられていると推定される推定区間を特定する特定手段と、 を備えることを特徴とする音声検索装置。

说明书全文

本発明は、検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラムに関する。

音声検索では、検索対象とする検索語(クエリ)に対応する音声が発話されている箇所を音声信号の中から特定する検索技術を使用する。この音声検索技術では、高速かつ正確な音声検索を実現することが重要となる。

上記音声検索技術の1つとして、非特許文献1は、検索対象の音声信号と検索するクエリ音声信号とを高速に比較する技術を開示している。非特許文献1が開示する技術では、検索対象の音声信号の特徴量とクエリ音声信号の特徴量とを比較する。

Y.Zhang and J.Glass. “An inner−product lower−bound estimate for dynamic time warping,” in Proc. ICASSP,2011,pp.5660−5663.

クエリ音声信号を検索する場合、非特許文献1が開示する技術では、検索対象の音声信号に複数のフレームを設定し、そのフレームごとの音声の特徴量と音響モデルの音素の各状態の特徴量とが一致する確率をテーブルにした検索インデックスを作成する。そして、この検索インデックスを利用して、クエリ音声信号の位置を検索することにより、検索を高速化している。非特許文献1が開示する技術では、音声の特徴を解析する時間単位であるフレーム長を音素を構成する状態の時間長としている。検索精度を上げるためには、音素を構成する状態の数を増やし、より短い時間に細分して音声信号の特徴を比較解析することが望ましい。しかしながら、音素を構成する状態の数が多くなると音声検索処理量が膨大と成り、検索時間が長くなるという問題がある。また、検索インデックスのデータサイズが大きくなってしまうという問題もある。一方、音素を構成する状態の数を減らすと、抽出した特徴量は長い時間内での平均値となってしまうため、音声の瞬時的な特徴を喪失することとなり、音声検索の精度が低下する場合がある。つまり、非特許文献1が開示する技術では、検索インデックスのデータサイズと検索精度とはトレードオフの関係にある。

本発明は、以上のような状況を鑑みてなされたものであり、音声検索の精度を維持しながら、検索インデックスのデータサイズを縮小することが可能な検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラムを提供することを目的とする。

上記目的を達成するため、本発明に係る検索インデックス生成装置は、 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備えることを特徴とする。

本発明によれば、音声検索の精度を維持しながら、検索インデックスのデータサイズを縮小することができる。

本発明の実施形態1に係る音声検索装置の物理構成を示す図である。

本発明の実施形態1に係る音声検索装置の機能構成を示す図である。

本発明の実施形態1に係る検索インデックス生成部の機能構成を示す図である。

音素の状態について説明するための図である。

代表確率置換処理前の検索インデクスについて説明するための図である。

(a)は、検索対象の音声信号の波形図である。(b)は、検索対象の音声信号において設定されるフレームを示す図である。(c)は、検索対象の音声信号において指定される尤度取得区間を示す図である。

代表確率置換処理後の検索インデクスについて説明するための図である。

本発明の実施形態1に係る音声検索部の機能構成を示す図である。

クエリ音素列に設定するフレームについて説明するための図である。(a)は、クエリ音素列を示す図である。(b)は、クエリ音素列において設定されるフレームを示す図である。

クエリ音素列の出力確率について説明するための図である。

Lower−Bound化処理について説明するための図である。

本発明の実施形態1に係る音声検索装置が実行する検索インデックス生成処理の流れを示すフローチャートである。

本発明の実施形態1に係る音声検索装置が実行する音声検索処理の流れを示すフローチャートである。

本発明の実施形態1に係る音声検索装置が実行する音声検索処理の流れを示すフローチャートである。

本発明の実施形態2に係る音声検索部の機能構成を示す図である。

クエリを音声信号として取得する場合について説明するための図である。(a)は、クエリ音声信号の波形図である。(b)は、クエリ音声信号において設定されるフレームを示す図である。

本発明の実施形態3に係る音声検索部の機能構成を示す図である。

代表確率置換処理後のクエリ出力確率について説明するための図である。

以下、本発明の実施形態に係る検索インデクス生成装置、検索インデックス生成方法、音声検索装置、音声検索方法及びプログラムについて、図面を参照しながら説明する。なお、図中同一又は相当する部分には同一符号を付す。

(実施形態1) 実施形態1に係る音声検索装置100は、物理的には、図1に示すように、ROM(Read Only Memory)1と、RAM(Random Access Memory)2と、外部記憶装置3と、入力装置4と、出力装置5と、CPU(Central Processing Unit)6と、バス7と、を備える。

ROM1は、検索インデックス生成プログラム、音声検索プログラムを記憶する。RAM2は、CPU6のワークエリアとして使用される。

外部記憶装置3は、例えば、ハードディスクから構成され、解析対象である音声信号、音響モデル等をデータとして記憶する。また、音声検索装置100が解析対象の音声信号から生成した検索インデックスを記憶する。

入力装置4は、クエリをテキスト入力するキーボード、クエリを音声信号として入力するマイク等から構成される。出力装置5は、例えば、液晶ディスプレイの画面、スピーカ等を備える。出力装置5は、CPU6によって出力された音声データをスピーカから出力し、検索した検索語の音声信号における位置等を画面に表示する。

バス7は、ROM1、RAM2、外部記憶装置3、入力装置4、出力装置5、CPU6、を接続する。CPU6は、ROM1に記憶された検索インデックス生成プログラム、音声検索プログラムをRAM2に読み出して、そのプログラムを実行することにより、以下に示す機能を実現する。

音声検索装置100は、機能的には、図2に示すように、検索インデックス生成部110と、音声検索部130と、を備える。

最初に、検索インデックス生成部110の構成について説明する。検索インデックス生成部110は、図3に示すように、音声信号記憶部101と、音響モデル記憶部102と、出力確率記憶部103と、音声信号取得部111と、フレーム設定部112と、特徴量取得部113と、出力確率取得部114と、代表確率設定部120と、を備える。代表確率設定部120は、圧縮インデックス生成部121を備える。音声信号記憶部101、音響モデル記憶部102、出力確率記憶部103は、外部記憶装置3の記憶領域に構築されている。

音声信号記憶部101は、検索対象とする音声信号を記憶する。検索対象の音声信号は、例えばニュース放送等の音声、録音された会議の音声、録音された講演の音声、映画の音声等に係る音声信号である。

音響モデル記憶部102は、モノフォンモデルの音響モデルを記憶する。モノフォンモデルは、1音素毎に生成された音響モデルであり、隣接する音素に依存しない音響モデルである。音声検索装置100は、モノフォンモデルを一般的な方法で学習して、音響モデル記憶部102に予め記憶しておく。

モノフォンモデルとして、例えば、一般的な音声認識で利用される音響モデルであるHMM(Hidden Markov Model;隠れマルコフモデル)を利用できる。HMMは、統計的な手法により音声信号からその音声信号を構成する音素を確率的に推定するためのモデルである。HMMには、時間的な状態の揺らぎを示す遷移確率と、各状態から入力された特徴量と一致する確率(出力確率)と、をパラメータとした標準パターンを用いる。

音素とは、話者により発話された音声を構成する成分の単位である。例えば、「キゾクセイド」という単語は、「k,i,z,o,k,u,s,e,i,d,o」という11個の音素から構成される。音素は、さらに、複数の状態に分割される。

状態とは、音素を構成する最小の時間単位である。各音素に定められた状態数が「3」である場合を例にとって説明する。例えば、音声「あ」の音素「a」は、図4に示すように、この音素の発声開始時を含む第1の状態「a1」と、中間状態である第2の状態「a2」と、発声終了時を含む第3の状態「a3」と、の3つの状態に分けられる。すなわち、1音素は3つの状態から構成される。全ての音素が3つの状態から構成されている場合、音響モデルで利用される全音素の数をmとすると、(m×3)個の状態が存在する。

音素の各状態の特徴量は、音素の状態ごとに音声信号から抽出した音声の特徴を表す数値である。この特徴量は、音声データを周波数軸上に変換して得られる周波数軸系特徴パラメータと、音声データのエネルギーの2乗和やその対数を計算することにより得られるパワー系特徴パラメータと、を組み合わせることによって得られる。

例えば周知のように、特徴量は、周波数軸系特徴パラメータ12成分(12次元)とパワー系特徴パラメータ1成分(1次元)、直前の時間窓の各成分との差分を取った周波数軸系特徴パラメータ12成分(12次元)とパワー系特徴パラメータ1成分(1次元)、及び、直前の時間窓の各成分との差分の差分を取った周波数軸系特徴パラメータ12成分(12次元)の、合計38成分を有する38次元ベクトル量として構成される。

図3に戻って、出力確率記憶部103は、検索インデックス生成部110が生成した図5に示すような代表確率置換処理前の検索インデックスを記憶する。また、後述する代表確率置換処理後の検索インデックスを記憶する。検索インデックスとは、検索対象の音声信号に複数のフレームを設定し、そのフレームごとの音声の特徴量と音響モデルの音素の各状態の特徴量とが一致する確率である出力確率を記憶したテーブルである。

音声信号取得部111は、音声信号記憶部101から検索対象とする音声信号を取得する。

フレーム設定部112は、音声信号の特徴量を取得する音声信号における区間の単位であるフレームを設定する。フレームとは、検索対象の音声信号とクエリ音声信号とを比較する時間窓である。本実施形態では、音素の状態ごとに検索対象の音声信号とクエリ音声信号とを比較して音声検出を行う。フレームの時間長には、例えば、40msを用いる。

検索対象の音声信号にフレームごとの区間を設定する方法について、図6を参照して説明する。図6(a)は、先頭から末尾までの時間長Tの検索対象の音声信号の波形図である。縦軸は音声信号の強度を示し、横軸は時間を示す。図6(b)は、図6(a)に示す音声信号において設定されるフレームを示す。フレーム設定部112は、図6(b)に示すように、フレーム長tの区間を1シフト長Sずつシフトして、検索対象の音声信号にフレーム番号f1からfNの区間を設定する。フレーム番号f1の区間は、音声信号の先頭から始まる時間長tの区間である。フレーム番号f2の区間は、音声信号の先頭から1シフト長Sだけシフトした位置から始まる時間長tの区間である。フレーム設定部112は、以下同様に、シフト長Sずつシフトしてフレーム番号fNまで設定する。

シフト長Sは、検索の精度を決める長さである。シフト長Sは、フレーム長tより短い値に設定される固定値である。例えば、フレーム長をt=40msとした場合は、シフト長をS=10msのように設定する。

特徴量取得部113は、フレーム区間ごとに検索対象の音声信号の特徴量を取得する。具体的には、特徴量取得部113は、検索対象の音声信号の特徴量をフレーム番号f1からfNのフレーム毎に取得する。

出力確率取得部114は、検索対象の音声信号の特徴量が音響モデルに含まれる音素の各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得し、音響モデルの音素の各状態と対応付けて記憶する。

具体的には、出力確率取得部114は、取得した特徴量と音響モデルの音素の各状態の特徴量とを比較することにより、フレーム番号f1からfNのフレームに含まれる音声信号の特徴量が音響モデルの音素の各状態の特徴量と一致する確率である出力確率をフレーム毎に取得し、音素の各状態と対応付けた検索インデックスとして出力確率記憶部103に記憶する。この出力確率を記憶したテーブルを検索インデックスという。図5に示す検索インデックスは、後述する代表確率置換処理前の検索インデックスである。

図5は、音素の種類がm種類であり、音素の状態数が3である検索インデックスの例である。図5の1列目は、シフト長Sずつシフトして作成したフレームのフレーム番号を示す。フレームごとの特徴量が音素の各状態の特徴量と一致する確率をf(x,y,z)で表す。x(x=1〜N)はフレーム番号を示し、y(y=1〜m)は音素番号を示し、z(z=1〜3)は状態番号を示す。f(1,1,1)は、フレーム番号f1のフレームに含まれる音声信号の特徴量が、音響モデルに含まれる音素1の状態1の特徴量と一致する確率を表す。フレーム番号fXのフレームに含まれる音声信号の特徴量が、音響モデルに含まれる音素番号yの状態zの特徴量と一致する確率をf(x,y,z)で表す。

図3に戻って、代表確率設定部120は、出力確率取得部114が取得した出力確率について、それぞれの音素を構成する状態の中で最も出力確率が高い状態の出力確率を、その音素の代表出力確率として設定する。例えば、代表確率設定部120は、図5のフレーム番号f1の音素1に含まれる状態1の出力確率f(1,1,1)、状態2の出力確率f(1,1,2)、状態3の出力確率f(1,1,3)を比較して、最も大きい出力確率を抽出する。例えば、代表確率設定部120は、状態2の出力確率f(1,1,2)が最も大きい場合、状態1の出力確率f(1,1,1)、状態2の出力確率f(1,1,2)、状態3の出力確率f(1,1,3)の値を、状態2の出力確率f(1,1,2)で置換する。つまり、音素1を代表する出力確率としてf(1,1,2)の値を設定する。

代表確率設定部120は、フレームf1の音素2から音素mについても、同様にして、最も出力確率が大きい状態の出力確率をその音素の代表出力確率として設定する置換処理を行う。代表確率設定部120は、全てのフレームについて同様の置換処理を行う。

圧縮インデックス生成部121は、検索対象とする音声信号の図5に示す検索インデックスの各音素の出力確率を代表出力確率に置換処理して、圧縮された図7に示す検索インデックスを生成する。つまり、1つの音素を構成する3つの状態の出力確率が同じ値に置換されているので、検索インデックスのデータサイズを1/「音素の状態の数」に圧縮することができる。圧縮インデックス生成部121は、生成した図7に示す置換処理後の圧縮された検索インデックスを出力確率記憶部103に記憶する。

置換処理前の図5に示す検索インデックスの出力確率を、状態1から状態3の出力確率で平均する処理の場合、例えば、状態2の出力確率が極めて大きいという特徴があった場合でも、状態1と状態3の出力確率が小さい場合には、平均化されることによってその音素の中に極めて大きい出力確率を有する状態があるという情報が喪失されてしまうことになる。

これに対して、代表確率設定部120による置換処理後の図7に示す検索インデックスは、図5に示す置換処理前の検索インデックスに含まれていた極めて大きい出力確率の値が残っているので、その音素の中に極めて大きい出力確率を有する状態があるという情報が喪失されることはない。

次に、音声検索部130の構成について説明する。音声検索部130は、図8に示すように、音響モデル記憶部102と、出力確率記憶部103と、時間長記憶部104と、クエリ出力確率記憶部105と、トライフォンモデル記憶部106と、検索文字列取得部131と、変換部132と、フレーム列作成部133と、クエリ出力確率取得部134と、区間指定部135と、第2出力確率取得部136と、置換部137と、尤度取得部138と、繰り返し部139と、特定部140と、を備える。音響モデル記憶部102、出力確率記憶部103、時間長記憶部104、クエリ出力確率記憶部105、トライフォンモデル記憶部106は、外部記憶装置3の記憶領域に構築されている。

音響モデル記憶部102は、検索インデックス生成時と同じモノフォンモデルの音響モデルを記憶する。出力確率記憶部103は、検索インデックス生成部110が生成した図7に示す置換処理後の検索インデックスを記憶する。時間長記憶部104は、大量の音声データから算出した平均継続時間長を音素を構成する状態ごとに記憶する。クエリ出力確率記憶部105は、音声検索部130が生成するクエリの音素列に含まれる音素が音響モデルに含まれる音素の各状態の特徴量と一致する確率(第2の確率)を記憶する。トライフォンモデル記憶部106は、トライフォンモデルの音響モデルを記憶する。

検索文字列取得部131は、検索文字列を取得する。検索文字列取得部131は、例えば入力装置4を介してユーザが入力した検索文字列を取得する。つまり、ユーザは、音声検索装置100に対して、検索語(クエリ)を文字列としてテキスト入力する。

変換部132は、音響モデル記憶部102に記憶されているモノフォンモデルの音素を、検索文字列取得部131が取得した検索文字列にしたがって並べて、検索文字列を音素列に変換する。すなわち、変換部132は、検索文字列に含まれる文字と同順で、各文字を発声したときの音素(モノフォン)を並べることにより、検索文字列をモノフォン音素列に変換する。

例えば、変換部132は、検索文字列として日本語「キゾクセイド」が入力された場合、「k,i,z,o,k,u,s,e,i,d,o」という11個のモノフォン音素から構成されるモノフォン音素列に変換する。ここで、各音素は、3つの状態で構成されている。したがって、変換部132は、検索文字列「キゾクセイド」を33個の状態で構成される状態列に変換する。

さらに、変換部132は、変換した状態列を構成する33個の状態のそれぞれの時間長を、時間長記憶部104から取得する。そして、変換部132は、それぞれの状態ごとに取得した時間長をそれぞれの状態の時間長として、クエリ音素列を作成する。

変換部132は、時間長記憶部104から取得した33個の状態の時間長を合計した時間長を、検索文字列「キゾクセイド」が発話される発話時間長Lとして導出する。この発話時間長Lは、後述する尤度取得において、尤度を計算するための尤度取得区間の時間長として使用する。

ところで、検索対象の音声信号は必ずしも平均的な速度で発話された音声信号に限定されず、様々な速度で発話された音声信号が検索対象となる。しかし、時間長記憶部104に記憶されている時間長は大量の音声データから計算した音素の各状態の平均時間長である。したがって、変換部132は、時間長記憶部104から取得した時間長を補正して使用することが望ましい。例えば、ユーザが検索対象の音声信号の発話速度に応じた補正係数を入力装置4から入力し、変換部132は、ユーザが入力した補正係数に基づいて、時間長記憶部104から取得した時間長を補正してモノフォンモデルの音素を並べることが望ましい。また、音声検索装置100が、音声信号に含まれる単位時間あたりの音素数をカウントすることにより、検索対象の音声信号の発話速度を測定し、音声検索装置100が補正係数を設定するようにしてもよい。

フレーム列作成部133は、変換部132が作成したクエリ音素列について、フレーム長ごとの区間に分割したフレーム列を作成する。クエリ音素列に設定するフレーム列について図9を参照して説明する。図9(a)は、取得した時間長の長さに対応して音素の状態を並べたクエリ音素列である。つまり、クエリの音素列「k,i,z,o,k,u,s,e,i,d,o」の最初の音素「k」の状態1の音響モデルを、時間長記憶部104に記憶されている音素「k」の状態1の時間長の長さで並べる。次に、音素「k」の状態2の音響モデルを、時間長記憶部104に記憶されている音素「k」の状態2の時間長の長さで並べる。以下同様にして、音素「o」の状態3の音響モデルを、時間長記憶部104に記憶されている音素「o」の状態3の時間長の長さで並べる。このように並べられたクエリ音素列の合計時間長Lが発話時間長Lである。

図9(b)は、図9(a)に示すクエリ音素列において設定されるフレームを示す。フレーム列作成部133は、図9(b)に示すように、フレーム長tの区間を1シフト長Sずつシフトして、クエリ音素列にフレーム番号g1からgkの区間を設定する。フレーム長tは、検索インデックスを生成した際に用いたフレーム長t(例えば、40ms)と同じにする。シフト長Sも検索インデックス生成時と同じシフト長S(例えば、10ms)とする。フレーム番号g1の区間は、クエリ音素列の先頭から始まる時間長tの区間である。フレーム番号g2の区間は、クエリ音素列の先頭から1シフト長Sだけシフトした位置から始まる時間長tの区間である。フレーム列作成部133は、以下同様に、シフト長Sずつシフトしてフレーム番号gkまでフレームを設定する。

図8に戻って、クエリ出力確率取得部134は、クエリ音素列の各状態が音響モデルに含まれる音素の各状態の特徴量と一致する確率(第2の確率)をフレーム(g1〜gk)ごとに取得し、音素の各状態と対応付けてクエリ出力確率記憶部105に記憶する。図10は、音素の種類がm種類であり、音素の状態数が3の場合の例である。音素の種類数「m」と状態数「3」は、検索インデックスの作成時と同じ数とする。図10の1列目は、フレーム列作成部133が作成したフレーム列を構成するフレームのフレーム番号を示す。そして、フレーム列を構成するフレーム(g1〜gk)の特徴量が、音素の各状態の特徴量と一致する確率をg(a,y,z)で表す。a(a=1〜k)はクエリ音素列のフレーム番号を示し、y(y=1〜m)は音素番号を示し、z(z=1〜3)は状態番号を示す。

クエリ音素列のフレーム数kは、クエリ音素列の発話時間長Lとシフト長Sを用いて、k=L/Sで求めた値の小数点以下を切り捨てた自然数である。

図8に戻って、区間指定部135は、音声信号からクエリ音素列の発話時間長Lの区間を尤度取得区間として複数指定する。尤度取得区間は、その区間からクエリ音素列が発せられている尤度を取得する区間である。尤度とは、検索対象の音声とクエリ音素列との類似の度合いを示す指標である。図6(c)を参照して説明する。区間指定部135は、まず、検索対象の音声信号の先頭フレームf1から始まるクエリ音素列の発話時間長Lの区間を第1尤度取得区間として指定する。本実施形態では、クエリ音素列を構成するフレームのフレーム数をk個としているので、第1フレームf1から第kフレームfkの区間を第1尤度取得区間として指定する。

次に、区間指定部135は、音声信号の第2フレームf2から第(k+1)フレームfk+1の区間を第2尤度取得区間として指定する。以下同様に、第P尤度取得区間まで指定する。なお、検索対象の音声信号の中で指定可能な尤度取得区間の数Pは、音声信号の時間長Tと尤度取得区間の時間長(クエリ音素列の発話時間長)Lとシフト長Sとを用いて、P=(T−L+S)/Sで求めた値の小数点以下を切り捨てた自然数である。

図8に戻って、第2出力確率取得部136は、クエリ音素列を構成する各フレームが検索対象の音声信号を構成する各フレームと一致する確率(第3の確率)を取得する。具体的には、第2出力確率取得部136は、クエリ音素列の各フレームが音素の各状態である確率(第2の確率)と、検索対象の音声信号の検索インデックスに記憶した確率(第1の確率)とを掛け合わせることにより、クエリ音素列の各フレーム(g1〜gk)が検索対象の音声信号の各フレーム(f1〜fN)と一致する確率(第3の確率)を求める。

図7と図10を参照して具体的に説明する。区間指定部135が、音声信号の先頭フレームf1から始まる第1尤度取得区間を指定すると、第2出力確率取得部136は、クエリ音素列の先頭フレームg1と音声信号の先頭フレームf1について音素の各状態の出力確率を掛け合わせることにより、クエリ音素列の第1フレームg1が検索対象の音声信号の第1フレームf1と一致する確率を取得する。

具体的には、第2出力確率取得部136は、クエリ音素列の第1フレームg1の状態1が音声信号の第1フレームf1の音素1である確率P(1,1,1)を式(1)から求める。クエリ音素列の第1フレームg1の状態1が音声信号の第1フレームf1の音素2である確率P(1,2,1)を式(2)から求める。以下同様にして、第2出力確率取得部136は、クエリ音素列の第1フレームg1の状態3が音声信号の第1フレームf1の音素mである確率P(1,m,3)を式(3)から求める。 P(1,1,1)=f(1,1)×g(1,1,1) ・・・式(1) P(1,2,1)=f(1,2)×g(1,2,1) ・・・式(2) P(1,m,3)=f(1,m)×g(1,m,3) ・・・式(3)

このように、第2出力確率取得部136は、クエリ音素列の第1フレームg1について(m×3)個の確率(第3の確率)を取得する。そして、(m×3)個の確率を掛け合わせることにより、クエリ音素列の第1フレームg1が検索対象の音声信号の第1フレームf1と一致する確率である出力確率P(1,1)を式(4)により取得する。

次に、第2出力確率取得部136は、クエリ音素列の第2フレームg2と音声信号の第2フレームf2に対応する音素の各状態の出力確率を掛け合わせることにより、クエリ音素列の第2フレームg2が検索対象の音声信号の第2フレームf2と一致する確率を取得する。具体的には、第2出力確率取得部136は、クエリ音素列の第2フレームg2について(m×3)個の出力確率を取得する。そして、(m×3)個の出力確率を掛け合わせることにより、クエリ音素列の第2フレームg2が検索対象の音声信号の第2フレームf2と一致する確率である出力確率P(1,2)を式(5)により取得する。

以下同様にして、第2出力確率取得部136は、クエリ音素列の第kフレームgkまでの出力確率P(1,k)を式(6)により取得する。

クエリ音素列が検索対象の音声信号の先頭フレームf1から始まる場合について出力確率の取得が終わると、区間指定部135は、音声信号の第2フレームf2から始まる第2尤度取得区間を指定する。第2出力確率取得部136は、クエリ音素列の先頭フレームg1を検索対象の音声信号の第2フレームf2に合わせて同様の計算を行う。

以下同様にして、第2出力確率取得部136は、第P尤度取得区間までの出力確率を求める。第2出力確率取得部136は、クエリ音素列の先頭フレームg1を検索対象の音声信号の第sフレームfsに合わせた場合(第s尤度取得区間)のクエリ音素列の第jフレームgjの出力確率を式(8)にて求める。

図8に戻って、置換部137は、第2出力確率取得部136が取得した出力確率のそれぞれを、そのフレームと隣接する前後数フレームの中で最大の出力確率に置換する。この置換処理は、Lower−Bound化処理と呼ばれる。

具体的に図11を参照して、Lower−Bound化処理について説明する。図11において、実線はフレーム毎に取得された出力確率を示す。縦軸は出力確率の高さを下になるほど高くなるように示し、横軸は時間を示す。置換部137は、各フレームの出力確率を、そのフレームと、そのフレームの前のN1個のフレームと、そのフレームの後のN2個のフレームの中で最大の出力確率に置き換える。N1とN2は0を含む自然数であるが、N1とN2のいずれかは0ではないものとする。

クエリ音素列の先頭フレームg1を音声信号の先頭フレームf1に合わせた場合で、N1=2、N2=2として説明する。置換部137は、クエリ音素列の第1フレームg1の出力確率P(1,1)を、その前にフレームが無いので、自身の第1フレームg1のP(1,1)とその後の第2フレームg2のP(1,2)と第3フレームg3のP(1,3)の中で最大の出力確率と置換する。置換部137は、クエリ音素列の第2フレームg2の出力確率P(1,2)を、その前の第1フレームg1のP(1,1)と自身の第2フレームg2のP(1,2)とその後の第3フレームg3のP(1,3)と第4フレームg4のP(1,4)の中で最大の出力確率と置換する。置換部137は、クエリ音素列の第3フレームg3の出力確率P(1,3)を、その前の第1フレームg1のP(1,1)と第2フレームg2のP(1,2)と、自身の第3フレームg3のP(1,3)と、その後の第4フレームg4のP(1,4)と第5フレームg5のP(1,5)の中で最大の出力確率と置換する。このように、置換部137は、第kフレームまで置換処理を行う。置換の結果、図11に実線で示した出力確率は、破線で示したLower−Bound化処理後の出力確率のように、時間方向において値の変化が小さくなった出力確率に変換される。

図8に戻って、尤度取得部138は、置換部137による置換処理後の出力確率に基づいて、区間指定部135が指定した尤度取得区間がクエリ音素列が発せられている区間であることの尤もらしさを示す尤度を取得する。具体的には、尤度取得部138は、置換処理後の出力確率の対数をとって得られる値を、尤度取得区間の先頭から末尾までの全フレーム、この例ではkフレームにわたって加算することにより、この尤度取得区間の尤度を取得する。すなわち、出力確率が高いフレームを多く含む尤度取得区間ほど、尤度取得部138が取得する尤度は高くなる。

繰り返し部139は、区間指定部135が指定する尤度取得区間の音声信号における指定区間を変えて、区間指定部135、第2出力確率取得部136、置換部137、及び尤度取得部138の処理を繰り返すように各部を制御する。1回目の処理では、検索対象の音声信号の第1フレームf1から始まる第1尤度取得区間の尤度を求めたので、2回目は、検索対象の音声信号の第2フレームf2から始まる第2尤度取得区間の尤度を求める。以後1フレームずつシフトして、第P尤度取得区間までの尤度を求める。

特定部140は、尤度取得部138が取得したP個の尤度に基づいて、検索対象の音声信号の中からクエリ音素列が発せられていると推定される推定区間を特定する。そのために、特定部140は、尤度取得部138が取得した尤度に基づいて、区間指定部135が指定した尤度取得区間の中から、検索文字列に対応する音声が発せられていることが推定される推定区間の候補を尤度が高い順にx個の区間を予備的に選択し、残りの尤度取得区間を候補から除外する。

このとき、区間指定部135が指定した尤度取得区間は多くの重なりを有するため、尤度が大きい区間は時系列的に連続して存在することが多い。そのため、特定部140が、尤度取得区間の中で単純に尤度が大きい区間から順に推定区間の候補を選択すると、選択される区間が検索対象の音声信号における一部に集中する可能性が大きくなる。これを避けるために、特定部140は、所定の選択時間長を設け、選択時間長ごとに、この所定の選択時間長の区間の中から開始する尤度取得区間の中で尤度が最大の尤度取得区間を1つずつ選択する。この所定の選択時間長は、例えば尤度取得区間の発話時間長Lの1/m(例えばm=2)に相当する時間長のように、尤度取得区間の発話時間長Lよりも短い時間に設定する。例えば、検索語「カテゴリ」の発話時間長が2秒以上(L≧2秒)であると仮定した場合、m=2とし、選択時間長を1秒に設定する。選択時間長(L/m)毎に1個ずつ尤度取得区間が候補として選択され、残りは候補から除外される。これにより、特定部140は、推定区間の候補を、検索対象の音声信号全体にわたって満遍なく選択できる。特定部140は、この選択時間長(L/m)毎に行う尤度取得区間の選択の中から、尤度が高い尤度取得区間をx個選択する。

次に、特定部140は、選択したx個の区間に対して、トライフォンモデル及び動的計画法(DP(Dynamic Programming)マッチング)に基づくより精度の高い尤度取得処理を実行する。DPマッチングは、解析区間の尤度が最大になるように状態遷移を選択する手法である。トライフォンモデルでは、前後の音素との状態遷移を考慮する必要があるので、DPマッチングにより、尤度取得区間の尤度が最大となるように、前後の音素の状態遷移を決める。

特定部140は、音声信号の特徴量とトライフォン音素列に含まれるトライフォンモデルとの対応を、DPマッチングにより探索する。そして、特定部140は、トライフォンモデルに対する尤度に基づいて、特定部140が予備選択したx個の区間の中から、検索対象の音声信号の中から検索文字列に対応する音声が発せられていることが推定される推定区間を特定する。例えば、特定部140は、トライフォンモデルに基づく尤度が大きい順に、所定の数の区間を推定区間として特定する。もしくは、尤度が所定の値以上の区間を推定区間として特定する。特定部140が特定した区間の位置情報は、最終的な検索結果として、出力装置5が備える画面を介して外部に表示される。

以上のような物理的構成及び機能的構成を有する音声検索装置100が実行する検索インデックス生成処置について、図12に示すフローチャートを参照しながら説明する。

検索対象の音声データは予め音声信号記憶部101に記憶されており、音響モデルは音響モデル記憶部102に記憶されているものとする。CPU6が、ROM1から検索インデックス生成プログラムを読み出して、検索インデックス生成プログラムを実行することにより、図12に示すフローチャートは開始する。

検索インデックス生成プログラムが実行されると、音声信号取得部111は、音声信号記憶部101から検索対象とする音声信号を読み出す(ステップS11)。次に、フレーム設定部112は、図6を用いて説明したように、音声信号をフレーム長ごとに区分したフレームを設定する(ステップS12)。次に、特徴量取得部113は、検索対象の音声信号の特徴量をフレーム番号f1からfNのフレーム毎に取得する(ステップS13)。

次に、出力確率取得部114は、検索対象の音声信号に設定したフレーム番号f1からfNの区間が、音響モデルの音素の各状態と一致する確率である出力確率を取得し、図5に示すような置換処理前の検索インデックスを生成し、出力確率記憶部103に記憶する(ステップS14)。

次に、代表確率設定部120は、出力確率取得部114が取得した図5に示す置換処理前の検索インデックスについて、音素を構成する状態の中で最も出力確率が高い状態の出力確率を、その音素の代表出力確率として設定する。そして、代表確率設定部120は、その音素の出力確率を、抽出した代表出力確率に置換することにより、図7に示すような代表出力確率に置換処理後の検索インデックスを作成する(ステップS15)。

次に、音声検索装置100が実行する音声検索処理について、図13と図14に示すフローチャートを参照しながら説明する。

ユーザは、予め、モノフォン音響モデルを音響モデル記憶部102に、音素の状態ごとの平均時間長を時間長記憶部104に、トライフォン音響モデルをトライフォンモデル記憶部106に記憶しておく。また、検索対象の音声信号から作成した図7に示す代表出力確率に置換処理後の検索インデックス(第1の確率)を予め作成し、出力確率記憶部103に記憶しておく。

CPU6が、ROM1から音声検索プログラムを読み出して、音声検索プログラムを実行し、ユーザが検索語(クエリ)をテキストデータとして入力装置4から入力することにより、図13に示すフローチャートは開始する。

最初に、図13を参照しながら、音声検索装置100が、検索語(クエリ)の出力確率を求める処理について説明する。

ユーザが、検索語(クエリ)を入力装置4から入力すると、検索文字列取得部131は、クエリを取得する。そして、変換部132は、テキストデータとして取得したクエリを、モノフォン音素列に変換する(ステップS31)。例えば、変換部132は、検索文字列として日本語「キゾクセイド」が入力された場合、「k,i,z,o,k,u,s,e,i,d,o」という11個のモノフォン音素から構成されるモノフォン音素列に変換する。ここで、各音素は、3つの状態で構成されているので、変換部132は、検索文字列「キゾクセイド」を33個の状態から構成される状態列に変換することになる。

次に、変換部132は、音響モデル記憶部102に記憶されているモノフォンモデルの音素を、検索文字列取得部131が取得した検索文字列にしたがって並べる(ステップS32)。

さらに、変換部132は、変換した33個の状態のそれぞれの時間長を、時間長記憶部104から取得する(ステップS33)。そして、変換部132は、33個の状態のモノフォンモデルを取得した時間長の長さで並べたクエリ音素列を作成する。

このとき、ユーザが検索対象の音声信号の話速に適合するように、時間長を補正する補正係数を入力した場合、変換部132は、時間長記憶部104から取得した時間長を補正して、クエリ音素列を作成する。

次に、変換部132は、時間長記憶部104から取得した33個の状態の時間長を合計した時間長を、検索文字列「キゾクセイド」が発話される発話時間長L(尤度取得区間の長さ)として導出する(ステップS34)。

次に、フレーム列作成部133は、図9に示すように、変換部132が作成したクエリ音素列にフレームg1からgkを設定する(ステップS35)。

次に、クエリ出力確率取得部134は、クエリ音素列の各状態が音響モデルの音素の各状態と一致するクエリ音素列の出力確率(第2の確率)を取得し、図10に示すように、取得した出力確率を音素の各状態と対応付けてクエリ出力確率記憶部105に記憶する(ステップS36)。以上の処理により、クエリ音素列の出力確率の生成処理は完了する。

次に、図14を参照しながら、クエリの検索処理について説明する。クエリ音素列の出力確率(第2の確率)の取得が終わると、区間指定部135は、クエリ音素列が検索対象の音声信号と一致する確率(第3の確率)を取得する尤度取得区間を複数設定し、尤度取得部138は、それぞれの尤度取得区間からクエリ音素列が発せられている尤度を取得する。

そのために、区間指定部135は、まず、検索インデックスの先頭フレームf1から始まる第1尤度取得区間を指定する(ステップS41)。そして、第2出力確率取得部136は、式(4)によりクエリ音声信号の第1フレームg1が検索対象の音声信号の第1フレームf1と一致する確率(第3の確率)を求める。同様にして、第2出力確率取得部136は、第1尤度取得区間に含まれるクエリ音素列の第kフレームgkまでの出力確率(第3の確率)を式(6)により求める(ステップS42)。

第2出力確率取得部136が出力確率を取得すると、置換部137は、フレーム毎に取得した出力確率を、そのフレームとそのフレーム前のN1個のフレームとそのフレーム後のN2個のフレームの、合計(1+N1+N2)個のフレームの中で最大の出力確率に置き換えることにより、Lower−Bound化処理を実行する(ステップS43)。

尤度取得部138は、Lower−Bound化処理後の出力確率をフレームごとに対数をとって加算することにより、区間指定部135が指定した第1尤度取得区間の尤度を取得する(ステップS44)。尤度取得部138が尤度を取得すると、繰り返し部139は、検索対象の音声信号における全区間の尤度取得が終了したか否かを判別する(ステップS45)。

全区間の尤度取得が終了していない場合(ステップS45:No)、繰り返し部139は、検索インデックスの位置を1フレーム進めた次の尤度取得区間を指定する(ステップS46)。そして、区間指定部135が新たに指定した尤度取得区間に対して上述したステップS42〜S45の処理を繰り返す。

区間指定部135が第s尤度取得区間を指定すると、第2出力確率取得部136は、第s尤度取得区間に含まれるk個のフレームのそれぞれについて、式(8)により出力確率を求める(ステップS42)。そして、求めたフレーム毎の出力確率をLower−Bound化処理を実行する(ステップS43)。尤度取得部138は、Lower−Bound化処理後の出力確率をフレームごとに対数をとって加算することにより、区間指定部135が指定した尤度取得区間の尤度を取得する(ステップS44)。

このように、繰り返し部139は、第P尤度取得区間までの尤度を順次取得するように、区間指定部135、第2出力確率取得部136、置換部137、尤度取得部138を制御する。最終的に、全区間の尤度取得が終了すると(ステップS45:YES)、音声検索装置100は、取得した尤度に基づいてクエリ音声信号に対応する区間を特定する処理に移行する。

特定部140は、区間指定部135が指定したP個の尤度取得区間の中から、所定の選択時間長(例えば、1秒)毎に最も尤度が高い尤度取得区間を選択する(ステップS47)。すなわち、特定部140は、最終的な検索結果として特定する区間の候補を、検索対象の音声信号の全体から満遍なく候補が残るように、予備選択する。

次に、特定部140は、トライフォン音響モデルを用いた詳細な音声検索処理を行う(ステップS48)。すなわち、特定部140が予備選択した尤度取得区間について、トライフォンモデル及びDPマッチングに基づいて、第2出力確率取得部136及び尤度取得部138に比べて精度の高い第2の尤度取得処理を実行する。

そして、特定部140は、第2の尤度取得処理で取得した尤度に基づいて、検索文字列に対応する区間を特定する(ステップS49)。例えば、特定部140は、第2の尤度取得処理で取得した第2の尤度が大きい順にソートし、上位の所定の数の区間を、検索文字列に対応する音声が発せられていることが推定される区間として特定する。そして、特定部140がクエリに対応する区間を特定すると、特定部140は、出力装置5を介して特定結果を出力する。以上で、音声検索処理の説明を終了する。

以上に説明したように、実施形態1に係る音声検索装置100は、解析対象の音声信号をフレーム区間に分割し、分割したフレーム区間ごとに音声の特徴量を取得する。そして、フレーム区間ごとに音響モデルの特徴量と一致する出力確率を求め、代表出力確率に置換処理前の検索インデックスを生成する。音声検索装置100は、この置換処理前の検索インデックスにおいて、音素を構成する複数の状態の中で最も高い出力確率を、その音素の代表出力確率とする置換処理を行う。この置換処理により、置換処理後の検索インデックスは、置換処理前の検索インデックスに比べると、「1/音素の状態の数」にデータサイズを小さくすることができる。この置換処理後の検索インデックスには、置換処理前の検索インデックスの各音素に存在していた、最も高い出力確率がそのままの値で残っている。つまり、置換処理後の検索インデックスは、音声の瞬時的な特徴を喪失していない。この置換処理後の検索インデックスを用いて音声検索を行うことにより、検索精度の低下を低減することができる。

(実施形態2) 上記の説明では、音声検索装置100が、検索語(クエリ)をテキストデータとして入力する場合について説明した。しかし、クエリの入力方法はこれに限定する必要は無い。例えば、クエリを音声データとして入力することもできる。実施形態2に係る音声検索装置100は、図2に示すように、検索インデックス生成部110と音声検索部130とから構成される。検索インデックス生成部110の構成は、実施形態1と同じである。音声検索部130の構成について、図15を参照して説明する。

実施形態2に係る音声検索部130は、図15に示すように、音響モデル記憶部102と、出力確率記憶部103と、クエリ出力確率記憶部105と、トライフォンモデル記憶部106と、クエリ音声信号取得部151と、フレーム列作成部152と、クエリ特徴量取得部153と、クエリ出力確率取得部134と、区間指定部135と、第2出力確率取得部136と、置換部137と、尤度取得部138と、繰り返し部139と、特定部140と、を備える。

クエリ音声信号取得部151は、入力装置4を介してユーザが入力したクエリ音声信号を音声データとして取得する。

フレーム列作成部152は、取得したクエリ音声信号について、フレーム長ごとの区間に分割したフレーム列を作成する。クエリ音声信号のフレーム列について図16を参照して説明する。図16(a)は、先頭から末尾までの時間長Lのクエリ音声信号の波形図である。時間長Lはクエリ音声信号が発話される時間長(発話時間長)である。縦軸はクエリ音声信号の強度を示し、横軸は時間を示す。図16(b)は、図16(a)に示すクエリ音声信号において設定されるフレームを示す。フレーム列作成部152は、図16(b)に示すように、フレーム長tの区間を1シフト長Sずつシフトして、クエリ音声信号にフレーム番号g1からgkの区間を設定する。フレームの設定方法は、実施形態1の説明と同じである。

図15に戻って、クエリ特徴量取得部153は、フレーム列作成部152が作成したフレーム列を構成するフレーム(g1〜gk)ごとにクエリ音声信号の特徴量を取得する。

クエリ出力確率取得部134は、クエリ特徴量取得部153が取得した特徴量に基づいて、この特徴量が音響モデルに含まれる音素の各状態の特徴量と一致する確率(第2の確率)をフレーム(g1〜gk)ごとに取得し、音素の各状態と対応付けてクエリ出力確率記憶部105に記憶する。このクエリ音声信号について作成した出力確率のテーブルは、図10に示すような出力確率のテーブルとなる。他の構成及び代表確率設定処理と音声検索処理については、実施形態1の説明と同じである。

以上説明したように、実施形態2に係る音声検索装置100は、クエリを音声信号として入力した場合でも、音声検索をすることができる。

(実施形態3) 実施形態1と2では、検索対象の音声信号の検索インデックスのデータサイズを縮小する場合について説明した。実施形態3では、クエリの出力確率についてもデータサイズを縮小し、検索時の処理負荷を低減する場合について説明する。

実施形態3に係る音声検索装置100は、図2に示すように、検索インデックス生成部110と音声検索部130とから構成される。検索インデックス生成部110の構成は、実施形態1と同じである。音声検索部130の構成は、図17に示すように、クエリの出力確率についても代表確率を設定する代表確率設定部120を設ける。他の構成については、実施形態1の構成と同じである。

音声検索部130内に備えられた代表確率設定部120は、クエリの出力確率についても、音素を構成する状態の中で最も高い出力確率をその音素の代表確率で置換する処理をする。この置換処理により、図10に示すクエリの出力確率は、図18に示すような出力確率と成り、データサイズが縮小される。

このように検索対象の音声信号の検索インデックスに加えて、クエリの出力確率についても縮小処理を行うことにより、音声検索時の出力確率の計算式が、実施形態1で説明した式(8)から下記に示す式(9)とすることができる。つまり状態数zに関する計算処理を削減でき、状態数が3であれば計算量を1/3に、状態数が5であれば計算量を1/5に削減できる。

以上に説明したように、実施形態3に係る音声検索装置100は、検索対象の検索インデックスに加えて、クエリの出力確率についても圧縮処理を行うので、データサイズを小さくすることができる。また、音声検索時の計算処理を1/「音素の状態の数」に軽減することができる。この置換処理後のクエリの出力確率には、置換処理前のその音素ごとの大きな出力確率の値が残っているので、その音素の中に極めて大きい出力確率を有する状態があるという情報が喪失されることはない。つまり、置換処理後の検索インデックスは、音声の瞬時的な特徴を喪失していない。したがって、この置換処理後のクエリの出力確率を用いて音声検索を行うことにより、検索精度の低下を低減しつつ、データサイズを縮小し、計算処理を軽くすることができる。

なお、実施形態2の音声検索部130の構成に、代表確率設定部120を設けるようにしてもよい。

なお、上記の説明では、音声検索装置100が、検索インデックス生成部110を備える場合について説明したが、検索インデックス生成部110と音声検索部130とが別々の装置に実装されていてもよい。

また、上記の説明では、特定部140が、トライフォンモデルを用いた精度の高い検索を行う説明をした。トライフォンモデルを用いた検索を行うことにより検索精度は向上するが、処理時間が長くなる。したがって、トライフォンモデルを用いた検索を行うか否かは任意である。

また、本発明に係る機能を実現するための構成を予め備えた音声検索装置として提供できることはもとより、プログラムの適用により、既存のパーソナルコンピュータや情報端末機器等を、本発明に係る音声検索装置として機能させることもできる。すなわち、上記実施形態で例示した音声検索装置100による各機能構成を実現させるためのプログラムを、既存のパーソナルコンピュータや情報端末機器等を制御するCPU等が実行できるように適用することで、本発明に係る音声検索装置100として機能させることができる。また、本発明に係る音声検索方法は、音声検索装置を用いて実施できる。

また、このようなプログラムの適用方法は任意である。プログラムを、例えば、コンピュータが読取可能な記録媒体(CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical disc)等)に格納して適用できる他、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより適用することもできる。

以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲とが含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。

(付記1) 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備える検索インデックス生成装置。

(付記2) 検索対象の音声信号を取得する取得工程と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定工程と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得工程と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得工程と、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定工程と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成工程と、 を含む検索インデックス生成方法。

(付記3) コンピュータを、 検索対象の音声信号を取得する取得手段、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を対応付けた検索インデックスを生成する検索インデックス生成手段、 として機能させるためのプログラム。

(付記4) 検索インデックス生成部と、音声検索部と、を備える音声検索装置であって、 前記検索インデックス生成部は、 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備え、 前記音声検索部は、 前記第1の確率を記憶する出力確率記憶手段と、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記出力確率記憶手段が記憶する前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定手段と、 を備えることを特徴とする音声検索装置。

(付記5) 前記検索対象の音声信号と前記クエリ音声信号とを比較する区間であるフレーム毎に、前記クエリ音声信号の特徴量を取得するクエリ特徴量取得手段と、 前記クエリ特徴量取得手段が取得したクエリ音声信号の特徴量に基づき、前記第2の確率を、音響モデルの音素の各状態と対応付けてフレーム毎に取得するクエリ出力確率取得手段と、 をさらに備えることを特徴とする付記4に記載の音声検索装置。

(付記6) 前記検索対象の音声信号におけるクエリ音声信号の発話時間長を有する区間である尤度取得区間を複数指定する区間指定手段と、 前記区間指定手段が指定した尤度取得区間が前記クエリ音声信号が発せられている区間であることの尤もらしさを示す尤度を、前記第1の確率と前記第2の確率とに基づいて取得する尤度取得手段と、 をさらに備え、 前記区間指定手段は、前記検索対象の音声信号における前記尤度取得区間の先頭位置を変えて複数の尤度取得区間を指定し、 前記尤度取得手段は、前記複数の尤度取得区間のそれぞれについて尤度を取得し、 前記特定手段は、前記区間指定手段が指定した尤度取得区間のそれぞれについて前記尤度取得手段が取得した尤度に基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する、 ことを特徴とする付記4または5に記載の音声検索装置。

(付記7) 前記複数の尤度取得区間のそれぞれについて、前記第1の確率と前記第2の確率とを前記尤度取得区間に含まれるフレーム毎に掛け合わせた第3の確率を取得する第2出力確率取得手段をさらに設け、 前記尤度取得手段は、前記第2出力確率取得手段がフレーム毎に取得した第3の確率の対数をとった値を加算して前記尤度取得区間の尤度を取得する、 ことを特徴とする付記6に記載の音声検索装置。

(付記8) 前記クエリ出力確率取得手段が取得した第2の確率について、音素を構成する状態の中で最も出力確率が高い状態の出力確率を、その音素の代表出力確率として抽出し、抽出した出力確率をその音素の代表出力確率として設定する第2の代表確率設定手段をさらに設けたことを特徴とする付記5に記載の音声検索装置。

(付記9) 検索対象の音声信号を取得する取得工程と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定工程と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得工程と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得工程と、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定工程と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成工程と、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定工程と、 を含む音声検索方法。

(付記10) コンピュータを、 検索対象の音声信号を取得する取得手段、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段、 前記出力確率取得工程で取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段、 クエリ音声信号に含まれるフレーム毎に取得され、前記クエリ音声信号の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記第1の確率とに基づいて、前記検索対象の音声信号の中から前記クエリ音声信号が発せられていると推定される推定区間を特定する特定手段、 として機能させるためのプログラム。

(付記11) 検索インデックス生成部と、音声検索部と、を備える音声検索装置であって、 前記検索インデックス生成部は、 検索対象の音声信号を取得する取得手段と、 取得した音声信号の特徴量を解析する単位であるフレーム区間を設定する区間設定手段と、 前記フレーム区間ごとに前記検索対象の音声信号の特徴量を取得する特徴量取得手段と、 前記検索対象の音声信号の特徴量が音響モデルの音素を構成する各状態の特徴量と一致する確率である出力確率を前記フレーム区間ごとに取得する出力確率取得手段と、 前記出力確率取得手段が取得したそれぞれの音素を構成する各状態の出力確率の中で最も高い出力確率を、その音素の代表出力確率として設定する代表確率設定手段と、 前記検索対象とする音声信号のフレームごとに、前記それぞれの音素に前記代表出力確率を第1の確率として対応付けた検索インデックスを生成する検索インデックス生成手段と、 を備え、 前記音声検索部は、 前記第1の確率を記憶する出力確率記憶手段と、 検索文字列を取得する検索文字列取得手段と、 前記検索文字列取得手段が取得した検索文字列を音素列に変換し、時間長記憶部から取得した音素の時間長の長さで音響モデルを並べたクエリ音素列を作成する変換手段と、 全クエリ音素列に含まれるフレーム毎に取得され、前記クエリ音素列の特徴量が前記音響モデルに含まれる音素の各状態の特徴量と一致する確率であって、前記音響モデルの音素の各状態と対応付けられた第2の確率と、前記出力確率記憶手段が記憶する前記第1の確率とに基づいて、前記検索対象の音声信号の中からクエリ音声信号が発せられていると推定される推定区間を特定する特定手段と、 を備えることを特徴とする音声検索装置。

1…ROM、2…RAM、3…外部記憶装置、4…入力装置、5…出力装置、6…CPU、7…バス、100…音声検索装置、101…音声信号記憶部、102…音響モデル記憶部、103…出力確率記憶部、104…時間長記憶部、105…クエリ出力確率記憶部、106…トライフォンモデル記憶部、110…検索インデックス生成部、111…音声信号取得部、112…フレーム設定部、113…特徴量取得部、114…出力確率取得部、120…代表確率設定部、121…圧縮インデックス生成部、130…音声検索部、131…検索文字列取得部、132…変換部、133…フレーム列作成部、134…クエリ出力確率取得部、135…区間指定部、136…第2出力確率取得部、137…置換部、138…尤度取得部、139…繰り返し部、140…特定部、151…クエリ音声信号取得部、152…フレーム列作成部、153…クエリ特徴量取得部

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈