IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社アドバンスト・メディアの特許一覧

特開2023-56774訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム
<>
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図1
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図2
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図3
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図4
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図5
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図6
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図7
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図8
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図9
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図10
  • 特開-訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023056774
(43)【公開日】2023-04-20
(54)【発明の名称】訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラム
(51)【国際特許分類】
   G10L 15/06 20130101AFI20230413BHJP
   G10L 15/16 20060101ALI20230413BHJP
   G06N 20/00 20190101ALI20230413BHJP
【FI】
G10L15/06 300Z
G10L15/16
G06N20/00
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021166182
(22)【出願日】2021-10-08
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り (1)集会名、開催場所 InterSpeech2021 Best Western Premier Hotel International Brno Husova 200/16 602 00 Brno,Czech republic 開催日 令和3年9月2日 (2)ウェブサイトの掲載アドレス https://www.isca-speech.org/archive/interspeech_2021/kojima21_interspeech.html https://www.interspeech2021.org/proceedings 掲載日 令和3年9月1日 (3)ウェブサイトの掲載アドレス https://www.advanced-media.co.jp/newsrelease/21057 掲載日 令和3年9月14日
(71)【出願人】
【識別番号】398018021
【氏名又は名称】株式会社アドバンスト・メディア
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(72)【発明者】
【氏名】小島 淳嗣
(57)【要約】
【課題】ストリーミング型トランスフォーマ-トランスデューサモデルを構築するための技術を提供することである。
【解決手段】本開示の一態様は、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する第1モデル処理部と、ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する第2モデル処理部と、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルを訓練する訓練部と、を有する訓練装置に関する。
【選択図】図8
【特許請求の範囲】
【請求項1】
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する第1モデル処理部と、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する第2モデル処理部と、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルを訓練する訓練部と、
を有する訓練装置。
【請求項2】
前記第1の内部表現は、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから出力される第1の隠れベクトルから構成され、
前記第2の内部表現は、前記ストリーミング型トランスフォーマ-トランスデューサモデルから出力される第2の隠れベクトルから構成され、
前記訓練部は、前記第1の隠れベクトルと前記第2の隠れベクトルとの間の第1の差分が減少するように、前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する、請求項1に記載の訓練装置。
【請求項3】
前記第1の内部表現は、前記非ストリーミング型トランスフォーマ-トランスデューサモデルにおけるマルチヘッドセルフアテンションレイヤから出力される第1のマルチヘッドベクトルから構成され、
前記第2の内部表現は、前記ストリーミング型トランスフォーマ-トランスデューサモデルにおけるマルチヘッド切り捨てセルフアテンションレイヤから出力される第2のマルチヘッドベクトルから構成され、
前記訓練部は、前記第1のマルチヘッドベクトルと前記第2のマルチヘッドベクトルとの間の第2の差分が減少するように、前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する、請求項1又は2に記載の訓練装置。
【請求項4】
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得するステップと、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得するステップと、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新するステップと、
を有する、コンピュータによって実行される訓練方法。
【請求項5】
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する処理と、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する処理と、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する処理と、
をコンピュータに実行させるプログラム。
【請求項6】
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換する前処理部と、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得する音声符号化部と、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力する音声認識部と、
を有し、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、音声認識装置。
【請求項7】
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換するステップと、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得するステップと、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力するステップと、
を有し、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、コンピュータによって実行される音声認識方法。
【請求項8】
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換する処理と、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得する処理と、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力する処理と、
をコンピュータに実行させ、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、プログラム。
【請求項9】
訓練済みストリーミングトランスフォーマ-トランスデューサモデルを実現するプログラムであって、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、訓練装置、訓練方法、音声認識装置、音声認識方法及びプログラムに関する。
【背景技術】
【0002】
ディープラーニングとしばしば呼ばれる機械学習技術の進化によって、様々な用途に機械学習モデルが利用されてきている。例えば、音声認識技術においても、機械学習モデルが利用されてきている。機械学習モデルを利用した音声認識では、認識対象の音声データが機械学習モデルに入力され、当該機械学習モデルから音声データにおける発話内容を示す認識結果(すなわち、認識仮説)が取得される。
【0003】
近年、自動音声認識に対してトランスフォーマモデルが広く利用されるようになってきている。トランスフォーマモデルは、従来のRNN(Recurrent Neural Network)などのシーケンスモデリングのための典型的なアーキテクチャより効果的に、発話における時間依存性を抽出できることが知られている。このようなトランスフォーマモデルのうち、トランスフォーマ-トランスデューサ(T-T)モデルが効率性及び精度の点から現在注目されている。T-Tモデルでは、セルフアテンション(self-attention)機構が利用される。セルフアテンション機構では、セルフアテンションを計算するため、処理対象のシーケンスの全体が入力される必要があり、既存のT-Tモデルは非ストリーミング型であると言える。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2020-506466号公報
【非特許文献】
【0005】
【非特許文献1】C. F. Yeh, J. Mahadeokar, K. Kalgaonkar, Y. Wang, D. Le, M. Jain, K. Schubert, C. Fuegen and M. L. Seltzer, “Tranformer-Transducer: End-to-end speech recgnition with self-attention”, in Proc. INTERSPEECH, 2020.
【非特許文献2】Q. Zhang, H. Lu, H. Sak, A. Tripathi, E. McDermott, S. Koo, S. Kumar, “Transformer Transducer: A streamable speech recognition model with Transformer encoders and RNN-T loss”, in Proc. INTERSPEECH, 2020.
【発明の概要】
【発明が解決しようとする課題】
【0006】
一方、音声認識では、ストリーミング型の音声認識モデルが望まれる。発話完了後にすべての音声データを取得し、すべての音声データを使用して処理する非ストリーミング型に対し、音声対話や字幕表示等の音声認識では、ストリーミングで得られる音声データをリアルタイム処理すること(ストリーミング型)が必要である。このため、セルフアテンション機構が切り取られた(truncated)T-Tモデルが考えられうるが、認識精度が低下するおそれがある。
【0007】
上記問題点に鑑み、本開示の1つの課題は、ストリーミング型トランスフォーマ-トランスデューサモデルを構築するための技術を提供することである。
【課題を解決するための手段】
【0008】
本開示の一態様は、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する第1モデル処理部と、ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する第2モデル処理部と、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルを訓練する訓練部と、を有する訓練装置に関する。
【発明の効果】
【0009】
本開示によれば、ストリーミング型トランスフォーマ-トランスデューサモデルを構築することができる。
【図面の簡単な説明】
【0010】
図1】本開示の一実施例による音声認識システムを示す概略図である。
図2】本開示の一実施例によるストリーミング型トランスフォーマ-トランスデューサモデルを含むニューラルトランスデューサの構成を示すブロック図である。
図3】本開示の一実施例による訓練装置及び音声認識装置のハードウェア構成を示すブロック図である。
図4】本開示の一実施例による訓練装置の機能構成を示すブロック図である。
図5】本開示の一実施例による非ストリーミング型トランスフォーマ-トランスデューサモデルのアーキテクチャを示すブロック図である。
図6】本開示の一実施例によるストリーミング型トランスフォーマ-トランスデューサモデルのアーキテクチャを示すブロック図である。
図7】本開示の一実施例によるコンテキストの処理を示す図である。
図8】本開示の一実施例による非ストリーミング型トランスフォーマ-トランスデューサモデルからストリーミング型トランスフォーマ-トランスデューサモデルを知識蒸留により取得する訓練処理を示す概略図である。
図9】本開示の一実施例による訓練処理を示すフローチャートである。
図10】本開示の一実施例による音声認識装置の機能構成を示すブロック図である。
図11】本開示の一実施例による音声認識処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して本開示の実施の形態を説明する。
【0012】
以下の実施例では、知識蒸留(Knowledge Distillation)によって訓練済みの非ストリーミング型トランスフォーマ-トランスデューサモデルからストリーミング型トランスフォーマ-トランスデューサモデルを訓練する訓練装置と、このようにして訓練されたストリーミング型トランスフォーマ-トランスデューサモデルを利用して音声データから発話内容を認識(すなわち、音声認識仮説を出力)する音声認識装置とが開示される。
【0013】
[概略]
図1に示されるように、本開示の一実施例による音声認識システム10は、訓練データベース50、訓練装置100及び音声認識装置200を有する。図示されるように、訓練装置100は、訓練データベース50に格納されている訓練データと訓練済み非ストリーミング型トランスフォーマ-トランスデューサ(T-T)モデルとを利用して、知識蒸留に従って訓練対象のストリーミング型T-Tモデルを訓練する。
【0014】
具体的には、訓練装置100は、訓練データベース50に格納されている訓練用の特徴量系列を、訓練済み非ストリーミング型T-Tモデルと訓練対象のストリーミング型T-Tモデルとに入力する。例えば、訓練済み非ストリーミング型T-Tモデルは、マルチヘッドセルフアテンション機構を備えた何れか公知のT-Tモデルであってもよく、訓練対象のストリーミング型T-Tモデルは、以降において詳述するように、非ストリーミング型T-Tモデルのマルチヘッドセルフアテンション機構がマルチヘッド切り捨て(truncated)セルフアテンション機構に置換されたアーキテクチャを有する。
【0015】
訓練装置100は、入力した特徴量系列に対して、非ストリーミング型T-Tモデルから取得される内部表現と、ストリーミング型T-Tモデルから取得される内部表現との類似度を計算し、類似度が高くなるようストリーミング型T-Tモデルのパラメータを更新する。ここで、類似度を測る尺度としては、L2距離が利用可能であるが、本開示による類似度はこれに限定されず、ユークリッド距離、マンハッタン距離などの他の距離の尺度が利用されてもよい。例えば、内部表現は、非ストリーミング型T-Tモデルとストリーミング型T-Tモデルとからそれぞれ出力される隠れベクトルと、非ストリーミング型T-Tモデルとストリーミング型T-Tモデルとのセルフアテンションレイヤから出力されるマルチヘッドベクトルとであってもよい。
【0016】
このようにして訓練されたストリーミング型T-Tモデルは、音声認識装置200に提供される。例えば、音声認識装置200は、訓練済みストリーミング型T-Tモデルを搭載したニューラルトランスデューサ300を利用して、認識対象の音声データに対して音声認識を実行し、音声データにおける発話内容を示す音声認識データを取得する。例えば、ニューラルトランスデューサ300は、図2に示されるようなアーキテクチャにより構成されてもよい。具体的には、音声認識装置200は、入力された音声データを前処理することによって取得された音響特徴量xをオーディオエンコーダ310としての訓練済みストリーミング型T-Tモデルに入力し、隠れベクトルhを取得する。また、音声認識装置200は、トークンyu-1をラベルエンコーダ320に入力してトークンyを取得し、隠れベクトルhとトークンyとを結合し、共同ネットワーク330に入力する。さらに、音声認識装置200は、共同ネットワークの出力JをSoftmaxレイヤ340に入力し、出力トークンの事後確率P(y|x)を認識結果として出力する。
【0017】
しかしながら、音声認識装置200は、必ずしも上述したニューラルトランスデューサ300を利用する必要はなく、訓練済みストリーミング型T-Tモデルを含む他の何れかの音声認識モデルを利用してもよい。
【0018】
ここで、訓練装置100及び音声認識装置200はそれぞれ、サーバ、パーソナルコンピュータ等の計算装置によって実現され、例えば、図3に示されるようなハードウェア構成を有してもよい。すなわち、訓練装置100及び音声認識装置200はそれぞれ、バスBを介し相互接続される記憶装置101、プロセッサ102、ユーザインタフェース(UI)装置103及び通信装置104を有する。
【0019】
訓練装置100及び音声認識装置200それぞれにおける後述される各種機能及び処理を実現するプログラム又は指示は、ネットワークなどを介し何れかの外部装置からダウンロードされてもよいし、CD-ROM(Compact Disk-Read Only Memory)、フラッシュメモリ等の着脱可能な記憶媒体から提供されてもよい。記憶装置101は、ランダムアクセスメモリ、フラッシュメモリ、ハードディスクドライブなどによって実現され、インストールされたプログラム又は指示と共に、プログラム又は指示の実行に用いられるファイル、データ等を格納する。記憶装置101は、非一時的な記憶媒体(non-transitory storage medium)を含んでもよい。
【0020】
プロセッサ102は、1つ以上のプロセッサコアから構成されうる1つ以上のCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、処理回路(processing circuitry)等によって実現されてもよく、記憶装置101に格納されたプログラム、指示、当該プログラム若しくは指示を実行するのに必要なパラメータなどのデータ等に従って、後述される訓練装置100及び音声認識装置200はそれぞれの各種機能及び処理を実行する。ユーザインタフェース(UI)装置103は、キーボード、マウス、カメラ、マイクロフォン等の入力装置、ディスプレイ、スピーカ、ヘッドセット、プリンタ等の出力装置、タッチパネル等の入出力装置から構成されてもよく、ユーザと訓練装置100及び音声認識装置200との間のインタフェースを実現する。例えば、ユーザは、ディスプレイ又はタッチパネルに表示されたGUI(Graphical User Interface)をキーボード、マウス等を操作し、訓練装置100及び音声認識装置200を操作する。通信装置104は、外部装置、インターネット、LAN(Local Area Network)等の通信ネットワークとの通信処理を実行する各種通信回路により実現される。
【0021】
しかしながら、上述したハードウェア構成は単なる一例であり、本開示による訓練装置100及び音声認識装置200は、他の何れか適切なハードウェア構成により実現されてもよい。
【0022】
[訓練装置]
次に、図4~8を参照して、本開示の一実施例による訓練装置100を説明する。図4は、本開示の一実施例による訓練装置100の機能構成を示すブロック図である。
【0023】
図4に示されるように、訓練装置100は、第1モデル処理部110、第2モデル処理部120及び訓練部130を有する。
【0024】
第1モデル処理部110は、訓練済み非ストリーミング型T-Tモデル400に特徴量系列を入力し、非ストリーミング型T-Tモデルから内部表現を取得する。例えば、訓練済み非ストリーミング型T-Tモデル400は、既存のT-Tモデルであり、例えば、図5に示されるようなアーキテクチャから構成されてもよい。具体的には、訓練済み非ストリーミング型T-Tモデル400は、レイヤノルム410、マルチヘッドセルフアテンションレイヤ420、加算レイヤ430,460、全結合レイヤ440及びポジション単位フィードフォワードレイヤ450を有する。
【0025】
例えば、音声データは、10msecなどの所定の時間単位の音声データセグメントの系列に分割される。各音声データセグメントは前処理されて、音響特徴量系列x=(x,x,・・・,x)が生成される。例えば、音響特徴量系列は、ログメルフィルタバンク(log mel filter bank)の系列であってもよい。音響特徴量xが訓練済み非ストリーミング型T-Tモデル400に入力されると、レイヤノルム410は、平均及び分散によって正規化された音響特徴量系列x normedを出力する。レイヤノルム410は、正規化された音響特徴量系列x normedをマルチヘッドセルフアテンションレイヤ420にわたす。
【0026】
マルチヘッドセルフアテンションレイヤ420は、複数のヘッドを有し、レイヤノルム410からの正規化された音響特徴量系列x normedをヘッドi毎に異なる隠れベクトルTeacher hi,tに変換する(1≦i≦#head)。各ヘッドiにおいて、マルチヘッドセルフアテンション420は、1)入力をkey,value及びqueryに変換し、2)keyとqueryとからセルフアテンションを算出し、3)算出したセルフアテンションにvalueを乗算し、加算レイヤ430を介し音響特徴量系列xと加算することによって隠れベクトルTeacher hi,tを導出する。各ヘッドiにおいて導出された隠れベクトルTeacher hi,tは、全結合レイヤ440にわたされる。
【0027】
全結合レイヤ440、ポジション単位フィードフォワードレイヤ450及び加算レイヤ460は、各ヘッドiの隠れベクトルTeacher hi,tを入力位置毎に結合し、1つのベクトルTeacher hに変換する。
【0028】
非ストリーミング型T-Tモデル400は、このようにして導出したベクトルTeacher hを出力結果として共同ネットワーク330にわたす。
【0029】
なお、本実施例による訓練済み非ストリーミング型T-Tモデル400は、公知の既存のT-Tモデルであり、更なる詳細については説明を省略する。また、訓練済み非ストリーミング型T-Tモデル400は、必ずしも上述したアーキテクチャを有する必要はなく、ニューラルトランスデューサ300に搭載可能な他の何れかのアーキテクチャを有してもよい。
【0030】
第1モデル処理部110は、訓練済み非ストリーミング型T-Tモデル400において導出されるベクトルを内部表現として抽出する。抽出した内部表現は、訓練対象のストリーミング型T-Tモデル500を訓練するのに利用される。一実施例では、内部表現は、訓練済み非ストリーミング型T-Tモデル400から出力される隠れベクトルTeacher hと、マルチヘッドセルフアテンションレイヤ420から出力されるマルチヘッドベクトルTeacher h1,t,・・・,Teacher hhead,tとから構成されてもよい。第1モデル処理部110は、訓練済み非ストリーミング型T-Tモデル400と訓練対象のストリーミング型T-Tモデル500との双方に入力される音響特徴量系列x=(x,・・・,x)に対して、隠れベクトルTeacher hとマルチヘッドベクトルTeacher hi,t(i=1,・・・,head)とを内部表現として抽出する。
【0031】
しかしながら、本開示による内部表現は、必ずしもこれらに限定されず、知識蒸留に利用されるT-Tモデルのアーキテクチャに対応した他のベクトルを内部表現として抽出してもよい。また、本実施例では、隠れベクトルTeacher hとマルチヘッドベクトルTeacher hi,tとの双方が内部表現として抽出されるが、本開示による内部表現は、これに限定されず、隠れベクトルTeacher hとマルチヘッドベクトルTeacher hi,tの一方又は一部であってもよい。
【0032】
第2モデル処理部120は、訓練対象のストリーミング型T-Tモデル500に特徴量系列を入力し、ストリーミング型T-Tモデル500から内部表現を取得する。例えば、訓練対象のストリーミング型T-Tモデル500は、訓練済み非ストリーミング型T-Tモデル400に対応し、例えば、図6に示されるようなアーキテクチャから構成されてもよい。具体的には、訓練対象のストリーミング型T-Tモデル500は、レイヤノルム510、マルチヘッド切り捨てセルフアテンションレイヤ520、加算レイヤ530,560、全結合レイヤ540及びポジション単位フィードフォワードレイヤ550を有する。ここで、訓練対象のストリーミング型T-Tモデル500は、マルチヘッドセルフアテンションレイヤ420がマルチヘッド切り捨てセルフアテンションレイヤ520によって置換されている点を除いて、訓練済み非ストリーミング型T-Tモデル400と同様である。このため、レイヤノルム510、加算レイヤ530,560、全結合レイヤ540及びポジション単位フィードフォワードレイヤ550についての繰り返しの説明は省略する。
【0033】
マルチヘッド切り捨てセルフアテンションレイヤ520は、ベクトル変換の際に使用されるコンテキストに関してのみ、マルチヘッドセルフアテンションレイヤ420と異なる。例えば、図7に示されるような音響特徴量系列の長さが6であるマルチヘッド切り捨てセルフアテンションレイヤ520を考える。ここで、マルチヘッド切り捨てセルフアテンションレイヤ520における過去のコンテキストサイズと未来のコンテキストサイズとをそれぞれパラメータL,Rによって示す。例えば、パラメータL,Rが無限大に設定された場合、マルチヘッド切り捨てセルフアテンションレイヤ520は、マルチヘッドセルフアテンションレイヤ420と一致する。
【0034】
例えば、未来のコンテキストサイズを示すパラメータRが、R=0に設定された場合、マルチヘッド切り捨てセルフアテンションレイヤ520は、ストリーミング処理に対応可能となる。従って、ストリーミング型T-Tモデル500のマルチヘッド切り捨てセルフアテンションレイヤ520では、R=0に設定される。他方、過去のコンテキストサイズを示すパラメータLは、何れか適切な値に設定されてもよい。例えば、L=2に設定された場合、マルチヘッド切り捨てセルフアテンションレイヤ520は、過去のコンテキストとして直前の2フレームを利用する。この場合、フレーム数が3以上であった場合でも、マルチヘッド切り捨てセルフアテンションレイヤ520は、過去のコンテキストとして直前の2フレームしか利用しない。
【0035】
図7に示されるケースは、L=2,R=0に対応する。図示されたマルチヘッド切り捨てセルフアテンションレイヤ520によると、入力された音響特徴量系列x,・・・,xに対して、図7の最下位に示される入力レイヤでは、音響特徴量x,・・・,xがコンテキストとして利用され、更なる上位の各中間レイヤでは、図示されるように、コンテキストが利用される。ここで、音響特徴量xからマルチヘッドベクトルのfを出力する際、図示されたコンテキストは使用されない。
【0036】
訓練済み非ストリーミング型T-Tモデル400に入力された同一の音響特徴量系列x(ログメルフィルタバンク)に対してレイヤノルム510から正規化された音響特徴量系列x normedを取得すると、マルチヘッド切り捨てセルフアテンションレイヤ520は、設定されたパラメータL,Rの下で、各ヘッドiにおいて、1)入力をkey,value及びqueryに変換し、2)keyとqueryとからセルフアテンションを算出し、3)算出したセルフアテンションにvalueを乗算し、加算レイヤ530を介し音響特徴量系列xと加算することによって隠れベクトルStudent hi,tを導出する。各ヘッドiにおいて導出された隠れベクトルStudent hi,tは、全結合レイヤ540にわたされる。
【0037】
第2モデル処理部120は、訓練対象のストリーミング型T-Tモデル500において導出されるベクトルを内部表現として抽出する。抽出した内部表現は、訓練対象のストリーミング型T-Tモデル500を訓練するのに利用される。一実施例では、内部表現は、ストリーミング型T-Tモデル500から出力される隠れベクトルStudent hと、マルチヘッド切り捨てセルフアテンションレイヤ520から出力されるマルチヘッドベクトルStudent h1,t,・・・,Student hhead,tとから構成されてもよい。第2モデル処理部120は、訓練済み非ストリーミング型T-Tモデル400と訓練対象のストリーミング型T-Tモデル500との双方に入力される音響特徴量系列x=(x,・・・,x)に対して、隠れベクトルStudent hとマルチヘッドベクトルStudent hi,t(i=1,・・・,head)とを内部表現として抽出する。
【0038】
しかしながら、本開示による内部表現は、必ずしもこれらに限定されず、知識蒸留に利用されるT-Tモデルのアーキテクチャに対応した他のベクトルを内部表現として抽出してもよい。また、本実施例では、隠れベクトルTeacher hとマルチヘッドベクトルTeacher hi,tとの双方が内部表現として抽出されるが、本開示による内部表現は、これに限定されず、隠れベクトルTeacher hとマルチヘッドベクトルTeacher hi,tの一方又は一部であってもよい。
【0039】
訓練部130は、第1モデル処理部110によって抽出された内部表現と、第2モデル処理部120によって抽出された内部表現との間の類似度に基づいて、訓練対象のストリーミング型T-Tモデル500を訓練する。具体的には、訓練部130は、非ストリーミング型T-Tモデル400の隠れベクトルTeacher hと、ストリーミング型T-Tモデル500の隠れベクトルStudent hとの間の差分λhidden_simを算出する。すなわち、訓練部130は、以下の式(1)に従って差分λhidden_simを算出する。
【数1】
ここで、hは隠れベクトルであり、N及びTはそれぞれ、トランスフォーマレイヤ500のレイヤ数、及び入力された音響特徴量系列の長さである。
【0040】
また、訓練部130は、非ストリーミング型T-Tモデル400のマルチヘッドベクトルTeacher hi,tと、ストリーミング型T-Tモデル500のマルチヘッドベクトルStudent hi,tとの間の差分λhead_simを算出する。すなわち、訓練部130は、以下の式(2)に従って差分λhead_simを算出する。
【数2】
ここで、h’はマルチヘッドベクトルであり、headはヘッド数である。
【0041】
そして、訓練部130は、訓練対象のストリーミング型T-Tモデル500を訓練するため、ストリーミング型T-Tモデル500を含むニューラルトランスデューサ300のRNN-T損失λRNN-Tと2つの差分λhidden_simhead_simとを重み付きで加算する。
【数3】
ここで、αはハイパパラメータであり、RNN-T損失λRNN-Tは、フォワード・バックワードアルゴリズムを利用した全てのパスに対する確率の和として計算され、
【数4】
により表される。ここで、Z(y,T)は、トークン系列yの長さTの全てのアライメントの集合である。
【0042】
訓練部130は、λRNN-T+hidden_sim及び/又はλRNN-T+head_simが減少するよう訓練対象のストリーミング型T-Tモデル500のパラメータを更新する。すなわち、訓練部130は、隠れベクトルTeacher hと隠れベクトルStudent hとの間の差分λhidden_simと、マルチヘッドベクトルTeacher hi,tとマルチヘッドベクトルStudent hi,tとの間の差分λhead_simとの一方又は双方が減少するように、ストリーミング型T-Tモデル500の結合重み係数などのパラメータを更新する。
【0043】
訓練部130は、所定の終了条件が充足されるまで、上述したパラメータ更新処理を繰り返す。所定の終了条件としては、例えば、訓練データベース50の全ての訓練データが処理されたこと、損失値λRNN-T+hidden_sim及びλRNN-T+head_simが所定の閾値以下に収束したことなどであってもよい。所定の終了条件が充足されると、訓練部130は、取得されたストリーミング型T-Tモデル500を音声認識装置200に提供する。
【0044】
[訓練処理]
次に、図9を参照して、本開示の一実施例によるストリーミング型T-Tモデル500の訓練処理を説明する。当該訓練処理は、上述した訓練装置100によって実行され、より詳細には、訓練装置100の1つ以上のプロセッサ102が1つ以上の記憶装置101に格納された1つ以上のプログラム又は指示を実行することによって実現されてもよい。図9は、本開示の一実施例による訓練処理を示すフローチャートである。
【0045】
図9に示されるように、ステップS101において、訓練装置100は、音響特徴量系列xを取得する。具体的には、訓練装置100は、訓練データベース50から訓練用の音響特徴量系列xを取得する。
【0046】
ステップS102において、訓練装置100は、取得した音響特徴量系列Xを、訓練済み非ストリーミング型T-Tモデル400を含むニューラルトランスデューサ300と、訓練対象のストリーミング型T-Tモデル500を含むニューラルトランスデューサ300とにそれぞれ入力する。
【0047】
ステップS103において、訓練装置100は、損失値λRNN-T+hidden_sim及びλRNN-T+head_simを算出する。具体的には、訓練装置100は、訓練済み非ストリーミング型T-Tモデル400の隠れベクトルTeacher hと、訓練対象のストリーミング型T-Tモデル500の隠れベクトルStudent hとの間の差分λhidden_simを算出する。訓練装置100は更に、訓練済み非ストリーミング型T-Tモデル400のマルチヘッドベクトルTeacher hi,tと、訓練対象のストリーミング型T-Tモデル500のマルチヘッドベクトルStudent hi,tとの間の差分λhead_simを算出する。また、訓練装置100は、ニューラルトランスデューサ300のRNN-T損失λRNN-Tを算出し、これらの算出結果に基づいて、
【数5】
を算出する。
【0048】
ステップS104において、訓練装置100は、式(7)及び/又は式(8)の損失値が減少するようにストリーミング型T-Tモデル500のパラメータを更新する。例えば、当該パラメータは、バックプロパゲーションアルゴリズムなどの何れか公知のパラメータ更新アルゴリズムに従って更新されてもよい。
【0049】
ステップS105において、訓練装置100は、所定の終了条件が充足されているか判定する。例えば、所定の終了条件として、訓練データベース50の全ての訓練データが処理されたこと、損失値λRNN-T+hidden_sim及び/又はλRNN-T+head_simが所定の閾値以下に収束したことなどであってもよい。終了条件が充足されている場合(S105:YES),訓練装置100は、当該訓練処理を終了し、ストリーミング型T-Tモデル500を音声認識装置200に提供する。他方、終了条件が充足されていない場合(S105:NO)、訓練装置100は、ステップS101に戻って、次の音響特徴量系列xに対して上述したステップを繰り返す。
【0050】
上述した訓練装置100及び訓練方法によると、従来の知識蒸留に従って訓練済みモデルと訓練対象のモデルにおける事後確率の差分(例えば、Kullback-Leibler(KL)ダイバージェンスなど)に基づいて訓練対象のモデルを訓練する場合と比較して、ニューラルトランスデューサに搭載されるストリーミング型T-Tモデル500を良好に訓練することができる。
【0051】
[音声認識装置]
次に、図10を参照して、本開示の一実施例による音声認識装置200を説明する。本実施例による音声認識装置200は、訓練装置100から提供された訓練済みストリーミング型T-Tモデル500を利用して、認識対象の音声データから当該音声データの発話内容を示す音声認識結果(すなわち、音声認識仮説)を出力する。図10は、本開示の一実施例による音声認識装置200の機能構成を示すブロック図である。
【0052】
図10に示されるように、音声認識装置200は、前処理部210、音声符号化部220及び音声認識部230を有する。
【0053】
前処理部210は、処理対象の音声データを取得し、取得した音声データを特徴量系列に変換する。例えば、前処理部210は、取得した音声データを10msecなどの所定の時間単位の音声データセグメントの系列に分割し、音響特徴量系列x=(x,x,・・・,x)を得る。音声データセグメントから音響特徴量への変換は、離散フーリエ変換などの何れか公知の変換方式に従って実行されてもよい。
【0054】
音声符号化部220は、訓練済みストリーミング型T-Tモデル500に特徴量系列を入力し、訓練済みストリーミング型T-Tモデルから隠れベクトルを取得する。具体的には、音声符号化部220は、オーディオエンコーダ310として利用される訓練済みストリーミング型T-Tモデル500を含むニューラルトランスデューサ300に、音響特徴量系列xを入力する。ニューラルトランスデューサ300では、図2に示されるように、音響特徴量系列xはまず、オーディオエンコーダ310に入力され、オーディオエンコーダ310から隠れベクトルhが出力される。ここで、訓練済みストリーミング型T-Tモデル500は、上述した訓練処理に従って、訓練済み非ストリーミング型T-Tモデル400に訓練用の特徴量系列を入力して内部表現を取得し、訓練対象のストリーミング型T-Tモデル500に訓練用の特徴量系列を入力して内部表現を取得し、これらの内部表現の間の類似度に基づいて訓練されたものであってもよい。
【0055】
音声認識部230は、隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力する。具体的には、音声認識部230は、オーディオエンコーダ310から取得した隠れベクトルhと、ラベルエンコーダ320から出力されたトークンyとを結合し、共同ネットワーク330に入力し、Softmaxレイヤ340を介し、トークンの事後確率P(y|x)を音声認識結果として取得する。例えば、トークンは、文字、サブワード、単語などであってもよい。
【0056】
[音声認識処理]
次に、図11を参照して、本開示の一実施例による音声認識処理を説明する。当該音声認識処理は、上述した音声認識装置200によって実行され、より詳細には、音声認識装置200の1つ以上のプロセッサ102が1つ以上の記憶装置101に格納された1つ以上のプログラム又は指示を実行することによって実現されてもよい。図11は、本開示の一実施例による音声認識処理を示すフローチャートである。
【0057】
図11に示されるように、ステップS201において、音声認識装置200は、音声データを前処理し、音響特徴量系列xを取得する。
【0058】
ステップS202において、音声認識装置200は、音響特徴量系列xを訓練済みストリーミング型T-Tモデル500に入力し、隠れベクトルを取得する。具体的には、訓練済みストリーミング型T-Tモデル500は、ニューラルトランスデューサ300におけるオーディオエンコーダ310として利用され、音声認識装置200は、音響特徴量系列xをオーディオエンコーダ310に入力し、オーディオエンコーダ310から隠れベクトルhを取得する。
【0059】
ステップS203において、音声認識装置200は、隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を取得する。具体的には、音声認識装置200は、オーディオエンコーダ310から取得した隠れベクトルhと、ラベルエンコーダ320から取得したトークンyとを結合し、共同ネットワーク330に入力し、Softmaxレイヤ340を介し、トークンの事後確率P(y|x)を取得する。最終的に、この事後確率が最大となるトークンを出力することで、仮説が得られる。あるいは、確率の高い上位N個のトークンを出力し、ビームサーチに基づき、枝刈りを行うことで、仮説の候補を得ることもできる。
【0060】
ステップS204において、音声認識装置200は、認識対象の更なる音声データがあるか判定する。認識対象の更なる音声データがある場合(S204:YES)、音声認識装置200は、ステップS201に戻って、当該音声データに対して上述したステップを繰り返す。他方、認識対象の更なる音声データがない場合(S204:NO)、音声認識装置200は、当該音声認識処理を終了する。
【0061】
上述した音声認識装置200及び音声認識処理によると、ストリーミング音声データに対して、非ストリーミング型T-Tモデルと同等の精度によって音声認識処理を実行することが可能になる。
【0062】
なお、以上の説明に関して更に以下の付記を開示する。
(付記1)
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する第1モデル処理部と、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する第2モデル処理部と、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルを訓練する訓練部と、
を有する訓練装置。
(付記2)
前記第1の内部表現は、前記非ストリーミング型トランスフォーマ-トランスデューサモデルから出力される第1の隠れベクトルから構成され、
前記第2の内部表現は、前記ストリーミング型トランスフォーマ-トランスデューサモデルから出力される第2の隠れベクトルから構成され、
前記訓練部は、前記第1の隠れベクトルと前記第2の隠れベクトルとの間の第1の差分が減少するように、前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する、付記1に記載の訓練装置。
(付記3)
前記第1の内部表現は、前記非ストリーミング型トランスフォーマ-トランスデューサモデルにおけるマルチヘッドセルフアテンションレイヤから出力される第1のマルチヘッドベクトルから構成され、
前記第2の内部表現は、前記ストリーミング型トランスフォーマ-トランスデューサモデルにおけるマルチヘッド切り捨てセルフアテンションレイヤから出力される第2のマルチヘッドベクトルから構成され、
前記訓練部は、前記第1のマルチヘッドベクトルと前記第2のマルチヘッドベクトルとの間の第2の差分が減少するように、前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する、付記1又は2に記載の訓練装置。
(付記4)
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得するステップと、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得するステップと、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新するステップと、
を有する、コンピュータによって実行される訓練方法。
(付記5)
訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに特徴量系列を入力し、非ストリーミング型トランスフォーマ-トランスデューサモデルから第1の内部表現を取得する処理と、
ストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得する処理と、
前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて前記ストリーミング型トランスフォーマ-トランスデューサモデルのパラメータを更新する処理と、
をコンピュータに実行させるプログラム。
(付記6)
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換する前処理部と、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得する音声符号化部と、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力する音声認識部と、
を有し、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、音声認識装置。
(付記7)
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換するステップと、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得するステップと、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力するステップと、
を有し、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、コンピュータによって実行される音声認識方法。
(付記8)
処理対象の音声データを取得し、前記取得した音声データを特徴量系列に変換する処理と、
訓練済みストリーミング型トランスフォーマ-トランスデューサモデルに前記特徴量系列を入力し、前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルから隠れベクトルを取得する処理と、
前記隠れベクトルとトークンとに基づいて音声認識を実行し、音声認識結果を出力する処理と、
をコンピュータに実行させ、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、プログラム。
(付記9)
訓練済みストリーミングトランスフォーマ-トランスデューサモデルを実現するプログラムであって、
前記訓練済みストリーミング型トランスフォーマ-トランスデューサモデルは、訓練済み非ストリーミング型トランスフォーマ-トランスデューサモデルに訓練用の特徴量系列を入力し、第1の内部表現を取得し、訓練対象のストリーミング型トランスフォーマ-トランスデューサモデルに前記訓練用の特徴量系列を入力し、前記ストリーミング型トランスフォーマ-トランスデューサモデルから第2の内部表現を取得し、前記第1の内部表現と前記第2の内部表現との間の類似度に基づいて訓練される、プログラム。
【0063】
以上、本開示の実施例について詳述したが、本開示は上述した特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本開示の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0064】
10 音声認識システム
50 訓練データベース
100 訓練装置
110 第1モデル処理部
120 第2モデル処理部
130 訓練部
200 音声認識装置
210 前処理部
220 音声符号化部
230 音声認識部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11