JP4098015B2 - Speaker identification method and system, and program - Google Patents

Speaker identification method and system, and program Download PDF

Info

Publication number
JP4098015B2
JP4098015B2 JP2002209662A JP2002209662A JP4098015B2 JP 4098015 B2 JP4098015 B2 JP 4098015B2 JP 2002209662 A JP2002209662 A JP 2002209662A JP 2002209662 A JP2002209662 A JP 2002209662A JP 4098015 B2 JP4098015 B2 JP 4098015B2
Authority
JP
Japan
Prior art keywords
speaker
threshold
likelihood
speakers
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002209662A
Other languages
Japanese (ja)
Other versions
JP2004053821A (en
Inventor
克彦 白井
伊徳木草 達瓦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Waseda University
Original Assignee
Waseda University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Waseda University filed Critical Waseda University
Priority to JP2002209662A priority Critical patent/JP4098015B2/en
Publication of JP2004053821A publication Critical patent/JP2004053821A/en
Application granted granted Critical
Publication of JP4098015B2 publication Critical patent/JP4098015B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別方法およびそのシステム、並びにプログラムに係り、例えば、複数の話者による連続音声(例えば放送局の長時間のデータ等)の中から特定の話者(例えばアナウンサー等)の音声を検索したり、あるいは連続音声を各話者の音声に分類する場合、空港や港等で出入国管理を行う場合、警察や自衛隊等で犯罪者や要注意人物等の管理(登録、検索、捜査等)を行う場合、役所で住民管理を行う場合、商店等で顧客管理を行う場合、会社で社員管理(出社や退社の把握等)を行う場合、インターネットを利用した情報資源へのアクセスに対するセキュリティ管理を行う場合、言語や方言の自動分類を行う場合、ロボット通信(ロボットによる対話相手の把握等)に応用する場合、おもちゃによる対話相手の把握および応答の選択に応用する場合、音声により各種の警備、防犯、監督を行う場合などに利用できる。
【0002】
【背景技術】
一般に、話者認識には、入力音声が予め登録されている音声の中の誰の音声であるかを判定する話者識別ASI(Automatic Speaker Identification)と、入力音声が本人の音声であるか否かを判定する話者照合ASV(Automatic Speaker Verification)とがある。
【0003】
話者照合ASVの場合には、単にある人の身分だけを判定するという目的で、予め登録されている本人のサンプルデータと被識別者の入力データとのマッチングをとり、システムは単に「Yes」あるいは「No」の答えを出力するだけである。従って、これまでに数多くの研究や応用システムが報告されている。
【0004】
一方、話者識別ASIの場合には、システムによる識別対象となる発話者が、予め登録されたN人の話者の中の誰であるかを、N回の比較処理を行いながら判断し、さらに識別対象となる発話者が、予め登録されたN人の話者以外の者であれば、最終的には棄却の判断を行わなければならないので、話者照合ASVの場合に比べ、システム処理に煩雑性・困難性を伴う。従って、これまでの研究では、効率的に発話者を推定できるような特徴パラメータは発見されておらず、研究報告は、あまりにも基礎理論的な研究に集中しているといえる。
【0005】
【発明が解決しようとする課題】
ところで、実時間応答性が良く、かつ、高精度な話者認識システムを実現するにあたっては、発話内容、発話時期および発声時間の相違による音響特徴量の変動、実時間応答性の向上を図ることと識別精度の向上を図ることとの矛盾等の問題を解決しなければならない。このことは、話者照合ASVおよび話者識別ASIのいずれの場合にもいえることであるが、話者識別ASIの場合には、前述したように話者照合ASVの場合に比べてシステム処理に煩雑性・困難性を伴うので、解決すべき問題が、より一層大きくなることから、システム開発は遅れているのが現状である。
【0006】
本発明の目的は、実時間応答性が良好で、かつ、高精度な話者識別を行うことができる話者識別方法およびそのシステム、並びにプログラムを提供するところにある。
【0007】
【課題を解決するための手段】
本発明は、入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別方法であって、第一段階の判定処理用のサンプルデータとして複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成した後、これらの特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成し、これらの第一のコードブックを第一コードブック記憶手段に記憶しておくとともに、複数候補者に絞込後の第二段階の判定処理用の候補データとしてサンプルデータとは異なる環境で複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成した後、これらの特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成し、これらの第二のコードブックを第二コードブック記憶手段に記憶しておき、被識別音声が複数の話者の中の誰の音声であるかを判定する際には、被識別音声の入力データを用いて音声の特徴パラメータを作成した後、話者性尤度算出手段により、この特徴パラメータと第一コードブック記憶手段に記憶された第一のコードブックとを用いて複数の各話者についての話者性尤度を算出し、第一段階判定手段により、これらの話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは第一の閾値η以上か否かを判定し、各差の全てが第一の閾値ηよりも大きいかまたは第一の閾値η以上と判定された場合には、最小の話者性尤度の話者を唯一の候補者とし、第二段階唯一候補者判定手段により、最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには候補者を受理し、入らないと判定したときには棄却し、一方、各差のうちの少なくとも一つの差が第一の閾値η以下または第一の閾値ηよりも小さいと判定された場合には、以下または小さいと判定された差となっている話者性尤度の話者および最小の話者性尤度の話者を複数の候補者とし、絶対値平均ベクトル誤差算出手段により、特徴パラメータと第二コードブック記憶手段に記憶された第二のコードブックとを用いて複数の各候補者についての絶対値平均ベクトル誤差を算出した後、第二段階複数候補者判定手段により、これらの絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却することを特徴とするものである。
【0008】
ここで、「各差の全てが第一の閾値ηよりも大きいかまたは第一の閾値η以上と判定された場合」とは、最小の話者性尤度に対し、それ以外の全ての話者性尤度が、第一の閾値ηよりも大きな値だけ離れているか、あるいは第一の閾値η以上離れていると判定された場合であり、要するに、最小の話者性尤度が、その他の話者性尤度に比べて突出して小さな値であると判定された場合である。
【0009】
一方、「各差のうちの少なくとも一つの差が第一の閾値η以下または第一の閾値ηよりも小さいと判定された場合」とは、最小の話者性尤度以外の話者性尤度の中に、最小の話者性尤度との差が、第一の閾値η以下または第一の閾値ηよりも小さいものが存在すると判定された場合であり、要するに、最小の話者性尤度に近い値の話者性尤度が少なくとも一つ存在すると判定された場合である。
【0010】
このような本発明の話者識別方法においては、先ず、話者性尤度を算出して第一の閾値ηを用いて第一段階の判定を行い、次に、その判定結果に応じ、第二段階の判定の処理内容を変える。すなわち、第一段階の判定において、最小の話者性尤度が、その他の話者性尤度に比べて突出して小さな値であると判定された場合には、最小の話者性尤度の話者をそのまま唯一の候補者とし、その最小の話者性尤度が第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かの第二段階の判定処理を行う。一方、第一段階の判定において、最小の話者性尤度に近い値の話者性尤度が少なくとも一つ存在すると判定された場合には、最小の話者性尤度の話者だけではなく、最小の話者性尤度に近い値の話者性尤度の話者も含めて複数の候補者とし、絶対値平均ベクトル誤差を算出して第二の閾値θminおよび第三の閾値θmaxを用いて第二段階の判定処理を行う。
【0011】
このため、話者識別を行うにあたって、判定を二つの段階で行うようにし、第一段階の判定結果に応じて第二段階の判定が簡易な処理になる場合とそれよりも複雑な処理になる場合とに分かれるようにしたので、全てについて一律な内容の判定処理を行う場合に比べ、話者識別に要する処理時間を短縮することが可能となり、実時間応答性の向上が図られる。
【0012】
また、第一段階の判定処理において、最小の話者性尤度に近い値の話者性尤度が少なくとも一つ存在すると判定された場合には、最小の話者性尤度に近い値の話者性尤度の話者が、被識別音声を入力した者と一致する可能性もあるため、その場合には、絶対値平均ベクトル誤差を算出する処理を行ってから第二段階の判定を行うので、上述した如く実時間応答性の向上を図りつつ、同時に識別精度の向上を図ることが可能となり、これらにより前記目的が達成される。
【0013】
また、前述した話者識別方法において、第一の閾値ηを設定する際には、第一閾値設定用テストデータとして複数の各話者本人のうちの任意の一人から取得した音声データを用いて音声の特徴パラメータを作成した後、話者性尤度算出手段により、この特徴パラメータと第一コードブック記憶手段に記憶された第一のコードブックとを用いて複数の各話者についての話者性尤度を算出し、前記任意の一人についての話者性尤度とこの話者性尤度に最も近い値の話者性尤度との差を第一の閾値ηとすることが望ましい。
【0014】
このようにして第一の閾値ηを設定するようにした場合には、第一閾値設定用テストデータとしての音声データを提供した任意の一人の話者と、この話者に最も似た音声特徴を有する話者とについての話者性尤度の差に基づき、第一の閾値ηが設定されるので、第一段階の判定処理に用いる閾値として適切な値を設定することが可能となる。
【0015】
さらに、前述した話者識別方法において、第二の閾値θminおよび第三の閾値θmaxを設定する際には、第二・第三閾値設定用テストデータとして複数の各話者本人からそれぞれ複数ずつ取得した音声データを用いて音声の特徴パラメータを各話者毎に複数ずつ作成した後、話者性尤度算出手段により、これらの特徴パラメータと第一コードブック記憶手段に記憶された第一のコードブックとを用いて複数の各話者についての話者性尤度を各話者毎に複数ずつ算出し、各話者毎に算出した複数の話者性尤度のうちの最小値を各話者についての第二の閾値θminとし、各話者毎に算出した複数の話者性尤度のうちの最大値を各話者についての第三の閾値θmaxとすることが望ましい。
【0016】
このようにして第二の閾値θminおよび第三の閾値θmaxを設定するようにした場合には、第二段階の判定処理に用いる閾値として適切な値を設定することが可能となる。
【0017】
そして、上記のようにして第二の閾値θminおよび第三の閾値θmaxを設定するようにした場合において、被識別音声が複数の話者の中の誰の音声であるかを判定する処理を行った結果、被識別音声を入力した者が複数の話者の中のいずれかの者であるとして受理された場合には、被識別音声の入力データとサンプルデータとを組み合わせることにより、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての第一のコードブックを作成し直し、この作成し直した第一のコードブックと、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての複数の第二・第三閾値設定用テストデータと、被識別音声の入力データとを用いて、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての第二の閾値θminおよび第三の閾値θmaxの更新設定を行うことが望ましい。
【0018】
このように本人の音声であるとして受理された被識別音声の入力データを用いて、第二の閾値θminおよび前記第三の閾値θmaxの更新設定を行うようにした場合には、体調や健康等の変化に起因して、登録された複数の各話者の音声の特徴が変化したときには、それに追従させて第二の閾値θminおよび第三の閾値θmaxの設定を徐々に変化させていくことが可能となる。
【0019】
そして、以上に述べた話者識別方法において、被識別音声の入力データは、第一段階の判定処理用のサンプルデータよりも短時間のデータであることが望ましい。
【0020】
例えば、被識別音声の入力データを、5〜10秒間のデータとし、第一段階の判定処理用のサンプルデータを、20〜30秒間のデータとすることが望ましい。
【0021】
このように被識別音声の入力データを短くした場合には、話者識別に要する時間を短縮することが可能となり、実時間応答性の向上が図られる。
【0022】
また、以上に述べた話者識別方法において、第二のコードブックは、各話者毎に複数ずつ作成しておき、第二のコードブックを用いて複数の各候補者についての絶対値平均ベクトル誤差を算出する際には、各候補者毎に絶対値平均ベクトル誤差を複数ずつ算出し、これらの絶対値平均ベクトル誤差の平均値を算出することが望ましい。
【0023】
このように各話者毎に第二のコードブックを複数ずつ用意し、各候補者毎に絶対値平均ベクトル誤差の平均値を算出するようにした場合には、話者識別の精度を、より一層向上させることが可能となる。
【0024】
さらに、以上に述べた話者識別方法において、特徴パラメータとしては、メルケプストラム等を好適に用いることができる。そして、メルケプストラムとする場合には、処理時間短縮(計算量削減)と識別精度の確保との兼ね合い等から、16次メルケプストラムとすることが好適であるが、これに限定されるものではない。
【0025】
また、以上に述べた本発明の話者識別方法を実現するシステムとして、次のような本発明の話者識別システムを挙げることができる。
【0026】
すなわち、本発明は、入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別システムであって、第一段階の判定処理用のサンプルデータとして複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成するサンプルデータ用特徴パラメータ作成手段と、このサンプルデータ用特徴パラメータ作成手段により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成する第一コードブック作成手段と、この第一コードブック作成手段により各話者毎に作成された第一のコードブックを記憶する第一コードブック記憶手段と、複数候補者に絞込後の第二段階の判定処理用の候補データとしてサンプルデータとは異なる環境で複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成する候補データ用特徴パラメータ作成手段と、この候補データ用特徴パラメータ作成手段により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成する第二コードブック作成手段と、この第二コードブック作成手段により各話者毎に作成された第二のコードブックを記憶する第二コードブック記憶手段と、被識別音声が複数の話者の中の誰の音声であるかを判定する際に被識別音声の入力データを用いて音声の特徴パラメータを作成する入力データ用特徴パラメータ作成手段と、この入力データ用特徴パラメータ作成手段により作成された特徴パラメータと第一コードブック記憶手段に記憶された第一のコードブックとを用いて複数の各話者についての話者性尤度を算出する話者性尤度算出手段と、この話者性尤度算出手段により算出された話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは第一の閾値η以上か否かを判定する第一段階判定手段と、この第一段階判定手段により各差の全てが第一の閾値ηよりも大きいかまたは第一の閾値η以上と判定された場合に、最小の話者性尤度の話者を唯一の候補者とし、最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには候補者を受理し、入らないと判定したときには棄却する第二段階唯一候補者判定手段と、第一段階判定手段により各差のうちの少なくとも一つの差が第一の閾値η以下または第一の閾値ηよりも小さいと判定された場合に、以下または小さいと判定された差となっている話者性尤度の話者および最小の話者性尤度の話者を複数の候補者とし、入力データ用特徴パラメータ作成手段により作成された特徴パラメータと第二コードブック記憶手段に記憶された第二のコードブックとを用いて複数の各候補者についての絶対値平均ベクトル誤差を算出する絶対値平均ベクトル誤差算出手段と、この絶対値平均ベクトル誤差算出手段により算出された絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却する第二段階複数候補者判定手段とを備えたことを特徴とするものである。
【0027】
このような本発明の話者識別システムにおいては、前述した本発明の話者識別方法で得られる作用・効果をそのまま得ることができ、これにより前記目的が達成される。
【0028】
また、前述した話者識別システムにおいて、第二の閾値θminおよび第三の閾値θmaxの更新設定を自動的に行う第二・第三閾値自動更新手段を備え、この第二・第三閾値自動更新手段は、被識別音声が複数の話者の中の誰の音声であるかを判定する処理を行った結果、被識別音声を入力した者が複数の話者の中のいずれかの者であるとして受理された場合に、被識別音声の入力データとサンプルデータとを組み合わせることにより、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての第一のコードブックを作成し直し、この作成し直した第一のコードブックと、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての複数の第二・第三閾値設定用テストデータと、被識別音声の入力データとを用いて、複数の話者のうち被識別音声を入力した者と一致すると判定された話者についての第二の閾値θminおよび第三の閾値θmaxの更新設定を行う構成とされていることが望ましい。
【0029】
このような第二・第三閾値自動更新手段を設けた場合には、体調や健康等の変化に起因して、登録された複数の各話者の音声の特徴が変化したときには、それに追従させて第二の閾値θminおよび第三の閾値θmaxの設定を徐々に自動的に変化させていくことが可能となる。
【0030】
さらに、本発明は、入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別システムとして、コンピュータを機能させるためのプログラムであって、第一段階の判定処理用のサンプルデータとして複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成するサンプルデータ用特徴パラメータ作成手段と、このサンプルデータ用特徴パラメータ作成手段により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成する第一コードブック作成手段と、この第一コードブック作成手段により各話者毎に作成された第一のコードブックを記憶する第一コードブック記憶手段と、複数候補者に絞込後の第二段階の判定処理用の候補データとしてサンプルデータとは異なる環境で複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成する候補データ用特徴パラメータ作成手段と、この候補データ用特徴パラメータ作成手段により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成する第二コードブック作成手段と、この第二コードブック作成手段により各話者毎に作成された第二のコードブックを記憶する第二コードブック記憶手段と、被識別音声が複数の話者の中の誰の音声であるかを判定する際に被識別音声の入力データを用いて音声の特徴パラメータを作成する入力データ用特徴パラメータ作成手段と、この入力データ用特徴パラメータ作成手段により作成された特徴パラメータと第一コードブック記憶手段に記憶された第一のコードブックとを用いて複数の各話者についての話者性尤度を算出する話者性尤度算出手段と、この話者性尤度算出手段により算出された話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは第一の閾値η以上か否かを判定する第一段階判定手段と、この第一段階判定手段により各差の全てが第一の閾値ηよりも大きいかまたは第一の閾値η以上と判定された場合に、最小の話者性尤度の話者を唯一の候補者とし、最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには候補者を受理し、入らないと判定したときには棄却する第二段階唯一候補者判定手段と、第一段階判定手段により各差のうちの少なくとも一つの差が第一の閾値η以下または第一の閾値ηよりも小さいと判定された場合に、以下または小さいと判定された差となっている話者性尤度の話者および最小の話者性尤度の話者を複数の候補者とし、入力データ用特徴パラメータ作成手段により作成された特徴パラメータと第二コードブック記憶手段に記憶された第二のコードブックとを用いて複数の各候補者についての絶対値平均ベクトル誤差を算出する絶対値平均ベクトル誤差算出手段と、この絶対値平均ベクトル誤差算出手段により算出された絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却する第二段階複数候補者判定手段とを備えたことを特徴とする話者識別システムとして、コンピュータを機能させるためのものである。
【0031】
なお、以上に述べたプログラムまたはその一部は、例えば、光磁気ディスク(MO)、コンパクトディスク(CD)を利用した読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)、デジタル・バーサタイル・ディスク(DVD)を利用した読出し専用メモリ(DVD−ROM)、DVDを利用したランダム・アクセス・メモリ(DVD−RAM)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去および書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等の記録媒体に記録して保存や流通等させることが可能であるとともに、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等の有線ネットワーク、あるいは無線通信ネットワーク、さらにはこれらの組合せ等の伝送媒体を用いて伝送することが可能であり、また、搬送波に載せて搬送することも可能である。さらに、以上に述べたプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。
【0032】
【発明の実施の形態】
以下に本発明の一実施形態を図面に基づいて説明する。図1には、本実施形態の話者識別システム10の全体構成が示されている。図2には、話者識別システム10により、被識別音声が複数の話者の中の誰の音声であるかを判定する際の処理の流れの説明図が示されている。また、図3には、第一の閾値ηの初期設定を行う際の処理の流れの説明図が示され、図4には、第二の閾値θminおよび第三の閾値θmaxの初期設定を行う際の処理の流れの説明図が示されている。さらに、図5には、第二の閾値θminおよび第三の閾値θmaxの更新を行う際の処理の流れの説明図が示されている。
【0033】
図1において、話者識別システム10は、入力された被識別音声(識別対象となる音声)が、予め登録された複数の話者の中の誰の音声であるかを判定するシステムであり、話者識別に関する各種処理を行う処理手段20と、話者識別に必要な各種データを記憶する記憶手段40と、話者の音声を入力する音声入力手段60と、話者識別の結果を表示する表示手段70と、話者識別の結果を出力する出力手段80とを備えて構成されている。登録される話者の総数Nは、例えば、N=100人等であり、各話者には、話者番号n(n=1,2,3,…,N)を付すものとする。
【0034】
また、音声入力手段60と処理手段20との間、あるいは表示手段70や出力手段80と処理手段20との間には、ネットワークが介在していてもよい。すなわち、音声入力手段60は、遠隔地にいる話者の音声を入力するものであってもよく、表示手段70や出力手段80は、遠隔地にいる閲覧者や利用者に識別結果を提供するものであってもよい。
【0035】
ここで、ネットワークには、例えば、LAN、MAN、WAN、インターネット、イントラネット、エクストラネット、あるいはこれらの組合せ等、様々な形態のものが含まれ、有線であるか無線であるか、さらには有線および無線の混在型であるかは問わず、要するに、複数地点(距離の長短は問わない。)間で、ある程度の速度をもって情報を伝送することができるものであればよい。
【0036】
処理手段20は、サンプルデータ用特徴パラメータ作成手段21と、候補データ用特徴パラメータ作成手段22と、入力データ用特徴パラメータ作成手段23と、第一コードブック作成手段24と、第二コードブック作成手段25と、話者性尤度算出手段26と、絶対値平均ベクトル誤差算出手段27と、第一段階判定手段28と、第二段階唯一候補者判定手段29と、第二段階複数候補者判定手段30と、第一閾値初期設定手段31と、第二・第三閾値初期設定手段32と、第二・第三閾値自動更新手段33とを含んで構成されている。
【0037】
記憶手段40は、第一コードブック記憶手段41と、第二コードブック記憶手段42と、第一閾値記憶手段43と、第二閾値記憶手段44と、第三閾値記憶手段45と、サンプルデータ記憶手段46と、候補データ記憶手段47と、被識別音声入力データ記憶手段48と、第一閾値設定用テストデータ記憶手段49と、第二・第三閾値設定用テストデータ記憶手段50とを含んで構成されている。
【0038】
サンプルデータ用特徴パラメータ作成手段21は、第一段階の判定処理に用いるサンプルデータとして複数(N人)の各話者本人から取得した音声データを用いて、音声特徴量を抽出し、音声の特徴パラメータを各話者毎に作成する処理を行うものである。特徴パラメータとしては、16次メルケプストラムが好適であるため、本実施形態では、16次メルケプストラムとして説明を行うが、これに限定されるものではない。ここで、サンプルデータとして取得する音声データの長さは、1人の話者につき、例えば20〜30秒である。従って、1フレームを10ミリ秒とすれば、例えば2000〜3000個の各フレームから16次メルケプストラムがそれぞれ作成される。
【0039】
候補データ用特徴パラメータ作成手段22は、複数候補者に絞込後の第二段階の判定処理に用いる候補データとしてサンプルデータとは異なる環境で複数(N人)の各話者本人から取得した音声データを用いて、音声特徴量を抽出し、音声の特徴パラメータを各話者毎に作成する処理を行うものである。特徴パラメータは、上記のサンプルデータの場合と同様に、16次メルケプストラムとする。ここで、候補データとして取得する音声データの長さは、1人の話者につき、例えば5〜10秒である。従って、1フレームを10ミリ秒とすれば、例えば500〜1000個の各フレームから16次メルケプストラムがそれぞれ作成される。また、この5〜10秒の長さの候補データは、1人の話者につき、t個(例えば、t=3〜5等)用意される。候補データは、サンプルデータよりも短時間とすることが好ましい。
【0040】
入力データ用特徴パラメータ作成手段23は、被識別音声が複数の話者の中の誰の音声であるかを判定する際に、被識別音声の入力データを用いて、音声特徴量を抽出し、音声の特徴パラメータを作成する処理を行うものである。特徴パラメータは、上記のサンプルデータや候補データの場合と同様に、16次メルケプストラムとする。ここで、話者識別を行うために入力される音声データの長さは、1人の話者につき、例えば5〜10秒である。従って、1フレームを10ミリ秒とすれば、例えば500〜1000個の各フレームから16次メルケプストラムがそれぞれ作成される。これらの各メルケプストラムは、それぞれ16個の数値により構成されるベクトルX1,X2,…,Xk,…,XMである。ここで、Mはフレーム数であり、Xk=(Xk(1),Xk(2),…,Xk(16))(k=1,2,…,M)である。被識別音声の入力データは、サンプルデータよりも短時間とすることが好ましい。
【0041】
第一コードブック作成手段24は、サンプルデータ用特徴パラメータ作成手段21により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成する処理を行うものである。第一のコードブックは、セントロイドベクトルCi nの集合であり、n=1,2,…,Nであり、i=1,2,…,Lである。ここで、Nは、登録話者の総数であり、例えばN=100人等である。また、Lは、コードブックサイズ(量子化点数)であり、例えばL=128やL=256等である。従って、サイズLの第一のコードブックが、N人分用意される。そして、各セントロイドベクトルCi nは、それぞれ16個の数値により構成され、Ci n=(Ci n(1),Ci n(2),…,Ci n(16))である。
【0042】
第二コードブック作成手段25は、候補データ用特徴パラメータ作成手段22により作成された特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成する処理を行うものである。第二のコードブックは、セントロイドベクトルCi n,vの集合であり、n=1,2,…,Nであり、i=1,2,…,Lであり、v=1,2,…,tである。ここで、tは、1人の候補者(話者)について用意する第二のコードブックの個数であり、例えばt=3〜5等である。従って、サイズLの第二のコードブックがN人分、すなわちN×t個用意される。そして、各セントロイドベクトルCi n,vは、それぞれ16個の数値により構成され、Ci n,v=(Ci n,v(1),Ci n,v(2),…,Ci n,v(16))である。
【0043】
話者性尤度算出手段26は、入力データ用特徴パラメータ作成手段23により作成された特徴パラメータXkと、第一コードブック記憶手段41に記憶された第一のコードブックCi nとを用いて、ベクトル量子化(VQ:Vector Qantization)を行い、複数の各話者についての話者性尤度を算出する処理を行うものである。具体的には、次式(1)に基づく処理を行う。
【0044】
【数1】

Figure 0004098015
【0045】
上式(1)において、Lnは、話者性尤度であり、上付の添字nは、話者番号(n=1,2,…,N)を示し、Nは、登録話者の総数で、例えばN=100人等である。Mは、フレーム数である。d(Xk,Ci n)は、ベクトルXkとベクトルCi nとの各構成要素同士の差の2乗の和をとるという意味であり、Xk=(Xk(1),Xk(2),…,Xk(16))、Ci n=(Ci n(1),Ci n(2),…,Ci n(16))であるから、次のようになる。
【0046】
d(Xk,Ci n)=(Xk(1)−Ci n(1))2+(Xk(2)−Ci n(2))2+…+(Xk(16)−Ci n(16))2
【0047】
また、min(1≦i≦L)[d(Xk,Ci n)]は、コードブックサイズがL(例えばL=256等)であるから、n番目の話者についてL個の第一のコードブックが作成されているので、d(Xk,Ci n)をi=1,2,…,Lについてそれぞれ求め、その中の最小値をとるという意味である。
【0048】
そして、min(1≦i≦L)[d(Xk,Ci n)]をM個のフレームの全てについて求めると、M個のmin(1≦i≦L)[d(Xk,Ci n)](k=1,2,…,M)が得られるので、これらのM個のmin(1≦i≦L)[d(Xk,Ci n)]を合計してMで割ることにより、min(1≦i≦L)[d(Xk,Ci n)]の平均値を求める。この平均値が、n番目の話者についての話者性尤度Lnである。以上のような計算をN人の話者の全てについて行い、L1,L2,…,LNを求める。
【0049】
絶対値平均ベクトル誤差算出手段27は、入力データ用特徴パラメータ作成手段23により作成された特徴パラメータXkと、第二コードブック記憶手段42に記憶された第二のコードブックCi n,vとを用いて、第一段階の判定処理で選出された複数の各候補者(話者)についての絶対値平均ベクトル誤差εq,vあるいはεq,εqminを算出する処理を行うものである。具体的には、次式(2)に基づく処理を行う。
【0050】
【数2】
Figure 0004098015
【0051】
上式(2)において、εq,vは、第一段階の判定処理で選出された複数の各候補者(話者)についての絶対値平均ベクトル誤差であり、下付の添字qは、候補者番号であり、下付の添字vは、各候補者(話者)についてそれぞれ複数個(t個、例えばt=3等)の候補データが用意され、それぞれ複数個(t個、例えばt=3等)の第二のコードブックが作成されているので、それらの第二のコードブックに付された番号(v=1,2,…,t)である。Mは、フレーム数である。d’(Xk,Ci n,v)は、話者性尤度Lnを求める前記式(1)におけるd(Xk,Ci n)とは異なるものであり、ベクトルXkとベクトルCi n,vとの各構成要素同士の差の絶対値の和をとるという意味であり、Xk=(Xk(1),Xk(2),…,Xk(16))、Ci n,v=(Ci n,v(1),Ci n,v(2),…,Ci n,v(16))であるから、次のようになる。なお、d’(Xk,Ci n,v)中のnは、候補者番号qに対応する話者番号(第一段階の判定処理で候補者番号qを付された話者についての原始的話者番号)である。
【0052】
d’(Xk,Ci n,v)=|Xk(1)−Ci n,v(1)|+|Xk(2)−Ci n,v(2)|+…+|Xk(16)−Ci n,v(16)|
【0053】
また、min(1≦i≦L)[d’(Xk,Ci n,v)]は、コードブックサイズがL(例えばL=256等)であるから、n番目の話者のv番目の候補データについてL個の第二のコードブックが作成されているので、d’(Xk,Ci n,v)をi=1,2,…,Lについてそれぞれ求め、その中の最小値をとるという意味である。
【0054】
そして、min(1≦i≦L)[d’(Xk,Ci n,v)]をM個のフレームの全てについて求めると、M個のmin(1≦i≦L)[d’(Xk,Ci n,v)](k=1,2,…,M)が得られるので、これらのM個のmin(1≦i≦L)[d’(Xk,Ci n,v)]を合計してMで割ることにより、min(1≦i≦L)[d’(Xk,Ci n,v)]の平均値を求める。この平均値が、n番目の話者(候補者番号qに対応する話者)のv番目の候補データに基づく絶対値平均ベクトル誤差εq,vである。
【0055】
さらに、n番目の話者(候補者番号qに対応する話者)について、v=1番目からv=t番目までの各候補データ(各第二のコードブック)に基づく各絶対値平均ベクトル誤差εq,vの平均値を求めてεqとする。すなわち、n番目の話者(候補者番号qに対応する話者)についての絶対値平均ベクトル誤差εqは、次式で求められる。
【0056】
εq=(εq,1+εq,2+…+εq,t)/t
【0057】
以上のような計算を、第一段階の判定処理で選出された複数の各候補者(話者)の全てについて行い、全ての候補者の絶対値平均ベクトル誤差εqを求める。その後、これらのεqの中の最小値を求め、εqminとする。
【0058】
第一段階判定手段28は、話者性尤度算出手段26により算出されたN個の話者性尤度Ln(n=1,2,…,N)のうち最小の話者性尤度Lxと、それ以外の話者性尤度との各差minqが、予め設定された第一の閾値ηよりも大きいか否かを判定する処理を行うものである。
【0059】
ここで、minq=Lq−L1(q=2,3,4,…)である。L1は、算出されたN個の話者性尤度Ln(n=1,2,…,N)のうち最小となるもの(Lx)を、下付の添字1を使って置き換えたものであり、L2,L3,L4,…は、二番目、三番目、四番目、…に小さいものを、下付の添字2,3,4,…を使って置き換えたものである。なお、このような置き換えは、説明の便宜上行うものであるため、計算処理上は、必ずしも上記と同様な方法での置き換えを行う必要はなく、要するに、結果的に上記のような判定処理が行われるようになっていればよい。
【0060】
第二段階唯一候補者判定手段29は、第一段階判定手段28により各差minqの全てが、第一の閾値ηよりも大きいと判定された場合に、最小の話者性尤度Lxの話者(話者番号xの話者)を唯一の候補者とし、最小の話者性尤度Lxが、この話者番号xの話者のために設定された第二の閾値θminxと第三の閾値θmaxxとの間の範囲に入るか否かを判定する。そして、これらの閾値θminx,θmaxxの間の範囲に入ると判定したときには、その唯一の候補者である話者番号xの話者が、識別音声を入力した者と一致するとして受理し、閾値θminx,θmaxxの間の範囲に入らないと判定したときには、棄却する処理を行うものである。
【0061】
第二段階複数候補者判定手段30は、絶対値平均ベクトル誤差算出手段27により算出された絶対値平均ベクトル誤差εqのうち最小の絶対値平均ベクトル誤差εqminが、このεqminの候補者(この候補者の話者番号をyとする。)のために設定された第二の閾値θminyと第三の閾値θmaxyとの間の範囲に入るか否かを判定する。そして、これらの閾値θminy,θmaxyの間の範囲に入ると判定したときには、εqminの候補者(話者番号yの話者)が、識別音声を入力した者と一致するとして受理し、閾値θminy,θmaxyの間の範囲に入らないと判定したときには、棄却する処理を行うものである。
【0062】
第一閾値初期設定手段31は、第一の閾値ηの初期設定の処理を行うものである(図3参照)。
【0063】
第二・第三閾値初期設定手段32は、第二の閾値θminnおよび第三の閾値θmaxn(n=1,2,…,N)の初期設定の処理を行うものである(図4参照)。
【0064】
第二・第三閾値自動更新手段33は、第二の閾値θminnおよび第三の閾値θmaxn(n=1,2,…,N)の自動更新の処理を行うものである(図5参照)。
【0065】
第一コードブック記憶手段41は、第一のコードブックCi nを記憶するものである。サイズL(例えばL=256等)の第一のコードブックが、N人の登録話者全員について一人一つずつ用意される。
【0066】
第二コードブック記憶手段42は、第二のコードブックCi n,vを記憶するものである。サイズL(例えばL=256等)の第二のコードブックが、N人の登録話者全員について一人複数個(t個、例えばt=3個等)ずつ用意される。
【0067】
第一閾値記憶手段43は、第一の閾値ηを記憶するものである。第一の閾値ηは、システム10に一つだけ用意されるものであり、各登録話者毎に個別に用意されるものではない。
【0068】
第二閾値記憶手段44は、第二の閾値θminnを記憶するものである。第二の閾値θminnは、各登録話者(話者番号n=1,2,…,N)毎に個別に用意されるものである。
【0069】
第三閾値記憶手段45は、第三の閾値θmaxnを記憶するものである。第三の閾値θmaxnは、各登録話者(話者番号n=1,2,…,N)毎に個別に用意されるものである。
【0070】
サンプルデータ記憶手段46は、サンプルデータ(例えば20〜30秒/話者)としての音声データを記憶するものであり、例えば、WAVフォーマット等のファイル形式での保存を行う。サンプルデータは、N人の登録話者全員について一人一つずつ用意される。
【0071】
候補データ記憶手段47は、候補データ(例えば5〜10秒/話者)としての音声データを記憶するものであり、例えば、WAVフォーマット等のファイル形式での保存を行う。候補データは、N人の登録話者全員について一人複数個(t個、例えばt=3個等)ずつ用意される。
【0072】
被識別音声入力データ記憶手段48は、被識別音声の入力データ(例えば5〜10秒)を記憶するものであり、例えば、WAVフォーマット等のファイル形式での保存を行う。記憶された入力データは、システム10による学習機能に用いられ、次回以降の話者識別処理に活かされる(図5参照)。
【0073】
第一閾値設定用テストデータ記憶手段49は、第一の閾値ηの初期設定に用いられる第一閾値設定用テストデータ(例えば5〜10秒)としての音声データを記憶するものであり、例えば、WAVフォーマット等のファイル形式での保存を行う。第一閾値設定用テストデータは、N人の登録話者の中の任意の一人による音声データである。
【0074】
第二・第三閾値設定用テストデータ記憶手段50は、第二の閾値θminnおよび第三の閾値θmaxnの初期設定に用いられる第二・第三閾値設定用テストデータ(例えば5〜10秒)としての音声データを記憶するものであり、例えば、WAVフォーマット等のファイル形式での保存を行う。第二・第三閾値設定用テストデータは、N人の登録話者全員について一人複数回(H回、例えばH=10回等)ずつ入力して取得した音声データである。
【0075】
そして、処理手段20を構成する各手段21〜33は、コンピュータ本体(パーソナル・コンピュータのみならず、その上位機種のものも含む。)の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する一つまたは複数のプログラムにより実現される。
【0076】
また、処理手段20は、一台のコンピュータあるいは一つのCPUにより実現されるものに限定されず、複数のコンピュータ等で分散処理を行うことにより実現されるものであってもよい。
【0077】
さらに、記憶手段40を構成する各手段41〜50は、例えばハードディスク等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、ROM、EEPROM、フラッシュ・メモリ、RAM、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、FD、磁気テープ、あるいはこれらの組合せ等を採用してもよい。
【0078】
音声入力手段60としては、各種の音声収録マイク等を採用することができる。
【0079】
表示手段70としては、例えば、液晶ディスプレイ、CRTディスプレイ、有機EL(エレクトロルミネッセンス)ディスプレイ、ECL(エレクトロケミルミネッセンス)ディスプレイ、プロジェクタおよびスクリーン、あるいはこれらの組合せ等を採用することができる。
【0080】
出力手段80としては、プリンタ、プロッタ、あるいはこれらの組合せ等を採用することができる。
【0081】
このような本実施形態においては、以下のようにして話者識別システム10により被識別音声についての話者識別処理を行う。
【0082】
図2において、先ず、音声入力手段60を用いて、N人(例えばN=100人等)の登録話者全員から、サンプルデータとして、一人の話者につき例えば20〜30秒の音声データを取得し、これらの取得したサンプルデータを、サンプルデータ記憶手段46に記憶保存する(ステップS1)。
【0083】
続いて、各話者のサンプルデータを用いて、サンプルデータ用特徴パラメータ作成手段21により音響特徴量を抽出し、各話者の音声についての特徴パラメータを作成する(ステップS2)。特徴パラメータは、16次メルケプストラムである。
【0084】
さらに、得られた各話者の特徴パラメータを用いて、第一コードブック作成手段24によりクラスタリング処理を行い、N人の各話者(n=1,2,…,N)についての第一のコードブックCi nを作成し(ステップS3)、これらの作成した第一のコードブックCi nを第一コードブック記憶手段41に記憶保存する(ステップS4)。話者一人(n番目の話者)についての第一のコードブックCi nは、コードブックサイズがLであるから、L個(例えば、L=256個等)のコードブックベクトルにより構成されている。
【0085】
次に、音声入力手段60を用いて、N人(例えばN=100人等)の登録話者全員から、候補データとして、一人の話者につき例えば5〜10秒の音声データを複数個(t個、例えばt=3個等)ずつ取得し、これらの取得した候補データを、候補データ記憶手段47に記憶保存する(ステップS11)。
【0086】
続いて、各話者の候補データを用いて、候補データ用特徴パラメータ作成手段22により音響特徴量を抽出し、各話者の音声についての特徴パラメータを作成する(ステップS12)。特徴パラメータは、16次メルケプストラムである。
【0087】
さらに、得られた各話者の特徴パラメータを用いて、第二コードブック作成手段25によりクラスタリング処理を行い、N人の各話者(n=1,2,…,N)について複数個(t個)ずつの第二のコードブックCi n,vを作成し(ステップS13)、これらの作成した第二のコードブックCi n,vを第二コードブック記憶手段42に記憶保存する(ステップS14)。話者一人(n番目の話者)についての第二のコードブックCi n,vは、複数個(t個)用意され、これらの複数個の第二のコードブックCi n,v(v=1,2,…,t)の各々は、コードブックサイズがLであるから、L個(例えば、L=256個等)のコードブックベクトルにより構成されている。
【0088】
以上の前処理を行った後に、第一の閾値η、第二の閾値θminn、および第三の閾値θmaxnの初期設定を行うが、詳細は後述する(図3のステップS41〜S44、図4のステップS51〜S54)。
【0089】
そして、前処理および各閾値の初期設定を行った後に、話者識別システム10を稼働させ、実際に話者識別を行う際には、以下のような処理を行う。
【0090】
図2において、先ず、音声入力手段60を用いて、識別の対象となる被識別音声を入力して話者識別システム10に取り込む(ステップS21)。この際、取り込む入力データは、例えば5〜10秒の音声データである。
【0091】
続いて、被識別音声の入力データを用いて、入力データ用特徴パラメータ作成手段23により音響特徴量を抽出し、被識別音声についての特徴パラメータを作成する(ステップS22)。特徴パラメータは、16次メルケプストラムであり、フレーム数がMであるから、M個のベクトルX1,X2,…,XMが作成される。
【0092】
さらに、得られた特徴パラメータであるM個のベクトルX1,X2,…,XMと、第一コードブック記憶手段41に記憶保存されている第一のコードブックCi nとを用いて、話者性尤度算出手段26により、ベクトル量子化(VQ)を行い、各話者(n=1,2,…,N)についての話者性尤度Lnを算出する(ステップS23)。
【0093】
次に、算出した話者性尤度Ln(上付の添字nは、話者番号であり、n=1,2,…,N)のうちの最小値Lx(話者番号xの話者についての話者性尤度)を下付の添字1を使ってL1と置き換えるものとする。また、算出した話者性尤度Lnのうち二番目に小さな値を下付の添字2を使ってL2と置き換えるものとする。同様にして、算出した話者性尤度Lnのうち三番目、四番目、…に小さな値をL3,L4,…と置き換えるものとする。
【0094】
そして、第一段階判定手段28により、最小の話者性尤度Lx(=L1)と、その他の話者性尤度Ln(=L2,L3,L4,…)との差minqが、予め設定されている第一の閾値ηよりも大きいか否かを判定する(ステップS24)。すなわち、minq=Lq−L1(q=2,3,4,…)であり、このminqについて次式に基づく判定を行う。
【0095】
minq>η
【0096】
ここで、全てのminqが第一の閾値ηよりも大きいと判断された場合には、L2−L1、L3−L1、L4−L1、…の全てが第一の閾値ηよりも大きいということであるから、L1の値に対してL2,L3,L4,…の各値が離れているということである。従って、最小の話者性尤度Lx(=L1)が、その他の話者性尤度Ln(=L2,L3,L4,…)と比べ、突出して小さな値であることを意味するので、この場合には、話者性尤度Lx(=L1)の話者(話者番号xの話者)を唯一の候補者として次の第二段階の判定処理に進む。
【0097】
続いて、話者性尤度Lxの話者を唯一の候補者とした後に、第二段階唯一候補者判定手段29により、この唯一の候補者が、識別音声を入力した者と一致するか否かを判定する(ステップS25)。この判定の際には、話者性尤度Lxが、話者番号xの話者について予め設定された第二の閾値θminxと第三の閾値θmaxxとの間の範囲に入るか否かを判断する。
【0098】
そして、話者性尤度Lxが、第二の閾値θminxと第三の閾値θmaxxとの間の範囲に入ると判断された場合には、話者性尤度Lxの話者が、識別音声を入力した者と一致するとして受理し(ステップS26)、話者性尤度Lxが、第二の閾値θminxと第三の閾値θmaxxとの間の範囲に入らないと判断された場合には、話者性尤度Lxの話者は、識別音声を入力した者と一致しないとして棄却する(ステップS27)。
【0099】
一方、ステップS24で、各差minqのうちの少なくとも一つが、第一の閾値η以下であると判断された場合には、L2−L1、L3−L1、L4−L1、…の中に第一の閾値η以下の差が存在するということであるから、L1に近い値となる話者性尤度が、L2,L3,L4,…の中に存在することを意味する。この場合には、最小の話者性尤度Lx(=L1)に近いと判断された話者性尤度の話者(すなわち、最小の話者性尤度Lxとの差が第一の閾値η以下の話者性尤度の話者)および最小の話者性尤度Lxの話者を、複数の候補者として次の第二段階の判定処理に進む。例えば、L2−L1、L3−L1が第一の閾値η以下であると判断され、L4−L1、L5−L1、L6−L1、…が第一の閾値ηよりも大きいと判断された場合には、L2およびL3がL1に近い値なので、L1を含めて話者性尤度L1,L2,L3の3人の話者が、複数の候補者となる。従って、複数の候補者が何人になるかは、minq>ηの判定結果により変化し、N人の登録話者全員になることもあり得る。なお、以下においては、ステップS24の判定処理で、minq≦ηと判断された話者性尤度Lq(q=2,3,…)を、L1を含めて候補者番号qを示す下付の添字を付してLq(q=1,2,…)と表現する。上記の例では、L1,L2,L3がLqとなる。
【0100】
続いて、L1に近い値の話者性尤度の話者を、話者性尤度L1の話者を含めて複数の候補者とした後に、これらの複数の候補者についての絶対値平均ベクトル誤差を、絶対値平均ベクトル誤差算出手段27により算出する(ステップS28)。
【0101】
絶対値平均ベクトル誤差算出手段27による処理は、先ず、入力データ用特徴パラメータ作成手段23により作成された特徴パラメータXkと、第二コードブック記憶手段42に記憶された第二のコードブックCi n,vとを用いて、ステップS24の第一段階の判定処理で選出された複数の各候補者(話者)についての絶対値平均ベクトル誤差εq,vを算出する。この際、絶対値平均ベクトル誤差は、一人の候補者につき、複数個(t個、例えばt=3個等)算出する。従って、候補者番号qの候補者については、εq,1,εq,2,…,εq,tが算出されるので、これらのt個の絶対値平均ベクトル誤差の平均値を求めてεqとする。さらに、複数の候補者全員について、εqを求め、これらのεqの中の最小値を求めてεqminとする。
【0102】
その後、第二段階複数候補者判定手段30により、最小の絶対値平均ベクトル誤差εqminが、εqminの候補者(この候補者の話者番号をyとする。)について予め設定された第二の閾値θminyと第三の閾値θmaxyとの間の範囲に入るか否かを判断する(ステップS29)。
【0103】
そして、最小の絶対値平均ベクトル誤差εqminが、第二の閾値θminyと第三の閾値θmaxyとの間の範囲に入ると判断された場合には、εqminの候補者である話者性尤度Ly(=Lq)の話者が、識別音声を入力した者と一致するとして受理し(ステップS30)、最小の絶対値平均ベクトル誤差εqminが、第二の閾値θminyと第三の閾値θmaxyとの間の範囲に入らないと判断された場合には、εqminの候補者である話者性尤度Ly(=Lq)の話者は、識別音声を入力した者と一致しないとして棄却する(ステップS31)。
【0104】
なお、以上の処理による話者識別の結果は、適宜、表示手段70により画面表示したり、出力手段80により印刷してもよく、あるいは各種システムの個人認証処理に利用してもよい。
【0105】
次に、第一閾値初期設定手段31により、第一の閾値ηの初期設定を行う際の処理を詳述する。
【0106】
図3において、音声入力手段60を用いて、第一閾値設定用テストデータとして、N人の登録話者本人のうちの任意の一人(話者番号Pの話者とする。)の音声データを取り込むとともに、取り込んだ音声データを、第一閾値設定用テストデータ記憶手段49に記憶保存する(ステップS41)。この際、取り込む音声データは、例えば5〜10秒のデータである。
【0107】
続いて、第一閾値設定用テストデータを用いて、入力データ用特徴パラメータ作成手段23により音響特徴量を抽出し、音声についての特徴パラメータXk(k=1,2,…,M)を作成する(ステップS42)。特徴パラメータXkは、16次メルケプストラムである。
【0108】
さらに、得られた特徴パラメータXkと、第一コードブック記憶手段41に記憶された第一のコードブックCi nとを用いて、話者性尤度算出手段26によりベクトル量子化(VQ)を行い、N人の各登録話者についての話者性尤度Ln(n=1,2,…,N)を算出する(ステップS43)。そして、前記任意の一人(話者番号Pの話者)についての話者性尤度LPと、N人の各話者についての話者性尤度Lnのうち話者性尤度LPに最も近い値の話者性尤度との差を、第一の閾値ηとして決定し、第一閾値記憶手段43に記憶保存して設定する(ステップS44)。
【0109】
次に、第二・第三閾値初期設定手段32により、第二の閾値θminnおよび第三の閾値θmaxnの初期設定を行う際の処理を詳述する。
【0110】
図4において、音声入力手段60を用いて、第二・第三閾値設定用テストデータとして、N人の登録話者本人から、それぞれ複数個(H個、例えばH=10個等)ずつの音声データを取り込むとともに、取り込んだ音声データを、第二・第三閾値設定用テストデータ記憶手段50に記憶保存する(ステップS51)。この際、取り込む音声データは、一人の話者につき例えば5〜10秒のデータである。
【0111】
続いて、第二・第三閾値設定用テストデータを用いて、入力データ用特徴パラメータ作成手段23により音響特徴量を抽出し、音声についての特徴パラメータXk(k=1,2,…,M)をN人の各話者毎に複数個(H個)ずつ作成する(ステップS52)。特徴パラメータXkは、16次メルケプストラムである。
【0112】
さらに、得られた特徴パラメータXkと、第一コードブック記憶手段41に記憶された第一のコードブックCi nとを用いて、話者性尤度算出手段26によりベクトル量子化(VQ)を行い、N人の各登録話者(n=1,2,…,N)について複数個(H個)ずつの話者性尤度Ln,h(h=1,2,…,H)を算出する(ステップS53)。
【0113】
それから、登録番号nの話者について、H個の話者性尤度Ln,h(h=1,2,…,H)のうちの最小値を、その話者についての第二の閾値θminnとし、最大値を、その話者についての第三の閾値θmaxnとし、このようなθminnおよびθmaxnの決定をN人の登録話者全員について行う(ステップS54)。そして、決定したθminnおよびθmaxnを、第二閾値記憶手段44および第三閾値記憶手段45にそれぞれ記憶保存して設定する。
【0114】
次に、第二・第三閾値自動更新手段33により、第二の閾値θminnおよび第三の閾値θmaxnの自動更新を行う際の処理を詳述する。
【0115】
図5において、前述した図2のステップS26でLxの話者(話者番号xの話者)が受理されるか、または図2のステップS30でLyの話者(話者番号yの話者)が受理された場合には、それらの受理された話者についてのサンプルデータ(例えば20〜30秒)を、サンプルデータ記憶手段46から読み込むとともに(ステップS61)、その識別処理時に入力された被識別音声の入力データ(例えば5〜10秒)を、被識別音声入力データ記憶手段48から読み込む(ステップS62)。
【0116】
続いて、読み込んだサンプルデータと、被識別音声の入力データとを組み合わせて用いることにより、サンプルデータ用特徴パラメータ作成手段21により音響特徴量を抽出し、音声についての特徴パラメータを作成する(ステップS63)。特徴パラメータは、16次メルケプストラムである。
【0117】
さらに、得られた特徴パラメータを用いて、第一コードブック作成手段24によりクラスタリング処理を行い、受理された話者(話者番号xまたはyの話者)についての第一のコードブックCi n(n=xまたはy)を作成し直し(ステップS64)、この作成し直した第一のコードブックCi nを、第一コードブック記憶手段41に記憶保存してデータを更新する(ステップS65)。
【0118】
その後、受理された話者について複数個(H個、例えばH=10個等)用意された第二・第三閾値設定用テストデータ(例えば5〜10秒)を、第二・第三閾値設定用テストデータ記憶手段50から読み込む(ステップS66)。
【0119】
続いて、読み込んだ第二・第三閾値設定用テストデータと、被識別音声の入力データとを用いて、入力データ用特徴パラメータ作成手段23により音響特徴量を抽出し、音声についての特徴パラメータXk(k=1,2,…,M)を、受理された話者について(H+1)個作成する(ステップS67)。特徴パラメータXkは、16次メルケプストラムである。例えば、受理された話者について、第二・第三閾値設定用テストデータが当初H=10個用意されている場合には、新たに取得された被識別音声の入力データを学習データとし、(H+1)=11個作成する。
【0120】
さらに、得られた特徴パラメータXkと、第一コードブック記憶手段41に記憶された更新後の第一のコードブックCi n(n=xまたはy)とを用いて、話者性尤度算出手段26によりベクトル量子化(VQ)を行い、受理された話者(話者番号xまたはyの話者)について(H+1)個の話者性尤度Ln,h(h=1,2,…,H,H+1)を算出する(ステップS68)。
【0121】
そして、受理された話者(話者番号n=xまたはyの話者)について、(H+1)個の話者性尤度Ln,h(h=1,2,…,H,H+1)のうちの最小値を、その話者についての更新後の第二の閾値θminnとし、最大値を、その話者についての更新後の第三の閾値θmaxnとし、これらの更新後のθminnおよびθmaxnを第二閾値記憶手段44および第三閾値記憶手段45にそれぞれ記憶保存して更新設定を行う(ステップS69)。
【0122】
このような本実施形態によれば、次のような効果がある。すなわち、話者識別を行うにあたって、判定を二つの段階で行うようにし、第一段階判定手段28による判定(図2のステップS24)の結果に応じて、第二段階の判定が簡易な処理になる場合(ステップS25)と、それよりも複雑な処理になる場合(ステップS28,S29)とに分かれるようにしたので、全てについて一律な内容の判定処理を行う場合に比べ、話者識別に要する処理時間を短縮することができ、実時間応答性の向上を図ることができる。
【0123】
また、第一段階判定手段28による判定処理において、最小の話者性尤度Lxに近い値の話者性尤度が少なくとも一つ存在すると判定された場合には、最小の話者性尤度Lxに近い値の話者性尤度の話者が、被識別音声を入力した者と一致する可能性もあるため、その場合には、絶対値平均ベクトル誤差εq,vあるいはεq,εqminを算出する処理(図2のステップS28)を行ってから第二段階の判定処理(ステップS29)を行うので、上述した如く実時間応答性の向上を図りつつ、同時に識別精度の向上を図ることができる。
【0124】
さらに、第一閾値初期設定手段31が設けられ、図3で述べたように、この第一閾値初期設定手段31により、第一閾値設定用テストデータの提供者自身の話者性尤度LPと、話者性尤度LPに最も近い値の話者性尤度との差が、第一の閾値ηとして設定されるので、第一段階の判定処理に用いる閾値として適切な値を設定することができる。
【0125】
そして、第二・第三閾値初期設定手段32が設けられ、図4で述べたように、この第二・第三閾値初期設定手段32により、第二・第三閾値設定用テストデータとしてN人の各話者本人からそれぞれ複数個(H個)ずつ取得した音声データを用いて第二の閾値θminおよび第三の閾値θmaxが設定されるので、第二段階の判定処理に用いる閾値として適切な値を設定することができる。
【0126】
また、第二・第三閾値自動更新手段33が設けられているので、システム10に学習機能を付加することができ、体調や健康等の変化に起因して、登録されたN人の各話者の音声の特徴が変化したときには、それに追従させて第二の閾値θminおよび第三の閾値θmaxの設定を徐々に変化させていくことができる。
【0127】
さらに、被識別音声の入力データ(例えば5〜10秒)は、第一段階の判定処理用のサンプルデータ(例えば20〜30秒)よりも短時間のデータとされているため、話者識別に要する時間を短縮することができ、実時間応答性の向上を図ることができる。
【0128】
また、絶対値平均ベクトル誤差算出手段27は、N人の各話者毎に複数(t個)ずつ作成された第二のコードブックCi n,vを用いて、各候補者毎に複数(t個)ずつの絶対値平均ベクトル誤差εq,vを算出し、これらの絶対値平均ベクトル誤差εq,vの平均値εqを算出する処理を行うので、話者識別の精度を、より一層向上させることができる。
【0129】
そして、特徴パラメータとして、16次メルケプストラムを用いているので、、処理時間短縮(計算量削減)と識別精度の確保との兼ね合い等を考慮したシステム10を実現することができる。
【0130】
また、音声データからスペクトル(本実施形態では、一例として16次メルケプストラム)をとる処理を行うので、発話内容に影響されることなく話者識別を行うことができる。
【0131】
さらに、第一の閾値η、第二の閾値θmin、第三の閾値θmaxの各値を調整することにより、中国語や日本語等の言語の相違、携帯電話やおもちゃ等の用途の相違、録音環境や録音機器等の各種環境の差異に対応することができる。
【0132】
また、本発明の効果を確かめるために、次のようなシステムの評価実験を行った。実験データおよび音声分析条件は、次の通りである。
【0133】
[実験データ]
(1)登録話者の総数:100人
(2)評価用テストデータ:100話者×(3回/話者)
(3)年齢・性別:20〜50才・男女50人ずつ
(4)録音環境:背景室における一般騒音下
(5)発話内容:学会発表における自由発話
(6)発話時間:サンプルデータが20〜30秒であり、評価用テストデータが5〜10秒である。
【0134】
[音声分析条件]
(1)サンプリング周波数:16kHz
(2)分析窓:10ms
(3)分析周期:21.3ms
(4)音響特徴量:16次メルケプストラム
【0135】
表1には、評価用テストデータを5〜10秒としたときのシステム評価結果が、サンプルデータを10〜15秒とした場合と、サンプルデータを20〜30秒とした場合とに分けて示されている。
【0136】
【表1】
Figure 0004098015
【0137】
表1によれば、評価用テストデータ(つまり、被識別音声の入力データ)を5〜10秒とし、サンプルデータを20〜30秒とした場合には、システムの有効性が明確である。すなわち、登録話者の総数を100人として実際に話者識別処理を行った評価実験において、絶対値平均ベクトル誤差の算出処理を行わない場合(全てのminqについて、minq>ηと判断された場合)には、平均正解率は、99.33%となり、誤認識率および誤棄却率は、0.1%以下に抑えられていることが確認できる。また、絶対値平均ベクトル誤差の算出処理を行う場合(少なくとも一つのminqについて、minq≦ηと判断された場合)でも、平均正解率は、98.75%と高くなっており、以上より本発明の効果が顕著に示された。
【0138】
なお、本発明は前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
【0139】
すなわち、前記実施形態では、第二・第三閾値自動更新手段33が設けられ、第二の閾値θminおよび第三の閾値θmaxの設定を徐々に変化させることができるようになっていたが、第二・第三閾値自動更新手段33の設置を省略してもよい。しかし、前記実施形態のように第二・第三閾値自動更新手段33を設けておくことが、システム10に学習機能を付加することができるという点で好ましい。
【0140】
また、第二・第三閾値自動更新手段33による第二の閾値θminおよび第三の閾値θmaxの自動更新処理は、システム10により話者識別を実行した結果、受理された場合に行われるようになっているので、各登録話者の音声の特徴が徐々に変化していった場合にのみ対応することができる。従って、ある登録話者の音声の特徴が、急激に大きく変化したような場合には、サンプルデータを取り直して対応することが好ましい。
【0141】
【発明の効果】
以上に述べたように本発明によれば、話者識別を行うにあたって、判定を二つの段階で行うようにし、第一段階の判定結果に応じて第二段階の判定が簡易な処理になる場合とそれよりも複雑な処理になる場合とに分かれるようにしたので、実時間応答性が良好で、かつ、高精度な話者識別を行うことができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施形態の話者識別システムの全体構成図。
【図2】前記実施形態の話者識別システムにより、被識別音声が複数の話者の中の誰の音声であるかを判定する際の処理の流れの説明図。
【図3】前記実施形態において第一の閾値ηの初期設定を行う際の処理の流れの説明図。
【図4】前記実施形態において第二の閾値θminおよび第三の閾値θmaxの初期設定を行う際の処理の流れの説明図。
【図5】前記実施形態において第二の閾値θminおよび第三の閾値θmaxの更新を行う際の処理の流れの説明図。
【符号の説明】
10 話者識別システム
21 サンプルデータ用特徴パラメータ作成手段
22 候補データ用特徴パラメータ作成手段
23 入力データ用特徴パラメータ作成手段
24 第一コードブック作成手段
25 第二コードブック作成手段
26 話者性尤度算出手段
27 絶対値平均ベクトル誤差算出手段
28 第一段階判定手段
29 第二段階唯一候補者判定手段
30 第二段階複数候補者判定手段
33 第二・第三閾値自動更新手段
41 第一コードブック記憶手段
42 第二コードブック記憶手段
k 特徴パラメータ
i n 第一のコードブック
i n,v 第二のコードブック
n,Ln,h 話者性尤度
x 最小の話者性尤度
minq 最小の話者性尤度とそれ以外の話者性尤度との差
η 第一の閾値
θminn 第二の閾値
θmaxn 第三の閾値
εq,v,εq 絶対値平均ベクトル誤差
εqmin 最小の絶対値平均ベクトル誤差[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a speaker identification method and system, and a program for determining who is the voice of a plurality of speakers registered in advance, for example, a plurality of talks. When searching for the voice of a specific speaker (such as an announcer) from continuous voice (such as long-term data from a broadcasting station) by the subscriber, or classifying the continuous voice into the voice of each speaker, When immigration control is performed at ports, etc., when criminals or persons requiring attention are managed (registration, search, investigation, etc.) by the police or the Self-Defense Forces, when residents are managed at government offices, customers are managed at shops, etc. When managing employees at the company (for example, knowing when to leave or leave the company), when managing security for access to information resources using the Internet, when performing automatic classification of languages and dialects, robot communication (robot If you want to apply to the dialogue partner of understanding, etc.) due, can be used when applying to the selection of understanding and response of the dialogue partner by the toys, various security of the voice, crime prevention, such as when performing the supervision.
[0002]
[Background]
In general, for speaker recognition, speaker identification ASI (Automatic Speaker Identification) for determining who the input speech is in the pre-registered speech, and whether the input speech is the user's own speech There is speaker verification ASV (Automatic Speaker Verification).
[0003]
In the case of speaker verification ASV, for the purpose of merely determining the identity of a certain person, the sample data of the person registered in advance is matched with the input data of the identified person, and the system simply “Yes”. Or only the answer of "No" is output. Therefore, many researches and application systems have been reported so far.
[0004]
On the other hand, in the case of speaker identification ASI, the speaker to be identified by the system is determined among N speakers registered in advance while performing N comparison processes, Further, if the speaker to be identified is a person other than N speakers registered in advance, the decision of rejection must be finally made. Therefore, the system processing is compared with the case of speaker verification ASV. Is complicated and difficult. Therefore, no feature parameters that can estimate the speaker efficiently have been found in previous studies, and it can be said that the research reports are too concentrated on basic theoretical studies.
[0005]
[Problems to be solved by the invention]
By the way, in order to realize a speaker recognition system with good real-time responsiveness and high accuracy, the variation of acoustic features due to differences in utterance content, utterance time and utterance time, and improvement of real-time responsiveness should be attempted. Therefore, it is necessary to solve problems such as inconsistency with the improvement of identification accuracy. This can be said for both speaker verification ASV and speaker identification ASI. However, in the case of speaker identification ASI, as described above, the system processing is more efficient than the case of speaker verification ASV. Since it is complicated and difficult, the problems to be solved become even larger, and the system development is currently delayed.
[0006]
An object of the present invention is to provide a speaker identification method, a system thereof, and a program that can perform speaker identification with high accuracy and good real-time responsiveness.
[0007]
[Means for Solving the Problems]
The present invention is a speaker identification method for determining who the input identified speech is from among a plurality of pre-registered speakers, and sample data for determination processing in the first stage After creating the speech feature parameters for each speaker using the speech data obtained from each speaker, the first code for each speaker by clustering using these feature parameters Create a book, store these first codebooks in the first codebook storage means, and differ from the sample data as candidate data for the second stage determination process after narrowing down to multiple candidates After creating voice feature parameters for each speaker using voice data obtained from multiple speakers in the environment, clustering using these feature parameters for each speaker Create a second codebook, store these second codebooks in the second codebook storage means, and determine who the identified voice is from among the speakers After generating the speech feature parameters using the input data of the identified speech, the speaker likelihood calculation means calculates the feature parameters and the first codebook stored in the first codebook storage means. The speaker likelihood for each speaker is calculated using the first stage determination means, and the minimum speaker likelihood and the other speaker likelihoods of these speaker likelihoods And whether each difference is larger than the first threshold value η set in advance or greater than or equal to the first threshold value η, and all the differences are larger than the first threshold value η or If determined to be greater than or equal to the first threshold η, the speaker with the lowest speaker likelihood is the only candidate Whether the minimum speaker likelihood is within the range between the second threshold θmin and the third threshold θmax set in advance for each speaker by the second stage unique candidate determination means. The candidate is accepted when it is determined that it falls within the range between these threshold values θmin and θmax, and is rejected when it is determined that it does not enter, while at least one of the differences is the first difference If it is determined that it is less than or equal to one threshold value η or smaller than the first threshold value η, the speaker with the lowest likelihood of speaker and the minimum speaker likelihood with the difference determined to be less than or less than The absolute value for each of a plurality of candidates using the feature parameter and the second codebook stored in the second codebook storage means by the absolute value average vector error calculating means. After calculating the average vector error, the second stage multiple candidate decision Determines whether or not the minimum absolute value average vector error of these absolute value average vector errors falls within the range between the second threshold value θmin and the third threshold value θmax, and these threshold values θmin, When it is determined that it falls within the range between θmax, the candidate of the minimum absolute value average vector error is accepted, and when it is determined that it does not enter, it is rejected.
[0008]
Here, “when all of the differences are determined to be greater than the first threshold η or greater than or equal to the first threshold η” means that all the other stories for the minimum speaker likelihood It is a case where it is determined that the human likelihood is separated by a value larger than the first threshold value η, or is more than the first threshold value η. In short, the minimum speaker likelihood is the other It is a case where it is determined that the value is prominently small compared to the speaker likelihood.
[0009]
On the other hand, “when it is determined that at least one of the differences is equal to or smaller than the first threshold η or smaller than the first threshold η” refers to speaker likelihood other than the minimum speaker likelihood. Is determined to be present when the difference from the minimum speaker likelihood is less than or smaller than the first threshold value η. This is a case where it is determined that at least one speaker likelihood with a value close to the likelihood exists.
[0010]
In such a speaker identification method of the present invention, first, the speaker likelihood is calculated and the first stage determination is performed using the first threshold η, and then the first step is performed according to the determination result. Change the contents of the two-step judgment process. That is, in the first stage determination, if it is determined that the minimum speaker likelihood is a small value that is prominently smaller than other speaker likelihoods, the minimum speaker likelihood is The speaker is used as a single candidate as it is, and a second stage determination process is performed to determine whether or not the minimum speaker likelihood is within the range between the second threshold θmin and the third threshold θmax. On the other hand, if it is determined in the first step that there is at least one speaker likelihood with a value close to the minimum speaker likelihood, only the speaker with the minimum speaker likelihood is used. The second threshold value θmin and the third threshold value θmax are calculated by calculating an absolute average vector error, including a speaker having a speaker likelihood likelihood value close to the minimum speaker likelihood likelihood. The second stage determination process is performed using.
[0011]
For this reason, when performing speaker identification, the determination is performed in two stages, and the determination in the second stage is a simple process according to the determination result in the first stage, and the process is more complicated than that. As a result, the processing time required for speaker identification can be shortened and real-time responsiveness can be improved as compared with the case where uniform determination processing is performed for all contents.
[0012]
In the first stage determination process, when it is determined that there is at least one speaker likelihood with a value close to the minimum speaker likelihood, a value close to the minimum speaker likelihood is Since there is a possibility that the speaker with the speaker likelihood is the same as the person who has input the identified speech, in that case, after performing the process of calculating the absolute value average vector error, the determination in the second stage is performed. As described above, it is possible to improve the identification accuracy while improving the real-time response as described above, thereby achieving the object.
[0013]
In the speaker identification method described above, when setting the first threshold value η, voice data obtained from any one of a plurality of speakers is used as the first threshold setting test data. After creating the speech feature parameters, the speaker likelihood calculation means uses the feature parameters and the first codebook stored in the first codebook storage means to talk about a plurality of speakers. It is desirable to calculate the sex likelihood and set the difference between the speaker likelihood for one arbitrary person and the speaker likelihood of the value closest to the speaker likelihood as the first threshold η.
[0014]
When the first threshold value η is set in this way, any one speaker who provided the voice data as the first threshold setting test data and the voice feature most similar to this speaker Since the first threshold value η is set on the basis of the difference in speaker likelihood with respect to the speaker having “”, it is possible to set an appropriate value as the threshold value used in the first stage determination process.
[0015]
Furthermore, in the speaker identification method described above, when setting the second threshold value θmin and the third threshold value θmax, a plurality of each is obtained from each of the plurality of speakers as test data for setting the second and third threshold values. A plurality of voice feature parameters are created for each speaker by using the voice data, and then the feature code and the first code stored in the first codebook storage means by the speaker likelihood calculation means A speaker is used to calculate a plurality of speaker likelihoods for each speaker using a book, and the minimum value among the plurality of speaker likelihoods calculated for each speaker is calculated for each speaker. It is desirable to set the second threshold value θmin for each speaker and the maximum value among the plurality of speaker likelihoods calculated for each speaker as the third threshold value θmax for each speaker.
[0016]
When the second threshold value θmin and the third threshold value θmax are set in this way, it is possible to set appropriate values as threshold values used in the second-stage determination process.
[0017]
Then, when the second threshold value θmin and the third threshold value θmax are set as described above, a process is performed to determine who the identified speech is from among a plurality of speakers. As a result, if the person who has input the identified voice is accepted as one of a plurality of speakers, a combination of input data of the identified voice and sample data can be used to Re-create the first codebook for the speaker determined to match the person who entered the identified speech, and recreate the first codebook and the identified speaker among multiple speakers Using the plurality of second and third threshold setting test data for the speaker determined to match the person who has input the voice and the input data of the identified voice, the identified voice of the plurality of speakers is determined. It was determined to match the person who entered it It is desirable to update the second threshold value θmin and the third threshold value θmax for the speaker.
[0018]
When the second threshold value θmin and the third threshold value θmax are set to be updated using the input data of the identified voice that is accepted as the voice of the person in this way, physical condition, health, etc. When the characteristics of the voices of a plurality of registered speakers change due to the change in the number, the setting of the second threshold value θmin and the third threshold value θmax may be gradually changed in accordance with the change. It becomes possible.
[0019]
In the speaker identification method described above, it is desirable that the input data of the identified speech is data shorter than the sample data for the first stage determination process.
[0020]
For example, it is desirable that the input data of the identified voice is data for 5 to 10 seconds, and the sample data for the determination process in the first stage is data for 20 to 30 seconds.
[0021]
Thus, when the input data of the identified voice is shortened, the time required for speaker identification can be shortened, and real-time responsiveness can be improved.
[0022]
In the speaker identification method described above, a plurality of second codebooks are created for each speaker, and an absolute value average vector for each of a plurality of candidates using the second codebook. When calculating the error, it is desirable to calculate a plurality of absolute value average vector errors for each candidate and calculate the average value of these absolute value average vector errors.
[0023]
As described above, when a plurality of second codebooks are prepared for each speaker and the average value of the absolute average vector error is calculated for each candidate, the accuracy of speaker identification is further improved. This can be further improved.
[0024]
Further, in the speaker identification method described above, a mel cepstrum or the like can be suitably used as the characteristic parameter. In the case of a mel cepstrum, a 16th order mel cepstrum is preferable in view of a reduction in processing time (a reduction in calculation amount) and ensuring of identification accuracy, but is not limited thereto. .
[0025]
Further, as a system for realizing the speaker identification method of the present invention described above, the following speaker identification system of the present invention can be cited.
[0026]
That is, the present invention is a speaker identification system that determines who the input identified voice is from among a plurality of pre-registered speakers. Sample data feature parameter creation means for creating voice feature parameters for each speaker using voice data acquired from a plurality of speakers as sample data, and created by the sample data feature parameter creation means First codebook creation means for creating a first codebook for each speaker by clustering using feature parameters, and first codebook created for each speaker by the first codebook creation means A first codebook storage means for storing a codebook and a different environment from the sample data as candidate data for the second stage determination process after narrowing down to a plurality of candidates The feature parameter creation means for candidate data that creates speech feature parameters for each speaker using speech data acquired from a plurality of individual speakers, and the feature parameters created by the feature parameter creation means for candidate data The second codebook creating means for creating a second codebook for each speaker by performing clustering using the second codebook, and the second codebook created for each speaker by the second codebook creating means And a second codebook storage means for storing voice, and an input for generating voice feature parameters using input data of the identified voice when determining who the identified voice is among a plurality of speakers Feature parameter creation means for data, feature parameters created by the feature parameter creation means for input data and the first codebook storage means Speaker likelihood likelihood calculating means for calculating speaker likelihood for each of a plurality of speakers using the first codebook, and speaker characteristics calculated by the speaker likelihood likelihood calculating means Whether or not each difference between the minimum likelihood of speaker and likelihood of other speakers is greater than a first threshold η set in advance or greater than a first threshold η The first speaker determining means, and the first speaker determining means, when all the differences are determined to be greater than or equal to the first threshold η, the smallest speaker Whether the speaker with the likelihood likelihood is the only candidate and the minimum speaker likelihood falls within the range between the second threshold θmin and the third threshold θmax set in advance for each speaker. A second stage that accepts the candidate when it is determined that it falls within the range between these threshold values θmin and θmax, and rejects when it is determined that it does not enter If the only candidate determination means and the first stage determination means determine that at least one of the differences is less than or equal to the first threshold value η or less than the first threshold value η, it is determined that the difference is less or less The feature parameter and the second code created by the feature parameter creation means for input data with the speaker having the speaker likelihood and the speaker having the smallest speaker likelihood being the difference as the plurality of candidates Absolute value average vector error calculation means for calculating an absolute value average vector error for each of a plurality of candidates using the second code book stored in the book storage means, and calculation by the absolute value average vector error calculation means It is determined whether or not the minimum absolute value average vector error among the absolute value average vector errors is within a range between the second threshold value θmin and the third threshold value θmax, and the threshold values θmin and θmax are Among A second-stage multi-candidate determination means is provided that accepts a candidate with the smallest absolute value average vector error when it is determined to fall within the range, and rejects when it is determined not to fall within the range.
[0027]
In such a speaker identification system of the present invention, the actions and effects obtained by the above-described speaker identification method of the present invention can be obtained as they are, thereby achieving the object.
[0028]
The speaker identification system described above further includes second and third threshold automatic updating means for automatically performing update settings of the second threshold θmin and the third threshold θmax, and the second and third threshold automatic updating. As a result of performing the process of determining who is the voice of the identified voice among the plurality of speakers, the means is that the person who has input the identified voice is one of the plurality of speakers The first codebook for the speaker determined to match the person who entered the identified voice among a plurality of speakers by combining the input data of the identified voice and the sample data For the second and third threshold values for the first codebook that has been re-created and the speakers determined to match the person who entered the identified speech among the plurality of speakers. Test data and input data of identified voice And the second threshold value θmin and the third threshold value θmax are set to be updated for the speaker determined to match the person who input the identified speech among the plurality of speakers. Is desirable.
[0029]
When such second and third threshold automatic update means are provided, when the voice characteristics of each registered speaker change due to changes in physical condition, health, etc., they are followed. Thus, the settings of the second threshold value θmin and the third threshold value θmax can be gradually and automatically changed.
[0030]
Furthermore, the present invention is a program for causing a computer to function as a speaker identification system that determines who is the voice of a plurality of speakers registered in advance. , Sample data feature parameter creation means for creating speech feature parameters for each speaker using speech data acquired from a plurality of speakers as sample data for the first stage determination processing, and the sample data Clustering using the feature parameters created by the feature parameter creation means, first code book creating means for creating a first code book for each speaker, and each story by the first code book creating means First codebook storage means for storing the first codebook created for each person, and the second stage determination process after narrowing down to multiple candidates Candidate data feature parameter creation means for creating speech feature parameters for each speaker using speech data obtained from a plurality of speakers in an environment different from the sample data as candidate data, and for this candidate data Clustering using the feature parameters created by the feature parameter creation means, second codebook creation means for creating a second codebook for each speaker, and each speaker by this second codebook creation means Second codebook storage means for storing a second codebook created for each of the input data, and input data of the identified speech when determining who the identified speech is from among a plurality of speakers The feature parameter creation means for input data that uses the feature parameter creation means for input data and the feature parameter creation means for input data Speaker-likelihood calculating means for calculating speaker likelihood for each of a plurality of speakers using the collection parameter and the first codebook stored in the first codebook storage means; Whether each difference between the minimum speaker likelihood and the other speaker likelihoods calculated by the likelihood calculating means is greater than a preset first threshold η First stage determination means for determining whether or not the first threshold value η is greater than the first threshold value η or more than the first threshold value η by the first stage determination means The speaker with the lowest speaker likelihood is the only candidate, and the minimum speaker likelihood is determined by the second threshold value θmin and the third threshold value preset for each speaker. Whether or not it falls within the range between the threshold values θmax, and if it is judged that it falls within the range between these threshold values θmin and θmax, the candidate is accepted. When it is determined that it does not enter, the second stage only candidate determination means to reject, and the first stage determination means, at least one of the differences is equal to or less than the first threshold η or less than the first threshold η When it is determined to be small, a speaker having a speaker likelihood likelihood and a speaker having the minimum speaker likelihood having a difference determined to be small or small are set as a plurality of candidates, and the feature for input data Absolute value average vector error calculation for calculating an absolute value average vector error for each of a plurality of candidates using the feature parameter created by the parameter creation means and the second code book stored in the second code book storage means And the minimum absolute value average vector error of the absolute value average vector errors calculated by the absolute value average vector error calculation means is in a range between the second threshold θmin and the third threshold θmax. A second stage that accepts the candidate of the minimum absolute value average vector error when it is determined that it falls within the range between these threshold values θmin and θmax, and rejects when it is determined that it does not enter The present invention is for causing a computer to function as a speaker identification system including a candidate determination unit.
[0031]
Note that the above-described program or a part thereof is, for example, a magneto-optical disk (MO), a read-only memory (CD-ROM) using a compact disk (CD), a CD recordable (CD-R), a CD rewritable. (CD-RW), read-only memory (DVD-ROM) using digital versatile disk (DVD), random access memory (DVD-RAM) using DVD, flexible disk (FD), magnetic tape, Recording, storage, distribution, etc. on a recording medium such as a hard disk, read only memory (ROM), electrically erasable and rewritable read only memory (EEPROM), flash memory, random access memory (RAM), etc. Possible, for example, a local area network LAN, Metropolitan Area Network (MAN), Wide Area Network (WAN), Internet, Intranet, Extranet, and other wired networks, wireless communication networks, and combinations of these transmission media It is also possible to carry it on a carrier wave. Furthermore, the program described above may be a part of another program, or may be recorded on a recording medium together with a separate program.
[0032]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 shows the overall configuration of a speaker identification system 10 of the present embodiment. FIG. 2 shows an explanatory diagram of a flow of processing when the speaker identification system 10 determines who the voice to be identified is among a plurality of speakers. Also, FIG. 3 shows an explanatory diagram of the flow of processing when the first threshold value η is initially set, and FIG. 4 shows the initial setting of the second threshold value θmin and the third threshold value θmax. An explanatory diagram of the flow of processing at the time is shown. Furthermore, FIG. 5 shows an explanatory diagram of the flow of processing when updating the second threshold value θmin and the third threshold value θmax.
[0033]
In FIG. 1, the speaker identification system 10 is a system that determines who is the voice to be identified (speech to be identified) among a plurality of speakers registered in advance, Processing means 20 for performing various processes relating to speaker identification, storage means 40 for storing various data necessary for speaker identification, voice input means 60 for inputting the voice of the speaker, and speaker identification results are displayed. The display unit 70 and an output unit 80 for outputting the result of speaker identification are provided. The total number N of registered speakers is, for example, N = 100 or the like, and each speaker is assigned a speaker number n (n = 1, 2, 3,..., N).
[0034]
In addition, a network may be interposed between the voice input unit 60 and the processing unit 20 or between the display unit 70 or the output unit 80 and the processing unit 20. That is, the voice input means 60 may input voice of a speaker at a remote location, and the display means 70 and the output means 80 provide an identification result to a viewer or user at a remote location. It may be a thing.
[0035]
Here, the network includes various forms such as LAN, MAN, WAN, the Internet, an intranet, an extranet, or a combination thereof, and is wired or wireless, and further, wired and wireless. Regardless of whether it is a mixed type of radio, in short, it may be anything that can transmit information at a certain speed between a plurality of points (regardless of the length of distance).
[0036]
The processing unit 20 includes a sample data feature parameter creation unit 21, a candidate data feature parameter creation unit 22, an input data feature parameter creation unit 23, a first code book creation unit 24, and a second code book creation unit. 25, speaker likelihood calculation means 26, absolute value average vector error calculation means 27, first stage determination means 28, second stage only candidate determination means 29, second stage multiple candidate determination means 30, first threshold value initial setting means 31, second and third threshold value initial setting means 32, and second and third threshold value automatic updating means 33.
[0037]
The storage means 40 includes a first code book storage means 41, a second code book storage means 42, a first threshold storage means 43, a second threshold storage means 44, a third threshold storage means 45, and a sample data storage. Means 46, candidate data storage means 47, identified voice input data storage means 48, first threshold setting test data storage means 49, and second and third threshold setting test data storage means 50. It is configured.
[0038]
The sample data feature parameter creation means 21 extracts speech feature amounts using speech data acquired from a plurality of (N) individual speakers as sample data used for the determination process in the first stage, and features speech features. A process for creating parameters for each speaker is performed. Since the 16th order mel cepstrum is suitable as the characteristic parameter, in the present embodiment, the 16th order mel cepstrum will be described, but the feature parameter is not limited to this. Here, the length of the voice data acquired as sample data is, for example, 20 to 30 seconds per speaker. Therefore, if one frame is 10 milliseconds, a 16th order mel cepstrum is created from 2000 to 3000 frames, for example.
[0039]
The candidate data feature parameter creation means 22 is a voice acquired from a plurality (N persons) of each speaker in a different environment from the sample data as candidate data used in the second stage determination process after narrowing down to a plurality of candidates. Using the data, a voice feature amount is extracted, and a process of creating a voice feature parameter for each speaker is performed. The characteristic parameter is a 16th order mel cepstrum as in the case of the sample data. Here, the length of the voice data acquired as candidate data is, for example, 5 to 10 seconds per speaker. Therefore, if one frame is 10 milliseconds, for example, a 16th-order mel cepstrum is created from 500 to 1000 frames. Further, t pieces of candidate data having a length of 5 to 10 seconds are prepared for one speaker (for example, t = 3 to 5). The candidate data is preferably shorter than the sample data.
[0040]
The input data feature parameter creation means 23 uses the input data of the identified speech to extract the speech feature amount when determining who the identified speech is from among a plurality of speakers. A process for creating a voice feature parameter is performed. The feature parameter is a 16th order mel cepstrum as in the case of the sample data and candidate data. Here, the length of the voice data input for speaker identification is, for example, 5 to 10 seconds per speaker. Therefore, if one frame is 10 milliseconds, for example, a 16th-order mel cepstrum is created from 500 to 1000 frames. Each of these mel cepstrums is a vector X composed of 16 numbers.1, X2, ..., Xk, ..., XMIt is. Where M is the number of frames and Xk= (Xk(1), Xk(2), ..., Xk(16)) (k = 1, 2,..., M). The input data of the identified voice is preferably shorter than the sample data.
[0041]
The first code book creating unit 24 performs processing for creating a first code book for each speaker by performing clustering using the feature parameters created by the sample data feature parameter creating unit 21. . The first codebook is the centroid vector Ci n, N, i = 1, 2,..., L. Here, N is the total number of registered speakers, for example, N = 100. L is the codebook size (quantization point), for example, L = 128, L = 256, or the like. Therefore, a first codebook of size L is prepared for N people. And each centroid vector Ci nAre each composed of 16 numerical values, and Ci n= (Ci n(1), Ci n(2), ..., Ci n(16)).
[0042]
The second code book creating unit 25 performs a process of creating a second code book for each speaker by performing clustering using the feature parameters created by the candidate data feature parameter creating unit 22. . The second codebook is the centroid vector Ci n, v, N, i = 1, 2,..., L, and v = 1, 2,. Here, t is the number of second codebooks prepared for one candidate (speaker), for example, t = 3-5. Therefore, the second codebook of size L is prepared for N people, that is, N × t. And each centroid vector Ci n, vAre each composed of 16 numerical values, and Ci n, v= (Ci n, v(1), Ci n, v(2), ..., Ci n, v(16)).
[0043]
The speaker likelihood calculation means 26 is a feature parameter X created by the input data feature parameter creation means 23.kAnd the first code book C stored in the first code book storage means 41i nAnd performing vector quantization (VQ: Vector Qantization) to calculate speaker likelihood for each of a plurality of speakers. Specifically, processing based on the following formula (1) is performed.
[0044]
[Expression 1]
Figure 0004098015
[0045]
In the above formula (1), LnIs the speaker likelihood, the superscript n indicates the speaker number (n = 1, 2,..., N), N is the total number of registered speakers, for example, N = 100, etc. It is. M is the number of frames. d (Xk, Ci n) Is the vector XkAnd vector Ci nAnd the sum of the squares of the differences between the components.k= (Xk(1), Xk(2), ..., Xk(16)), Ci n= (Ci n(1), Ci n(2), ..., Ci n(16)), it is as follows.
[0046]
d (Xk, Ci n) = (Xk(1) -Ci n(1))2+ (Xk(2) -Ci n(2))2+ ... + (Xk(16) -Ci n(16))2
[0047]
Also, min (1 ≦ i ≦ L) [d (Xk, Ci n)], Since the codebook size is L (for example, L = 256), since L first codebooks have been created for the nth speaker, d (Xk, Ci n) Is obtained for i = 1, 2,..., L, respectively, and the minimum value among them is taken.
[0048]
Then, min (1 ≦ i ≦ L) [d (Xk, Ci n)] For all M frames, M min (1 ≦ i ≦ L) [d (Xk, Ci n)] (K = 1, 2,..., M), so that these M min (1 ≦ i ≦ L) [d (Xk, Ci n)] And dividing by M, min (1 ≦ i ≦ L) [d (Xk, Ci n)] Average value. This average value is the speaker likelihood L for the nth speaker.nIt is. The above calculation is performed for all N speakers, and L1, L2, ..., LNAsk for.
[0049]
The absolute average vector error calculating means 27 is a feature parameter X created by the input data feature parameter creating means 23.kAnd the second code book C stored in the second code book storage means 42i n, vAnd the absolute value average vector error ε for each of a plurality of candidates (speakers) selected in the determination process in the first stage.q, vOr εq, ΕqProcessing to calculate min. Specifically, processing based on the following equation (2) is performed.
[0050]
[Expression 2]
Figure 0004098015
[0051]
In the above equation (2), εq, vIs the absolute average vector error for each of the plurality of candidates (speakers) selected in the first stage determination process, the subscript q is the candidate number, and the subscript v is A plurality (t, for example, t = 3, etc.) of candidate data is prepared for each candidate (speaker), and a plurality of (t, for example, t = 3, etc.) second codebooks are created. Therefore, the numbers (v = 1, 2,..., T) given to those second codebooks. M is the number of frames. d '(Xk, Ci n, v) Is the speaker likelihood LnD (X) in the above equation (1)k, Ci n), And the vector XkAnd vector Ci n, vMeaning the sum of absolute values of differences between components, and Xk= (Xk(1), Xk(2), ..., Xk(16)), Ci n, v= (Ci n, v(1), Ci n, v(2), ..., Ci n, v(16)), it is as follows. D '(Xk, Ci n, v) In () is a speaker number corresponding to the candidate number q (a primitive speaker number for a speaker given the candidate number q in the first stage determination process).
[0052]
d '(Xk, Ci n, v) = | Xk(1) -Ci n, v(1) | + | Xk(2) -Ci n, v(2) | + ... + | Xk(16) -Ci n, v(16) |
[0053]
Also, min (1 ≦ i ≦ L) [d ′ (Xk, Ci n, v)], Since the codebook size is L (for example, L = 256, etc.), since L second codebooks have been created for the vth candidate data of the nth speaker, d ′ ( Xk, Ci n, v) Is obtained for i = 1, 2,..., L, respectively, and the minimum value among them is taken.
[0054]
Then, min (1 ≦ i ≦ L) [d ′ (Xk, Ci n, v)] For all M frames, M min (1 ≦ i ≦ L) [d ′ (Xk, Ci n, v)] (K = 1, 2,..., M), so that these M min (1 ≦ i ≦ L) [d ′ (Xk, Ci n, v)] And dividing by M, min (1 ≦ i ≦ L) [d ′ (Xk, Ci n, v)] Average value. This average value is the absolute average vector error ε based on the vth candidate data of the nth speaker (speaker corresponding to the candidate number q).q, vIt is.
[0055]
Further, for the nth speaker (speaker corresponding to the candidate number q), each absolute value average vector error based on each candidate data (each second codebook) from v = 1 to v = t. εq, vThe average value of εqAnd That is, the absolute average vector error ε for the nth speaker (speaker corresponding to the candidate number q)qIs obtained by the following equation.
[0056]
εq= (Εq, 1+ Εq, 2+ ... + εq, t) / T
[0057]
The above calculation is performed for all of the plurality of candidates (speakers) selected in the first stage determination process, and the absolute value average vector error ε of all candidates is calculated.qAsk for. Then these εqFind the minimum value ofqLet min.
[0058]
The first stage determination means 28 includes N speaker likelihood likelihoods L calculated by the speaker likelihood likelihood calculation means 26.nMinimum speaker likelihood L among (n = 1, 2,..., N)xAnd min difference between speaker likelihood and otherqIs a process for determining whether or not is greater than a preset first threshold value η.
[0059]
Where minq= Lq-L1(Q = 2, 3, 4,...) L1Is the calculated N speaker likelihood LnThe smallest one (L = 1, 2,..., N) (Lx) Is replaced by subscript 1 and L2, LThree, LFour, ... are the substituting subscripts 2, 3, 4,... For the second, third, fourth,. In addition, since such replacement is performed for convenience of explanation, it is not always necessary to perform replacement in the same manner as described above for calculation processing. In short, the determination processing as described above is performed as a result. It only has to come to be.
[0060]
The second stage only candidate determination means 29 is connected to the difference minqIs determined to be greater than the first threshold η, the minimum speaker likelihood LxSpeaker (speaker number x) is the only candidate, and the minimum speaker likelihood LxIs the second threshold value θmin set for the speaker of this speaker number xxAnd the third threshold θmaxxIt is determined whether it falls within the range between. And these threshold values θminx, ΘmaxxWhen it is determined that it falls within the range between the two, it is accepted that the speaker with the speaker number x, which is the only candidate, matches the person who has input the identification speech, and the threshold θminx, ΘmaxxWhen it is determined that it does not fall within the range between, the process of rejecting is performed.
[0061]
The second stage multi-candidate determination means 30 is the absolute value average vector error ε calculated by the absolute value average vector error calculation means 27.qThe smallest absolute mean vector error εqmin is this εqSecond threshold θmin set for min candidates (the speaker number of this candidate is y)yAnd the third threshold θmaxyIt is determined whether it falls within the range between. And these threshold values θminy, ΘmaxyWhen it is determined that it falls within the range between εqThe min candidate (speaker with speaker number y) is accepted as matching the person who entered the identification voice, and the threshold θminy, ΘmaxyWhen it is determined that it does not fall within the range between, the process of rejecting is performed.
[0062]
The first threshold initial setting means 31 performs an initial setting process of the first threshold η (see FIG. 3).
[0063]
The second and third threshold value initial setting means 32 has a second threshold value θmin.nAnd the third threshold θmaxnThe initial setting process (n = 1, 2,..., N) is performed (see FIG. 4).
[0064]
The second and third threshold automatic updating means 33 is configured to output the second threshold θminnAnd the third threshold θmaxn(N = 1, 2,..., N) is automatically updated (see FIG. 5).
[0065]
The first code book storage means 41 stores the first code book Ci nIs memorized. A first codebook of size L (for example, L = 256) is prepared for each of the N registered speakers one by one.
[0066]
The second code book storage means 42 stores the second code book Ci n, vIs memorized. A second codebook of size L (for example, L = 256) is prepared for each of the N registered speakers by a plurality (one, for example, t = 3, etc.).
[0067]
The first threshold storage unit 43 stores the first threshold η. Only one first threshold value η is prepared in the system 10 and is not prepared individually for each registered speaker.
[0068]
The second threshold value storage means 44 has a second threshold value θmin.nIs memorized. Second threshold θminnAre individually prepared for each registered speaker (speaker numbers n = 1, 2,..., N).
[0069]
The third threshold value storage means 45 stores the third threshold value θmax.nIs memorized. Third threshold θmaxnAre individually prepared for each registered speaker (speaker numbers n = 1, 2,..., N).
[0070]
The sample data storage means 46 stores audio data as sample data (for example, 20 to 30 seconds / speaker), and performs saving in a file format such as WAV format. Sample data is prepared one by one for all N registered speakers.
[0071]
The candidate data storage unit 47 stores voice data as candidate data (for example, 5 to 10 seconds / speaker), and performs saving in a file format such as a WAV format. Candidate data is prepared for each of the N registered speakers by a plurality (t, for example, t = 3, etc.).
[0072]
The identified voice input data storage means 48 stores the input data (for example, 5 to 10 seconds) of the identified voice, and stores it in a file format such as WAV format. The stored input data is used for a learning function by the system 10 and is used for speaker identification processing after the next time (see FIG. 5).
[0073]
The first threshold setting test data storage means 49 stores audio data as first threshold setting test data (for example, 5 to 10 seconds) used for initial setting of the first threshold η. Saving in a file format such as WAV format. The first threshold setting test data is voice data by any one of N registered speakers.
[0074]
The second and third threshold value setting test data storage means 50 includes a second threshold value θmin.nAnd the third threshold θmaxnAudio data as second and third threshold setting test data (for example, 5 to 10 seconds) used for the initial setting is stored, for example, saved in a file format such as WAV format. The second and third threshold setting test data is voice data obtained by inputting each of the N registered speakers a plurality of times (H times, for example, H = 10 times, etc.).
[0075]
Each of the means 21 to 33 constituting the processing means 20 includes a central processing unit (CPU) provided inside a computer main body (including not only a personal computer but also a higher model thereof), and this This is realized by one or a plurality of programs that define the operation procedure of the CPU.
[0076]
The processing means 20 is not limited to one realized by one computer or one CPU, and may be realized by performing distributed processing with a plurality of computers or the like.
[0077]
Further, each means 41 to 50 constituting the storage means 40 is preferably realized by, for example, a hard disk or the like. However, as long as there is no problem in storage capacity, access speed, etc., ROM, EEPROM, flash memory, RAM, MO, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, FD, magnetic tape, or a combination thereof may be employed.
[0078]
As the voice input means 60, various voice recording microphones and the like can be employed.
[0079]
As the display means 70, for example, a liquid crystal display, a CRT display, an organic EL (electroluminescence) display, an ECL (electrochemiluminescence) display, a projector and a screen, or a combination thereof can be employed.
[0080]
As the output means 80, a printer, a plotter, or a combination thereof can be employed.
[0081]
In this embodiment, speaker identification processing for the identified speech is performed by the speaker identification system 10 as follows.
[0082]
In FIG. 2, first, using voice input means 60, for example, voice data of 20 to 30 seconds per speaker is acquired as sample data from all N (for example, N = 100) registered speakers. These acquired sample data are stored and saved in the sample data storage means 46 (step S1).
[0083]
Subsequently, using the sample data of each speaker, an acoustic feature amount is extracted by the sample data feature parameter creation means 21 to create a feature parameter for each speaker's voice (step S2). The characteristic parameter is a 16th order mel cepstrum.
[0084]
Further, clustering processing is performed by the first codebook creating means 24 using the obtained feature parameters of each speaker, and a first one for each of N speakers (n = 1, 2,..., N). Codebook Ci nAre created (step S3), and the first codebook C created is created.i nIs stored and saved in the first codebook storage means 41 (step S4). First codebook C for one speaker (nth speaker)i nSince the codebook size is L, it is configured by L (for example, L = 256) codebook vectors.
[0085]
Next, using the voice input means 60, a plurality of (t = 5 to 10 seconds) voice data, for example, of 5 to 10 seconds per speaker is obtained from all N (for example, N = 100, etc.) registered speakers as candidate data. (For example, t = 3), and the obtained candidate data is stored and saved in the candidate data storage means 47 (step S11).
[0086]
Next, using the candidate data of each speaker, the feature data for the candidate data is extracted by the candidate data feature parameter creation means 22 to create a feature parameter for each speaker's voice (step S12). The characteristic parameter is a 16th order mel cepstrum.
[0087]
Further, clustering processing is performed by the second codebook creating means 25 using the obtained feature parameters of each speaker, and a plurality (t) of N speakers (n = 1, 2,..., N). 2) second codebook Ci n, v(Step S13), and the generated second codebook Ci n, vIs stored in the second code book storage means 42 (step S14). Second codebook C for one speaker (nth speaker)i n, vAre prepared in number (t), and the plurality of second codebooks Ci n, vSince each of (v = 1, 2,..., T) has a codebook size of L, it is composed of L codebook vectors (for example, L = 256).
[0088]
After performing the above preprocessing, the first threshold η and the second threshold θminn, And the third threshold θmaxnThe details are described later (steps S41 to S44 in FIG. 3 and steps S51 to S54 in FIG. 4).
[0089]
Then, after pre-processing and initial setting of each threshold value, when the speaker identification system 10 is activated and speaker identification is actually performed, the following processing is performed.
[0090]
In FIG. 2, first, the voice to be identified is input by using the voice input means 60 and is taken into the speaker identification system 10 (step S21). At this time, the input data to be captured is audio data of 5 to 10 seconds, for example.
[0091]
Subsequently, using the input data of the identified speech, the acoustic feature is extracted by the input data feature parameter creating means 23 to create a feature parameter for the identified speech (step S22). Since the feature parameter is a 16th order mel cepstrum and the number of frames is M, M vectors X1, X2, ..., XMIs created.
[0092]
Furthermore, the obtained feature parameters M vectors X1, X2, ..., XMAnd the first code book C stored and saved in the first code book storage means 41i nUsing the above, the speaker likelihood calculation means 26 performs vector quantization (VQ), and the speaker likelihood L for each speaker (n = 1, 2,..., N).nIs calculated (step S23).
[0093]
Next, the calculated speaker likelihood Ln(The superscript “n” is a speaker number, and n = 1, 2,..., N).x(Speaker likelihood for the speaker with speaker number x) using subscript 1 as L1Shall be replaced. Also, the calculated speaker likelihood LnThe second smallest value of L using subscript 22Shall be replaced. Similarly, the calculated speaker likelihood LnL is a small value for the third, fourth, ...Three, LFour, ... shall be replaced.
[0094]
Then, by the first stage determination means 28, the minimum speaker likelihood Lx(= L1) And other speaker likelihood Ln(= L2, LThree, LFour, ...) difference minqIs greater than a preset first threshold value η (step S24). That is, minq= Lq-L1(Q = 2, 3, 4,...), And this minqIs determined based on the following equation.
[0095]
minq> Η
[0096]
Where all minqIs determined to be greater than the first threshold η, L2-L1, LThree-L1, LFour-L1,... Are all greater than the first threshold η, so that L1L for the value of2, LThree, LFourThis means that the values of, ... are separated. Therefore, the minimum speaker likelihood Lx(= L1) But other speaker likelihood Ln(= L2, LThree, LFour,...), And in this case, the speaker likelihood Lx(= L1) (Speaker number x) as the only candidate, the process proceeds to the next second stage determination process.
[0097]
Subsequently, speaker likelihood LxAfter the speaker is made the only candidate, the second stage unique candidate judging means 29 judges whether or not this unique candidate matches the person who inputted the identification voice (step S25). In this determination, speaker likelihood LxIs a preset second threshold value θmin for the speaker of speaker number xxAnd the third threshold θmaxxIt is determined whether or not it falls within the range between.
[0098]
And speaker likelihood LxIs the second threshold θminxAnd the third threshold θmaxxSpeaker likelihood L when it is determined that it falls within the range betweenxAre accepted as matching with the person who inputted the identification voice (step S26), and the speaker likelihood LxIs the second threshold θminxAnd the third threshold θmaxxIf it is determined that it does not fall within the range betweenxAre rejected on the assumption that they do not coincide with the person who has input the identification voice (step S27).
[0099]
On the other hand, in step S24, each difference minqIf it is determined that at least one of the values is less than or equal to the first threshold η, L2-L1, LThree-L1, LFour-L1,..., There is a difference equal to or less than the first threshold value η.1The speaker likelihood that is close to L2, LThree, LFour, ... means that it exists in. In this case, the minimum speaker likelihood Lx(= L1) Speaker having a speaker likelihood likelihood determined to be close to (ie, the minimum speaker likelihood Lx) And the minimum speaker likelihood L).xAs the plurality of candidates, the process proceeds to the next second stage determination process. For example, L2-L1, LThree-L1Is less than or equal to the first threshold η and LFour-L1, LFive-L1, L6-L1When it is determined that... Is larger than the first threshold η, L2And LThreeIs L1Since the value is close to L1Speaker likelihood L including1, L2, LThreeThe three speakers become a plurality of candidates. Therefore, min how many candidates areqIt varies depending on the determination result of> η, and may be all N registered speakers. In the following, in the determination process in step S24, minqSpeaker likelihood L determined to be ≦ ηq(Q = 2, 3,...)1And subscripts indicating the candidate number q includingq(Q = 1, 2,...) In the above example, L1, L2, LThreeIs LqIt becomes.
[0100]
Next, L1, The speaker likelihood likelihood of a speaker close to1Then, the absolute value average vector error for the plurality of candidates is calculated by the absolute value average vector error calculating means 27 (step S28).
[0101]
The processing by the absolute value average vector error calculating means 27 is first performed by the feature parameter X created by the input data feature parameter creating means 23.kAnd the second code book C stored in the second code book storage means 42i n, vAnd the absolute value average vector error ε for each of a plurality of candidates (speakers) selected in the determination process in the first stage of step S24.q, vIs calculated. At this time, a plurality (t, for example, t = 3, etc.) of absolute value average vector errors are calculated for each candidate. Therefore, for a candidate with candidate number q, εq, 1, Εq, 2, ..., εq, tIs calculated, the average value of these t absolute value average vector errors is obtained and εqAnd In addition, for all candidates, εqAnd these εqFind the minimum value of εqLet min.
[0102]
Thereafter, the second stage multiple candidate judging means 30 performs the minimum absolute value average vector error ε.qmin is εqThe second threshold θmin set in advance for the min candidate (the speaker number of this candidate is y)yAnd the third threshold θmaxyIt is determined whether or not it falls within the range between (step S29).
[0103]
And the smallest absolute value average vector error εqmin is the second threshold θminyAnd the third threshold θmaxyIf it is determined that it falls within the range betweenqSpeaker likelihood L that is a candidate for miny(= Lq) Is accepted as a match with the person who inputted the identification voice (step S30), and the minimum absolute value average vector error εqmin is the second threshold θminyAnd the third threshold θmaxyIf it is determined that it does not fall within the range betweenqSpeaker likelihood L that is a candidate for miny(= Lq) Is rejected because it does not match the person who entered the identification voice (step S31).
[0104]
Note that the result of speaker identification by the above processing may be appropriately displayed on the screen by the display means 70, printed by the output means 80, or used for personal authentication processing of various systems.
[0105]
Next, a process when the first threshold initial setting unit 31 performs the initial setting of the first threshold η will be described in detail.
[0106]
In FIG. 3, using the voice input means 60, voice data of any one of N registered speakers (speaker of speaker number P) is used as the first threshold setting test data. At the same time, the acquired voice data is stored and saved in the first threshold setting test data storage means 49 (step S41). At this time, the audio data to be captured is, for example, data for 5 to 10 seconds.
[0107]
Subsequently, using the first threshold value setting test data, the acoustic feature quantity is extracted by the input data feature parameter creation means 23, and the feature parameter X for the voice is extracted.k(K = 1, 2,..., M) are created (step S42). Feature parameter XkIs a 16th order mel cepstrum.
[0108]
Furthermore, the obtained feature parameter XkAnd the first code book C stored in the first code book storage means 41i nAre used to perform vector quantization (VQ) by the speaker likelihood calculation means 26, and speaker likelihood L for each of N registered speakers.n(N = 1, 2,..., N) is calculated (step S43). And the speaker likelihood L about the said arbitrary one (speaker number P)PAnd speaker likelihood L for each of N speakersnSpeaker likelihood LPIs determined as a first threshold value η, stored in the first threshold value storage means 43, and set (step S44).
[0109]
Next, the second threshold value θmin is set by the second / third threshold value initial setting means 32.nAnd the third threshold θmaxnThe processing when performing the initial setting will be described in detail.
[0110]
In FIG. 4, using the voice input means 60, a plurality (H, for example, H = 10, etc.) of voices from each of N registered speakers as second and third threshold setting test data. In addition to taking in the data, the taken-in voice data is stored and saved in the second / third threshold setting test data storage means 50 (step S51). At this time, the audio data to be captured is, for example, data of 5 to 10 seconds per speaker.
[0111]
Subsequently, using the second and third threshold setting test data, the input data feature parameter creating means 23 extracts the acoustic feature quantity, and the feature parameter X for the voice is extracted.k(K = 1, 2,..., M) are created for each of N speakers (H) (step S52). Feature parameter XkIs a 16th order mel cepstrum.
[0112]
Furthermore, the obtained feature parameter XkAnd the first code book C stored in the first code book storage means 41i nAre used to perform vector quantization (VQ) by the speaker likelihood calculation means 26, and a plurality (H) of each of N registered speakers (n = 1, 2,..., N). Speaker likelihood Ln, h(H = 1, 2,..., H) is calculated (step S53).
[0113]
Then, for the speaker with registration number n, H speaker likelihood Ln, hThe minimum value of (h = 1, 2,..., H) is set as the second threshold value θmin for the speaker.nAnd the maximum value is the third threshold θmax for the speakernAnd such a θminnAnd θmaxnIs determined for all N registered speakers (step S54). And the determined θminnAnd θmaxnAre stored and set in the second threshold storage means 44 and the third threshold storage means 45, respectively.
[0114]
Next, the second and third threshold value automatic updating means 33 performs the second threshold value θmin.nAnd the third threshold θmaxnThe processing when performing automatic update will be described in detail.
[0115]
In FIG. 5, at step S26 of FIG.xOf the speaker (speaker of the speaker number x) is accepted or L in step S30 of FIG.yAre received from the sample data storage means 46 (steps 20 to 30 seconds), for example (steps 20 to 30 seconds). S61), input data (for example, 5 to 10 seconds) of the identified voice input during the identification process is read from the identified voice input data storage means 48 (step S62).
[0116]
Subsequently, by using a combination of the read sample data and the input data of the identified voice, the acoustic feature amount is extracted by the sample data feature parameter creating means 21 and a feature parameter for the speech is created (step S63). ). The characteristic parameter is a 16th order mel cepstrum.
[0117]
Further, clustering processing is performed by the first codebook creating means 24 using the obtained feature parameters, and the first codebook C for the speaker (speaker number x or y) received is received.i n(N = x or y) is recreated (step S64), and the recreated first codebook Ci nIs stored in the first codebook storage means 41 and the data is updated (step S65).
[0118]
Thereafter, a plurality of (H, for example, H = 10, etc.) prepared second and third threshold setting test data (for example, 5 to 10 seconds) for the received speakers are set as the second and third threshold settings. Read from the test data storage means 50 (step S66).
[0119]
Subsequently, using the read second and third threshold setting test data and the input data of the identified voice, the acoustic feature quantity is extracted by the input data feature parameter creating means 23, and the feature parameter X for the voice is extracted.k(K = 1, 2,..., M) are created for the received speakers (H + 1) (step S67). Feature parameter XkIs a 16th order mel cepstrum. For example, when H = 10 test data for second and third threshold setting are initially prepared for the received speaker, the newly acquired input data of the identified speech is used as learning data ( H + 1) = 11 are created.
[0120]
Furthermore, the obtained feature parameter XkAnd the updated first codebook C stored in the first codebook storage means 41i n(N = x or y) is used to perform vector quantization (VQ) by the speaker likelihood calculation means 26, and the received speaker (speaker number x or y) (H + 1) Speaker likelihood Ln, h(H = 1, 2,..., H, H + 1) are calculated (step S68).
[0121]
Then, (H + 1) speaker likelihood L for the received speaker (speaker number n = x or y).n, hThe minimum value of (h = 1, 2,..., H, H + 1) is set to the updated second threshold value θmin for the speaker.nAnd the maximum value is the updated third threshold θmax for the speakernAnd θmin after these updatesnAnd θmaxnAre stored in the second threshold value storage means 44 and the third threshold value storage means 45, respectively, and update setting is performed (step S69).
[0122]
According to this embodiment, there are the following effects. That is, when performing speaker identification, the determination is performed in two stages, and the determination in the second stage is simplified according to the result of the determination by the first stage determination means 28 (step S24 in FIG. 2). Since it is divided into a case (step S25) and a case where the process is more complicated (steps S28 and S29), it is necessary for speaker identification as compared with a case where determination processing of uniform contents is performed for all. Processing time can be shortened and real-time responsiveness can be improved.
[0123]
In the determination process by the first stage determination means 28, the minimum speaker likelihood LxIf it is determined that there is at least one speaker likelihood with a value close to, the minimum speaker likelihood LxSince a speaker having a speaker likelihood with a value close to that may match the person who input the identified speech, in that case, the absolute average vector error εq, vOr εq, ΕqSince the second stage determination process (step S29) is performed after the min calculation process (step S28 in FIG. 2), the real-time response is improved as described above, and at the same time the identification accuracy is improved. be able to.
[0124]
Further, first threshold initial setting means 31 is provided, and as described with reference to FIG. 3, the first threshold initial setting means 31 provides the speaker's own likelihood L of the first threshold setting test data.PAnd speaker likelihood LPIs set as the first threshold value η, so that an appropriate value can be set as the threshold value used in the first-stage determination process.
[0125]
Then, second / third threshold value initial setting means 32 is provided. As described with reference to FIG. 4, the second / third threshold value initial setting means 32 sets N persons as test data for second / third threshold value setting. Since the second threshold value θmin and the third threshold value θmax are set using a plurality of (H) pieces of speech data respectively acquired from each of the speakers, it is appropriate as a threshold value used for the determination process in the second stage. A value can be set.
[0126]
In addition, since the second and third threshold automatic updating means 33 is provided, a learning function can be added to the system 10, and each registered N person's story due to changes in physical condition, health, etc. When the characteristics of the person's voice change, the setting of the second threshold value θmin and the third threshold value θmax can be gradually changed following the change.
[0127]
Furthermore, the input data (for example, 5 to 10 seconds) of the identified voice is shorter than the sample data (for example, 20 to 30 seconds) for the determination process in the first stage. The time required can be shortened, and real-time responsiveness can be improved.
[0128]
Further, the absolute value average vector error calculating means 27 has a second codebook C created for each of N speakers (t).i n, vUsing a plurality (t) of absolute value average vector errors ε for each candidateq, vAnd calculate the absolute mean vector error εq, vMean value εqTherefore, the accuracy of speaker identification can be further improved.
[0129]
Since the 16th-order mel cepstrum is used as the characteristic parameter, the system 10 can be realized in consideration of the trade-off between processing time reduction (calculation amount reduction) and ensuring identification accuracy.
[0130]
In addition, since a process of taking a spectrum (in this embodiment, a 16th order mel cepstrum) is performed from voice data, speaker identification can be performed without being influenced by the utterance content.
[0131]
Furthermore, by adjusting the first threshold value η, second threshold value θmin, and third threshold value θmax, differences in languages such as Chinese and Japanese, differences in applications such as mobile phones and toys, recording It is possible to deal with various environmental differences such as environment and recording equipment.
[0132]
In order to confirm the effect of the present invention, the following system evaluation experiment was conducted. Experimental data and speech analysis conditions are as follows.
[0133]
[Experiment data]
(1) Total number of registered speakers: 100
(2) Test data for evaluation: 100 speakers x (3 times / speaker)
(3) Age and sex: 20-50 years old, 50 men and women
(4) Recording environment: Under general noise in the background room
(5) Utterance content: Free utterance in conference presentation
(6) Speaking time: sample data is 20 to 30 seconds, and evaluation test data is 5 to 10 seconds.
[0134]
[Voice analysis conditions]
(1) Sampling frequency: 16 kHz
(2) Analysis window: 10 ms
(3) Analysis period: 21.3 ms
(4) Acoustic features: 16th order mel cepstrum
[0135]
Table 1 shows the system evaluation results when the test data for evaluation is 5 to 10 seconds, divided into the case where the sample data is 10 to 15 seconds and the case where the sample data is 20 to 30 seconds. Has been.
[0136]
[Table 1]
Figure 0004098015
[0137]
According to Table 1, the effectiveness of the system is clear when the test data for evaluation (that is, the input data of the identified voice) is 5 to 10 seconds and the sample data is 20 to 30 seconds. That is, in an evaluation experiment in which speaker identification processing is actually performed with the total number of registered speakers being 100, when absolute value average vector error calculation processing is not performed (all minqAbout minqWhen it is determined that> η), the average accuracy rate is 99.33%, and it can be confirmed that the error recognition rate and the error rejection rate are suppressed to 0.1% or less. In addition, when calculating the absolute value average vector error (at least one minqAbout minqEven when it was determined that ≦ η), the average accuracy rate was as high as 98.75%. Thus, the effects of the present invention were remarkably shown.
[0138]
Note that the present invention is not limited to the above-described embodiment, and modifications and the like within a scope where the object of the present invention can be achieved are included in the present invention.
[0139]
That is, in the above embodiment, the second and third threshold automatic updating means 33 is provided, and the setting of the second threshold θmin and the third threshold θmax can be gradually changed. Installation of the second and third threshold automatic updating means 33 may be omitted. However, it is preferable to provide the second and third threshold automatic updating means 33 as in the above-described embodiment in that a learning function can be added to the system 10.
[0140]
Further, the automatic update processing of the second threshold value θmin and the third threshold value θmax by the second / third threshold value automatic updating means 33 is performed when the speaker identification is accepted by the system 10 and is accepted. Therefore, it is possible to cope only when the characteristics of the voice of each registered speaker gradually change. Therefore, when the characteristics of the voice of a certain registered speaker change drastically, it is preferable to take a sample data again.
[0141]
【The invention's effect】
As described above, according to the present invention, when performing speaker identification, the determination is performed in two stages, and the determination in the second stage is a simple process according to the determination result in the first stage. Therefore, it is possible to perform speaker identification with good real-time responsiveness and high accuracy.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram of a speaker identification system according to an embodiment of the present invention.
FIG. 2 is an explanatory diagram of a flow of processing when a speaker identification system according to the embodiment determines who is the identified voice among a plurality of speakers;
FIG. 3 is an explanatory diagram of a flow of processing when initial setting of a first threshold value η is performed in the embodiment.
FIG. 4 is an explanatory diagram of a processing flow when performing the initial setting of the second threshold value θmin and the third threshold value θmax in the embodiment.
FIG. 5 is an explanatory diagram of a process flow when updating the second threshold value θmin and the third threshold value θmax in the embodiment.
[Explanation of symbols]
10 Speaker identification system
21 Sample data feature parameter creation means
22 Feature parameter creation means for candidate data
23 Feature parameter creation means for input data
24 First codebook creation means
25 Second codebook creation means
26 Speaker likelihood calculation means
27 Absolute value average vector error calculating means
28 First stage determination means
29 Second stage only candidate judgment means
30 Second stage multiple candidate judging means
33 Second and third threshold automatic update means
41 First codebook storage means
42 Second code book storage means
Xk  Feature parameters
Ci n  First codebook
Ci n, v  Second codebook
Ln, Ln, h  Speaker likelihood
Lx  Minimum speaker likelihood
minq  Difference between minimum speaker likelihood and other speaker likelihood
η First threshold
θminn  Second threshold
θmaxn  Third threshold
εq, v, Εq  Absolute mean vector error
εqmin Minimum absolute mean vector error

Claims (11)

入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別方法であって、
第一段階の判定処理用のサンプルデータとして前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成した後、これらの特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成し、これらの第一のコードブックを第一コードブック記憶手段に記憶しておくとともに、
複数候補者に絞込後の第二段階の判定処理用の候補データとして前記サンプルデータとは異なる環境で前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成した後、これらの特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成し、これらの第二のコードブックを第二コードブック記憶手段に記憶しておき、
前記被識別音声が前記複数の話者の中の誰の音声であるかを判定する際には、
前記被識別音声の入力データを用いて音声の特徴パラメータを作成した後、話者性尤度算出手段により、この特徴パラメータと前記第一コードブック記憶手段に記憶された前記第一のコードブックとを用いて前記複数の各話者についての話者性尤度を算出し、
第一段階判定手段により、これらの話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは前記第一の閾値η以上か否かを判定し、
前記各差の全てが前記第一の閾値ηよりも大きいかまたは前記第一の閾値η以上と判定された場合には、
前記最小の話者性尤度の話者を唯一の候補者とし、第二段階唯一候補者判定手段により、前記最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記候補者を受理し、入らないと判定したときには棄却し、
一方、前記各差のうちの少なくとも一つの差が前記第一の閾値η以下または前記第一の閾値ηよりも小さいと判定された場合には、
以下または小さいと判定された差となっている話者性尤度の話者および前記最小の話者性尤度の話者を複数の候補者とし、絶対値平均ベクトル誤差算出手段により、前記特徴パラメータと前記第二コードブック記憶手段に記憶された前記第二のコードブックとを用いて前記複数の各候補者についての絶対値平均ベクトル誤差を算出した後、第二段階複数候補者判定手段により、これらの絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、前記第二の閾値θminと前記第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却することを特徴とする話者識別方法。
A speaker identification method for determining who the input identified speech is from among a plurality of speakers registered in advance,
Voice feature parameters are created for each speaker using voice data obtained from the plurality of speakers as sample data for the determination process in the first stage, and clustering is performed using these feature parameters. By creating a first code book for each speaker, and storing these first code books in the first code book storage means,
Using the voice data acquired from each of the plurality of speakers in an environment different from the sample data as candidate data for the second stage determination process after narrowing down to a plurality of candidates, the voice feature parameters are set for each speaker. After each creation, a second codebook is created for each speaker by performing clustering using these feature parameters, and these second codebooks are stored in the second codebook storage means. Every
In determining who the voice among the plurality of speakers is the identified voice,
After creating a speech feature parameter using the input data of the identified speech, the speaker likelihood likelihood calculation means calculates the feature parameter and the first codebook stored in the first codebook storage means. To calculate the speaker likelihood for each of the plurality of speakers,
The difference between the minimum speaker likelihood and the other speaker likelihoods among these speaker likelihoods is larger than a preset first threshold η by the first stage determination means. Whether or not greater than or equal to the first threshold η,
If it is determined that all of the differences are greater than the first threshold η or greater than or equal to the first threshold η,
The speaker having the smallest speaker likelihood is set as the only candidate, and the second speaker unique likelihood is determined by the second-stage unique candidate determination means. It is determined whether or not it falls within the range between the threshold value θmin and the third threshold value θmax. Sometimes reject,
On the other hand, if it is determined that at least one of the differences is equal to or less than the first threshold η or smaller than the first threshold η,
A speaker having a speaker likelihood likelihood or a speaker having a minimum speaker likelihood likelihood that is determined to be a difference determined to be less than or less than a plurality of candidates, and using the absolute value average vector error calculating means, the feature After calculating an absolute value average vector error for each of the plurality of candidates using the parameter and the second codebook stored in the second codebook storage means, the second stage multiple candidate determination means Determining whether or not the minimum absolute value average vector error of these absolute value average vector errors falls within the range between the second threshold value θmin and the third threshold value θmax, and these threshold values θmin , Θmax, a candidate for the minimum absolute value average vector error is accepted, and when it is determined that it does not enter, it is rejected.
請求項1に記載の話者識別方法において、
前記第一の閾値ηを設定する際には、
第一閾値設定用テストデータとして前記複数の各話者本人のうちの任意の一人から取得した音声データを用いて音声の特徴パラメータを作成した後、話者性尤度算出手段により、この特徴パラメータと前記第一コードブック記憶手段に記憶された前記第一のコードブックとを用いて前記複数の各話者についての話者性尤度を算出し、前記任意の一人についての話者性尤度とこの話者性尤度に最も近い値の話者性尤度との差を前記第一の閾値ηとすることを特徴とする話者識別方法。
The speaker identification method according to claim 1, wherein:
When setting the first threshold η,
After creating a speech feature parameter using speech data obtained from any one of the plurality of speakers as the first threshold setting test data, the feature parameter calculation unit calculates the feature parameter. And the first codebook stored in the first codebook storage means to calculate the speaker likelihood for each of the plurality of speakers, and the speaker likelihood for the arbitrary one person A speaker identification method characterized in that a difference between a speaker likelihood and a value closest to the speaker likelihood is the first threshold value η.
請求項1または2に記載の話者識別方法において、
前記第二の閾値θminおよび前記第三の閾値θmaxを設定する際には、
第二・第三閾値設定用テストデータとして前記複数の各話者本人からそれぞれ複数ずつ取得した音声データを用いて音声の特徴パラメータを各話者毎に複数ずつ作成した後、話者性尤度算出手段により、これらの特徴パラメータと前記第一コードブック記憶手段に記憶された前記第一のコードブックとを用いて前記複数の各話者についての話者性尤度を各話者毎に複数ずつ算出し、各話者毎に算出した複数の話者性尤度のうちの最小値を各話者についての前記第二の閾値θminとし、各話者毎に算出した複数の話者性尤度のうちの最大値を各話者についての前記第三の閾値θmaxとすることを特徴とする話者識別方法。
The speaker identification method according to claim 1 or 2,
When setting the second threshold θmin and the third threshold θmax,
After creating a plurality of speech feature parameters for each speaker using speech data obtained from each of the plurality of speakers as the second and third threshold setting test data, speaker likelihood The calculation means uses the feature parameters and the first codebook stored in the first codebook storage means to calculate a plurality of speaker likelihoods for each of the plurality of speakers for each speaker. And the minimum value of the plurality of speaker likelihoods calculated for each speaker is set as the second threshold θmin for each speaker, and a plurality of speaker likelihoods calculated for each speaker are calculated. A speaker identification method, wherein a maximum value of degrees is set as the third threshold value θmax for each speaker.
請求項3に記載の話者識別方法において、
前記被識別音声が前記複数の話者の中の誰の音声であるかを判定する処理を行った結果、前記被識別音声を入力した者が前記複数の話者の中のいずれかの者であるとして受理された場合には、
前記被識別音声の入力データと前記サンプルデータとを組み合わせることにより、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての前記第一のコードブックを作成し直し、
この作成し直した第一のコードブックと、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての複数の前記第二・第三閾値設定用テストデータと、前記被識別音声の入力データとを用いて、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての前記第二の閾値θminおよび前記第三の閾値θmaxの更新設定を行うことを特徴とする話者識別方法。
The speaker identification method according to claim 3, wherein
As a result of performing the process of determining who is the voice among the plurality of speakers, the person who has input the identified voice is any one of the plurality of speakers. If it is accepted as
By combining the input data of the identified voice and the sample data, the first code book for the speaker determined to match the person who inputted the identified voice among the plurality of speakers is created. Rework,
The recreated first codebook and a plurality of second and third threshold setting test data for speakers determined to match those who input the identified speech among the plurality of speakers And the second threshold θmin and the third threshold for the speaker determined to match the person who input the identified voice among the plurality of speakers, using the input data of the identified voice. A speaker identification method, wherein update setting of a threshold value θmax is performed.
請求項1〜4のいずれかに記載の話者識別方法において、
前記被識別音声の入力データは、前記第一段階の判定処理用のサンプルデータよりも短時間のデータであることを特徴とする話者識別方法。
In the speaker identification method according to any one of claims 1 to 4,
The speaker identification method according to claim 1, wherein the input data of the identified voice is data shorter than the sample data for the determination process in the first stage.
請求項5に記載の話者識別方法において、
前記被識別音声の入力データは、5〜10秒間のデータであり、前記第一段階の判定処理用のサンプルデータは、20〜30秒間のデータであることを特徴とする話者識別方法。
The speaker identification method according to claim 5, wherein
The speaker identification method, wherein the input data of the identified voice is data for 5 to 10 seconds, and the sample data for the determination process in the first stage is data for 20 to 30 seconds.
請求項1〜6のいずれかに記載の話者識別方法において、
前記第二のコードブックは、各話者毎に複数ずつ作成しておき、
前記第二のコードブックを用いて前記複数の各候補者についての絶対値平均ベクトル誤差を算出する際には、前記各候補者毎に絶対値平均ベクトル誤差を複数ずつ算出し、これらの絶対値平均ベクトル誤差の平均値を算出することを特徴とする話者識別方法。
In the speaker identification method according to any one of claims 1 to 6,
A plurality of the second codebooks are created for each speaker,
When calculating an absolute value average vector error for each of the plurality of candidates using the second codebook, a plurality of absolute value average vector errors are calculated for each candidate, and the absolute values thereof are calculated. A speaker identification method comprising calculating an average value of average vector errors.
請求項1〜7のいずれかに記載の話者識別方法において、前記特徴パラメータは、メルケプストラムであることを特徴とする話者識別方法。8. The speaker identification method according to claim 1, wherein the characteristic parameter is a mel cepstrum. 入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別システムであって、
第一段階の判定処理用のサンプルデータとして前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成するサンプルデータ用特徴パラメータ作成手段と、
このサンプルデータ用特徴パラメータ作成手段により作成された前記特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成する第一コードブック作成手段と、
この第一コードブック作成手段により各話者毎に作成された前記第一のコードブックを記憶する第一コードブック記憶手段と、
複数候補者に絞込後の第二段階の判定処理用の候補データとして前記サンプルデータとは異なる環境で前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成する候補データ用特徴パラメータ作成手段と、
この候補データ用特徴パラメータ作成手段により作成された前記特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成する第二コードブック作成手段と、
この第二コードブック作成手段により各話者毎に作成された前記第二のコードブックを記憶する第二コードブック記憶手段と、
前記被識別音声が前記複数の話者の中の誰の音声であるかを判定する際に前記被識別音声の入力データを用いて音声の特徴パラメータを作成する入力データ用特徴パラメータ作成手段と、
この入力データ用特徴パラメータ作成手段により作成された前記特徴パラメータと前記第一コードブック記憶手段に記憶された前記第一のコードブックとを用いて前記複数の各話者についての話者性尤度を算出する話者性尤度算出手段と、
この話者性尤度算出手段により算出された話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは前記第一の閾値η以上か否かを判定する第一段階判定手段と、
この第一段階判定手段により前記各差の全てが前記第一の閾値ηよりも大きいかまたは前記第一の閾値η以上と判定された場合に、前記最小の話者性尤度の話者を唯一の候補者とし、前記最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記候補者を受理し、入らないと判定したときには棄却する第二段階唯一候補者判定手段と、
前記第一段階判定手段により前記各差のうちの少なくとも一つの差が前記第一の閾値η以下または前記第一の閾値ηよりも小さいと判定された場合に、以下または小さいと判定された差となっている話者性尤度の話者および前記最小の話者性尤度の話者を複数の候補者とし、前記入力データ用特徴パラメータ作成手段により作成された前記特徴パラメータと前記第二コードブック記憶手段に記憶された前記第二のコードブックとを用いて前記複数の各候補者についての絶対値平均ベクトル誤差を算出する絶対値平均ベクトル誤差算出手段と、
この絶対値平均ベクトル誤差算出手段により算出された絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、前記第二の閾値θminと前記第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却する第二段階複数候補者判定手段と
を備えたことを特徴とする話者識別システム。
A speaker identification system for determining who the input identified speech is from among a plurality of speakers registered in advance,
Sample data feature parameter creation means for creating a speech feature parameter for each speaker using speech data acquired from each of the plurality of speakers as sample data for the first stage determination processing;
First codebook creating means for creating a first codebook for each speaker by performing clustering using the feature parameters created by the sample data feature parameter creating means;
First code book storage means for storing the first code book created for each speaker by the first code book creation means;
Using the voice data acquired from each of the plurality of speakers in an environment different from the sample data as candidate data for the second stage determination process after narrowing down to a plurality of candidates, the voice feature parameters are set for each speaker. Feature parameter creation means for candidate data created for each;
Second codebook creation means for creating a second codebook for each speaker by performing clustering using the feature parameters created by the candidate data feature parameter creation means;
Second code book storage means for storing the second code book created for each speaker by the second code book creation means;
A feature parameter creation means for input data that creates speech feature parameters using input data of the identified speech when determining which speech among the plurality of speakers is the identified speech;
Speaker likelihood for each of the plurality of speakers using the feature parameters created by the feature parameter creation means for input data and the first codebook stored in the first codebook storage means Speaker likelihood likelihood calculating means for calculating
The difference between the minimum speaker likelihood and the other speaker likelihoods among the speaker likelihoods calculated by the speaker likelihood calculating means is a first threshold value η set in advance. First stage determination means for determining whether or not greater than or equal to or greater than the first threshold η,
When it is determined by the first stage determination means that all the differences are greater than the first threshold η or greater than or equal to the first threshold η, the speaker having the minimum speaker likelihood is selected. Determine whether or not the minimum speaker likelihood is within a range between a second threshold θmin and a third threshold θmax set in advance for each speaker; A second-stage only candidate determination means that accepts the candidate when it is determined that it falls within a range between these threshold values θmin and θmax, and rejects when it is determined that it does not enter;
When the first stage determination means determines that at least one of the differences is equal to or less than the first threshold η or smaller than the first threshold η, the difference determined to be equal to or smaller than the first threshold η The feature parameter created by the feature parameter creation means for input data and the second parameter are set as a plurality of candidates, the speaker having the speaker likelihood likelihood and the speaker having the minimum speaker likelihood likelihood. Absolute value average vector error calculating means for calculating an absolute value average vector error for each of the plurality of candidates using the second code book stored in the code book storage means;
Whether or not the smallest absolute value average vector error among the absolute value average vector errors calculated by the absolute value average vector error calculation means falls within a range between the second threshold value θmin and the third threshold value θmax. If it is determined that it falls within the range between these threshold values θmin and θmax, the candidate of the minimum absolute value average vector error is accepted, and if it is determined not to enter, the second stage multiple candidates are rejected A speaker identification system comprising: a determination unit.
請求項9に記載の話者識別システムにおいて、
前記第二の閾値θminおよび前記第三の閾値θmaxの更新設定を自動的に行う第二・第三閾値自動更新手段を備え、
この第二・第三閾値自動更新手段は、前記被識別音声が前記複数の話者の中の誰の音声であるかを判定する処理を行った結果、前記被識別音声を入力した者が前記複数の話者の中のいずれかの者であるとして受理された場合に、前記被識別音声の入力データと前記サンプルデータとを組み合わせることにより、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての前記第一のコードブックを作成し直し、この作成し直した第一のコードブックと、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての複数の第二・第三閾値設定用テストデータと、前記被識別音声の入力データとを用いて、前記複数の話者のうち前記被識別音声を入力した者と一致すると判定された話者についての前記第二の閾値θminおよび前記第三の閾値θmaxの更新設定を行う構成とされている
ことを特徴とする話者識別システム。
The speaker identification system according to claim 9, wherein
A second and third threshold automatic update means for automatically performing update setting of the second threshold θmin and the third threshold θmax;
The second and third threshold automatic update means performs a process of determining who the voice of the identified voice is among the plurality of speakers. When it is accepted that the speaker is one of a plurality of speakers, the identified speech is input among the plurality of speakers by combining the input data of the identified speech and the sample data. The first code book for the speaker determined to match the person who has performed the re-creation, and the re-created first code book and the person who has input the identified speech among the plurality of speakers The identified speech is input among the plurality of speakers by using a plurality of second and third threshold setting test data for the speaker determined to be consistent with the input data of the identified speech. Story determined to match the person The second speaker identification system that is characterized by being configured to perform updates the setting of the threshold θmin and the third threshold value θmax of about.
入力された被識別音声が、予め登録された複数の話者の中の誰の音声であるかを判定する話者識別システムとして、コンピュータを機能させるためのプログラムであって、
第一段階の判定処理用のサンプルデータとして前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成するサンプルデータ用特徴パラメータ作成手段と、
このサンプルデータ用特徴パラメータ作成手段により作成された前記特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第一のコードブックを作成する第一コードブック作成手段と、
この第一コードブック作成手段により各話者毎に作成された前記第一のコードブックを記憶する第一コードブック記憶手段と、
複数候補者に絞込後の第二段階の判定処理用の候補データとして前記サンプルデータとは異なる環境で前記複数の各話者本人から取得した音声データを用いて音声の特徴パラメータを各話者毎に作成する候補データ用特徴パラメータ作成手段と、
この候補データ用特徴パラメータ作成手段により作成された前記特徴パラメータを用いてクラスタリングを行うことにより各話者毎に第二のコードブックを作成する第二コードブック作成手段と、
この第二コードブック作成手段により各話者毎に作成された前記第二のコードブックを記憶する第二コードブック記憶手段と、
前記被識別音声が前記複数の話者の中の誰の音声であるかを判定する際に前記被識別音声の入力データを用いて音声の特徴パラメータを作成する入力データ用特徴パラメータ作成手段と、
この入力データ用特徴パラメータ作成手段により作成された前記特徴パラメータと前記第一コードブック記憶手段に記憶された前記第一のコードブックとを用いて前記複数の各話者についての話者性尤度を算出する話者性尤度算出手段と、
この話者性尤度算出手段により算出された話者性尤度のうち最小の話者性尤度とそれ以外の話者性尤度との各差が、予め設定された第一の閾値ηよりも大きいか否かまたは前記第一の閾値η以上か否かを判定する第一段階判定手段と、
この第一段階判定手段により前記各差の全てが前記第一の閾値ηよりも大きいかまたは前記第一の閾値η以上と判定された場合に、前記最小の話者性尤度の話者を唯一の候補者とし、前記最小の話者性尤度が、予め各話者毎に設定された第二の閾値θminと第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記候補者を受理し、入らないと判定したときには棄却する第二段階唯一候補者判定手段と、
前記第一段階判定手段により前記各差のうちの少なくとも一つの差が前記第一の閾値η以下または前記第一の閾値ηよりも小さいと判定された場合に、以下または小さいと判定された差となっている話者性尤度の話者および前記最小の話者性尤度の話者を複数の候補者とし、前記入力データ用特徴パラメータ作成手段により作成された前記特徴パラメータと前記第二コードブック記憶手段に記憶された前記第二のコードブックとを用いて前記複数の各候補者についての絶対値平均ベクトル誤差を算出する絶対値平均ベクトル誤差算出手段と、
この絶対値平均ベクトル誤差算出手段により算出された絶対値平均ベクトル誤差のうち最小の絶対値平均ベクトル誤差が、前記第二の閾値θminと前記第三の閾値θmaxとの間の範囲に入るか否かを判定し、これらの閾値θmin,θmaxの間の範囲に入ると判定したときには前記最小の絶対値平均ベクトル誤差の候補者を受理し、入らないと判定したときには棄却する第二段階複数候補者判定手段と
を備えたことを特徴とする話者識別システムとして、コンピュータを機能させるためのプログラム。
A program for causing a computer to function as a speaker identification system that determines who the voice of a plurality of speakers registered in advance is an input identified voice,
Sample data feature parameter creation means for creating a speech feature parameter for each speaker using speech data acquired from each of the plurality of speakers as sample data for the first stage determination processing;
First codebook creating means for creating a first codebook for each speaker by performing clustering using the feature parameters created by the sample data feature parameter creating means;
First code book storage means for storing the first code book created for each speaker by the first code book creation means;
Using the voice data acquired from each of the plurality of speakers in an environment different from the sample data as candidate data for the second stage determination process after narrowing down to a plurality of candidates, the voice feature parameters are set for each speaker. Feature parameter creation means for candidate data created for each;
Second codebook creation means for creating a second codebook for each speaker by performing clustering using the feature parameters created by the candidate data feature parameter creation means;
Second code book storage means for storing the second code book created for each speaker by the second code book creation means;
A feature parameter creation means for input data that creates speech feature parameters using input data of the identified speech when determining which speech among the plurality of speakers is the identified speech;
Speaker likelihood for each of the plurality of speakers using the feature parameters created by the feature parameter creation means for input data and the first codebook stored in the first codebook storage means Speaker likelihood likelihood calculating means for calculating
The difference between the minimum speaker likelihood and the other speaker likelihoods among the speaker likelihoods calculated by the speaker likelihood calculating means is a first threshold value η set in advance. First stage determination means for determining whether or not greater than or equal to or greater than the first threshold η,
When it is determined by the first stage determination means that all the differences are greater than the first threshold η or greater than or equal to the first threshold η, the speaker having the minimum speaker likelihood is selected. Determine whether or not the minimum speaker likelihood is within a range between a second threshold θmin and a third threshold θmax set in advance for each speaker; A second-stage only candidate determination means that accepts the candidate when it is determined that it falls within a range between these threshold values θmin and θmax, and rejects when it is determined that it does not enter;
When the first stage determination means determines that at least one of the differences is equal to or less than the first threshold η or smaller than the first threshold η, the difference determined to be equal to or smaller than the first threshold η The feature parameter created by the feature parameter creation means for input data and the second parameter are set as a plurality of candidates, the speaker having the speaker likelihood likelihood and the speaker having the minimum speaker likelihood likelihood. Absolute value average vector error calculating means for calculating an absolute value average vector error for each of the plurality of candidates using the second code book stored in the code book storage means;
Whether or not the smallest absolute value average vector error among the absolute value average vector errors calculated by the absolute value average vector error calculation means falls within the range between the second threshold value θmin and the third threshold value θmax. If it is determined that it falls within the range between these threshold values θmin and θmax, the candidate of the minimum absolute value average vector error is accepted, and if it is determined not to enter, the second stage multiple candidates are rejected A program for causing a computer to function as a speaker identification system comprising a determination unit.
JP2002209662A 2002-07-18 2002-07-18 Speaker identification method and system, and program Expired - Fee Related JP4098015B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002209662A JP4098015B2 (en) 2002-07-18 2002-07-18 Speaker identification method and system, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002209662A JP4098015B2 (en) 2002-07-18 2002-07-18 Speaker identification method and system, and program

Publications (2)

Publication Number Publication Date
JP2004053821A JP2004053821A (en) 2004-02-19
JP4098015B2 true JP4098015B2 (en) 2008-06-11

Family

ID=31933452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002209662A Expired - Fee Related JP4098015B2 (en) 2002-07-18 2002-07-18 Speaker identification method and system, and program

Country Status (1)

Country Link
JP (1) JP4098015B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8452596B2 (en) 2007-03-27 2013-05-28 Nec Corporation Speaker selection based at least on an acoustic feature value similar to that of an utterance speaker
KR102399420B1 (en) 2018-12-03 2022-05-19 구글 엘엘씨 Text Independent Speaker Recognition
KR102203161B1 (en) * 2019-06-13 2021-01-14 대한민국 Speaker Recognition Device Based on Voice Files And Speaker Recognition System Based on Voice Files And Speaker Recognition System Based on Voice Files
JP7473910B2 (en) 2020-03-27 2024-04-24 株式会社フュートレック SPEAKER RECOGNITION DEVICE, SPEAKER RECOGNITION METHOD, AND PROGRAM
CN111583938B (en) * 2020-05-19 2023-02-03 威盛电子股份有限公司 Electronic device and voice recognition method

Also Published As

Publication number Publication date
JP2004053821A (en) 2004-02-19

Similar Documents

Publication Publication Date Title
Schuller et al. Hidden Markov model-based speech emotion recognition
Kekre et al. Speaker identification by using vector quantization
Das et al. Recognition of isolated words using features based on LPC, MFCC, ZCR and STE, with neural network classifiers
JP5311348B2 (en) Speech keyword collation system in speech data, method thereof, and speech keyword collation program in speech data
US20070027687A1 (en) Automatic donor ranking and selection system and method for voice conversion
KR101618512B1 (en) Gaussian mixture model based speaker recognition system and the selection method of additional training utterance
Shahin et al. Talking condition recognition in stressful and emotional talking environments based on CSPHMM2s
JP4098015B2 (en) Speaker identification method and system, and program
Ananthi et al. Speech recognition system and isolated word recognition based on Hidden Markov model (HMM) for Hearing Impaired
KR100779242B1 (en) Speaker recognition methods of a speech recognition and speaker recognition integrated system
CN111429919B (en) Crosstalk prevention method based on conference real recording system, electronic device and storage medium
CN113744742B (en) Role identification method, device and system under dialogue scene
Badhon et al. State of art research in Bengali speech recognition
Singh et al. Speaker identification through natural and whisper speech signal
Mami et al. Speaker recognition by location in the space of reference speakers
Wu et al. Speaker identification based on the frame linear predictive coding spectrum technique
Trabelsi et al. A multi level data fusion approach for speaker identification on telephone speech
Adami et al. A speaker identification system using a model of artificial neural networks for an elevator application
KR100776729B1 (en) Speaker-independent variable-word keyword spotting system including garbage modeling unit using decision tree-based state clustering and method thereof
Akinrinmade et al. Creation of a Nigerian voice corpus for indigenous speaker recognition
CN114067803A (en) Speaker confirmation method based on distance correlation metric learning
Visalakshi et al. Analysis of throat microphone using MFCC features for speaker recognition
KR102141150B1 (en) Apparatus for speaker recognition using speaker dependent language model and method of speaker recognition
JPH10254473A (en) Method and device for voice conversion
JP5315976B2 (en) Speech recognition apparatus, speech recognition method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050707

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080122

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080312

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees