(57)【要約】【課題】音声信号の入力に対してテキストを含む出力シーケンスを生成するモデルにおいて、パラメータ数の増加を抑制しつつ、性能を向上させる。【解決手段】音声信号から生成された入力シーケンスを受けて、前記音声信号に対応するテキストを含む出力シーケンスを出力する推論器が提供される。推論器は、前記入力シーケンスから中間表現のシーケンスを出力するエンコーダと、前記エンコーダから出力される中間表現のシーケンス、および、先に出力された出力シーケンスから前記出力シーケンスを出力するデコーダとを含む学習済モデルを含む。前記学習済モデルは、音声信号と、当該音声信号に対応するテキストおよび属性情報とからなるトレーニングデータセットを用いて最適化されている。【選択図】図３
2020154076.tif 000002
【特許請求の範囲】
【請求項１】
音声信号から生成された入力シーケンスを受けて、前記音声信号に対応するテキストを含む出力シーケンスを出力する推論器であって、
推論器は、前記入力シーケンスから中間表現のシーケンスを出力するエンコーダと、前記エンコーダから出力される中間表現のシーケンス、および、先に出力された出力シーケンスから前記出力シーケンスを出力するデコーダとを含む学習済モデルを備えており、
前記学習済モデルは、音声信号と、当該音声信号に対応するテキストおよび属性情報とからなるトレーニングデータセットを用いて最適化されている、推論器。
【請求項２】
前記出力シーケンスには、前記入力シーケンスに対応する属性情報に引き続いて、前記入力シーケンスに対応するテキストが配置されている、請求項１に記載の推論器。
【請求項３】
前記出力シーケンスは、前記入力シーケンスに対応する複数種類の属性情報を含む、請求項１または２に記載の推論器。
【請求項４】
前記エンコーダは積層された複数のエンコーダブロックを含み、前記複数のエンコーダブロック間でパラメータが共有され、
前記デコーダは積層された複数のデコータブロックを含み、前記複数のデコータブロック間でパラメータが共有されている、請求項１〜３のいずれか１項に記載の推論器。
【請求項５】
音声信号から生成された入力シーケンスを受けて、前記音声信号に対応するテキストを含む出力シーケンスを出力するモデルを学習させる学習方法であって、
前記モデルは、
前記入力シーケンスから中間表現のシーケンスを出力するエンコーダと、
前記エンコーダから出力される中間表現のシーケンス、および、先に出力された出力シーケンスから前記出力シーケンスを出力するデコーダとを含み、
前記学習方法は、
音声信号と、当該音声信号に対応するテキストおよび属性情報とからなるトレーニングデータセットを用意するステップと、
前記トレーニングデータセットを用いて前記モデルに含まれるパラメータを最適化するステップとを含む、学習方法。
【請求項６】
コンピュータに請求項５に記載の学習方法を実行させるための学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、音声信号が入力される推論器、ならびに、その学習方法および学習プログラムに関する。
【背景技術】
【０００２】
音声認識分野においては、音響モデル、辞書（lexicon）、および言語モデルを一体化したニューラルネットワークである、Ｅ２Ｅ（end-to-end）モデルが検討および提案されている（非特許文献１および２など参照）。Ｅ２Ｅモデルを用いることで、自動音声認識（ＡＳＲ：Automatic Speech Recognition）システムの構築および学習を容易化できる。
【０００３】
このような音声認識タスクに向けられたＥ２Ｅモデルとして、トランスフォーマベースＥ２ＥのＡＳＲモデル（以下、「ＡＳＲトランスフォーマモデル」とも称す。）が注目されている（非特許文献３など参照）。
【０００４】
ＡＳＲトランスフォーマモデルは、エンコーダおよびデコーダから構成され、アテンションおよびフィードフォワードコンポーネントを用いることで、文脈間の依存性を見つけることができる。
【０００５】
また、ＡＳＲトランスフォーマモデルを多言語音声認識タスクに適用した場合にも良好な結果が得られることが報告されている（非特許文献４および５参照）。すなわち、ＡＳＲトランスフォーマモデルは、翻訳タスクへの応用も有望視されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】A. Graves and N. Jaitly, "Towards End-to-End speech recognition with recurrent neural networks," in Proc. ICML, 2014.
【非特許文献２】A. W. Chan, N. Jaitly, Q. Le, and O. Vinyals, "Listen, attend and spell: A neural network for large vocabulary conversational speech recognition," in Proc. IEEE-ICASSP, 2016.
【非特許文献３】A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. Gomez, L. Kaiser, and I. Polosukhin, "Attention is all you need," in CoRR abs/1706.03762, 2017.
【非特許文献４】S. Zhou, L. Dong, S. Xu, and B. Xu, "A comparison of modeling units in sequence-to-sequence speech recognition with the transformer on Mandarin Chinese," in CoRR abs/1805.06239, 2018.
【非特許文献５】S. Zhou, L. Dong, S. Xu, and B. Xu, "Syllable-based sequence-to-sequence speech recognition with the transformer in mandarin Chinese," in Proc. INTERSPEECH, 2018.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＡＳＲトランスフォーマモデルの音声認識性能を高める最も一般的な方法は、エンコーダおよびデコーダに多数のフィードフォワード層を積層することである。一方で、多数のフィードフォワード層を積層することで、パラメータ数の増加および応答性能の低下（デコード待ち時間の増加）が生じ得る。
【０００８】
本技術は、音声信号の入力に対してテキストを含む出力シーケンスを生成するモデルにおいて、パラメータ数の増加を抑制しつつ、性能を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
ある実施の形態によれば、音声信号から生成された入力シーケンスを受けて、音声信号に対応するテキストを含む出力シーケンスを出力する推論器が提供される。推論器は、入力シーケンスから中間表現のシーケンスを出力するエンコーダと、エンコーダから出力される中間表現のシーケンス、および、先に出力された出力シーケンスから出力シーケンスを出力するデコーダとを含む学習済モデルを含む。学習済モデルは、音声信号と、当該音声信号に対応するテキストおよび属性情報とからなるトレーニングデータセットを用いて最適化されている。
【００１０】
出力シーケンスには、入力シーケンスに対応する属性情報に引き続いて、入力シーケンスに対応するテキストが配置されていてもよい。
【００１１】
出力シーケンスは、入力シーケンスに対応する複数種類の属性情報を含んでいてもよい。
【００１２】
出力シーケンスは、属性情報として、属性値を示すワンホット表現の値を含んでいてもよい。
【００１３】
出力シーケンスは、属性情報として、属性値を示すラベルを含んでいてもよい。
エンコーダは積層された複数のエンコーダブロックを含み、複数のエンコーダブロック間でパラメータが共有されてもよい。デコーダは積層された複数のデコータブロックを含み、複数のデコータブロック間でパラメータが共有されていてもよい。
【００１４】
別の実施の形態によれば、音声信号から生成された入力シーケンスを受けて、音声信号に対応するテキストを含む出力シーケンスを出力するモデルを学習させる学習方法が提供される。モデルは、入力シーケンスから中間表現のシーケンスを出力するエンコーダと、エンコーダから出力される中間表現のシーケンス、および、先に出力された出力シーケンスから出力シーケンスを出力するデコーダとを含む。学習方法は、音声信号と、当該音声信号に対応するテキストおよび属性情報とからなるトレーニングデータセットを用意するステップと、トレーニングデータセットを用いてモデルに含まれるパラメータを最適化するステップとを含む。
【００１５】
さらに別の実施の形態によれば、コンピュータに上述の学習方法を実行させるための学習プログラムが提供される。
【発明の効果】
【００１６】
本技術によれば、音声信号の入力に対してテキストを含む出力シーケンスを生成するモデルにおいて、パラメータ数の増加を抑制しつつ、性能を向上できる。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態に従うＡＳＲトランスフォーマモデルの構成例を示す模式図である。
【図２】本実施の形態に従う改良されたＡＳＲトランスフォーマモデルの構成例を示す模式図である。
【図３】本実施の形態に従う学習処理を説明するための図である。
【図４】本実施の形態に従うＡＳＲトランスフォーマモデルに用いられる入力シーケンス６および出力シーケンスのデータ構造例を示す模式図である。
【図５】本実施の形態に従うＡＳＲトランスフォーマモデルを含む推論器を実現するハードウェア構成の一例を示す模式図である。
【図６】本実施の形態に従うＡＳＲトランスフォーマモデルの学習処理の手順を示すフローチャートである。
【図７】本実施の形態に従うＡＳＲトランスフォーマモデルを用いた推論処理の手順を示すフローチャートである。
【図８】本実施の形態に従うＡＳＲトランスフォーマモデルを用いたアプリケーション例を示す模式図である。
【発明を実施するための形態】
【００１８】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【００１９】
［Ａ．ＡＳＲトランスフォーマモデル］
まず、ＡＳＲトランスフォーマモデルの構成例について説明する。
【００２０】
図１は、本実施の形態に従うＡＳＲトランスフォーマモデルの構成例を示す模式図である。図１を参照して、ＡＳＲトランスフォーマモデル１は、入力シーケンス６の入力を受けて出力シーケンス８を出力する。ＡＳＲトランスフォーマモデル１の各パラメータは、後述するような学習処理により最適化される。このようにパラメータが最適化されたＡＳＲトランスフォーマモデル１が学習済モデルとなる。
【００２１】
ＡＳＲトランスフォーマモデル１を音声認識タスクに適用する場合には、入力シーケンス６を音声信号から生成し、出力シーケンス８をテキストとすればよい。また、ＡＳＲトランスフォーマモデル１を翻訳タスクに適用する場合には、入力シーケンス６を第１言語の音声信号から生成し、出力シーケンス８を第２の言語のテキストとすればよい。なお、出力シーケンス８には、複数言語のテキストを含めるようにしてもよい。この場合には、多言語音声認識タスクあるいは多言語翻訳タスクに対応できる。
【００２２】
このように、ＡＳＲトランスフォーマモデル１は、音声信号から生成された入力シーケンス６の入力を受けて、音声信号に対応するテキストを含む出力シーケンス８を出力するように、コンピュータを機能させるための学習済モデルである。そして、学習済モデルであるＡＳＲトランスフォーマモデル１は推論器として機能する。
【００２３】
ＡＳＲトランスフォーマモデル１は、エンコーダ１０およびデコーダ２０を含む。エンコーダ１０は、入力シーケンス６をマッピングすることで、入力シーケンス６から中間表現のシーケンスを出力する。デコーダ２０は、エンコーダ１０から出力される中間表現のシーケンス、および、先に出力された出力シーケンス８に基づいて出力シーケンス８を出力する。出力シーケンス８は、シンボル（単音（phones）、音節（syllable）、単語（word）、語句（words）などの単位）を含んでいてもよい。ＡＳＲトランスフォーマモデル１は、アテンションおよびフィードフォワードコンポーネントを用いることで、入力シーケンス６に対する出力シーケンス８の生成を実現する。
【００２４】
エンコーダ１０の前段には、ＰＥ（positional-encoding）３０およびＥｍｂｅｄｄｉｎｇ層３２が設けられている。ＰＥ３０は、入力シーケンス６である音声に含まれるシンボルの位置情報（シーケンス内の相対的または絶対的な位置）を付加する。Ｅｍｂｅｄｄｉｎｇ層３２は、入力シーケンス６およびＰＥ３０からの位置情報を含むベクトルを生成する。
【００２５】
エンコーダ１０は、積層された複数のエンコーダブロック１２からなり、デコーダ２０は、積層された複数のデコーダブロック２２からなる。
【００２６】
エンコーダブロック１２の各々は、ＭＨＡ（multi-head self-attention）層１４と、ＰＦＦＮ（positional-wise feed-forward networks）層１６とを含む。ＭＨＡ層１４は、入力シーケンス６に含まれるベクトルに対してアテンションを演算する。ＰＦＦＮ層１６は、位置順序に沿ったフィードフォワードを演算する。
【００２７】
図示していないが、ＭＨＡ層１４およびＰＦＦＮ層１６の各出力側には、Ｒｅｓｉｄｕａｌ層および正規化層が設けられている。
【００２８】
デコーダ２０は、エンコーダ１０からの中間表現のシーケンスと、デコーダ２０が先に出力した出力シーケンス（既出力）に含まれる特徴量を抽出して、出力シーケンス８を生成する。
【００２９】
デコーダ２０の前段には、ＰＥ３４およびＥｍｂｅｄｄｉｎｇ層３６が設けられている。ＰＥ３４は、出力シーケンス（既出力）に含まれるシンボルの位置情報（シーケンス内の相対的または絶対的な位置）を付加する。Ｅｍｂｅｄｄｉｎｇ層３６は、中間表現のシーケンスおよびＰＥ３４からの位置情報を含むベクトルを生成する。
【００３０】
デコーダ２０は、積層された複数のデコーダブロック２２からなる。デコーダブロック２２の各々は、エンコーダ１０を構成するエンコーダブロック１２と類似した構成となっているが、Ｍａｓｋ  ＭＨＡ層を含んでいる点が異なっている。すなわち、デコーダブロック２２の各々は、Ｍａｓｋ  ＭＨＡ層２４と、ＭＨＡ層２６と、ＰＦＦＮ層２８とを含む。Ｍａｓｋ  ＭＨＡ層２４は、既出力の存在しないベクトルに対してマスク処理を実行する。ＭＨＡ層２６はＭＨＡ層１４と同様であり、ＰＦＦＮ層２８はＰＦＦＮ層１６と同様である。
【００３１】
デコーダ２０の後段には出力層４０が設けられる。出力層４０は、デコーダ２０の最終出力を全結合して、ソフトマックス関数で演算した結果を出力シーケンス８として決定する。
【００３２】
図２は、本実施の形態に従う改良されたＡＳＲトランスフォーマモデルの構成例を示す模式図である。図２を参照して、ＡＳＲトランスフォーマモデル２は、図１に示すＡＳＲトランスフォーマモデル１に比較して、パラメータ数を低減することを目的として改良されたものである。
【００３３】
図２に示すＡＳＲトランスフォーマモデル２は、ブロック間でパラメータを共有するエンコーダ１０Ａおよびデコーダ２０Ａからなる。
【００３４】
エンコーダ１０Ａは、ＭＨＡ層１４およびＰＦＦＮ層１６を含むエンコーダブロック１２と、エンコーダブロック１２とパラメータを共有する１または複数の共有エンコーダブロック１２Ａとからなる。このように、エンコーダ１０Ａは、積層された複数のエンコーダブロックを含み、複数のエンコーダブロックの間でパラメータが共有される。すなわち、エンコーダ１０Ａにおいては、図１に示すＡＳＲトランスフォーマモデル２のエンコーダ１０と同じ層数の演算が実行されるものの、その演算に用いられるパラメータは、エンコーダブロック１２の単位で共通化される。
【００３５】
同様に、デコーダ２０Ａは、Ｍａｓｋ  ＭＨＡ層２４、ＭＨＡ層２６およびＰＦＦＮ層２８を含むデコーダブロック２２と、デコーダブロック２２とパラメータを共有する１または複数の共有デコーダブロック２２Ａとからなる。このように、デコーダ２０Ａは、積層された複数のデコーダブロックを含み、複数のデコーダブロックの間でパラメータが共有される。すなわち、デコーダ２０Ａにおいては、図１に示すＡＳＲトランスフォーマモデル２のデコーダ２０と同じ層数の演算が実行されるものの、その演算に用いられるパラメータは、デコーダブロック２２の単位で共通化される。
【００３６】
図２に示すようなＡＳＲトランスフォーマモデル２を用いることで、エンコーダ１０およびデコーダ２０を構成する各ブロックについてパラメータを用意するのに比較して、大幅にパラメータ数を低減できる。
【００３７】
しかしながら、図２に示すようなＡＳＲトランスフォーマモデル２の音声認識性能は、図１に示すＡＳＲトランスフォーマモデル１の音声認識性能より低下し得る。本実施の形態においては、図２に示すようなＡＳＲトランスフォーマモデル２を用いた場合であっても、十分な音声認識性能を発揮し得る学習処理および推論処理について説明する。
【００３８】
［Ｂ．学習処理および推論処理の概要］
次に、本実施の形態に従う学習処理および推論処理について説明する。
【００３９】
本実施の形態に従うＡＳＲトランスフォーマモデルに対しては、音声信号に対応するテキストだけではなく、当該音声信号に関連付けられる属性情報をも出力するように、学習処理が実行される。このような関連付けられる属性情報を含ませることで、図２に示すようなパラメータ数を低減させたＡＳＲトランスフォーマモデルであっても、音声認識性能を維持することができる。
【００４０】
図３は、本実施の形態に従う学習処理を説明するための図である。図３を参照して、音声信号５２と対応するテキスト５４および属性情報５６とからなるトレーニングデータセット５０が用意される。トレーニングデータセット５０に含まれる音声信号５２から生成される入力シーケンス６をＡＳＲトランスフォーマモデル２に入力したときに演算される出力シーケンス８（テキストおよび属性情報を含む）と、トレーニングデータセット５０に含まれるテキスト５４および属性情報５６との誤差に基づいて、ＡＳＲトランスフォーマモデル２を規定するパラメータが最適化される。
【００４１】
すなわち、ＡＳＲトランスフォーマモデル２（より正確には、ＡＳＲトランスフォーマモデル２に含まれる各パラメータ）は、音声信号５２と、音声信号５２に対応するテキスト５４および属性情報５６とからなるトレーニングデータセット５０を用いて最適化される。
【００４２】
ＡＳＲトランスフォーマモデル２においては、入力シーケンス６として、可変長の音声特徴ベクトルが順次入力され、対応する出力シーケンス８が順次決定される。テキストおよび属性情報を順次決定される出力シーケンス８にどのように含めるのかについては任意に設計できる。
【００４３】
本実施の形態においては、一例として、出力シーケンス８の先頭部分に対応する１または複数の属性情報を配置するとともに、属性情報に引き続く部分にテキストを配置する。
【００４４】
図４は、本実施の形態に従うＡＳＲトランスフォーマモデルに用いられる入力シーケンス６および出力シーケンス８のデータ構造例を示す模式図である。図４を参照して、ＡＳＲトランスフォーマモデル２に入力される入力シーケンス６は、入力される音声信号から生成された音声特徴ベクトルを含む。また、ＡＳＲトランスフォーマモデル２から出力される出力シーケンス８は、先頭部分に１または複数の属性情報が配置されるとともに、その属性情報に続いてテキストが配置される。このように、出力シーケンス８には、入力シーケンス６に対応する属性情報に引き続いて、入力シーケンス６に対応するテキストが配置される。
【００４５】
また、図４に示すように、出力シーケンス８は、入力シーケンス６に対応する複数種類の属性情報を含んでいてもよい。
【００４６】
通常、属性情報の数および種類が予め定められているのに対して、テキストの長さは可変長である。そのため、図４に示すようなデータ構成を採用することで、出力シーケンス８において、属性情報とテキストとを容易に分離できる。そのため、ＡＳＲトランスフォーマモデル２のデコーダ２０に与える出力シーケンス（既出力）の生成処理なども容易化する。
【００４７】
なお、属性情報は、各属性値（カテゴリ）に割り当てられた数値（ワンホット表現）が用いられてもよいし、各属性値を示すラベル（トークン）が用いられてもよい。これらの表現の相違による性能差については、後述する。
【００４８】
推論処理においては、学習済のＡＳＲトランスフォーマモデル２に対して音声信号を入力すると、対応する属性情報が出力された後に、対応するテキストが出力されることになる。後述するように、入力された音声信号に対応するテキストおよび属性情報の両方を用いてもよいし、いずれか一方のみを用いるようにしてもよい。出力シーケンス８の利用形態については、適用されるアプリケーションに応じて任意に設計できる。
【００４９】
［Ｃ．属性情報］
入力される音声信号に関連付けられる属性情報としては任意の情報を用いることができる。一例として、以下のような属性情報を用いてもよい。
（１）発話長さ（ＤＵＲ：Duration of the utterance）
属性値としては、「Ｓｈｏｒｔ」（例えば、３秒以下）および「Ｌｏｎｇ」（例えば、３秒より長い）を設定できる。
（２）発話の内容（ＴＯＰ：Topic of the lecture）
属性値としては、「Ａｃａｄｅｍｉｃ」（学術）、「Ｓｉｍｕｌａｔｅｄ」（仮想の内容）、「Ｄｉａｌｏｇｕｅ」（会話）、「Ｒｅａｄ」（書籍の内容）、「Ｍｉｓｃ」（その他）、「Ｕｎｋｎｏｗｎ」（未知）などを設定できる。
（３）話者の性別（ＳＥＸ：Sex of the speaker）
属性値としては、「Ｍａｌｅ」（男性）、「Ｆｅｍａｌｅ」（女性）、「Ｕｎｋｎｏｗｎ」（未知）などを設定できる。
（４）話者の年齢（ＡＧＥ：Age of the speaker）
属性値としては、「Ｙｏｕｎｇ」（１０−２０代）、「Ｍｉｄｄｌｅ−ａｇｅ」（３０−５０代）、「Ｏｌｄ」（６０−８０代）、Ｕｎｋｎｏｗｎ（未知）などを設定できる。
（５）話者の学歴（ＥＤＵ：Education of the speaker）
属性値としては、「Ｍｉｄｄｌｅ−ｓｃｈｏｏｌ」（中卒）、「Ｈｉｇｈｓｃｈｏｏｌ」（高卒）、「Ｂｅｃｈｅｌｏｒ」（学士）、「Ｍａｓｔｅｒ−Ｄｏｃｔｏｒ」（修士または博士）、「Ｕｎｋｎｏｗｎ」（未知）などを設定できる。
（６）話者の識別情報（ＳＰＫ：The speaker）
属性値としては、話者ごとに設定された識別情報などを設定できる。
【００５０】
これらの属性情報は、トレーニングデータセット５０を生成する際の事前情報などから決定してもよいし、トレーニングデータセット５０に含まれる情報から任意の方法で推定するようにしてもよい。
【００５１】
上述の属性情報の種類および属性値はいずれも任意に選択されたものであり、アプリケーションなどに応じて、任意の種類の属性情報および属性値を設計できる。
【００５２】
［Ｄ．ハードウェア構成］
次に、本実施の形態に従うＡＳＲトランスフォーマモデルを含む推論器を実現するためのハードウェア構成の一例について説明する。
【００５３】
図５は、本実施の形態に従うＡＳＲトランスフォーマモデルを含む推論器を実現するハードウェア構成の一例を示す模式図である。ＡＳＲトランスフォーマモデルは、典型的には、コンピュータの一例である情報処理装置５００を用いて実現される。
【００５４】
図５を参照して、ＡＳＲトランスフォーマモデルを実現する情報処理装置５００は、主要なハードウェアコンポーネントとして、ＣＰＵ（central processing unit）５０２と、ＧＰＵ（graphics processing unit）５０４と、主メモリ５０６と、ディスプレイ５０８と、ネットワークインターフェイス（Ｉ／Ｆ：interface）５１０と、二次記憶装置５１２と、入力デバイス５２２と、光学ドライブ５２４とを含む。これらのコンポーネントは、内部バス５２８を介して互いに接続される。
【００５５】
ＣＰＵ５０２および／またはＧＰＵ５０４は、本実施の形態に従うＡＳＲトランスフォーマモデルの実現に必要な処理を実行するプロセッサである。ＣＰＵ５０２およびＧＰＵ５０４は、複数個配置されてもよいし、複数のコアを有していてもよい。
【００５６】
主メモリ５０６は、プロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）が処理を実行するにあたって、プログラムコードやワークデータなどを一時的に格納（あるいは、キャッシュ）する記憶領域であり、例えば、ＤＲＡＭ（dynamic random access memory）やＳＲＡＭ（static random access memory）などの揮発性メモリデバイスなどで構成される。
【００５７】
ディスプレイ５０８は、処理に係るユーザインターフェイスや処理結果などを出力する表示部であり、例えば、ＬＣＤ（liquid crystal display）や有機ＥＬ（electroluminescence）ディスプレイなどで構成される。
【００５８】
ネットワークインターフェイス５１０は、インターネット上またはイントラネット上の任意の情報処理装置などとの間でデータを遣り取りする。ネットワークインターフェイス５１０としては、例えば、イーサネット（登録商標）、無線ＬＡＮ（local area network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの任意の通信方式を採用できる。
【００５９】
入力デバイス５２２は、ユーザからの指示や操作などを受け付けるデバイスであり、例えば、キーボード、マウス、タッチパネル、ペンなどで構成される。また、入力デバイス５２２は、学習およびデコーディングに必要な音声信号を収集するための集音デバイスを含んでいてもよいし、集音デバイスにより収集された音声信号の入力を受け付けるためのインターフェイスを含んでいてもよい。
【００６０】
光学ドライブ５２４は、ＣＤ−ＲＯＭ（compact disc read only memory）、ＤＶＤ（digital versatile disc）などの光学ディスク５２６に格納されている情報を読出して、内部バス５２８を介して他のコンポーネントへ出力する。光学ディスク５２６は、非一過的（non-transitory）な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ５２４が光学ディスク５２６からプログラムを読み出して、二次記憶装置５１２などにインストールすることで、コンピュータが情報処理装置５００として機能するようになる。したがって、本発明の主題は、二次記憶装置５１２などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク５２６などの記録媒体でもあり得る。
【００６１】
図５には、非一過的な記録媒体の一例として、光学ディスク５２６などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、ＭＯ（magneto-optical disk）などの光磁気記録媒体を用いてもよい。
【００６２】
二次記憶装置５１２は、コンピュータを情報処理装置５００として機能させるために必要なプログラムおよびデータを格納する。例えば、ハードディスク、ＳＳＤ（solid state drive）などの不揮発性記憶装置で構成される。
【００６３】
より具体的には、二次記憶装置５１２は、図示しないＯＳ（operating system）の他、学習処理を実現するための学習プログラム５１４と、ＡＳＲトランスフォーマモデルの構造を定義するモデル定義データ５１６と、ＡＳＲトランスフォーマモデル（学習済モデル）を規定する複数のパラメータからなるパラメータセット５１８と、トレーニングデータセット５０とを格納している。
【００６４】
学習プログラム５１４は、プロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）により実行されることで、パラメータセット５１８を決定するための学習処理を実現する。すなわち、学習プログラム５１４は、コンピュータにＡＳＲトランスフォーマモデル２を学習させるための学習方法を実行させる。
【００６５】
モデル定義データ５１６は、ＡＳＲトランスフォーマモデルに含まれるコンポーネントおよびコンポーネント間の接続関係などを定義するための情報を含む。パラメータセット５１８は、ＡＳＲトランスフォーマモデルを構成する各コンポーネントについてのパラメータを含む。パラメータセット５１８に含まれる各パラメータは、学習プログラム５１４の実行により最適化される。トレーニングデータセット５０は、図４に示すようなデータの組み合わせからなる。
【００６６】
プロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）がプログラムを実行する際に必要となるライブラリや機能モジュールの一部を、ＯＳが標準で提供するライブラリまたは機能モジュールにより代替してもよい。この場合には、プログラム単体では、対応する機能を実現するために必要なプログラムモジュールのすべてを含むものにはならないが、ＯＳの実行環境下にインストールされることで、目的の処理を実現できる。このような一部のライブラリまたは機能モジュールを含まないプログラムであっても、本発明の技術的範囲に含まれ得る。
【００６７】
また、これらのプログラムは、上述したようないずれかの記録媒体に格納されて流通するだけでなく、インターネットまたはイントラネットを介してサーバ装置などからダウンロードすることで配布されてもよい。
【００６８】
図５には、単一のコンピュータを用いて情報処理装置５００を構成する例を示すが、これに限らず、コンピュータネットワークを介して接続された複数のコンピュータが明示的または黙示的に連携して、ＡＳＲトランスフォーマモデルを含む推論器を実現するようにしてもよい。
【００６９】
プロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）がプログラムを実行することで実現される機能の全部または一部を、集積回路などのハードワイヤード回路（hard-wired circuit）を用いて実現してもよい。例えば、ＡＳＩＣ（application specific integrated circuit）やＦＰＧＡ（field-programmable gate array）などを用いて実現してもよい。
【００７０】
当業者であれば、本発明が実施される時代に応じた技術を適宜用いて、本実施の形態に従う情報処理装置５００を実現できるであろう。
【００７１】
説明の便宜上、同一の情報処理装置５００を用いて、学習処理および推論処理を実行する例を示すが、学習処理および推論処理を異なるハードウェアを用いて実現してもよい。
【００７２】
［Ｅ．学習処理の手順］
次に、本実施の形態に従うＡＳＲトランスフォーマモデルの学習処理について説明する。
【００７３】
図６は、本実施の形態に従うＡＳＲトランスフォーマモデルの学習処理の手順を示すフローチャートである。図６に示す主要なステップは、典型的には、情報処理装置５００のプロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）が学習プログラム５１４を実行することで実現される。
【００７４】
図６を参照して、音声信号５２および対応するテキスト５４からなるデータセットを用意する（ステップＳ１００）。用意されたデータセットに含まれる音声信号５２に関連付けられる属性情報５６を付与することで、トレーニングデータセットを生成する（ステップＳ１０２）。なお、ステップＳ１００およびステップＳ１０２の処理を必ずしも分ける必要はない。このように、ステップＳ１００およびＳ１０２においては、音声信号５２と、音声信号５２に対応するテキスト５４および属性情報５６とからなるトレーニングデータセットが用意される。
【００７５】
続いて、情報処理装置５００は、ＡＳＲトランスフォーマモデルのパラメータを初期化する（ステップＳ１０４）。そして、パラメータの最適化が実行される。すなわち、トレーニングデータセットを用いてＡＳＲトランスフォーマモデルに含まれるパラメータが最適化される。
【００７６】
情報処理装置５００は、トレーニングデータセットに含まれる音声信号から入力シーケンスを生成し（ステップＳ１０６）、ＡＳＲトランスフォーマモデルに入力して出力シーケンスを演算する（ステップＳ１０８）。そして、情報処理装置５００は、出力シーケンスに含まれるテキスト（推論結果）および属性情報（推論結果）と、トレーニングデータセットの対応するテキスト（正解）および属性情報（正解）とを比較して誤差情報を演算し（ステップＳ１１０）、当該演算した誤差情報に基づいてパラメータを最適化する（ステップＳ１１２）。
【００７７】
情報処理装置５００は、予め定められた学習処理の終了条件が満たされているか否かを判断する（ステップＳ１１４）。予め定められた学習処理の終了条件が満たされていなければ（ステップＳ１１４においてＮＯ）、情報処理装置５００は、トレーニングデータセットに含まれる別の音声信号を選択して、ステップＳ１０６以下の処理を再度実行する。
【００７８】
これに対して、予め定められた学習処理の終了条件が満たされていれば（ステップＳ１１４においてＹＥＳ）、情報処理装置５００は、当該時点のパラメータ値で規定されるＡＳＲトランスフォーマモデルを学習済モデルとして決定する（ステップＳ１１６）。このときのパラメータ値がパラメータセット５１８として出力される。そして、処理は終了する。
【００７９】
［Ｆ．推論処理の手順］
次に、本実施の形態に従うＡＳＲトランスフォーマモデル２を用いた推論処理について説明する。すなわち、ＡＳＲトランスフォーマモデル２を含む推論器の動作について説明する。
【００８０】
図７は、本実施の形態に従うＡＳＲトランスフォーマモデル２を用いた推論処理の手順を示すフローチャートである。推論処理は、典型的には、情報処理装置５００のプロセッサ（ＣＰＵ５０２および／またはＧＰＵ５０４）がＡＳＲトランスフォーマモデル（モデル定義データ５１６およびパラメータセット５１８）に従う演算を行うことで実現される。
【００８１】
図７を参照して、情報処理装置５００は、入力される音声信号から音声特徴ベクトルを演算することで入力シーケンスを生成する（ステップＳ２００）。情報処理装置５００は、生成した入力シーケンスをＡＳＲトランスフォーマモデルに入力して、推論結果として、出力シーケンスを演算する（ステップＳ２０２）。続いて、情報処理装置５００は、演算した出力シーケンスに含まれるテキストおよび属性情報をそれぞれ出力する（ステップＳ２０４）。
【００８２】
そして、情報処理装置５００は、音声信号の入力が継続しているか否かを判断する（ステップＳ２０６）。音声信号の入力が継続していれば（ステップＳ２０６においてＹＥＳ）、ステップＳ２００以下の処理が繰り返される。
【００８３】
一方、音声信号の入力が継続していなければ（ステップＳ２０６においてＮＯ）、推論処理は一旦終了する。
【００８４】
［Ｇ．性能評価］
本願発明者らは、本実施の形態に従うＡＳＲトランスフォーマモデルの性能について評価実験を行った。以下、評価実験の内容および結果について説明する。
【００８５】
（ｇ１：トレーニングデータおよび評価データ）
評価実験には、トレーニングデータおよび評価データとして、国立国語研究所が提供している「日本語話し言葉コーパス（Corpus of Spontaneous Japanese：ＣＳＪ）」を用いた。
【００８６】
先行研究における知見に従って、ＣＳＪに含まれる２４０時間分の講演の音声をトレーニングデータセット（以下、「ＣＳＪ−Ｔｒａｉｎ」とも称す。）として構成した。ＣＳＪは、３個の公式の評価データセット（ＣＳＪ−Ｅｖａｌ０１，ＣＳＪ−Ｅｖａｌ０２，ＣＳＪ−Ｅｖａｌ０３）を含む。各評価データセットは、１０講演分の音声を含む。これらの評価データセットを音声認識結果の評価に用いた。また、１０講演分の音声からなる開発データセット（ＣＳＪ−Ｄｅｖ）をトレーニング中の評価用として用いた。
【００８７】
（ｇ２：ＡＳＲトランスフォーマモデル１およびＡＳＲトランスフォーマモデル２）
まず、図１に示すＡＳＲトランスフォーマモデル１と図２に示すＡＳＲトランスフォーマモデル２とについて、音声認識性能および処理速度の評価結果を示す。
【００８８】
ＡＳＲトランスフォーマモデル１（Ｔａｂｌｅ１において「Ｆｕｌｌ」と記す。）については、エンコーダ１０およびデコーダ２０の各々が、１，２，３，４，５，６，９個のブロックを有する場合について音声認識性能および処理速度をそれぞれ評価した。
【００８９】
ＡＳＲトランスフォーマモデル２（Ｔａｂｌｅ１において「Ｓｈａｒｅｄ」と記す。）についても同様に、エンコーダ１０Ａおよびデコーダ２０Ａの各々が、１，２，３，４，５，６，９個のブロックを有する場合について音声認識性能および処理速度をそれぞれ評価した。
【００９０】
Ｔａｂｌｅ１において、「Ｂｌｏｃｋｓ」の列の（ｎ−ｎ）は、エンコーダおよびデコーダの数を示す。
【００９１】
評価に用いたモデルにおいては、エンコーダブロックおよびデコーダブロックの一組が約３６×１０３個のパラメータを有している。そのため、ＡＳＲトランスフォーマモデル１（Ｆｕｌｌ）においては、エンコーダ１０およびデコーダ２０のブロック数に応じてパラメータが増加する。これに対して、ＡＳＲトランスフォーマモデル２（Ｓｈａｒｅｄ）においては、ブロック間でパラメータが共有されるため、ブロック数が増加してもパラメータ数は変化しない。そのため、例えば、６−６のモデルで比較すると、パラメータ数は１／６に低減できる。
【００９２】
Ｔａｂｌｅ１には、ＡＳＲトランスフォーマモデル１（Ｆｕｌｌ）およびＡＳＲトランスフォーマモデル２（Ｓｈａｒｅｄ）の各々について、推論処理における音声認識性能および処理速度を評価した結果を示す。なお、上述したような属性情報は用いることなく学習処理を行った結果を示す。
【００９３】
音声認識性能の評価指標として、文字誤り率（ＣＥＲ％：Character Error Rate）を用いている。処理速度の評価指標として、実時間ファクタ（ＲＴＤ（real-time factor）を用いている。なお、実時間ファクタとしては、ＮＶＩＤＩＡ社製のＴｅｓｌａ  Ｋ４０ｍプロセッサを１台用いた場合の処理時間が示されている。
【００９４】
また、Ｔａｂｌｅ１において、「Ｅ０１」，「Ｅ０２」，「Ｅ０３」は、ＣＳＪ−Ｅｖａｌ０１，ＣＳＪ−Ｅｖａｌ０２，ＣＳＪ−Ｅｖａｌ０３をそれぞれ意味する。
【００９５】
【表１】
2020154076.tif 000003
【００９６】
Ｔａｂｌｅ１の音声認識性能（ＣＥＲ％）において、ｔ−検定でｐ＜０．０５であるものを太字で示している。
【００９７】
Ｔａｂｌｅ１を参照して、例えば、６−６のモデルで比較すると、ＡＳＲトランスフォーマモデル２（Ｓｈａｒｅｄ）は、処理速度を２倍以上高めることができる（０．０５４ｖｓ０．１１５）ものの、平均の音声認識性能は１．８％低下している（８．４ｖｓ６．６）ことが分かる。
【００９８】
（ｇ３：属性情報を用いた学習）
次に、図２に示すＡＳＲトランスフォーマモデル２について、属性情報を含むトレーニングデータセットを用いた学習処理を行った場合の音声認識性能および処理速度の評価結果を示す。
【００９９】
属性情報の一例として、発話長さ（ＤＵＲ）、発話の内容（ＴＯＰ）、話者の性別（ＳＥＸ）、話者の年齢（ＡＧＥ）、話者の学歴（ＥＤＵ）、話者の識別情報（ＳＰＫ）の６種類を想定した。Ｔａｂｌｅ２には、これらの６種類の属性情報から選択された１〜５種類の属性情報を組み合わせた場合のそれぞれについて音声認識性能（ＣＥＲ％）を評価した結果を示す。なお、ＡＳＲトランスフォーマモデル２のエンコーダ１０およびデコーダ２０のブロック数は、いずれも６とした。
【０１００】
【表２】
2020154076.tif 000004
【０１０１】
Ｔａｂｌｅ２の音声認識性能（ＣＥＲ％）において、ｔ−検定でｐ＜０．０５であるものを太字で示している。
【０１０２】
Ｔａｂｌｅ２に示される評価結果によれば、単一の属性情報としては、性別（ＳＥＸ）を用いた場合に最も高い音声認識性能を得ることができた。属性情報の組み合わせのうち、発話長さ（ＤＵＲ）、発話の内容（ＴＯＰ）、話者の性別（ＳＥＸ）、話者の年齢（ＡＧＥ）を用いた場合に最大の音声認識性能（平均値：６．９）を得ることができた。但し、性別（ＳＥＸ）および発話長さ（ＤＵＲ）の２種類からなる属性情報の組み合わせを用いることで、遜色のない音声認識性能（平均値：６．９）を得ることができる。
【０１０３】
これらの音声認識性能は、属性情報を用いない場合のＡＳＲトランスフォーマモデル１（Ｆｕｌｌ）の音声認識性能（平均値：６．６）に対しても遜色がない。
【０１０４】
（ｇ４：属性情報の表現による性能差）
次に、属性情報の表現による性能差についての評価結果を示す。
【０１０５】
上述したように、属性情報は、各属性値（カテゴリ）に割り当てられた数値（ワンホット表現）として出力シーケンスに含める方法（ｆｅａｔｕｒｅ−ｂａｓｅｄ  ｍｅｔｈｏｄ）を採用してもよいし、各属性値を示すラベル（トークン）として出力シーケンスに含める方法（ｌａｂｅｌ−ｂａｓｅｄ  ｍｅｔｈｏｄ）を採用してもよい。前者の場合には、出力シーケンス８は、属性情報として、属性値を示すワンホット表現の値を含む。一方、後者の場合には、出力シーケンス８は、属性情報として、属性値を示すラベルを含む。
【０１０６】
Ｔａｂｌｅ３には、これらの２つの方法による音声認識性能および処理速度の評価結果を示す。なお、ＡＳＲトランスフォーマモデル２のエンコーダ１０およびデコーダ２０のブロック数は、いずれも６とした。
【０１０７】
【表３】
2020154076.tif 000005
【０１０８】
Ｔａｂｌｅ３の音声認識性能（ＣＥＲ％）において、ｔ−検定でｐ＜０．０５であるものを太字で示している。
【０１０９】
Ｔａｂｌｅ３に示す評価結果によれば、各属性値を示すラベル（トークン）として出力シーケンスに含める方法（ｌａｂｅｌ−ｂａｓｅｄ  ｍｅｔｈｏｄ）を用いる方が音声認識性能を高めることができる。一方で、各属性値（カテゴリ）に割り当てられた数値（ワンホット表現）として出力シーケンスに含める方法（ｆｅａｔｕｒｅ−ｂａｓｅｄ  ｍｅｔｈｏｄ）を用いる方が処理速度を高めることができる。
【０１１０】
このように、音声認識性能および処理速度のいずれを優先するのかに応じて、いずれかの方法を適宜採用すればよいことが分かる。
【０１１１】
［Ｈ．アプリケーション例］
次に、本実施の形態に従うＡＳＲトランスフォーマモデルを用いたアプリケーションの一例について説明する。
【０１１２】
図８は、本実施の形態に従うＡＳＲトランスフォーマモデルを用いたアプリケーション例を示す模式図である。図８には、推論器の一例として、多言語翻訳システム１００を示す。
【０１１３】
図８を参照して、多言語翻訳システム１００は、通信ネットワーク８０を介して接続される携帯端末９０からの入力音声（第１言語で発話された何らかのことば）に対応するテキストを出力し、当該出力されたテキストに対応する音声を合成して、出力音声として携帯端末９０へ出力する。
【０１１４】
例えば、ユーザＵＳＲは、携帯端末９０に対して、「Where is the station ?」という英語のことばを発すると、携帯端末９０は、その発話されたことばからマイクロフォンなどにより入力音声を生成し、生成した入力音声を多言語翻訳システム１００へ送信する。多言語翻訳システム１００は、「Where is the station ?」に対応する、日本語の「駅はどこですか？」ということばを示す出力音声を応答する。携帯端末９０は、多言語翻訳システム１００からの出力音声を再生する。これによって、ユーザＵＳＲの対話相手には、日本語の「駅はどこですか？」とのことばが聞こえる。
【０１１５】
図示していないが、ユーザＵＳＲの対話相手も同様の携帯端末９０を有していてもよく、例えば、ユーザＵＳＲからの質問に対して、「まっすぐ行って左です」との回答を自身の携帯端末９０に向かって発すると、上述したような処理が実行されて、ユーザＵＳＲの対話相手の携帯端末９０から、対応する英語の「Go straight and turn left」ということばが回答される。
【０１１６】
このような自動音声翻訳の機能を利用することで、外国旅行や外国人とのコミュニケーションを容易化できる。
【０１１７】
多言語翻訳システム１００は、多言語翻訳に関するコンポーネントとして、携帯端末９０との間で通信処理を行うための通信処理部６０と、ＡＳＲトランスフォーマモデル２と、音声合成部７０とを含む。
【０１１８】
ＡＳＲトランスフォーマモデル２は、入力される音声信号（入力音声）に対応するテキストおよび属性情報を出力する。多言語翻訳を実現するためには、ＡＳＲトランスフォーマモデル２からテキストのみを音声合成部７０に出力するようにしてもよい。但し、対応する属性情報を音声合成部７０に与えることで、より提供するサービスの品質を高めることができる。
【０１１９】
例えば、属性情報として話者の性別（ＳＥＸ）を出力する場合には、音声合成部７０は、性別に応じた音声を合成して出力することができる。これにより、男性が第１言語で発話した場合には男性の声で出力音声を合成するとともに、女性が第１言語で発話した場合には女性の声で出力音声が合成することができる。
【０１２０】
さらに、本実施の形態に従うＡＳＲトランスフォーマモデル２を用いることで、入力される音声信号（入力音声）を発話したユーザＵＳＲの属性情報を取得できるので、これらの属性情報に応じた任意のサービスを提供してもよい。
【０１２１】
［Ｉ．まとめ］
本実施の形態に従う学習処理によれば、音声信号と対応するテキストだけではなく、対応する属性情報をも含むデータセットを用いて、ＡＳＲトランスフォーマモデルを学習させることで、音声認識性能を高めることができる。
【０１２２】
この結果、ＡＳＲトランスフォーマモデルにおいて、積層された複数のエンコーダブロックの間またはデコーダブロックの間でパラメータを共有化するような手法により、モデルを規定するパラメータ数を低減させた場合であっても、音声認識性能を維持できる。
【０１２３】
また、ＡＳＲトランスフォーマモデルをコンパクト化して処理速度を高めた場合であっても、所定の音声認識性能を維持できる。
【０１２４】
さらに、本実施の形態に従うＡＳＲトランスフォーマモデルによれば、入力された音声信号に関連付けられる属性情報のみを出力することもできる。このような属性情報を用いることで、音声信号に関連付けられた各種サービスを提供することもできる。
【０１２５】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１２６】
１，２  ＡＳＲトランスフォーマモデル、６  入力シーケンス、８  出力シーケンス、１０，１０Ａ  エンコーダ、１２  エンコーダブロック、１２Ａ  共有エンコーダブロック、１４，２６  ＭＨＡ層、１６，２８  ＰＦＦＮ層、２０，２０Ａ  デコーダ、２２  デコーダブロック、２２Ａ  共有デコーダブロック、２４  Ｍａｓｋ  ＭＨＡ層、３０，３４  ＰＥ、３２，３６  Ｅｍｂｅｄｄｉｎｇ層、４０  出力層、５０  トレーニングデータセット、５２  音声信号、５４  テキスト、５６  属性情報、６０  通信処理部、７０  音声合成部、８０  通信ネットワーク、９０  携帯端末、１００  多言語翻訳システム、５００  情報処理装置、５０２  ＣＰＵ、５０４  ＧＰＵ、５０６  主メモリ、５０８  ディスプレイ、５１０  ネットワークインターフェイス、５１２  二次記憶装置、５１４  学習プログラム、５１６  モデル定義データ、５１８  パラメータセット、５２２  入力デバイス、５２４  光学ドライブ、５２６  光学ディスク、５２８  内部バス、ＵＳＲ  ユーザ。
【図１】
2020154076.tif 000006
【図２】
2020154076.tif 000007
【図３】
2020154076.tif 000008
【図４】
2020154076.tif 000009
【図５】
2020154076.tif 000010
【図６】
2020154076.tif 000011
【図７】
2020154076.tif 000012
【図８】
2020154076.tif 000013