JP7828627B2 - 音声認識装置及び方法、並びにコンピュータプログラム - Google Patents
音声認識装置及び方法、並びにコンピュータプログラムInfo
- Publication number
- JP7828627B2 JP7828627B2 JP2021134879A JP2021134879A JP7828627B2 JP 7828627 B2 JP7828627 B2 JP 7828627B2 JP 2021134879 A JP2021134879 A JP 2021134879A JP 2021134879 A JP2021134879 A JP 2021134879A JP 7828627 B2 JP7828627 B2 JP 7828627B2
- Authority
- JP
- Japan
- Prior art keywords
- speech
- language
- speech recognition
- signal
- segment
- 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.)
- Active
Links
Landscapes
- Machine Translation (AREA)
Description
1. 構成
(1) 全体構成
図1にこの出願の第1実施形態に係る多言語ライブ音声認識装置50の概略の機能構成をブロック図形式で示す。図1を参照して、この多言語ライブ音声認識装置50は、例えばリモートからの音声信号である入力52を受けてその発話区間を検出し、発話区間ごとにその言語を識別して音声認識し、音声認識の結果を表示54として出力する機能を持つ。
図2は、図1に示す多言語ライブ音声認識装置50を実現するためのコンピュータの外観を示す。図3は、図2に示すコンピュータのハードウェアをブロック図形式で示す。
ア. 発話区間の検出
図4を参照して、前処理部100、VAD102及び補正部104が行う前処理、発話区間の検出、及び検出された発話区間の補正処理について説明する。
図6を参照して、この実施形態における言語識別処理(LID)について説明する。ここでも、図6(A)に示すように、期間210、212、214及び216を例とする。
前述したように、図1に示す多言語ASR処理部80は、複数の言語に対する音声認識処理を並列で実行可能である。しかしそれだけではなく、多言語ASR処理部80は、各言語についても複数の音声認識処理を実行可能であり、それらを適宜切り替えて動作させる。なぜなら、音声認識処理は多量の計算を必要として時間を要するため、ある発話の音声認識を実行中に、続く発話についても音声認識を並列で実行する必要が生じる可能性があるためである。特にこの実施形態では、ある発話について、複数の音声認識処理部がそれぞれ別の言語とみなして音声認識処理を実行する。音声認識処理では、正しい言語での音声認識でもかなりの演算処理が必要とされ、誤った言語での音声認識ではさらに演算量が増加する。そのため、各言語の音声認識処理部が限定された数しかないと、必要なときに必要な音声認識処理部のいずれかがビジーとなり音声認識処理が実行できなくなる可能性がある。そこでこの実施形態では、音声認識処理部として各言語について3個の音声認識処理部を設け、これらの中でアイドリング中のものを選択して音声認識処理を実行させる。
ア. 全体制御構造
以上に説明したように機能するよう、コンピュータを動作させるためのコンピュータプログラムの制御構造を以下に説明する。図8にその全体構成を示す。なお、以下に示すのは上記した多言語ライブ音声認識装置50の全体をコンピュータハードウェア及びコンピュータプログラムにより実現するものだが、これらの一部又は全体を専用のハードウェアで実現することも可能である。また汎用コンピュータを以下に説明する制御構造に従って動作するようプログラミングすることにより、汎用コンピュータが専用の多言語ライブ音声認識装置として機能する。
(ア) 前処理
図9は、VADのうちの前処理を実現するプログラムの制御構造を示すフローチャートである。図9を参照して、このプログラムは、変数iにゼロを代入するステップ500と、入力データを読みバッファ[i]に蓄積するステップ502と、ステップ502の結果、バッファに蓄積された音声データが1秒分になるまでステップ502を繰り返すステップ504とを含む。この実施形態では、バッファとしてバッファ[0]及びバッファ[1]の2つを少なくとも準備し、iの値が偶数のとき(i%2=0)のときにはバッファ[0]に、iの値が奇数のとき(i%2=1)のときにはバッファ[1]に、それぞれ音声データを蓄積する。もちろんこのような方法ではなく他の方法で音声データの蓄積を行ってもよい。例えばリングバッファに音声データを蓄積し、そのうちの1秒分の音声データをその開始位置から読み出すようにしてもよい。音声データがリングバッファの容量を超えるときには、リングバッファ内に蓄積されている音声データを上書きしていけばよい。なお記号「%」はモジュロ演算子を表す。
VADの出力は、図9により示されるような前処理を行った後の音声データに対するものである。その音声データには、最初の1秒分の音声データを除き、本来の対象区間の音声データだけではなく、直前の対象区間の後半の0.5秒分の音声データが付されている。さらにその音声データの先頭には0.1秒の無音区間が付されている。したがって、本来の対象区間の有音区間以外の有音区間がVADの出力に含まれている可能性がある。そのような区間は、既にその有音区間が処理用のバッファに送信済なら、以下に述べる補正処理においてVADの出力から取り除かれ、そうでない場合はそのまま制御部74及び発話区切検出部76に送信される。
この実施形態では、音声認識の対象となる各言語について複数のASRスレッドを起動する。それらASRスレッドを発話ごとに切り替えて音声認識を行うことで、1つの発話に対する音声認識処理が長引いても、次の発話の音声認識を並列して実行できる。特に音声データの言語に対応しない言語の音声認識の場合には、処理が長くなることが予測される。したがって、この実施形態のように複数の言語の各々について複数のASRスレッドを準備しておき、発話の切れ目で切り替えることが望ましい。この実施形態では、有音区間の後、0.5秒以上の無音区間がVADで検出されたときに、その時点でASRスレッドを切り替え、次の音声データからは切替後のASRスレッドに与える。
この実施形態では、LIDは以下のような制御に従って行われる。LIDの処理自体は既に述べたように訓練済のニューラルネットワークからなる言語識別モデルにより行われる。ここでは、このニューラルネットワークに、いつ、どのような音声データを入力してLIDの結果を得るかを実現するプログラムの制御構造を説明する。
音声認識結果は以下のような制御構造を持つプログラムにより表示される。図13を参照して、このプログラムは、LIDによる言語識別結果の出力があったか否かに従って制御の流れを分岐させるステップ750と、ステップ750の判定が肯定のときに、LIDの出力により示される言語の言語IDを、現在の言語を表す情報としてメモリに記憶するステップ752と、ステップ752の後、及びステップ750の判定が否定のときの双方において、現在の発話に対応して動作している複数のASRスレッドの中で、現在の言語IDに対応するものから出力されている認識結果を表示して制御をステップ750に戻すステップ754とを含む。
(1) 起動
図8を参照して、ステップ450において、VADスレッド、LIDスレッド及び複数言語の各々について複数設けられる音声認識スレッドの各々が起動される。これらは図1に示す発話区間検出部72、LID78及び多言語ASR処理部80にそれぞれ相当する。ステップ452において、メインルーチン(図1の制御部74に相当)が、これら各スレッドとのコネクションを確立する。
最初の1秒分の音声データが蓄積されると(ステップ504の判定が肯定)、その音声データの先頭に0.1秒分の無音区間を付加し(ステップ506)、その音声データをVADに投入する(ステップ508)。VAD102はこの入力に応答して、有音区間を表す情報(開始時刻及び終了時刻のペア)の出力を開始する。
2番目以降の入力に対しては、ステップ512でバッファ[0]又はバッファ[1]に入力された音声データが蓄積される。1秒分の音声データが蓄積されると(ステップ514の判定が肯定)、ステップ516において、現在蓄積に使用されているバッファ(バッファ[i%2])と別のバッファ(バッファ[(i-1)%2]に蓄積されている音声データのうち後半の0.5秒分の音声データをバッファ[i%2]に蓄積されている音声データの先頭に付加する。ステップ518でさらにその先頭に0.1秒分の無音区間を付加する。ステップ520でこの音声データをVADに投入する。
図1に示すVAD102は、前処理部100により前処理がされた音声データの入力を受けて、その音声データの中の有音区間を示す[開始時刻、終了時刻]のペアの出力を行う。この出力には、前処理で付加された無音区間及び直前の期間の音声データの後ろ半分で検出された有音区間があり得る。補正部104は図10に制御構造を示すプログラムを実行することにより、この有音区間のうち、既に制御部74及び発話区切検出部76に送信済の有音区間があればそれを削除する。
図1を参照して、制御部74は、VAD102により検知された有音区間の音声データをLID78と多言語ASR処理部80との双方に与える。LID78は、図12に示す制御構造を持つプログラムにより制御され、入力された有音区間の各々について、1.5秒の長さでかつ0.7秒のシフト長で音声データを読み出し、言語識別モデルに投入する。この処理は各有音区間について、有音区間の終了まで行われる。なおここで言語識別モデルに投入される音声の長さは、1.5秒が最大であり、それより前に発話が終了するときはその発話の末尾までの長さとなる。
(1) レイテンシの算出方法
上記実施形態のように、発話をその直後にテキスト化して表示したり自動翻訳に入力したりするためには、発話がされた時刻からその発話が音声認識されテキストに変換されるまでの時間、すなわちレイテンシをできるだけ短くする必要がある。しかし、従来の音声認識システムの評価は、発話単位でのレイテンシ、精度(単語誤り率:WER)、速度(実時間係数:RTF)などによるものであった。こうした評価尺度は音声認識システムの性能の評価尺度として有用だが、連続する複数の発話をそれらの発話と並列に連続的に音声認識する、いわゆるライブ音声認識処理の評価尺度としては不十分なものであった。
図15を参照して、「please wait here. I’m going to look for a rope or something.」という発話の音声認識を例としてレイテンシの計算方法を説明する。1回目のASR出力は「please wait here.」に対するものであって、先頭に無音区間と末尾の無音区間とを含め、各単語の発声時間はそれぞれ、0.00秒、0.60秒、0.81秒、1.17秒、及び1.35秒であり、音声認識の結果出力時間は3.50秒である。レイテンシの計算には、これらのうち二重下線で示す3個の単語の発話長(0.60秒、0.81秒、1.17秒)を加算し、その値を単語数(3)で割る。得られた値を音声認識の結果出力時間である3.50秒から減算する。その結果、2.64という値が得られる。これが第1の発話に対する音声認識処理の単語ベースのレイテンシである。
上記実施の形態では、各言語について使用するASRスレッドは同じ数であった。しかしこの発明はそのような実施形態には限定されない。言語ごとに異なる数のASRスレッドを生成してもよい。また各スレッドはプログラムの最初に生成している。しかしこれは限定的ではなく、各スレッドが必要となった時点で生成してもよい。例えばある言語で生成したスレッドの全てがビジーとなってしまったときに次の発話の音声認識をする必要が生じたときには、ビジーのスレッドのいずれかの処理を中断させるのではなく、新たなスレッドを生成するようにしてもよい。
上記実施形態の他の局面について以下に付記する。
70 バッファ
72 発話区間検出部
74 制御部
76 発話区切検出部
78 LID
80 多言語ASR処理部
82 結果表示制御部
100 前処理部
102 VAD
104 補正部
200、202 発話
210、212、214、216、218 期間
220、232、234、300、302、304、310、312、314、350、352 有音部分
222、238、244、254、264 無音部分
230、236、240、250、260、360、370、380、390 音声信号
242、252、262 付加区間
362、372、382、392 LID判別結果
420 発話区切り
422 無音区間
812、814、816、820、828、830、832 データ
818、822、826、834 一時認識結果
824 部分認識結果
836 最終認識結果
Claims (5)
- 音声信号の発話区間の開始及び終了を検出する発話区間検出手段と、
前記発話区間検出手段により検出された発話区間の終了後、所定時間以上の無音区間があったことに応答して、発話区切りを示す発話区分信号を出力するための発話区切り検出手段と、
前記発話区分信号に応答して、直前の発話区間の発話の言語を識別し言語の識別子を出力するための言語識別手段と、
前記発話区間検出手段により発話区間の開始が検出されたことに応答して、当該発話区間の音声信号に対する音声認識をそれぞれ行うための、互いに異なる複数の言語のための複数の音声認識処理手段を含む音声認識手段と、
前記識別子に応答して、前記複数の音声認識処理手段のうち、当該識別子の示す言語の音声認識処理手段の出力を選択して出力するための選択手段とを含み、
前記発話区間検出手段は、
前記音声信号を所定長の対象区間に分割する分割手段と、
前記対象区間の各々に対して、その直前に少なくとも第1の所定長の無音区間を含む付加信号を付加する信号付加手段と、
前記信号付加手段により前記付加信号が付加された前記対象区間に含まれる有音区間を無音区間と区別して検出するための有音区間検出手段と、
前記有音区間検出手段により検出された前記有音区間の中で、前記付加信号に対応する有音区間を削除することにより前記有音区間を補正するための補正手段とを含む、音声認識装置。 - 前記言語識別手段は、
前記発話区間検出手段により発話区間の終了が検出されたことに応答して、当該発話区間の音声信号から、所定長で所定シフト量の部分区間の音声信号を生成する部分区間信号生成手段と、
前記部分区間の各々の前記音声信号を受け、当該部分区間が前記複数の言語のいずれに相当するかを表す情報を出力する言語識別モデルと、
前記言語識別モデルが出力する前記情報に応答して、前記発話区間の音声信号の言語を決定し当該言語の識別子を出力する言語決定手段とを含む、請求項1に記載の音声認識装置。 - さらに、前記発話区分信号に応答して、直前の発話区間の発話の話者を識別し、話者に関する情報を前記音声認識手段の出力に付与するための話者識別手段を含む、請求項1又は請求項2に記載の音声認識装置。
- コンピュータを、
音声信号の発話区間を検出する発話区間検出手段と、
前記発話区間検出手段により検出された発話区間の終了後、所定時間以上の無音区間があったことに応答して、発話区切りを示す発話区分信号を出力するための発話区切り検出手段と、
前記発話区分信号に応答して、直前の発話区間の発話の言語を識別し言語の識別子を出力するための言語識別手段と、
前記発話区間検出手段により発話区間が検出されたことに応答して、当該発話区間の音声信号に対する音声認識をそれぞれ行うための、互いに異なる複数の言語のための音声認識処理手段を含む音声認識手段と、
前記識別子に応答して、前記複数の音声認識処理手段のうち、当該識別子の示す言語の音声認識処理手段の出力を選択して出力するための選択手段として機能させる、コンピュータプログラムであって、
前記発話区間検出手段は、
前記音声信号を所定長の対象区間に分割する分割手段と、
前記対象区間の各々に対して、その直前に少なくとも第1の所定長の無音区間を含む付加信号を付加する信号付加手段と、
前記信号付加手段により前記付加信号が付加された前記対象区間に含まれる有音区間を無音区間と区別して検出するための有音区間検出手段と、
前記有音区間検出手段により検出された前記有音区間の中で、前記付加信号に対応する有音区間を削除することにより前記有音区間を補正するための補正手段とを含む、コンピュータプログラム。 - コンピュータが、音声信号の発話区間の開始及び終了を検出するステップと、
コンピュータが、前記検出された発話区間の終了後、所定時間以上の無音区間があったことに応答して、発話区切りを示す発話区分信号を出力するステップと、
コンピュータが、前記発話区分信号に応答して、直前の発話区間の発話の言語を識別し言語の識別子を出力するための言語識別ステップと、
コンピュータが、前記発話区間の開始が検出されたことに応答して、当該発話区間の音声信号に対する音声認識を、互いに異なる複数の言語のための音声認識処理手段によりそれぞれ開始させるステップと、
コンピュータが、前記識別子に応答して、前記複数の音声認識処理手段のうち、当該識別子の示す言語の音声認識処理手段の出力を選択して出力する選択ステップとを含む音声認識方法であって、
前記発話区分信号を出力するステップは、
前記音声信号を所定長の対象区間に分割するステップと、
前記対象区間の各々に対して、その直前に少なくとも第1の所定長の無音区間を含む付加信号を付加する信号付加ステップと、
前記信号付加ステップにおいて前記付加信号が付加された前記対象区間に含まれる有音区間を無音区間と区別して検出するための有音区間検出ステップと、
前記有音区間検出ステップにおいて検出された前記有音区間の中で、前記付加信号に対応する有音区間を削除することにより前記有音区間を補正するための補正ステップとを含む、音声認識方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021134879A JP7828627B2 (ja) | 2021-08-20 | 2021-08-20 | 音声認識装置及び方法、並びにコンピュータプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021134879A JP7828627B2 (ja) | 2021-08-20 | 2021-08-20 | 音声認識装置及び方法、並びにコンピュータプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023028902A JP2023028902A (ja) | 2023-03-03 |
| JP7828627B2 true JP7828627B2 (ja) | 2026-03-12 |
Family
ID=85331148
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021134879A Active JP7828627B2 (ja) | 2021-08-20 | 2021-08-20 | 音声認識装置及び方法、並びにコンピュータプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7828627B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7678228B2 (ja) * | 2021-10-06 | 2025-05-15 | グーグル エルエルシー | 言語アグノスティックの多言語エンドツーエンドストリーミングオンデバイス自動音声認識asrシステム |
| WO2025224928A1 (ja) * | 2024-04-25 | 2025-10-30 | Ntt株式会社 | 音声認識推定装置、音声認識システム、音声認識推定方法、音声認識モデル学習装置、音声認識モデル学習方法、およびプログラム |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004347732A (ja) | 2003-05-20 | 2004-12-09 | Nippon Telegr & Teleph Corp <Ntt> | 言語自動識別方法及び装置 |
| JP2019023690A (ja) | 2017-07-24 | 2019-02-14 | 富士通株式会社 | 言語識別装置、言語識別方法、及び言語識別プログラム |
| JP2020064168A (ja) | 2018-10-17 | 2020-04-23 | 株式会社日立ビルシステム | 案内ロボットシステム及び案内方法 |
| JP2020160374A (ja) | 2019-03-28 | 2020-10-01 | 国立研究開発法人情報通信研究機構 | 言語識別装置及びそのためのコンピュータプログラム、並びに音声処理装置 |
-
2021
- 2021-08-20 JP JP2021134879A patent/JP7828627B2/ja active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004347732A (ja) | 2003-05-20 | 2004-12-09 | Nippon Telegr & Teleph Corp <Ntt> | 言語自動識別方法及び装置 |
| JP2019023690A (ja) | 2017-07-24 | 2019-02-14 | 富士通株式会社 | 言語識別装置、言語識別方法、及び言語識別プログラム |
| JP2020064168A (ja) | 2018-10-17 | 2020-04-23 | 株式会社日立ビルシステム | 案内ロボットシステム及び案内方法 |
| JP2020160374A (ja) | 2019-03-28 | 2020-10-01 | 国立研究開発法人情報通信研究機構 | 言語識別装置及びそのためのコンピュータプログラム、並びに音声処理装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023028902A (ja) | 2023-03-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10152971B2 (en) | System and method for advanced turn-taking for interactive spoken dialog systems | |
| US11900943B2 (en) | System and method of text zoning | |
| US10522153B2 (en) | Diarization using linguistic labeling | |
| US9697827B1 (en) | Error reduction in speech processing | |
| CN111797632B (zh) | 信息处理方法、装置及电子设备 | |
| CN103544955B (zh) | 识别语音的方法及其电子装置 | |
| US20200183648A1 (en) | Voice Enabling Applications | |
| Chang et al. | Turn-taking prediction for natural conversational speech | |
| EP3739583B1 (en) | Dialog device, dialog method, and dialog computer program | |
| Ogata et al. | Speech repair: quick error correction just by using selection operation for speech input interfaces. | |
| CN114399992B (zh) | 语音指令响应方法、装置及存储介质 | |
| JP7828627B2 (ja) | 音声認識装置及び方法、並びにコンピュータプログラム | |
| US6963834B2 (en) | Method of speech recognition using empirically determined word candidates | |
| JP2001092496A (ja) | 連続音声認識装置および記録媒体 | |
| JPH10105189A (ja) | シーケンス取出し方法及びその装置 | |
| JP2002215187A (ja) | 音声認識方法及びその装置 | |
| JP7501610B2 (ja) | 音声認識装置、制御方法、及びプログラム | |
| US20230343332A1 (en) | Joint Segmenting and Automatic Speech Recognition | |
| CN116153294A (zh) | 语音识别方法、装置、系统、设备及介质 | |
| CN112863496B (zh) | 一种语音端点检测方法以及装置 | |
| WO2006075648A1 (ja) | 音声認識システム、音声認識方法及び音声認識プログラム | |
| JP2004534275A (ja) | 音声認識における高速検索 | |
| CN111797631B (zh) | 信息处理方法、装置及电子设备 | |
| JP2001166790A (ja) | 書き起こしテキスト自動生成装置、音声認識装置および記録媒体 | |
| US12609121B2 (en) | Automated speech recognition to support context-aware intent recognition |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240708 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20250522 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250527 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250718 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250930 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20251125 |
|
| 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: 20260127 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20260220 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7828627 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |