(57)【要約】【課題】言語の種類の識別をハンズフリーで実現すること。【解決手段】言語識別プログラムは、入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、複数の言語ごとに変換された音素列から音素数を複数の言語ごとに算出し、複数の言語ごとに算出された音素数に基づいて入力音声に対応する言語の種類を識別する、処理をコンピュータに実行させる。【選択図】図４
2020056972.tif 000002
【特許請求の範囲】
【請求項１】
入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出し、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する、
処理をコンピュータに実行させる言語識別プログラム。
【請求項２】
前記識別する処理は、前記複数の言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする請求項１に記載の言語識別プログラム。
【請求項３】
前記入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果から言語モデルに基づく文の尤度を前記複数の言語ごとに算出する処理を前記コンピュータにさらに実行させ、
前記識別する処理は、前記複数の言語ごとに算出された音素数および前記複数の言語ごとに算出された言語モデルに基づく文の尤度に基づいて前記入力音声に対応する言語の種類を識別する請求項１に記載の言語識別プログラム。
【請求項４】
前記識別する処理は、前記複数の言語のうち前記言語モデルに基づく文の尤度が所定の閾値以上である言語を抽出し、該抽出された言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする請求項３に記載の言語識別プログラム。
【請求項５】
前記識別する処理は、前記音素数および前記言語モデルに基づく文の尤度から求めたスコアが最大である言語を前記入力音声に対応する言語と識別することを特徴とする請求項３に記載の言語識別プログラム。
【請求項６】
入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出し、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する、
処理をコンピュータが実行する言語識別方法。
【請求項７】
入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換する音素列変換部と、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出する音素数算出部と、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する言語識別部と、
を有することを特徴とする言語識別装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言語識別プログラム、言語識別方法及び言語識別装置に関する。
【背景技術】
【０００２】
来訪する外国人の増加に伴って多言語への対応が可能な音声翻訳が活用されている。多言語の音声翻訳が行われる場合、外国人が発話に使用する言語の種類によって外国人の発話に適用する音声認識エンジンの種類も変わる。このような側面から、多言語の音声翻訳には、入力音声に対応する言語の種類を識別する機能が搭載されることがある。例えば、ハードウェア又はソフトウェアで実現されるユーザインタフェースを介して、言語の種類を指定する操作を受け付けることにより、入力音声に対応する言語の種類が識別される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−０６１４０２号公報
【非特許文献】
【０００４】
【非特許文献１】J.L.  Hieronymus,  S.Kadambe  “Robust  spoken  language  identification  using  large  vocabulary  speech  recognition”  1997  IEEE  International  Conference  on  Acoustics,  Speech,  and  Signal  Processing
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の技術では、言語の種類を指定する手動操作によって話者の手が塞がるので、言語の種類の識別をハンズフリーで実現することができない。
【０００６】
１つの側面では、本発明は、言語の種類の識別をハンズフリーで実現できる言語識別プログラム、言語識別方法及び言語識別装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一態様では、言語識別プログラムは、入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出し、前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する、処理をコンピュータに実行させる。
【発明の効果】
【０００８】
言語の種類の識別をハンズフリーで実現できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１に係る音声翻訳システムの構成例を示す図である。
【図２】図２は、音声認識結果の一例を示す図である。
【図３】図３は、文の尤度の一例を示す図である。
【図４】図４は、音素数に関するグラフの一例を示す図である。
【図５】図５は、音素の同定結果の比較例を示す図である。
【図６】図６は、音声認識結果別の音素数の一例を示す図である。
【図７】図７は、実施例１に係る音声翻訳サーバの機能的構成の一例を示すブロック図である。
【図８】図８は、実施例１に係る音声翻訳処理の手順を示すフローチャートである。
【図９】図９は、実施例２に係る音声翻訳サーバの機能的構成の一例を示すブロック図である。
【図１０】図１０は、実施例２に係る音声翻訳処理の手順を示すフローチャートである。
【図１１】図１１は、入力音声の言語識別結果の一例を示す図である。
【図１２】図１２は、言語識別方法別の正解率の一例を示す図である。
【図１３】図１３は、実施例１から実施例３に係る言語識別プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して本願に係る言語識別プログラム、言語識別方法及び言語識別装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１１】
［システム構成］
図１は、実施例１に係る音声翻訳システムの構成例を示す図である。図１には、音声翻訳がコンピュータシステムに実装されるユースケースのあくまで一例として、医療現場で行われる多言語のコミュニケーションに音声翻訳が適用される例が示されている。
【００１２】
図１に示す音声翻訳システム１は、医療関係者３Ａ及び外国人患者３Ｂの間の多言語のコミュニケーションを音声翻訳により支援する音声翻訳サービスを提供するものである。ここで言う「医療関係者」は、医師等に限定されず、医師を始めとする医療従事者の他、受付や会計などを行う事務員などの関係者全般が含まれていてもかまわない。
【００１３】
図１に示すように、音声翻訳システム１には、音声翻訳サーバ１０と、音声翻訳端末３０とが含まれる。図１には、説明の便宜上、１つの音声翻訳端末３０を図示したが、音声翻訳サーバ１０に接続される音声翻訳端末３０の数は任意の数であってかまわない。
【００１４】
音声翻訳サーバ１０は、上記の音声翻訳サービスを提供するコンピュータである。
【００１５】
１つの側面として、音声翻訳サーバ１０は、パッケージソフトウェア又はオンラインソフトウェアとして、上記の音声翻訳サービスに対応する機能を実現する音声翻訳プログラムを任意のコンピュータにインストールさせることによって実装できる。例えば、音声翻訳サーバ１０は、上記の音声翻訳サービスを提供するサーバとしてオンプレミスに実装することとしてもよいし、アウトソーシングによって上記の音声翻訳サービスを提供するクラウドとして実装することとしてもかまわない。
【００１６】
音声翻訳端末３０は、上記の音声翻訳サービスの提供を受けるコンピュータである。
【００１７】
一実施形態として、音声翻訳端末３０は、音声翻訳をハンズフリー及びアイズフリーで実現する側面から、音声を電気信号に変換するマイクロフォンや各種の音声を出力するスピーカ等のハードウェアを搭載するウェアラブル端末として実装することができる。あくまで一例として、図１に示すように、音声翻訳端末３０をネームプレート型のウェアラブル端末とし、これを医療関係者３Ａの胸元等に装着させることで、医療関係者３Ａの手が塞がらない状態で音声翻訳を実施することができる。なお、ここでは、あくまで一例として、音声翻訳端末３０が医療関係者３Ａにより装着される例を挙げたが、装着者は外国人患者３Ｂであってもよい。また、音声翻訳端末３０は、必ずしもウェアラブル端末として実装されずともよく、タブレット端末等の携帯端末装置であってもよいし、パーソナルコンピュータ等の据置き型のコンピュータであってもかまわない。
【００１８】
これら音声翻訳サーバ１０及び音声翻訳端末３０の間では、一例として、次のようなデータが授受される。例えば、音声翻訳端末３０は、ネットワークにおけるデータ伝送量の削減やプライバシー保護などの側面から、図示しないマイクロフォンへ入力される音声から検出された発話区間の音声データを音声翻訳サーバ１０へ伝送する。このとき、音声翻訳端末３０は、入力される音声信号の波形の振幅および零交差に基づいて発話開始および発話終了を検出することとしてもよいし、音声信号のフレームごとにＧＭＭ（Gaussian  Mixture  Model）にしたがって音声の尤度および非音声の尤度を算出してこれらの尤度の比から発話開始および発話終了を検出することもできる。また、音声翻訳サーバ１０は、音声翻訳端末３０から伝送された発話区間の音声データに音声翻訳を実行した上で翻訳後の発話のテキストから生成された合成音声のデータを音声翻訳端末３０へ伝送する。このように合成音声が伝送された音声翻訳端末３０では、当該合成音声が図示しないスピーカ等から出力される。
【００１９】
上記の音声翻訳サービスは、図１に示すように、複数種類の外国語が使用される環境下で提供される。すなわち、医療関係者３Ａが発話に使用する言語の種類は、日本語に固定される一方で、外国人患者３Ｂにより発話に使用される言語は、必ずしも１種類とは限らない。例えば、ある外国人患者３Ｂが発話に使用する言語の種類は英語であり、また、別の外国人患者３Ｂが発話に使用する言語の種類は中国語であるといったように、外国人患者３Ｂの個人ごとに発話に使用される言語の種類が異なりうる多言語の使用環境下で上記の音声翻訳サービスが提供される。
【００２０】
［課題の一側面］
このように多言語の音声翻訳が行われる場合、外国人が発話に使用する言語の種類によって外国人の発話に適用する音声認識エンジンの種類も変わる。このような側面から、多言語の音声翻訳には、入力音声に対応する言語の種類を識別する機能が搭載されることがある。
【００２１】
ところが、上記の背景技術の欄で説明した通り、手動操作によって言語の種類を指定させたのでは、操作によって話者の手が塞がるので、ハンズフリーで作業できる局面が限定されてしまう。例えば、医療現場では、受付や検査、診察、処理、病棟、会計などといった様々な局面で医療関係者３Ａの業務が滞る他、消毒や殺菌がなされていない対象への接触が感染のリスクを増加させるといった衛生面でも不利益をまねくことがある。
【００２２】
他方、言語の種類の識別に音声を用いる言語識別システム（ＬＩＤ：Language  IDentification  system）も存在する。すなわち、言語識別システムは、入力音声の音声認識を複数の言語ごとに行い、複数の言語ごとに音声認識結果の文の尤度を算出する。このとき、文の尤度の算出には、単語の並び方の特徴、例えば単語の順番の存在確率が統計的にモデリングされた言語モデルと、音響的な特徴、例えば音素の存在確率が統計的にモデリングされた音響モデルとが用いられる。なお、当然のことながら、言語モデルおよび音響モデルは、複数の言語ごとにモデリングされる。その上で、言語識別システムは、複数の言語のうち文の尤度が最高である言語を使用言語として識別する。
【００２３】
しかしながら、上記の言語識別システムでは、次のような理由から、言語の識別精度が低下する場合がある。すなわち、上記の言語識別システムは、統計的な確率によって文の尤度を決めるものに過ぎない。このため、上記の言語識別システムでは、言語的な特徴および音響的な特徴の両面で複数種類の言語に対応しうる発話が音声として入力される場合、当該発話の言語の種類が誤って識別されるおそれがある。
【００２４】
このような誤識別が発生しうる事例を図２および図３に示す。図２は、音声認識結果の一例を示す図であり、図３は、文の尤度の一例を示す図である。図２には、日本語の発話２１に日本、英語および中国語の３種類の言語に対応する音声認識エンジンが適用された場合の音声認識結果２２〜２４が示されている。また、３つの音声認識結果２２〜２４の各々には、ＩＰＡ（International  Phonetic  Alphabet）に則った音素記号で表現された音素列が示されている。さらに、音声認識結果２３及び２４には、発話２１が英語または中国語のテキストから翻訳された日本語のテキストが示されている。また、図３には、音声認識エンジンの対応言語ごとに図２に示す発話２１に対する音声認識結果と共にその文の尤度が示されている。
【００２５】
図２に示すように、日本語の発話２１「一週間ばかり、ニューヨークを取材した」に日本語対応の音声認識エンジンが適用された場合（ステップＳ１−１）、音声認識結果２２が得られる。この音声認識結果２２が日本語の言語モデルや音響モデルとマッチングされることにより、音声認識結果２３が日本語の文である尤度が算出される。この場合、発話２１に使用された言語「日本語」と、音声認識エンジンが対応する言語「日本語」とが一致するので、発話２１通りの音声認識結果２２が得られている。このような音声認識結果２２から算出される和文の尤度は、図３に示すように、発話２１の言語と一致しない多国語に対応する音声認識エンジンが適用された音声認識結果から算出される他国の文の尤度に比べれば大きくなる可能性が高い。
【００２６】
また、日本語の発話２１「一週間ばかり、ニューヨークを取材した」に英語対応の音声認識エンジンが適用された場合（ステップＳ１−２）、音声認識結果２３が得られる。この音声認識結果２３が英語の言語モデルや音響モデルとマッチングされることにより、音声認識結果２３が英語の文である尤度が算出される。この場合、発話２１に使用された言語「日本語」と、音声認識エンジンが対応する言語「英語」とは一致しないので、音声認識結果２３から算出される英語の文の尤度は、図３に示すように、音声認識結果２２から算出される和文の尤度に比べて相対的に小さくなる。
【００２７】
また、日本語の発話２１「一週間ばかり、ニューヨークを取材した」に中国語対応の音声認識エンジンが適用された場合（ステップＳ１−３）、音声認識結果２４が得られる。この音声認識結果２４が中国語の言語モデルや音響モデルとマッチングされることにより、音声認識結果２４が中国語の文である尤度が算出される。この場合、発話２１に使用された言語「日本語」と、音声認識エンジンが対応する言語「中国語」とは一致しない。それにもかかわらず、音声認識結果２４から算出される中国語の文の尤度は、図３に示すように、音声認識結果２３から算出される英文の尤度に比べて相対的に大きくなり、音声認識結果２２から算出される和文の尤度と近い値となる場合がある。
【００２８】
このように、言語的な特徴および音響的な特徴の両面で日本語および中国語に対応しうる発話２１が音声として入力される場合、当該発話２１の言語の種類が誤って中国語と識別される事態が生じうる。
【００２９】
［課題解決のアプローチの一側面］
このような誤認識を抑制する側面から、本実施例に係る音声翻訳サーバ１０には、入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果の各々に含まれる音素数を求め、複数の言語ごとに求めた音素数に基づいて入力音声に対応する言語の種類を識別する言語識別機能が搭載される。
【００３０】
このように音素数に基づいて言語を識別するという動機付けは、１つの側面として、入力音声と同一の言語に対応する音声認識が実行される場合と、入力音声と同一でない言語に対応する音声認識が実行される場合との間で音声認識結果に含まれる音素数に差が生じるという知見があって始めて成立する。
【００３１】
図４は、音素数に関するグラフの一例を示す図である。図４に示すグラフの縦軸は、音声認識結果のテキストに含まれる音素数を指す一方で、グラフの横軸は、入力音声に含まれる音素数を指す。さらに、図４には、入力音声と同一の言語の音声認識エンジンにより実行された音声認識結果の音素数が実線で示される一方で、入力音声と同一でない言語の音声認識エンジンにより実行された音声認識結果の音素数が破線で示されている。図４に示すように、入力音声と同一の言語の音声認識エンジンにより音声認識が実行される場合の方が入力音声と同一でない言語の音声認識エンジンにより音声認識が実行される場合よりも音素数が定常的に大きいことがわかる。
【００３２】
このような音素数の関係が成立する一因には、入力音声と同一でない言語の音声認識エンジンにより音声認識が実行される場合、音声認識に用いる音響モデルに登録がそもそも存在しない音素、あるいは存在確率が低い音素が入力音声に含まれることによって音素の認識漏れが起こる可能性が高いことが挙げられる。
【００３３】
図５は、音素の同定結果の比較例を示す図である。図５には、英語の発話「Ｈｅｌｌｏ」が音声として入力される場合の音声認識エンジンの動作内容が示されている。さらに、図５の左側には、対応言語が英語である音声認識エンジンが英語の音響モデルを用いて音素を同定する例が示される一方で、図５の右側には、対応言語が日本語である音声認識エンジンが日本語の音響モデルを用いて音素を同定する例が示される。
【００３４】
図５に示すように、英語の発話「Ｈｅｌｌｏ」の音声データが英語の音声認識エンジンおよび日本語の音声認識エンジンに入力された場合、各音声認識エンジンでは、当該音声データに含まれるフレームがＭＦＣＣ（Mel-Frequency  Cepstrum  Coefficients）等の特徴量の時系列データへ変換される。以下、特徴量の時系列データのことを「特徴量列」と記載する場合がある。図５に示す例で言えば、音声データの波形がｆ０、ｆ１、・・・、ｆ１２といった特徴量列へ変換される。
【００３５】
その後、各々の音声認識エンジンでは、特徴量列ｆ０、ｆ１、・・・、ｆ１２と、言語として存在する音素および当該音素の特徴量の存在確率の分布等がモデル化された音素音響モデルとがマッチングされることにより、特徴量列ｆ０、ｆ１、・・・、ｆ１２に特徴量が類似する音素が割り当てられる。さらに、音声認識エンジンでは、音素音響モデルを用いて割り当てられた音素と、音素列とそれに対応する英語の単語との組合せの存在確率がモデル化された単語音響モデルとがマッチングされることにより、音素音響モデルを用いて割り当てられた音素に単語が割り当てられる。さらに、音声認識エンジンでは、単語音響モデルを用いて割り当てられた単語列と、単語の並び順の存在確率が定義された言語モデルとをマッチングすることにより、単語の並び順が尤度等のスコアによって評価される。これらのマッチングが隠れマルコフモデル、いわゆるＨＭＭ（Hidden  Markov  Model）にしたがって動的に実行されることにより、評価が最高であるスコアを持つ単語列に対応するテキストが音声認識結果として出力される。
【００３６】
このような動的なマッチングが実行される際、音声認識エンジンの対応言語が入力音声の発話で使用される言語と一致するか否かにより、音声認識結果に含まれる音素数に差が生じる。
【００３７】
例えば、英語の音声認識エンジンでは、特徴量列ｆ０、ｆ１、・・・、ｆ１２のうち特徴量ｆ１に音素「ｈ」が割り当てられ、特徴量ｆ２及び特徴量ｆ３にシュワーと呼ばれる音素が割り当てられ、特徴量ｆ４及び特徴量ｆ５に音素「ｌ」が割り当てられ、特徴量ｆ６及び特徴量ｆ７に音素「ｏ」が割り当てられると共に、特徴量ｆ８〜特徴量ｆ１０にラテンウプシロンと呼ばれる音素が割り当てられている。
【００３８】
一方、日本語の音声認識エンジンでは、特徴量列ｆ０、ｆ１、・・・、ｆ１２のうち特徴量ｆ１に音素「ｈ」が割り当てられ、特徴量ｆ２及び特徴量ｆ３に音素「シュワー」が割り当てられ、特徴量ｆ４及び特徴量ｆ５に音素「ｒ」が割り当てられると共に、特徴量ｆ６〜特徴量ｆ１０に音素「ｏ」が割り当てられている。
【００３９】
このように、英語の単語音響モデルでは、音素「ｏ」、音素「ラテンウプシロン」の順の並びの頻度が高いので、特徴量ｆ６及び特徴量ｆ７に音素「ｏ」が割り当てられると共に、特徴量ｆ８〜特徴量ｆ１０に音素「ラテンウプシロン」を割り当てることに成功している。このような音素の割当によって、英語の音声認識エンジンでは、正解の音声認識結果「Ｈｅｌｌｏ」を出力できる。その一方で、日本語の音響モデルでは、音素「ｏ」、音素「ラテンウプシロン」の順の並びの頻度が低いので、特徴量ｆ６〜特徴量ｆ１０に１つの音素「ｏ」が割り当てられる結果、音素「ラテンウプシロン」の認識漏れが発生している。この音素「ラテンウプシロン」の認識漏れが一因となって、日本語の音声認識エンジンでは、誤った音声認識結果「経ろ」が出力されることになる。
【００４０】
このため、入力音声と同一の言語の音声認識エンジンにより音声認識が実行される場合の方が入力音声と同一でない言語の音声認識エンジンにより音声認識が実行される場合よりも音素数が大きいことが明らかであると言える。
【００４１】
そして、音素数に基づいて言語を識別する場合、図２に示す日本語の発話２１「一週間ばかり、ニューヨークを取材した」に使用される言語も正確に識別することができる。
【００４２】
図６は、音声認識結果別の音素数の一例を示す図である。図６に示す表には、図２に示す発話２１に対する日本、英語および中国語の３種類の言語に対応する音声認識エンジンが適用された場合の音声認識結果２２〜２４ごとに音素列の変換結果および音素数の算出結果が示されている。図６に示すように、日本語の音声認識エンジンが出力する音声認識結果２２の音素数は「３３」であり、英語の音声認識エンジンが出力する音声認識結果２３の音素数は「３２」であり、中国語の音声認識結果２４の音素数は「１９」である。例えば、３つの音素数の大小関係を比較することにより、発話２１に対応する言語の種類を正解の日本語と識別することができる。
【００４３】
したがって、本実施例に係る音声翻訳サーバ１０によれば、言語の種類の識別精度を向上させることが可能になる。
【００４４】
［音声翻訳サーバ１０の構成］
図７は、実施例１に係る音声翻訳サーバ１０の機能的構成の一例を示すブロック図である。図７に示すように、音声翻訳サーバ１０は、入力部１１と、音声認識部１２−１〜１２−Ｍと、音素列変換部１３−１〜１３−Ｍと、音素数算出部１４−１〜１４−Ｍと、言語識別部１５と、音声翻訳部１６と、出力部１７とを有する。なお、音声翻訳サーバ１０は、図７に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば他の装置との間で通信制御を行う通信インタフェースなどを有することとしてもかまわない。
【００４５】
図１に示す入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、言語識別部１５、音声翻訳部１６及び出力部１７などの機能部は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などのハードウェアプロセッサにより仮想的に実現される。
【００４６】
例えば、プロセッサは、図示しない記憶装置、例えばＨＤＤ（Hard  Disk  Drive）、光ディスクやＳＳＤ（Solid  State  Drive）などの記憶装置からＯＳ（Operating  System）の他、上記の音声翻訳プログラムを読み出す。その上で、プロセッサは、音声翻訳プログラムを実行することにより、ＲＡＭ（Random  Access  Memory）等のメモリ上に上記の機能部に対応するプロセスを展開する。この結果、上記の機能部がプロセスとして仮想的に実現される。
【００４７】
ここでは、上記の音声翻訳サービスに対応する機能がパッケージ化された音声翻訳プログラムが実行される例を挙げたが、上記の言語識別機能などの単位でプログラムモジュールが実行されることとしてもかまわない。
【００４８】
また、ここでは、プロセッサの一例として、ＣＰＵやＭＰＵを例示したが、汎用型および特化型を問わず、任意のプロセッサにより上記の機能部が実現されることとしてもかまわない。この他、上記の機能部は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによって実現されることとしてもかまわない。
【００４９】
入力部１１は、後段の機能部に対する情報の入力制御を行う処理部である。
【００５０】
１つの側面として、入力部１１は、音声翻訳端末３０から発話区間の音声データを音声翻訳のリクエストとして受け付けた場合、識別対象とする言語の数Ｍ（Ｍは自然数）に対応する系統ごとに発話区間の音声データを入力する。以下では、音声認識部、音素列変換部および音素数算出部の符号の末尾に系統に対応する番号を付すことによって１番目からＭ番目までの各系統を識別すると共に、Ｍ個の系統をインデックスｋ（＝１〜Ｍ）を用いて表記する場合がある。また、１番目の系統に対応する言語のことを「第１言語」、２番目の系統に対応する言語のことを「第２言語」、ｋ番目の系統に対応する言語のことを「第ｋ言語」と記載する場合がある。
【００５１】
音声認識部１２−１〜１２−Ｍは、いずれも音声認識を実行する処理部である。以下、音声認識部１２−１〜１２−Ｍのことを「音声認識部１２」と記載する場合がある。
【００５２】
一実施形態として、音声認識部１２は、系統に割り当てられた言語に対応する音声認識エンジンを実行することにより実装できる。例えば、１番目の系統に日本語が割り当てられ、２番目の系統に英語が割り当てられると共に、３番目の系統に中国語が割り当てられているとする。この場合、入力部１１から出力される発話区間の音声データに対し、音声認識部１２−１は、日本語対応の音声認識エンジンを適用し、音声認識部１２−２は、英語対応の音声認識エンジンを適用し、また、音声認識部１２−３は、中国語対応の音声認識エンジンを適用する。これらの音声認識エンジンは、汎用のものであってかまわない。
【００５３】
音素列変換部１３−１〜１３−Ｍは、いずれも音声認識結果を音素列へ変換する処理部である。以下、音素列変換部１３−１〜１３−Ｍのことを「音素列変換部１３」と記載する場合がある。
【００５４】
一実施形態として、音素列変換部１３は、音声認識部１２による音声認識結果として得られた発話テキストをＩＰＡに則った音素記号で表現された音素列へ変換する。例えば、音素列変換部１３は、Ｎ−ｇｒａｍ統計データとそれに対応する音素の情報を用いて、音声認識部１２により出力された発話テキストに最尤推定やベイズ推定などを実行することにより音素を同定する。なお、ここでは、音素記号の一例として、ＩＰＡを挙げたが、他の音素記号で表現されることとしてもかまわない。また、ここでは、音素の時系列データに変換する例を挙げたが、必ずしも音素そのものの時系列データでなくともよく、音素の特徴量や確からしさを含むベクトルの列へ変換することとしてもかまわない。
【００５５】
音素数算出部１４−１〜１４−Ｍは、いずれも音素列から音素数を算出する処理部である。以下、音素数算出部１４−１〜１４−Ｍのことを「音素数算出部１４」と記載する場合がある。
【００５６】
一実施形態として、音素数算出部１４は、音素列変換部１３により発話テキストから変換された音素列に含まれる音素の数を計数することにより、当該系統の音声認識エンジンが出力する音声認識結果に含まれる音素数を算出する。この他、音素数算出部１４は、下記の式（１）にしたがって、音素列に含まれる音素ごとに重み付けを行った上で重み付けの総和を音素数として算出することもできる。このとき、音素数算出部１４は、当該系統に対応する言語で固有に使用される度合い、あるいは独自性が高い音素ほど大きい重みを付与することができる。例えば、各音素に付与する重みには、多数の学習サンプルを含む学習データから統計的に求めた音素の存在確率の逆数などを用いることができる。なお、下記の式（１）における「Ｐｋ，ｉ」は、第ｋ言語の音声認識結果に出現する音素（又は文字）を指し、例えば、Ｐｋ，１、Ｐｋ，２、・・・、Ｐｋ，ｎｋとして表される。また、「ｉ」は、音素列に含まれるｎ個の音素の順番を識別するインデックスに対応する。また、下記の式（１）における「ｎｋ」は、第ｋ言語の音声認識結果の音素数を指す。また、下記の式（１）における「ＷＬ，ｋ（Ｐｋ，ｉ）」は、音素に付与する重みを指す。
【００５７】
【数１】
2020056972.tif 000003
【００５８】
なお、音素列の代わりにベクトル列が用いられる場合、ベクトルに含まれる情報から音素のスコアを算出し、その総和としても良い。また、音素列に含まれる音素数が最大になる系統の音素数を用いて、他の系統で求められる音素数を正規化しても良い。
【００５９】
言語識別部１５は、系統ごとに算出された音素数に基づいて言語の種類を識別する処理部である。
【００６０】
一実施形態として、言語識別部１５は、音素数算出部１４−１〜１４−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに算出された音素数のうち音素数が最大である言語を発話に使用された言語と識別する。以下、言語識別部１５により識別された発話の使用言語のことを「発話言語」と記載する。
【００６１】
音声翻訳部１６は、発話言語の音声認識結果に音声翻訳を行う処理部である。
【００６２】
ここでは、あくまで一例として、図１に例示する医療現場にて医療関係者３Ａ及び外国人患者３Ｂの発話の音声翻訳を行う場合を例に挙げる。例えば、言語識別部１５により識別された発話言語が日本語以外の外国語である場合、音声翻訳部１６は、発話言語に対応する発話テキストを日本語に対応する翻訳テキストへ変換する機械翻訳を実行する。また、言語識別部１５により識別された発話言語が日本語である場合、音声翻訳部１６は、発話言語に対応する発話テキストを言語識別部１５により直前に外国語として識別された言語に対応する翻訳テキストへ変換する機械翻訳を実行する。
【００６３】
出力部１７は、音声翻訳端末３０に対する出力制御を行う処理部である。
【００６４】
１つの側面として、出力部１７は、音声翻訳部１６により生成された翻訳テキストから当該翻訳テキストを読み上げる合成音声を生成する。そして、出力部１７は、発話区間の音声データの送信により音声翻訳のリクエストを行った音声翻訳端末３０へ翻訳テキストを読み上げる合成音声の音声データを出力する。
【００６５】
［処理の流れ］
図８は、実施例１に係る音声翻訳処理の手順を示すフローチャートである。この処理は、あくまで一例として、音声翻訳端末３０から発話区間の音声データを音声翻訳のリクエストとして受け付けた場合に起動する。
【００６６】
図８に示すように、音声認識部１２−１〜１２−Ｍは、各系統に割り当てられた言語に対応する音声認識エンジンに発話区間の音声データを入力することにより、音声認識部１２−１〜１２−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに音声認識を実行する（ステップＳ１０１）。
【００６７】
続いて、音素列変換部１３−１〜１３−Ｍは、音声認識部１２−１〜１２−Ｍによる音声認識結果として得られた発話テキストをＩＰＡに則った音素記号で表現された音素列へ変換する（ステップＳ１０２）。
【００６８】
そして、音素数算出部１４−１〜１４−Ｍは、音素列変換部１３−１〜１３−Ｍにより発話テキストから変換された音素列に含まれる音素数を算出する（ステップＳ１０３）。これらステップＳ１０１からステップＳ１０３までの処理により、第１言語〜第Ｍ言語ごとに音素数が算出される。
【００６９】
その後、言語識別部１５は、音素数算出部１４−１〜１４−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに算出された音素数のうち音素数が最大である言語を発話言語と識別する（ステップＳ１０４）。
【００７０】
そして、音声翻訳部１６は、ステップＳ１０４で識別された発話言語に対応する発話テキストを日本語または外国語に対応する翻訳テキストへ変換する（ステップＳ１０５）。続いて、出力部１７は、ステップＳ１０５で得られた翻訳テキストから当該翻訳テキストを読み上げる合成音声を生成して当該合成音声の音声データを音声翻訳端末３０へ出力し（ステップＳ１０６）、処理を終了する。
【００７１】
［効果の一側面］
上述してきたように、本実施例に係る音声翻訳サーバ１０によれば、言語の種類の識別をハンズフリーで実現することが可能である。加えて、上記の言語識別システムと比べても、言語の種類の識別精度を向上させることが可能である。
【実施例２】
【００７２】
さて、上記の実施例１では、音素数に基づいて発話言語の種類を識別する例を説明したが、さらに他の情報を用いて発話言語の種類を識別することもできる。そこで、本実施例では、音素数に加えて発話の文の尤度に基づいて発話言語の種類を識別する例について説明する。
【００７３】
図９は、実施例２に係る音声翻訳サーバ２０の機能的構成の一例を示すブロック図である。図９に示す音声翻訳サーバ２０は、図７に示す音声翻訳サーバ１０に比べて、尤度算出部２１−１〜２１−Ｍをさらに有する点が異なる。さらに、図９に示す音声翻訳サーバ２０は、図７に示す音声翻訳サーバ１０に比べて、言語識別部１５の処理内容の一部が異なる言語識別部２２を有する点が異なる。なお、図９には、図７に示す音声翻訳サーバ１０と同一の機能を有する機能部には同一の符号を付し、その説明を省略することとする。
【００７４】
尤度算出部２１−１〜２１−Ｍは、音声認識部１２−１〜１２−Ｍによる音声認識結果の文の尤度を算出する処理部である。ここで、文の尤度の算出には、一例として、非特許文献に挙げた技術を援用することができる。
【００７５】
一実施形態として、尤度算出部２１−１〜２１−Ｍは、下記の式（２）にしたがって音声認識部１２−１〜１２−Ｍが出力する発話テキストから言語モデルに基づく文の尤度を音声認識部１２−１〜１２−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに算出する。下記の式（２）における「ｌｋ，ｓ」は、発話テキストに対する第ｋ言語としての文の尤度を指す。下記の式（２）における「ｗｋ，ｉ」は、第ｋ言語の音声認識結果に出現する単語（又は文字）を指し、例えば、ｗｋ，１、ｗｋ，２、・・・、ｗｋ，ｎｋとして表される。また、「ｉ」は、第ｋ言語の音声認識結果の単語列に含まれるＮｋ個の単語の順番を識別するインデックスに対応する。また、下記の式（１）における「Ｐｋ（ｗｋ，ｉ＋１｜ｗｋ，ｉ）」は、言語モデルを指す。
【００７６】
【数２】
2020056972.tif 000004
【００７７】
言語識別部２２は、音素数算出部１４−１〜１４−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに算出された音素数および言語モデルに基づく文の尤度に基づいて発話言語の種類を識別する。例えば、言語識別部２２は、第１言語〜第Ｍ言語ごとに算出された文の尤度のうち所定の閾値Ｔ１を超える言語に絞り込む。この閾値Ｔ１には、一例として、言語モデルの最低尤度の半分以上に設定することができる。例えば、最低尤度(対数)が−１０．０(確率0.00000001％)であれば、−５．０に設定することとすればよい。このように文の尤度が閾値Ｔ１を超える言語に絞り込んだ上で、言語識別部２２は、絞り込まれた言語のうち音素数が最大である言語を発話に使用された言語と識別する。
【００７８】
図１０は、実施例２に係る音声翻訳処理の手順を示すフローチャートである。この処理も、あくまで一例として、音声翻訳端末３０から発話区間の音声データを音声翻訳のリクエストとして受け付けた場合に起動する。
【００７９】
図１０に示すように、音声認識部１２−１〜１２−Ｍは、各系統に割り当てられた言語に対応する音声認識エンジンに発話区間の音声データを入力することにより、音声認識部１２−１〜１２−Ｍの系統、すなわち第１言語〜第Ｍ言語ごとに音声認識を実行する（ステップＳ１０１）。
【００８０】
続いて、音素列変換部１３−１〜１３−Ｍは、音声認識部１２−１〜１２−Ｍによる音声認識結果として得られた発話テキストをＩＰＡに則った音素記号で表現された音素列へ変換する（ステップＳ１０２）。
【００８１】
そして、音素数算出部１４−１〜１４−Ｍは、音素列変換部１３−１〜１３−Ｍにより発話テキストから変換された音素列に含まれる音素数を算出する（ステップＳ１０３）。これらステップＳ１０１からステップＳ１０３までの処理により、第１言語〜第Ｍ言語ごとに音素数が算出される。
【００８２】
このようなステップＳ１０１からステップＳ１０３までの処理と同時または並行して、尤度算出部２１−１〜２１−Ｍは、音声認識部１２−１〜１２−Ｍが出力する発話テキストから言語モデルに基づく文の尤度を第１言語〜第Ｍ言語ごとに算出する（ステップＳ２０１）。
【００８３】
そして、言語識別部２２は、各系統に対応する言語を識別するインデックスｋを所定の初期値、例えば「１」に初期化する（ステップＳ２０２）。続いて、言語識別部２２は、インデックスｋに対応する文の尤度ｌｋ，ｓが閾値Ｔ１を超えるか否かを判定する（ステップＳ２０３）。
【００８４】
このとき、文の尤度ｌｋ，ｓが閾値Ｔ１を超える場合（ステップＳ２０３Ｙｅｓ）、言語識別部２２は、図示しない内部メモリに保持される候補リストに第ｋ言語を追加する（ステップＳ２０４）。なお、文の尤度ｌｋ，ｓが閾値Ｔ１を超えない場合（ステップＳ２０３Ｎｏ）、ステップＳ２０４の処理はスキップされる。
【００８５】
その後、言語識別部２２は、インデックスｋを１つインクリメントする（ステップＳ２０５）。続いて、言語識別部２２は、インデックスｋの値がＭ＋１になったか否か、すなわち系統に対応する言語の数Ｍを超えたか否かを判定する（ステップＳ２０６）。
【００８６】
そして、インデックスｋの値がＭ＋１になるまで（ステップＳ２０６Ｎｏ）、上記のステップＳ２０３〜ステップＳ２０５までの処理を繰り返し実行する。その後、インデックスｋの値がＭ＋１になると（ステップＳ２０６Ｙｅｓ）、言語識別部２２は、候補リストに言語が存在するか否かを判定する（ステップＳ２０７）。
【００８７】
ここで、候補リストに言語が存在する場合（ステップＳ２０７Ｙｅｓ）、言語識別部１５は、内部メモリに保持された候補リストに存在する言語のうち音素数が最大である言語を発話言語と識別する（ステップＳ２０８）。
【００８８】
そして、音声翻訳部１６は、ステップＳ２０８で識別された発話言語に対応する発話テキストを日本語または外国語に対応する翻訳テキストへ変換する（ステップＳ２０９）。続いて、出力部１７は、ステップＳ２０９で得られた翻訳テキストから当該翻訳テキストを読み上げる合成音声を生成して当該合成音声の音声データを音声翻訳端末３０へ出力し（ステップＳ２１０）、処理を終了する。
【００８９】
なお、候補リストに言語が存在しない場合（ステップＳ２０７Ｎｏ）、出力部１７は、識別不能の合成音声を日本語および英語で生成して当該合成音声の音声データを音声翻訳端末３０へ出力し（ステップＳ２１１）、処理を終了する。
【００９０】
上述してきたように、本実施例に係る音声翻訳サーバ２０によれば、上記の実施例１と同様、言語の種類の識別をハンズフリーで実現することが可能である。
【００９１】
さらに、本実施例に係る音声翻訳サーバ２０では、上記の言語識別システムと比べても、言語の種類の識別精度を向上させることが可能である。図１１は、入力音声の言語識別結果の一例を示す図である。図１１には、Ｎｏ．１の発話およびＮｏ．２の発話の２つ発話に関し、英語としての文の尤度、中国語としての文の尤度、英語の音声認識エンジンの音声認識結果に含まれる音素数、中国語の音声認識結果に含まれる音素数および識別結果が示されている。
【００９２】
図１１に示すＮｏ．１の発話の例で言えば、文の尤度だけで言語の種類を識別したのでは、英語としての文の尤度よりも中国語としての文の尤度の方が高いので、英語の発話を中国語の発話と誤識別する。一方、音素数を用いて言語の種類を識別する場合、英語の音声認識エンジンの音声認識結果に含まれる音素数が中国語の音声認識結果に含まれる音素数よりも多いので、Ｎｏ．１の発話に使用された言語を英語と正しく識別できる。
【００９３】
また、図１１に示すＮｏ．２の発話の例で言えば、文の尤度だけで言語の種類を識別したのでは、英語としての文の尤度の方が中国語としての文の尤度よりも高いので、中国語の発話を英語の発話と誤識別する。一方、音素数を用いて言語の種類を識別する場合、英語の音声認識エンジンの音声認識結果に含まれる音素数よりも中国語の音声認識結果に含まれる音素数の方が多いので、Ｎｏ．２の発話に使用された言語を中国語と正しく識別できる。
【００９４】
加えて、本実施例に係る音声翻訳サーバ２０では、発話言語の種類の識別に音素数に加えて発話の文の尤度を用いるので、上記の実施例１に係る音声翻訳サーバ１０と比べても、言語の種類の識別精度をさらに向上させることが可能である。
【００９５】
図１２は、言語識別方法別の正解率の一例を示す図である。図１２には、５つの英語の発話と５つの中国語の発話との計１０音源を入力音声とし、英語および中国語の音声認識エンジンを用いて言語の種類の識別が行われた場合の正解率が３つの言語識別方法別に示されている。図１２の左から順に、文の尤度だけを用いて言語の種類を識別した場合の正解率「７０％」、音素数だけを用いて言語の種類を識別した場合の正解率「８０％」、文の尤度および音素数を用いて言語の種類を識別した場合の正解率「９０％」が示されている。このように、文の尤度を用いる場合よりも音素数を用いる場合の方が正解率が高く、また、文の尤度および音素数の両方を用いる場合の正解率が最高であることがわかる。
【実施例３】
【００９６】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００９７】
［総合スコアの算出］
上記の実施例２では、文の尤度が閾値Ｔ１を超える言語に絞り込んだ上で文の尤度が閾値Ｔ１を超える言語の中から音素数が最大である言語を発話言語と識別する例を説明したが、必ずしも文の尤度の使用方法はこれに限定されない。例えば、下記の式（３）にしたがって文の尤度および音素数の総合スコアを算出し、総合スコアが最大である言語を発話言語と識別することもできる。下記の式（３）における「Ｓｋ，ｓ」は、文の尤度および音素数の総合スコアを指す。また、下記の式（３）における「ｗｋ，ｉ」は、第ｋ言語の音声認識結果に出現する単語（又は文字）を指し、例えば、ｗｋ，１、ｗｋ，２、・・・、ｗｋ，ｎｋとして表される。下記の式（３）における「ｎｋ」は、第ｋ言語の音声認識結果の音素数を指す。下記の式（３）における「ｌｋ，ｓ」は、発話テキストに対する第ｋ言語としての文の尤度を指し、例えば、上記の式（２）により算出することができる。
【００９８】
Ｓｋ，ｓ＝ｎｋｌｋ，ｓ・・・（３）
【００９９】
［識別結果のバッファリング］
例えば、音声翻訳サーバ１０又は２０は、言語識別部１５または言語識別部２２の言語識別結果の履歴をバッファ等の記憶領域に保存しておくことができる。例えば、言語識別結果の履歴は、１０以上の発話の結果が溜まったら古い情報から削除しても良い。また、発話が一定時間無かったら、初期化しても良い。この他、言語識別結果の履歴は、音素数が最大の言語を選択した後、言語識別結果の履歴が保存されたバッファを参照し、識別結果の誤判定性を評価し、識別結果バッファ内の多数決やベイズ推定などで判定を修正しても良い。
【０１００】
［スタンドアローン］
上記の実施例１及び実施例２では、音声翻訳サーバ１０または音声翻訳サーバ２０と、音声翻訳端末３０とのクライアントサーバシステムとして構築する例を説明したが、音声翻訳端末３０の単独で上記の音声翻訳サービスを提供することとしてもかまわない。この場合、音声翻訳端末３０に音声翻訳サーバ１０または音声翻訳サーバ２０が有する機能部を備えることとすればよく、また、必ずしもネットワークに接続されずともかまわない。
【０１０１】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、音声翻訳サーバ１０の例で言えば、入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、言語識別部１５、音声翻訳部１６または出力部１７を音声翻訳サーバ１０の外部装置としてネットワーク経由で接続するようにしてもよい。また、音声翻訳サーバ１０の例で言えば、入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、言語識別部１５、音声翻訳部１６または出力部１７を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の音声翻訳サーバ１０の機能を実現するようにしてもよい。また、音声翻訳サーバ２０の例で言えば、入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、音声翻訳部１６、出力部１７、尤度算出部２１−１〜２１−Ｍまたは言語識別部２２を音声翻訳サーバ２０の外部装置としてネットワーク経由で接続するようにしてもよい。また、音声翻訳サーバ２０の例で言えば、入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、音声翻訳部１６、出力部１７、尤度算出部２１−１〜２１−Ｍまたは言語識別部２２を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の音声翻訳サーバ２０の機能を実現するようにしてもよい。
【０１０２】
［言語識別プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１３を用いて、上記の実施例と同様の機能を有する言語識別プログラムを実行するコンピュータの一例について説明する。
【０１０３】
図１３は、実施例１から実施例３に係る言語識別プログラムを実行するコンピュータのハードウェア構成例を示す図である。図１３に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【０１０４】
ＨＤＤ１７０には、上記の実施例１で示した入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、言語識別部１５、音声翻訳部１６及び出力部１７と同様の機能を発揮する言語識別プログラム１７０ａが記憶される。この言語識別プログラム１７０ａは、図７に示した入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、言語識別部１５、音声翻訳部１６及び出力部１７の各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【０１０５】
また、ＨＤＤ１７０には、上記の実施例２で示した入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、音声翻訳部１６、出力部１７、尤度算出部２１−１〜２１−Ｍ及び言語識別部２２と同様の機能を発揮する言語識別プログラム１７０ａが記憶されることとしてもよい。この言語識別プログラム１７０ａは、図９に示した入力部１１、音声認識部１２−１〜１２−Ｍ、音素列変換部１３−１〜１３−Ｍ、音素数算出部１４−１〜１４−Ｍ、音声翻訳部１６、出力部１７、尤度算出部２１−１〜２１−Ｍ及び言語識別部２２の各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例２で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【０１０６】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から言語識別プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、言語識別プログラム１７０ａは、図１３に示すように、言語識別プロセス１８０ａとして機能する。この言語識別プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち言語識別プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、言語識別プロセス１８０ａが実行する処理の一例として、図８や図１０に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【０１０７】
なお、上記の言語識別プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に言語識別プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から言語識別プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに言語識別プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから言語識別プログラム１７０ａを取得して実行するようにしてもよい。
【０１０８】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０９】
（付記１）入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出し、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する、
処理をコンピュータに実行させる言語識別プログラム。
【０１１０】
（付記２）前記識別する処理は、前記複数の言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記１に記載の言語識別プログラム。
【０１１１】
（付記３）前記入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果から言語モデルに基づく文の尤度を前記複数の言語ごとに算出する処理を前記コンピュータにさらに実行させ、
前記識別する処理は、前記複数の言語ごとに算出された音素数および前記複数の言語ごとに算出された言語モデルに基づく文の尤度に基づいて前記入力音声に対応する言語の種類を識別する付記１に記載の言語識別プログラム。
【０１１２】
（付記４）前記識別する処理は、前記複数の言語のうち前記言語モデルに基づく文の尤度が所定の閾値以上である言語を抽出し、該抽出された言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記３に記載の言語識別プログラム。
【０１１３】
（付記５）前記識別する処理は、前記音素数および前記言語モデルに基づく文の尤度から求めたスコアが最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記３に記載の言語識別プログラム。
【０１１４】
（付記６）入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換し、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出し、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する、
処理をコンピュータが実行する言語識別方法。
【０１１５】
（付記７）前記識別する処理は、前記複数の言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記６に記載の言語識別方法。
【０１１６】
（付記８）前記入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果から言語モデルに基づく文の尤度を前記複数の言語ごとに算出する処理を前記コンピュータがさらに実行し、
前記識別する処理は、前記複数の言語ごとに算出された音素数および前記複数の言語ごとに算出された言語モデルに基づく文の尤度に基づいて前記入力音声に対応する言語の種類を識別する付記６に記載の言語識別方法。
【０１１７】
（付記９）前記識別する処理は、前記複数の言語のうち前記言語モデルに基づく文の尤度が所定の閾値以上である言語を抽出し、該抽出された言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記８に記載の言語識別方法。
【０１１８】
（付記１０）前記識別する処理は、前記音素数および前記言語モデルに基づく文の尤度から求めたスコアが最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記８に記載の言語識別方法。
【０１１９】
（付記１１）入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果を音素列へ変換する音素列変換部と、
前記複数の言語ごとに変換された音素列から音素数を前記複数の言語ごとに算出する音素数算出部と、
前記複数の言語ごとに算出された音素数に基づいて前記入力音声に対応する言語の種類を識別する言語識別部と、
を有することを特徴とする言語識別装置。
【０１２０】
（付記１２）前記言語識別部は、前記複数の言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記１１に記載の言語識別装置。
【０１２１】
（付記１３）前記入力音声に対する音声認識が複数の言語ごとに行われた音声認識結果から言語モデルに基づく文の尤度を前記複数の言語ごとに算出する尤度算出部をさらに有し、
前記言語識別部は、前記複数の言語ごとに算出された音素数および前記複数の言語ごとに算出された言語モデルに基づく文の尤度に基づいて前記入力音声に対応する言語の種類を識別する付記１１に記載の言語識別装置。
【０１２２】
（付記１４）前記言語識別部は、前記複数の言語のうち前記言語モデルに基づく文の尤度が所定の閾値以上である言語を抽出し、該抽出された言語のうち前記音素数が最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記１３に記載の言語識別装置。
【０１２３】
（付記１５）前記識別する処理は、前記音素数および前記言語モデルに基づく文の尤度から求めたスコアが最大である言語を前記入力音声に対応する言語と識別することを特徴とする付記１３に記載の言語識別装置。
【符号の説明】
【０１２４】
１    音声翻訳システム
１０    音声翻訳サーバ
１１    入力部
１２−１〜１２−Ｍ    音声認識部
１３−１〜１３−Ｍ    音素列変換部
１４−１〜１４−Ｍ    音素数算出部
１５    言語識別部
１６    音声翻訳部
１７    出力部
３０    音声翻訳端末
【図１】
2020056972.tif 000005
【図２】
2020056972.tif 000006
【図３】
2020056972.tif 000007
【図４】
2020056972.tif 000008
【図５】
2020056972.tif 000009
【図６】
2020056972.tif 000010
【図７】
2020056972.tif 000011
【図８】
2020056972.tif 000012
【図９】
2020056972.tif 000013
【図１０】
2020056972.tif 000014
【図１１】
2020056972.tif 000015
【図１２】
2020056972.tif 000016
【図１３】
2020056972.tif 000017