(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-04
(45)【発行日】2022-11-14
(54)【発明の名称】ニューラルネットワークを用いた認識方法及び装置並びにトレーニング方法
(51)【国際特許分類】
G10L 15/065 20130101AFI20221107BHJP
G06N 3/04 20060101ALI20221107BHJP
G06N 3/08 20060101ALI20221107BHJP
G10L 15/20 20060101ALI20221107BHJP
G10L 15/16 20060101ALI20221107BHJP
G10L 15/183 20130101ALI20221107BHJP
G10L 15/04 20130101ALI20221107BHJP
G10L 15/10 20060101ALI20221107BHJP
【FI】
G10L15/065 Z
G06N3/04
G06N3/08
G10L15/20 200Z
G10L15/16
G10L15/183 200Z
G10L15/04 300C
G10L15/10 300Z
(21)【出願番号】P 2018042978
(22)【出願日】2018-03-09
【審査請求日】2021-03-08
(31)【優先権主張番号】10-2017-0103044
(32)【優先日】2017-08-14
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】390019839
【氏名又は名称】三星電子株式会社
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【住所又は居所原語表記】129,Samsung-ro,Yeongtong-gu,Suwon-si,Gyeonggi-do,Republic of Korea
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】柳 尚 賢
【審査官】米倉 秀明
(56)【参考文献】
【文献】米国特許出願公開第2018/0336887(US,A1)
【文献】特表2018-513398(JP,A)
【文献】特開2017-117045(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-17/26
G06N 3/04
G06N 3/08
(57)【特許請求の範囲】
【請求項1】
プロセッサによる認識方法において、
メインニューラルネットワーク及びサブニューラルネットワークに音声信号を提供するステップと、
前記サブニューラルネットワークを用いて、前記提供された音声信号を解釈することにより、スケーリングファクターを取得するステップと、
前記スケーリングファクターに基づいて、音声認識を行うメインニューラルネットワークで考慮する未来コンテキストの長さを決定するステップと、
前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて前記音声信号の認識結果を取得するステップと、
を含む認識方法。
【請求項2】
前記メインニューラルネットワークは、以前時間連結を含む第1レイヤ及び未来時間連結を含む第2レイヤを含む、請求項1に記載の認識方法。
【請求項3】
前記未来コンテキストの長さを決定するステップは、
前記メインニューラルネットワークによる音声認識それぞれに対する未来コンテキストそれぞれの長さを決定し、
前記未来コンテキストそれぞれの長さは、前記サブニューラルネットワークによる音声信号の対応するコンテキスト解釈に基づいて動的に決定される、請求項1に記載の認識方法。
【請求項4】
前記メインニューラルネットワーク及び前記サブニューラルネットワークに前記音声信号を提供するステップは、
前記音声信号に含まれた複数の音声フレーム又はウィンドウを前記メインニューラルネットワークに提供し、前記複数の音声フレーム又はウィンドウの一部を前記サブニューラルネットワークに提供し、
前記サブニューラルネットワークは、前記複数の音声フレーム又はウィンドウの一部を解釈することによって前記スケーリングファクターを生成し、
前記メインニューラルネットワークは、前記複数の音声フレーム又はウィンドウに基づいて音声信号を認識する、請求項1ないし3のうち何れか一項に記載の認識方法。
【請求項5】
前記メインニューラルネットワーク及び前記サブニューラルネットワークに前記音声信号を提供するステップは、前記スケーリングファクターを取得するために、前記複数の音声フレーム又はウィンドウの全て又は一部のいずれか1つを前記サブニューラルネットワークに提供する、請求項4に記載の認識方法。
【請求項6】
前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークを用いて、前記音声信号が認識されるとき前記メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示すスケーリングファクターを取得する、請求項1ないし5のうち何れか一項に記載の認識方法。
【請求項7】
前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークによって解釈された前記音声信号に含まれたノイズ程度、及び前記音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定されたスケーリングファクターを取得する、請求項6に記載の認識方法。
【請求項8】
前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性に基づいて予め決定された閾値よりも大きい値を有する成分が多くなるよう前記スケーリングファクターを決定する、請求項6に記載の認識方法。
【請求項9】
前記未来コンテキストの長さを決定するステップは、前記スケーリングファクターに基づいて前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性により前記未来コンテキストの長さを大きく決定し、前記サブニューラルネットワークによって相対的に高く解釈された音声信号の明確性により前記未来コンテキストの長さを小さく決定する、請求項1に記載の認識方法。
【請求項10】
前記未来コンテキストの長さを決定するステップは、前記スケーリングファクターに含まれた成分の値と予め決定された閾値との間の比較によって前記未来コンテキストの長さを決定する、請求項1に記載の認識方法。
【請求項11】
前記未来コンテキストの長さを決定するステップは、前記予め決定された閾値よりも大きい値を有する前記スケーリングファクターの成分のうち最も高い次元に基づいて前記未来コンテキストの長さを決定する、請求項10に記載の認識方法。
【請求項12】
前記音声信号の認識結果を取得するステップは、
前記メインニューラルネットワークに含まれたルックアヘッド畳み込みレイヤの未来コンテキストの長さを前記決定された未来コンテキストの長さに調整するステップと、
前記調整されたルックアヘッド畳み込みレイヤを含むメインニューラルネットワークに前記音声信号を入力するステップと、
前記調整されたルックアヘッド畳み込みレイヤを含むメインニューラルネットワークから出力される音声信号の認識結果を取得するステップと、
を含む、請求項1ないし11のうち何れか一項に記載の認識方法。
【請求項13】
前記ルックアヘッド畳み込みレイヤの未来コンテキストの長さを前記決定された未来コンテキストの長さに調整するステップは、前記決定された未来コンテキストの長さに基づいて、前記ルックアヘッド畳み込みレイヤに対するゼロ未来コンテキスト、一部の未来コンテキスト、全ての未来コンテキストのうちいずれか1つを選択する、請求項12に記載の認識方法。
【請求項14】
前記未来コンテキストの長さを決定するステップは、前記音声信号の複数のウィンドウのうち最初のウィンドウで取得したスケーリングファクターに基づいて前記未来コンテキストの長さを決定し、
前記音声信号の認識結果を取得するステップは、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて、前記音声信号に含まれた複数のウィンドウに対する認識結果を取得する、請求項1に記載の認識方法。
【請求項15】
前記メインニューラルネットワークは、ルックアヘッド畳み込みレイヤを含む単方向リカレントニューラルネットワークである、請求項1ないし14のうち何れか一項に記載の認識方法。
【請求項16】
前記メインニューラルネットワーク及び前記サブニューラルネットワークは、共にトレーニングされるニューラルネットワークである、請求項1ないし14のうち何れか一項に記載の認識方法。
【請求項17】
プロセッサによるトレーニング方法において、
トレーニング入力が入力されたサブニューラルネットワークからスケーリングファクターを取得するステップと、
前記スケーリングファクターに基づいてメインニューラルネットワークで考慮する未来コンテキストの長さを決定するステップと、
前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークに前記トレーニング入力が入力されることによって、前記メインニューラルネットワークで前記トレーニング入力にマッピングされたトレーニング出力が出力されるよう、前記メインニューラルネットワーク及び前記サブニューラルネットワークをトレーニングするステップと、
を含むトレーニング方法。
【請求項18】
前記メインニューラルネットワーク及び前記サブニューラルネットワークをトレーニングするステップは、前記メインニューラルネットワークと前記サブニューラルネットワークを同時にトレーニングする、請求項17に記載のトレーニング方法。
【請求項19】
請求項1ないし請求項18のいずれか一項に記載の方法をプロセッサに実行させる命令語を含むコンピュータプログラム。
【請求項20】
プロセッサと
少なくとも1つの命令語を含むメモリと
を有する認識装置であって、前記命令語が前記プロセッサにより実行されると、前記プロセッサは、
メインニューラルネットワーク及びサブニューラルネットワークに音声信号を提供し、
前記サブニューラルネットワークを用いて、前記提供された音声信号を解釈することによりスケーリングファクターを取得し、
音声認識を行うメインニューラルネットワークで考慮する未来コンテキストの長さを前記スケーリングファクターに基づいて決定し、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて、前記音声信号の認識結果を取得する、認識装置。
【請求項21】
前記少なくとも1つの命令語は、前記プロセッサによって音声認識が提供され、前記スケーリングファクターを取得し、前記未来コンテキストの長さを決定し、前記認識結果を取得することを、前記プロセッサに実行させる、請求項20記載の認識装置。
【請求項22】
前記メモリは、前記メインニューラルネットワーク及び前記サブニューラルネットワークのトレーニングされたパラメータそれぞれを含み、
前記プロセッサは、前記メインニューラルネットワーク及び前記サブニューラルネットワークが実行される場合、前記トレーニングされたパラメータそれぞれを前記メインニューラルネットワーク及び前記サブニューラルネットワークに適用する、請求項20又は21に記載の認識装置。
【請求項23】
前記プロセッサは、前記サブニューラルネットワークを用いて前記音声信号が認識される場合に、前記メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示すスケーリングファクターを取得する、請求項20ないし22のうち何れか一項に記載の認識装置。
【請求項24】
前記プロセッサは、前記サブニューラルネットワークによって解釈された前記音声信号に含まれたノイズ程度及び前記音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定されたスケーリングファクターを取得する、請求項23記載の認識装置。
【請求項25】
前記プロセッサは、前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性に基づいて予め決定された閾値よりも大きい値を有する成分が多くなるように前記スケーリングファクターを決定する、請求項20ないし22のうち何れか一項に記載の認識装置。
【請求項26】
前記プロセッサは、前記スケーリングファクターに含まれた成分の値と予め決定された閾値との間の比較によって前記未来コンテキストの長さを決定する、請求項20ないし25のうち何れか一項に記載の認識装置。
【請求項27】
前記認識装置は、電子装置であり、オーディオをキャプチャーする音声受信機をさらに含み、前記プロセッサは、前記キャプチャーされたオーディオから前記音声信号を抽出し、
前記プロセッサは、前記認識結果に基づいて解釈された命令に基づいて前記認識装置の非音声認識機能を制御する、請求項21ないし26のうち何れか一項に記載の認識装置。
【発明の詳細な説明】
【技術分野】
【0001】
以下の実施形態は、ルックアヘッド畳み込みレイヤ(lookahead convolution layer)を含むニューラルネットワークに基づいた認識方法及び装置、並びに前記ニューラルネットワークをトレーニングする方法及び装置に関する。
【背景技術】
【0002】
近年、プロセッサ基盤ニューラルネットワークモデルによって実行される音声認識技術に対する研究が盛んに行われている。トレーニングされたニューラルネットワークモデルによって入力パターンと出力パターンとの間のマッピングが生成される。また、人工ニューラルネットワークは、学習された結果に基づいて学習に利用されていない入力パターンに対して比較的に正しい出力を生成することができる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明の目的は、ニューラルネットワークを用いた認識方法及び装置及び前記ニューラルネットワークをトレーニングする方法及び装置を提供することにある。
【課題を解決するための手段】
【0004】
一実施形態に係るプロセッサ基盤認識方法は、メインニューラルネットワーク及びサブニューラルネットワークに音声信号を提供するステップと、前記サブニューラルネットワークを用いて、前記提供された音声信号を解釈することにより、スケーリングファクターを取得するステップと、音声認識を行うメインニューラルネットワークで考慮する未来コンテキストの長さを前記スケーリングファクターに基づいて決定するステップと、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて前記音声信号の認識結果を取得するステップとを含む。
【0005】
一実施形態に係る認識方法において、前記メインニューラルネットワークは、以前時間連結を含む第1レイヤ及び未来時間連結を含む第2レイヤを含み得る。
【0006】
一実施形態に係る認識方法において、前記未来コンテキストの長さを決定するステップは、前記メインニューラルネットワークによる音声認識それぞれに対する未来コンテキストそれぞれの長さを決定し、前記未来コンテキストそれぞれの長さは、前記サブニューラルネットワークによる音声信号の対応するコンテキスト解釈に基づいて動的に決定され得る。
【0007】
一実施形態に係る認識方法において、前記メインニューラルネットワーク及び前記サブニューラルネットワークに前記音声信号を提供するステップは、前記音声信号に含まれた複数の音声フレーム又はウィンドウを前記メインニューラルネットワークに提供し、前記複数の音声フレーム又はウィンドウの一部を前記サブニューラルネットワークに提供し、前記サブニューラルネットワークは、前記複数の音声フレーム又はウィンドウの一部を解釈することによって前記スケーリングファクターを生成し、前記メインニューラルネットワークは、前記複数の音声フレーム又はウィンドウに基づいて音声信号を認識し得る。
【0008】
一実施形態に係る認識方法において、前記メインニューラルネットワーク及び前記サブニューラルネットワークに前記音声信号を提供するステップは、前記スケーリングファクターを取得するために、前記複数の音声フレーム又はウィンドウの全て又は一部のいずれか1つを前記サブニューラルネットワークに提供し得る。
【0009】
一実施形態に係る認識方法において、前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークを用いて、前記音声信号が認識されるとき前記メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示すスケーリングファクターを取得し得る。
【0010】
一実施形態に係る認識方法において、前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークによって解釈された前記音声信号に含まれたノイズ程度、及び前記音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定されたスケーリングファクターを取得し得る。
【0011】
一実施形態に係る認識方法において、前記スケーリングファクターを取得するステップは、前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性に基づいて予め決定された閾値よりも大きい値を有する成分が多くなるよう前記スケーリングファクターを決定し得る。
【0012】
一実施形態に係る認識方法において、前記未来コンテキストの長さを決定するステップは、前記スケーリングファクターに基づいて前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性により前記未来コンテキストの長さを大きく決定し、前記サブニューラルネットワークによって相対的に高く解釈された音声信号の明確性により前記未来コンテキストの長さを小さく決定し得る。
【0013】
一実施形態に係る認識方法において、前記未来コンテキストの長さを決定するステップは、前記スケーリングファクターに含まれた成分の値と予め決定された閾値との間の比較によって前記未来コンテキストの長さを決定し得る。
【0014】
一実施形態に係る認識方法において、前記未来コンテキストの長さを決定するステップは、前記予め決定された閾値よりも大きい値を有する前記スケーリングファクターの成分のうち最も高い次元に基づいて前記未来コンテキストの長さを決定し得る。
【0015】
一実施形態に係る認識方法において、前記音声信号の認識結果を取得するステップは、前記メインニューラルネットワークに含まれたルックアヘッド畳み込みレイヤの未来コンテキストの長さを前記決定された未来コンテキストの長さに調整するステップと、前記調整されたルックアヘッド畳み込みレイヤを含むメインニューラルネットワークに前記音声信号を入力するステップと、前記調整されたルックアヘッド畳み込みレイヤを含むメインニューラルネットワークから出力される音声信号の認識結果を取得するステップとを含み得る。
【0016】
一実施形態に係る認識方法において、前記ルックアヘッド畳み込みレイヤの未来コンテキストの長さを前記決定された未来コンテキストの長さに調整するステップは、前記決定された未来コンテキストの長さに基づいて、前記ルックアヘッド畳み込みレイヤに対するゼロ未来コンテキスト、一部の未来コンテキスト、全ての未来コンテキストのうちいずれか1つを選択し得る。
【0017】
一実施形態に係る認識方法において、前記未来コンテキストの長さを決定するステップは、前記音声信号の複数のウィンドウのうち最初のウィンドウで取得したスケーリングファクターに基づいて前記未来コンテキストの長さを決定し、前記音声信号の認識結果を取得するステップは、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて、前記音声信号に含まれた複数のウィンドウに対する認識結果を取得し得る。
【0018】
一実施形態に係る認識方法において、前記メインニューラルネットワークは、ルックアヘッド畳み込みレイヤを含む単方向リカレントニューラルネットワークであり得る。
【0019】
一実施形態に係る認識方法において、前記メインニューラルネットワーク及び前記サブニューラルネットワークは、共にトレーニングされるニューラルネットワークであり得る。
【0020】
一実施形態に係るプロセッサ基盤トレーニング方法は、トレーニング入力が入力されたサブニューラルネットワークからスケーリングファクターを取得するステップと、前記スケーリングファクターに基づいてメインニューラルネットワークで考慮する未来コンテキストの長さを決定するステップと、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークに前記トレーニング入力が入力されることによって、前記メインニューラルネットワークで前記トレーニング入力にマッピングされたトレーニング出力が出力されるよう、前記メインニューラルネットワーク及び前記サブニューラルネットワークをトレーニングさせるステップとを含む。
【0021】
一実施形態に係るトレーニング方法において、前記メインニューラルネットワーク及び前記サブニューラルネットワークをトレーニングさせるステップは、前記メインニューラルネットワークと前記サブニューラルネットワークを同時にトレーニングさせ得る。
【0022】
一実施形態に係る認識装置は、プロセッサを含み、前記少なくとも1つの命令語が前記プロセッサで実行されれば、前記プロセッサは、メインニューラルネットワーク及びサブニューラルネットワークに音声信号を提供し、前記サブニューラルネットワークを用いて、前記提供された音声信号を解釈することにより、スケーリングファクターを取得し、音声認識を行うメインニューラルネットワークで考慮する未来コンテキストの長さを前記スケーリングファクターに基づいて決定し、前記決定された未来コンテキストの長さが適用された前記メインニューラルネットワークを用いて、前記音声信号の認識結果を取得する。
【0023】
一実施形態に係る認識装置は、前記プロセッサによって実行されれば、前記プロセッサによって音声認識が提供され、前記スケーリングファクターを取得し、前記未来コンテキストの長さを決定し、前記認識結果を取得するようにする少なくとも1つの命令語を含むメモリをさらに含み得る。
【0024】
一実施形態に係る認識装置は、前記メインニューラルネットワーク及び前記サブニューラルネットワークのトレーニングされたパラメータそれぞれを含むメモリをさらに含み、前記プロセッサは、前記メインニューラルネットワーク及び前記サブニューラルネットワークが実行される場合、前記トレーニングされたパラメータそれぞれを前記メインニューラルネットワーク及び前記サブニューラルネットワークに適用させ得る。
【0025】
一実施形態に係る認識装置において、前記プロセッサは、前記サブニューラルネットワークを用いて前記音声信号が認識されるとき、前記メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示すスケーリングファクターを取得し得る。
【0026】
一実施形態に係る認識装置において、前記プロセッサは、前記サブニューラルネットワークによって解釈された前記音声信号に含まれたノイズ程度及び前記音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定されたスケーリングファクターを取得し得る。
【0027】
一実施形態に係る認識装置において、前記プロセッサは、前記サブニューラルネットワークによって相対的に低く解釈された音声信号の明確性に基づいて予め決定された閾値よりも大きい値を有する成分が多くなるように前記スケーリングファクターを決定し得る。
【0028】
一実施形態に係る認識装置において、前記プロセッサは、前記スケーリングファクターに含まれた成分の値と予め決定された閾値との間の比較によって前記未来コンテキストの長さを決定し得る。
【0029】
一実施形態に係る認識装置において、前記認識装置は、電子装置であり、前記オーディオをキャプチャーする音声受信機をさらに含み、前記プロセッサは、前記キャプチャーされたオーディオから前記音声信号を抽出し、前記プロセッサは、前記認識結果に基づいて解釈された命令に基づいて前記認識装置の非音声認識機能を制御し得る。
【0030】
一実施形態に係る電子装置は、オーディオをキャプチャーする音声受信機と、メインニューラルネットワークのトレーニングされたパラメータ及びサブニューラルネットワークのトレーニングされたパラメータを含むメモリと、前記オーディオから取得された音声信号が入力される前記サブニューラルネットワークを実現させるために前記サブニューラルネットワークのトレーニングされたパラメータを適用して、前記メインニューラルネットワークを実現させるために前記メインニューラルネットワークのトレーニングされたパラメータを適用することにより、前記サブニューラルネットワークから取得された結果に応じて決定された未来コンテキストに基づいて前記音声信号を認識するプロセッサとを含み、前記メインニューラルネットワークは、過去コンテキストを考慮するリカレントレイヤを含む。
【0031】
一実施形態に係る電子装置は、前記サブニューラルネットワークのトレーニングされたパラメータは、前記サブニューラルネットワークによって前記音声信号の明確性が解釈され、前記サブニューラルネットワークによって前記明確性が相対的に低く解釈された場合、前記メインニューラルネットワークの前記未来コンテキストの長さは大きく決定され、前記サブニューラルネットワークによって前記明確性が相対的に大きく解釈された場合、前記メインニューラルネットワークの前記未来コンテキストの長さは小さく決定され得る。
【0032】
一実施形態に係る電子装置において、前記プロセッサは前記音声信号の認識結果を表示し得る。
【発明の効果】
【0033】
本発明によると、ニューラルネットワークを用いた認識方法及び装置、並びに前記ニューラルネットワークをトレーニングする方法及び装置を提供することができる。
【図面の簡単な説明】
【0034】
【
図1】一実施形態に係る認識装置で音声信号が認識される過程を示す図である。
【
図2】一実施形態によりメインニューラルネットワークを示す図である。
【
図3】一実施形態によりスケーリングファクターがメインニューラルネットワークに適用される過程を示す図である。
【
図4】一実施形態によりサブニューラルネットワークを示す図である。
【
図5】一実施形態によりスケーリングファクターに基づいて未来コンテキストの長さが決定される過程を示す図である。
【
図6】一実施形態によりメインニューラルネットワーク及びサブニューラルネットワークをトレーニングする過程を示す図である。
【
図7】一実施形態によりスケーリングファクターを説明するための図である。
【
図8】一実施形態によりスケーリングファクターを決定する過程を示す図である。
【
図10】一実施形態に係るトレーニング方法を示す図である。
【
図11】一実施形態に係る認識装置を示す図である。
【
図12】一実施形態に係るトレーニング装置を示す図である。
【
図13】一実施形態に係る電子装置を示す図である。
【発明を実施するための形態】
【0035】
本明細書に開示されている本発明の概念による実施形態に対して特定の構造的又は機能的な説明は、単に本発明の概念による実施形態を説明するための目的として例示されたものであり、本発明の概念による実施形態は様々な形態で実施され、本明細書に説明された実施形態に限定されることはない。
【0036】
第1又は第2などの用語を複数の構成要素を説明するために用いることができるが、このような用語は1つの構成要素を他の構成要素から区別する目的としてのみ解釈されなければならない。例えば、第1構成要素は第2構成要素と命名することができ、同様に第2構成要素は第1構成要素にも命名することができる。
【0037】
単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【0038】
異なるように定義さがれない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【0039】
下記で説明される実施形態は、音声を認識したり音声認識のためのニューラルネットワークをトレーニングさせるために使用される。実施形態は、パーソナルコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン、スマート家電機器、知能型自動車、キオスク、ウェアラブル装置などの様々な形態の製品に実現できる。例えば、実施形態は、スマートフォン、モバイル機器、スマートホームシステムなどでユーザの音声を認識したり、当該の装置でユーザの音声を認識するためのニューラルネットワークをトレーニングさせるために適用される。また、実施形態は、音声認識を通した装置制御にも適用される。以下、実施形態を添付する図面を参照しながら詳細に説明する。各図面に提示された同一の参照符号は同一の部材を示す。
【0040】
図1は、一実施形態に係る認識装置で音声信号が認識される過程を示す図である。
【0041】
図1を参照すると、一実施形態に係る認識装置100は、メインニューラルネットワーク110及びサブニューラルネットワーク120を含む。
【0042】
一実施形態に係る認識装置100は、メインニューラルネットワーク110及びサブニューラルネットワーク120を用いて音声信号を認識する装置として、例えば、下記で説明される少なくとも1つの動作のための命令語を格納するメモリ及び当該の命令語を実行するプロセッサを含む。例えば、例示的なメインニューラルネットワーク110及びサブニューラルネットワーク120の各構成要素は、認識装置100のメモリに格納されるものであって、認識装置100のプロセッサ又はプロセッシングエレメントによって読み出し及び実行されるハイパーパラメータ及びトレーニングされたパラメータ(例えば、トレーニングされた加重値)によってメインニューラルネットワーク110及びサブニューラルネットワーク120が構成され得る。
【0043】
一実施形態に係るメインニューラルネットワーク110及びサブニューラルネットワーク120は、複数のレイヤを含むニューラルネットワークであってもよい。複数のレイヤのそれぞれは複数のニューロンを含む。隣接するレイヤのニューロンはシナプスに接続される。学習によりシナプスには加重値が付与され、パラメータはこのような加重値を含む。
【0044】
ニューラルネットワークの複数のレイヤには、入力レイヤ、隠しレイヤ、及び出力レイヤが含まれている。例えば、入力レイヤは、トレーニング又は認識の対象となる入力を受信して隠しレイヤに伝達し、出力レイヤは、隠しレイヤのニューロンから受信した信号に基づいてニューラルネットワークの出力を生成する。隠しレイヤは、入力レイヤと出力レイヤとの間に位置する中間レイヤとして、入力レイヤによって伝達された学習データ又は認識の対象となるデータを予測しやすい値に変化し得る。
【0045】
一実施形態に係るメインニューラルネットワーク110は、入力された音声信号に対応する認識結果をスケーリングファクター(scaling factor)に基づいて出力する。音声信号は、ユーザ音声を含む信号として音声シーケンスに称してもよく、複数の音声フレームに区分する。ここで、フレームはウィンドウにも称してもよい。
【0046】
一実施形態に係るメインニューラルネットワーク110は、音響モデルを含む。音響モデルは、入力される音声信号の各フレームがどのような音素に近いかに関する情報を出力する。例えば、音響モデルは、入力される音声信号の各フレームの最も可能性の大きい音素を指示する情報を多次元ベクトル又は確率値などに提供する。音響モデルから出力される情報を用いて、入力された音声信号がどのような単語に近いか、又はどのような文章に近いかが確認できる。また、メインニューラルネットワーク110は、言語モデル及び/又はデコーダをさらに含む。言語モデルによって、入力された音声信号がどのような文章に近いかに関する情報が出力され得る。
【0047】
メインニューラルネットワーク110は、少なくとも1つのリカレントレイヤ及びルックアヘッド畳み込みレイヤを含み得る。ルックアヘッド畳み込みレイヤは、単方向リカレントニューラルネットワーク(Unidirectional Recurrent Neural Network;Unidirectional RNN)で一定の長さ(size)の未来コンテキストをさらに用いて出力を生成するレイヤを示す。言い換えれば、単方向リカレントニューラルネットワークにルックアヘッド畳み込みレイヤが適用されることで、過去コンテキストのみならず、未来コンテキストがメインニューラルネットワーク110で考慮され得る。ルックアヘッド畳み込みレイヤについては
図2を参照して後述する。
【0048】
メインニューラルネットワーク110で考慮される未来コンテキストの長さは、サブニューラルネットワーク120から受信した1つ以上のスケーリングファクターに基づいて決定される。例えば、メインニューラルネットワーク110は、現在フレーム又は時間に対する音素を予測したり推定するため、例えば、1つ以上の未来フレーム又は時間に対応する動的にリアルタイム選択された未来コンテキストの長さを考慮する。
【0049】
一実施形態に係るサブニューラルネットワーク120は、入力される音声信号に基づいてスケーリングファクターを決定する。サブニューラルネットワーク120は、リカレントニューラルネットワーク(RNN)、畳み込みニューラルネットワーク、又はディープニューラルネットワーク(DNN)を含む。
【0050】
一実施形態に係るスケーリングファクターは、音声信号が認識されるとき、メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示す。スケーリングファクターは、音声信号の明確性に基づいて決定される。例えば、スケーリングファクターは、音声信号に含まれたノイズ程度、及び音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定される。このようなスケーリングファクターに基づいて、メインニューラルネットワーク110で考慮される未来コンテキストの長さが決定される。
【0051】
例えば、サブニューラルネットワーク120によって音声信号に含まれたノイズが多い場合、又は、音声信号に含まれたユーザの発音が不正確なものとして解釈又は決定された場合、当該の音声信号を正確に認識するためには、より多くの未来コンテキストが動的に考慮される必要がある。一方、音声信号に含まれたノイズが少ない場合、又は、音声信号に含まれたユーザ発音が正確な場合、少ない未来コンテキストだけでも当該の音声信号を正確に認識することができる。
【0052】
このように、スケーリングファクターを用いてメインニューラルネットワーク110で考慮する未来コンテキストの長さを適応的に調整することで、音声認識を効率よく行うことができる。また、スケーリングファクターに基づいて最小の未来コンテキストだけを考慮して音声認識を行うことで、高い正確度で音声認識を実行しながらも反応速度を最大化することができる。
【0053】
図2は、一実施形態によりメインニューラルネットワークを示す図である。
【0054】
図2を参照すると、一実施形態に係るメインニューラルネットワーク110は、リカレントレイヤ111及びルックアヘッド畳み込みレイヤ113を含む。
図2には、説明の便宜のためにメインニューラルネットワーク110内に2つの隠しレイヤが図示されているが、メインニューラルネットワーク110には1つ以上の隠しレイヤが制限されることなく含まれてもよい。また、隠しレイヤには、1つ以上の隠しノードが制限されることなく含まれてもよい。
【0055】
メインニューラルネットワーク110で隣接するレイヤに属するノードはシナプスによって接続され、シナプスには、予めトレーニングされた加重値が付与される。
【0056】
一実施形態に係るリカレントレイヤ111は回帰ループを有し、
図2では説明の便宜のために、リカレントレイヤ111が広げられた又は展開された(unfolded)状態に図示されている。例えば、時点tのリカレントレイヤ111の出力x
tは時点t+1のリカレントレイヤ111に再び入力されることで、時点t+1で新しい出力x
t+1が出力される。
【0057】
一実施形態に係るルックアヘッド畳み込みレイヤ113は、所定の長さの未来コンテキストを考慮する。
図2では、説明の便宜のために未来コンテキストの長さτが2であると例示されている。
【0058】
言い換えれば、時点tのルックアヘッド畳み込みレイヤ113は、時点tのリカレントレイヤ111の出力xtのみならず、時点t+1、t+2のリカレントレイヤ111の出力xt+1、xt+2をさらに考慮して出力htを生成する。ここで、時点tのリカレントレイヤ111の出力xtには加重値ベクトルw0が適用され、時点t+1のリカレントレイヤ111の出力xt+1には加重値ベクトルw1が適用され、時点t+2のリカレントレイヤ111の出力xt+2には加重値ベクトルw2が適用される。
【0059】
ルックアヘッド畳み込みレイヤ113で考慮される未来時点におけるリカレントレイヤ111の出力を未来コンテキストと称し、ルックアヘッド畳み込みレイヤ113でカバーする未来時点の範囲を未来コンテキストの長さと称する。
【0060】
整理すれば、時点tのルックアヘッド畳み込みレイヤ113の出力htについて、下記のように示すことができる。
【0061】
【数1】
上記の数式(1)において、h
tは時点tにおけるルックアヘッド畳み込みレイヤ113の出力を示し、x
t+jは時点t+jにおけるリカレントレイヤ111の出力を示し、w
jは時点t+jにおけるリカレントレイヤ111の出力に適用される加重値ベクトルを示す。
【0062】
図3は、一実施形態によりスケーリングファクターがメインニューラルネットワークに適用される過程を示す図である。
【0063】
図3を参照すると、一実施形態に係るメインニューラルネットワーク110は、リカレントレイヤ111及びルックアヘッド畳み込みレイヤ113を含み、リカレントレイヤ111の出力にスケーリングファクターがさらに適用される。
【0064】
一実施形態に係るスケーリングファクターは、
図2を参照して説明した加重値ベクトルと共にリカレントレイヤ111の出力に適用される。例えば、時点tのリカレントレイヤ111の出力x
tには加重値ベクトルw
0のみならず、スケーリングファクター内の0次元成分α
0も適用され、ルックアヘッド畳み込みレイヤ113に伝達され得る。同様に、時点t+1のリカレントレイヤ111の出力x
t+1には加重値ベクトルw
1とスケーリングファクター内の1次元成分α
1が全て適用され、時点t+2のリカレントレイヤ111の出力x
t+2には加重値ベクトルw
2とスケーリングファクター内の2次元成分α
2が全て適用されて、ルックアヘッド畳み込みレイヤ113に伝達される。
【0065】
整理すれば、スケーリングファクターが適用された時点tのルックアヘッド畳み込みレイヤ113の出力htについては、下記のように示すことができる。
【0066】
【数2】
上記の数式(2)において、α
jは時点t+jにおけるリカレントレイヤ111の出力に適用されるスケーリングファクター内のj次元成分を示す。
【0067】
スケーリングファクターを用いてルックアヘッド畳み込みレイヤ113で考慮する未来コンテキストの長さを調整する過程については、
図5を参照して説明する。
【0068】
図4は、一実施形態によりサブニューラルネットワークを示す図である。
【0069】
図4を参照すると、一実施形態によりサブニューラルネットワーク120でスケーリングファクター410が決定される例示が示されている。
図4では、説明の便宜のためにサブニューラルネットワーク120内の1つの隠しレイヤが図示されているが、サブニューラルネットワーク120には1つ以上の隠しレイヤが制限されることなく含まれてもよい。また、隠しレイヤは、1つ以上の隠しノードを制限されることなく含まれてもよい。
【0070】
サブニューラルネットワーク120で隣接するレイヤに属するノードは、シナプスによって接続され、シナプスには予めトレーニングされた加重値が付与される。
【0071】
一実施形態に係るサブニューラルネットワーク120は、
図3を参照して説明したメインニューラルネットワーク110と区別されるニューラルネットワークとして、例えば、リカレントニューラルネットワーク、畳み込みニューラルネットワーク、又は、一般的なディープニューラルネットワークであり得る。例えば、サブニューラルネットワーク120は、音声信号に対するコンテキストモデルであり得る。
【0072】
サブニューラルネットワーク120は、認識の対象となる入力を受信して当該の入力に対応するスケーリングファクター410を出力する。例えば、サブニューラルネットワーク120は、認識の対象となる音声信号を受信し、当該の音声信号に対するスケーリングファクター410を出力する。
【0073】
一実施形態に係るスケーリングファクター410は、
図3に示すメインニューラルネットワーク110のリカレントレイヤ111からルックアヘッド畳み込みレイヤ113に接続される加重値ベクトルをスケーリングする要素として、n次元ベクトルを含む。
図4では、説明の便宜のためにスケーリングファクター410が合計3次元ベクトルに該当するものと図示したが、スケーリングファクター410は制限されることなく1つ以上の次元ベクトルを有し得る。
【0074】
一実施形態に係るスケーリングファクター410内の各成分は、当該の成分に対応するコンテキストの重要度を示す。例えば、スケーリングファクター410内の0次元成分α0は、時点tのリカレントレイヤ111の出力に適用されることにより、時点tのコンテキストに対する重要度を示す。同様に、1次元成分α1は、時点t+1のリカレントレイヤ111の出力に適用されて時点t+1のコンテキストに対する重要度を示し、2次元成分α2は、時点t+2のリカレントレイヤ111の出力に適用されて時点t+2のコンテキストに対する重要度を示す。
【0075】
サブニューラルネットワーク120から出力されるスケーリングファクター410は、音声信号が認識されるとき、メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示す。スケーリングファクター410は、認識の対象となる音声信号の明確性に基づいて決定される。例えば、スケーリングファクター410は、音声信号に含まれたノイズ程度及び音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定される。
【0076】
もし、音声信号に含まれたノイズ程度が大きい場合、又は、音声信号に含まれたユーザ発音の正確度が低い場合(例えば、ユーザが明確に発音せず、発音を曖昧にする場合)、スケーリングファクター410は、予め決定された閾値よりも大きい値を有する成分が多くなるよう決定される。例えば、音声信号の明確性が低いほど、スケーリングファクター410に含まれた低次元成分から順次予め決定された閾値よりも大きい値を有するよう決定される。したがって、音声信号の明確性が極めて低い場合、スケーリングファクター410に含まれた低次元成分のみならず、高次元成分も予め決定された閾値よりも大きい値を有するよう決定される。
【0077】
反対に、音声信号に含まれたノイズ程度が小さい場合、又は、音声信号に含まれたユーザ発音の正確度が高い場合、スケーリングファクター410は予め決定された閾値よりも大きい値を有する成分が少なくなるように決定される。例えば、音声信号の明確性が高いほど、スケーリングファクター410に含まれた高次元成分から順次予め決定された閾値よりも小さい値を有するよう決定される。したがって、音声信号の明確性が相当高い場合、スケーリングファクター410に含まれた高次元成分のみならず、低次元成分も予め決定された閾値よりも小さい値を有するよう決定される。ただし、このような場合にも、スケーリングファクター410の0次元成分α0は、予め決定された閾値よりも大きい値を有するように決定され、同じ時点のコンテキストが考慮されるようにする必要がある。
【0078】
図5は、一実施形態によりスケーリングファクターに基づいて未来コンテキストの長さが決定される過程を示す図である。
【0079】
図5を参照すると、一実施形態に係るメインニューラルネットワーク110に含まれたルックアヘッド畳み込みレイヤ113の未来コンテキストの長さがスケーリングファクターに基づいて調整される例示が示されている。
【0080】
図4に示すサブニューラルネットワーク120で決定されたスケーリングファクターの成分を予め決定された閾値εと比較することで、メインニューラルネットワーク110に適用される未来コンテキストの長さを決定する。
【0081】
例えば、スケーリングファクターに含まれた成分のうち、2次元成分α2が予め決定された閾値εよりも低い値を有し、残りの成分α0,α1が全て閾値εよりも大きい値を有する場合、未来コンテキストの長さが1に決定され、時点tのルックアヘッド畳み込みレイヤ113の出力を決定するとき、時点t+2のリカレントレイヤ111の出力が排除される。
【0082】
このように、予め決定された閾値εよりも大きい値を有するスケーリングファクターの成分のうち、最も高い次元の成分に基づいて未来コンテキストの長さが決定され得る。例えば、認識装置は、スケーリングファクターに含まれた複数の成分を高次元成分から順に予め決定された閾値εと比較し、予め決定された閾値εよりも大きい値を有するものとして最初に確認された成分の次元に基づいて、未来コンテキストの長さが決定され得る。
【0083】
一実施形態に係る予め決定された閾値εは、未来コンテキストの長さを決定するために基準となる値として、試験的に予め決定される。例えば、予め決定された閾値εは、メインニューラルネットワーク110のトレーニング過程のうち決定され、又はトレーニング過程より前もって決定されてもよい。
【0084】
認識装置は、スケーリングファクターに基づいてメインニューラルネットワーク110に含まれたルックアヘッド畳み込みレイヤ113の未来コンテキストの長さを適応的に調整することで、最小の未来コンテキストを用いて高い正確度及び迅速な反応速度を期待することができる。
【0085】
図6は、一実施形態によりメインニューラルネットワーク及びサブニューラルネットワークをトレーニングする過程を示す図である。
【0086】
図6を参照すると、一実施形態に係るメインニューラルネットワーク及びサブニューラルネットワークは同時にトレーニングされてもよい。
【0087】
一実施形態に係るメインニューラルネットワーク及びサブニューラルネットワークは、トレーニングデータに基づいてトレーニングされる。トレーニングデータは、トレーニング入力及びトレーニング出力を含む。トレーニング出力は、トレーニング入力にマッピングされた出力として、例えば、トレーニング入力から出力されなければならないレーベル(label)であり得る。例えば、音声認識においてトレーニング入力は音声信号であり、トレーニング出力は当該の音声信号が示す音素情報である。
【0088】
メインニューラルネットワーク及びサブニューラルネットワークは、バックプロパゲーション学習(back propagation learning)610によってメインニューラルネットワーク及びサブニューラルネットワークのレイヤ間の接続加重値、ノードの状態パラメータなどをトレーニングさせ得る。
【0089】
例えば、メインニューラルネットワーク及びサブニューラルネットワークは、監督学習によってトレーニングされる。監督学習とは、トレーニング入力とそれに対応するトレーニング出力を共に神経網に入力し、トレーニング入力に対応するトレーニング出力が出力されるよう接続線の接続加重値をアップデートする方法である。
【0090】
バックプロパゲーション学習610は、与えられたトレーニングデータに対して前方算出で損失を推定した後、出力レイヤから始まって隠しレイヤと入力レイヤへの逆方向に推定した損失を伝搬し、損失を減らす方向に接続加重値を調整する方法である。神経網の認識のための処理は、入力レイヤ、隠しレイヤ、出力レイヤの順に行われるが、バックプロパゲーション学習610で接続加重値のアップデート方向は、出力レイヤ、隠しレイヤ、入力レイヤの順に行われる。
【0091】
ここで、サブニューラルネットワークで出力されたスケーリングファクターに基づいてルックアヘッド畳み込みレイヤの未来コンテキストの長さが調整された状態でバックプロパゲーション学習610が行われる。例えば、スケーリングファクターの2次元成分α2が予め決定された閾値よりも低い値を有し、1次元成分α1が予め決定された閾値よりも大きい値を有する場合、ルックアヘッド畳み込みレイヤの未来コンテキストの長さは1に調整されてトレーニングが実行される。そのため、認識を行うメインニューラルネットワークのみならず、スケーリングファクターを出力するサブニューラルネットワークも共に学習され得る。
【0092】
一実施形態に係るサブニューラルネットワークは、出力されるスケーリングファクターの各成分が0に近い値を有するよう正規化によりトレーニングされる。そのため、スケーリングファクターに含まれた複数の成分のうち高次元成分であるほど、0に近い値を有するようサブニューラルネットワークがトレーニングされる。
【0093】
図7は、一実施形態によりスケーリングファクターを説明するための図である。
【0094】
図7を参照すると、一実施形態に係る第1スケーリングファクター710及び第2スケーリングファクター720が示されている。
【0095】
第1スケーリングファクター710及び第2スケーリングファクター720は、互いに異なる音声信号に対応してサブニューラルネットワークで出力されたn次元ベクトルを有する。例えば、第1スケーリングファクター710は、第2スケーリングファクター720よりも高い明確性を有する音声信号に対応する。音声信号の明確性が高いことは当該の音声信号に含まれたノイズ程度が小さいか、当該の音声信号に含まれたユーザ発音の正確度が高いことを意味し、この場合、未来コンテキストを少なく考慮しても高い正確度で音声認識を実行することができる。
【0096】
このように音声信号の明確性に基づいて決定された第1スケーリングファクター710は、第2スケーリングファクター720よりも大体的に小さい値を有する。第1スケーリングファクター710と第2スケーリングファクター720は、予め決定された閾値εとの比較によって、メインニューラルネットワーク内のルックアヘッド畳み込みレイヤで考慮する未来コンテキストの長さが決定され得る。
【0097】
例示的に示された
図7に示す第1スケーリングファクター710の場合、a+1次元成分は予め決定された閾値εよりも低い値を有し、1次元成分からa次元成分は予め決定された閾値εよりも大きい値を有する。したがって、第1スケーリングファクター710の場合、未来コンテキストの長さはa-1に決定される。また、第2スケーリングファクター720の場合、b+1次元成分は予め決定された閾値εよりも低い値を有し、1次元成分からb次元成分は予め決定された閾値εよりも大きい値を有する。したがって、第2スケーリングファクター720の場合、未来コンテキストの長さはb-1に決定され得る。
【0098】
図8は、一実施形態によりスケーリングファクターを決定する過程を示す図である。
【0099】
図8を参照すると、一実施形態に係る音声信号のウィンドウを基準としてスケーリングファクター820が決定される例示が示されている。
【0100】
一実施形態に係る音声信号は、連続した一連のシーケンスデータとして、所定の長さのウィンドウに区分されて認識される。ウィンドウ長さは、設計に応じて相違に設定されてもよい。例えば、音声信号が入力されれば、これを200msecのウィンドウに分割して音声認識が実行され得る。
【0101】
このようなウィンドウを基準としてサブニューラルネットワークを介してスケーリングファクター820も決定されるが、このようなスケーリングファクター820はウィンドウごとに決定される。音声信号が所定のウィンドウの大きさの連続的なデータで前処理されたキャプチャーされた音声であるか否か、又は音声信号が所定のウィンドウの大きさの連続的なデータのトレーニングデータであるか否かに応じて、当該のウィンドウで決定されたスケーリングファクター820によりルックアヘッド畳み込みレイヤの未来コンテキストの長さを調整し、当該のウィンドウに対する認識又はトレーニングが実行されることができる。
【0102】
他の一実施形態に係るスケーリングファクター820は、認識の対象となる音声信号の最初のウィンドウ810に対して決定され、最初のウィンドウ810に対して決定されたスケーリングファクター820に基づいて調整された未来コンテキストの長さを有するルックアヘッド畳み込みレイヤを用いて全体ウィンドウに対する認識が実行されてもよい。これは、同じ音声信号内ではノイズ程度やユーザ発音の正確度が大きく変わらないことに着眼したものである。
【0103】
例えば、反応速度に相対的に敏感でないトレーニングの場合、ウィンドウごとにスケーリングファクター820を決定するが、反応速度に敏感な認識の場合、音声信号の最初のウィンドウ810に対して決定したスケーリングファクター820を用いて全体ウィンドウに対して認識を行う。
【0104】
【0105】
図9を参照すると、一実施形態に係る認識装置のプロセッサで実行される認識方法が示されている。
【0106】
ステップS910において、認識装置は、サブニューラルネットワークを用いて音声信号からスケーリングファクターを取得する。スケーリングファクターは、音声信号が認識されるとき、メインニューラルネットワークで考慮される未来コンテキストの時点ごとの重要度を示す。例えば、スケーリングファクターは、音声信号に含まれたノイズ程度及び音声信号に含まれたユーザ発音の正確度のうち少なくとも1つに基づいて決定される。スケーリングファクターはτ次元ベクトルを含む。
【0107】
ステップS920において、認識装置は、スケーリングファクター内の最も高い次元成分から先に考慮される。認識装置は、考慮しようとするj次元をτに設定する。
【0108】
ステップS930において、認識装置は、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さいか否かを判断する。
【0109】
もし、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さい場合、ステップS940において、認識装置は、メインニューラルネットワークから加重値ベクトルwjを除去する。加重値ベクトルwjは、時点tのルックアヘッド畳み込みレイヤに伝えられる時点t+jのリカレントレイヤの出力に適用される加重値であり得る。言い換えれば、メインニューラルネットワークから加重値ベクトルwjを除去することにより、時点t+jの未来コンテキストは考慮から除外され得る。
【0110】
ステップS950において、認識装置は次に考慮する次元をステップS930で判断した次元よりも一次元低くして設定する。
【0111】
そして、ステップS930において、認識装置は、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さいか否かを判断する。予め決定された閾値εよりも大きい値を有するj次元成分αjが確認されるまで、ステップS930~ステップS950が繰り返して実行される。
【0112】
もし、ステップS930でスケーリングファクターのj次元成分αjが予め決定された閾値εよりも大きい場合、ステップS960において、認識装置は、メインニューラルネットワークに含まれたルックアヘッド畳み込みレイヤの未来コンテキストの長さをjに調整する。
【0113】
ステップS970において、認識装置は、未来コンテキストの長さがjに調整された畳み込みレイヤを含むメインニューラルネットワークを用いて音声信号を認識する。
【0114】
図9に示された各ステップには
図1~
図8を参照して前述した事項が同様に適用され得るため、より詳細な説明は省略する。
【0115】
図10は、一実施形態に係るトレーニング方法を示す図である。
【0116】
図10を参照すると、一実施形態に係るトレーニング装置のプロセッサで実行されるトレーニング方法が示されている。
【0117】
ステップS1010において、トレーニング装置は、サブニューラルネットワークを用いてトレーニング入力からスケーリングファクターを取得する。
【0118】
ステップS1020において、トレーニング装置は、スケーリングファクター内の最も高い次元成分から先に考慮される。トレーニング装置は、考慮しようとするj次元をτに設定する。
【0119】
ステップS1030において、トレーニング装置は、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さいか否かを判断する。
【0120】
もし、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さい場合、ステップS1040において、トレーニング装置は、メインニューラルネットワークから加重値ベクトルwjを除去する。加重値ベクトルwjは、時点tのルックアヘッド畳み込みレイヤに伝えられる時点t+jのリカレントレイヤの出力に適用される加重値である。言い換えれば、メインニューラルネットワークから加重値ベクトルwjを除去することにより、時点t+jの未来コンテキストは考慮から除外される。
【0121】
ステップS1050において、トレーニング装置は、次に考慮する次元をステップS1030で判断した次元よりも一次元低くして設定する。
【0122】
そして、ステップS1030においてトレーニング装置は、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも小さいか否かを判断する。予め決定された閾値εよりも大きい値を有するj次元成分αjが確認されるまで、ステップS1030~ステップS1050が繰り返して実行される。
【0123】
もし、ステップS1030で、スケーリングファクターのj次元成分αjが予め決定された閾値εよりも大きい場合、トレーニング装置は、メインニューラルネットワークに含まれたルックアヘッド畳み込みレイヤの未来コンテキストの長さをjに調整する。
【0124】
ステップS1060において、トレーニング装置は、未来コンテキストの長さがjに調整された畳み込みレイヤを含むメインニューラルネットワークとサブニューラルネットワークをトレーニングさせる。例えば、トレーニング装置は、未来コンテキストの長さがjに調整された畳み込みレイヤを含むメインニューラルネットワークとサブニューラルネットワークを用いてトレーニング入力からトレーニング出力が出力されるよう、メインニューラルネットワークとサブニューラルネットワークを同時にトレーニングさせ得る。
【0125】
図10に示された各ステップには、
図1~
図9を参照して前述した事項が同様に適用され得るため、より詳細な説明は省略する。
【0126】
図11は、一実施形態に係る認識装置を示す図である。
【0127】
図11を参照すると、一実施形態に係る認識装置1100はプロセッサ1110及びメモリ1120を含む。
【0128】
メモリ1120は先に説明したメインニューラルネットワーク1121及びサブニューラルネットワーク1123のパラメータを格納する。また、メモリ1120は、コンピュータで読み出し可能な命令語を含む。プロセッサ1110は、メモリ1120に格納された命令語がプロセッサ1110で実行されることにより、先に言及された動作を行う。メモリ1120は、揮発性メモリ又は不揮発性メモリであり得る。
【0129】
プロセッサ1110は、メモリ1120でメインニューラルネットワーク1121及びサブニューラルネットワーク1123に関するデータを取得し、メインニューラルネットワーク1121及びサブニューラルネットワーク1123に関する動作を処理する。
【0130】
一実施形態に係るプロセッサ1110は、音声信号が入力されたサブニューラルネットワーク1123からスケーリングファクターを取得し、スケーリングファクターに基づいてメインニューラルネットワーク1121で考慮する未来コンテキストの長さを決定し、決定された未来コンテキストの長さが適用されたメインニューラルネットワーク1121に音声信号が入力されることで、メインニューラルネットワーク1121から出力される音声信号の認識結果を取得する。
【0131】
その他に、認識装置1100には前述された事項が適用することができ、より詳細な説明は省略する。
【0132】
図12は、一実施形態に係るトレーニング装置を示す図である。
【0133】
図12を参照すると、一実施形態に係るトレーニング装置1200はプロセッサ1210及びメモリ1220を含む。
【0134】
メモリ1220は、先に説明したメインニューラルネットワーク1221及びサブニューラルネットワーク1223のパラメータを格納する。また、メモリ1220はコンピュータで読み出し可能な命令語を含む。
【0135】
プロセッサ1210は、メモリ1220に格納された命令語がプロセッサ1210で実行されることにより、先に言及された動作を行う。プロセッサ1210は、メモリ1220でメインニューラルネットワーク1221及びサブニューラルネットワーク1223を取得する。メインニューラルネットワーク1221及びサブニューラルネットワーク1223の各トレーニングされたパラメータが最終決定されるまで、プロセッサ1210は、トレーニングデータ1201に基づいてメインニューラルネットワーク1221及びサブニューラルネットワーク1223をトレーニングさせ得る。
【0136】
トレーニングデータ1201は、トレーニング入力及びトレーニング出力を含む。トレーニング入力は、メインニューラルネットワーク1221及びサブニューラルネットワーク1223に入力される入力データであって、例えば、音声データを含む。トレーニング出力は、トレーニング入力にマッピングされたデータであって、例えば、トレーニング入力がメインニューラルネットワーク1221及びサブニューラルネットワーク1223に入力されることで、メインニューラルネットワーク1221で出力されなければならないレーベルであり得る。
【0137】
プロセッサ1210は、トレーニング入力からトレーニング出力が生成されるよう、メインニューラルネットワーク1221及びサブニューラルネットワーク1223をトレーニングさせる。メインニューラルネットワーク1221及びサブニューラルネットワーク1223を訓練させることは、メインニューラルネットワーク1221及びサブニューラルネットワーク1223のパラメータを訓練させること、メインニューラルネットワーク1221及びサブニューラルネットワーク1223を更新すること、あるいはメインニューラルネットワーク1221及びサブニューラルネットワーク1223のパラメータを更新することを含む。
【0138】
プロセッサ1210は、トレーニング入力が入力されたサブニューラルネットワーク1223からスケーリングファクターを取得し、スケーリングファクターに基づいてメインニューラルネットワーク1221で考慮する未来コンテキストの長さを決定する。そして、プロセッサ1210は、決定された未来コンテキストの長さが適用されたメインニューラルネットワーク1221にトレーニング入力が入力されることによって、メインニューラルネットワーク1221でトレーニング入力にマッピングされたトレーニング出力が出力されるよう、メインニューラルネットワーク1221及びサブニューラルネットワーク1223をトレーニングさせる。
【0139】
メインニューラルネットワーク1221は、サブニューラルネットワーク1223の出力(例えば、スケーリングファクター)に基づいて動作するため、メインニューラルネットワーク1221及びサブニューラルネットワーク1223は同時にトレーニングされ得る。
【0140】
その他に、トレーニング装置1200には前述された事項が適用することができ、より詳細な説明は省略する。
【0141】
図13は、一実施形態に係る電子装置を示す図である。
【0142】
図13を参照すると、一実施形態により音声認識装置が電子装置1300として図示されている。
【0143】
一実施形態によると、電子装置1300は、
図1に示す音声認識装置100及び/又は
図11に示す音声認識装置1100のような音声認識装置及び/又は
図12に示すトレーニング装置1200を含む。電子装置1300は、TVset、セットトップボックス、デスクトップコンピュータ、ラップトップコンピュータ、翻訳マシーン、スマートフォン、タブレットPC、スマートウォッチ、ウェアラブル装置、車両の電子制御装置など、電子装置1300によって音声認識されたユーザ命令を処理できる装置である。ただし、電子装置1300の実施形態がこれに制限されることなく、音声認識が適用される異なる電子装置にも適用可能である。
【0144】
図13によると、一実施形態に係る電子装置1300は、音声受信機1310、音声認識器1320、及びプロセッサ1330を含む。ここで、音声認識器1320は、
図1~
図12を参照して説明された音声認識装置及び/又はトレーニング装置に当該する。音声認識器1320は、前述した1つ以上のプロセッシング装置によって実現されるハードウェア、又は電子装置1300の他の動作を制御するように構成される前述した1つ以上のプロセッシング装置によって実現される。音声認識部1320により認識されたユーザの命令又はクエリに応答してユーザインターフェース動作が実行される。
【0145】
音声受信機1310は、マイクロホンによって入力されたユーザのオーディオ信号を受信する。又は、音声受信機1310は、対応する音声認識システムの別途の装置(例えば、無線又は有線マイクロホン、又は受信されたりキャプチャーされたオーディオを送信するコントローラなど)に該当する。オーディオ信号は、電子装置1300又はその他の電子装置を制御するための単語、構文文章、命令に関する信号である。また、受信又はキャプチャーされたオーディオに対する前処理は、受信又はキャプチャーされたアナログオーディオ信号をデジタル信号にコンバーティングする動作、デジタル信号を複数のオーディオフレーム、又はウィンドウに分割する動作、及びオーディオフレームを音声認識器1320に送信する動作を含む。格納されたオーディオ又は格納された前処理されたオーディオは、音声認識器1320に提供される。したがって、実施形態によってコンテキストモデル、音響モデル、言語モデル、及びデコーダが1つ以上の遠隔サーバとして実現され得る。例えば、音声認識器1320は遠隔サーバで構成され、電子装置1300はキャプチャーされたオーディオを送信し、(a)音響モデル、(b)音響モデル及び言語モデル、又は(c)デコーダの適切な出力を受信する。
【0146】
したがって、音声認識器1320は、音響モデル又は音響モデル及び言語モデルの結果をデコーダ又は次のレイヤに入力させ、デコーダの出力結果に基づいてオーディオ信号の最終認識結果を出力することができる。
【0147】
プロセッサ1330は、電子装置1300の追加的な動作を制御したり行う。プロセッサ1330は、音声認識器1320からリターンされた最終の認識結果に応答して電子装置1300の現在又は追加動作を制御する。例えば、プロセッサ1330は、ユーザから入力された音声の認識結果をテキスト形態にディスプレイ上に表示する。そのため、メッセージ又は文書作成が実行され得る。加えて、プロセッサ1330は、追加的な非音声認識動作を行ったり、電子装置1300に関する命令(例えば、電源オン/オフ、ボリューム制御、音楽選択など)を行う。認識装置1300は、認識結果をディスプレイ上に表示したり、音声的に出力する。インターフェース1340は、電子装置1300のスピーカ、1つ以上のユーザインターフェースを示す。例えば、インターフェース1340は、ディスプレイ、キーボード及び/又はタッチスクリーン、及び/又はその他の外部装置とデータをやり取りするための1つ以上の通信ハードウェアモジュールを示す。その他にも、様々なインターフェースが制限されることなく適用されてもよい。また、インターフェース1340は、音声認識器1320によって前処理されたオーディオ信号を生成するマイクロホンを示してもよい。
【0148】
図11に示すメモリ1120及び
図12に示すメモリ1220などのような電子装置1300のメモリは、コンテキストモデル、音響モデル、及び言語モデルなどを格納する。メモリは電子装置1300の1つ以上のプロセッサに、前述の動作を行わせる実行可能な命令語を含む。
【0149】
以上述した実施形態は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組合せで具現される。例えば、本実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ(digital signal processor)、マイクロコンピュータ、FPA(field programmable array)、PLU(programmable logic unit)、マイクロプロセッサー、又は命令(instruction)を実行して応答する異なる装置のように、1つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、オペレーティングシステム(OS)及びオペレーティングシステム上で実行される1つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は1つが使用されるものとして説明する場合もあるが、当該技術分野で通常の知識を有する者は、処理装置が複数の処理要素(processing element)及び/又は複数類型の処理要素を含むことが分かる。例えば、処理装置は、複数のプロセッサ又は1つのプロセッサ及び1つのコントローラを含む。また、並列プロセッサ(parallel processor)のような、他の処理構成も可能である。
【0150】
ソフトウェアは、コンピュータプログラム、コード、命令、又はこれらのうちの1つ以上の組合せを含み、希望通りに動作するように処理装置を構成し、独立的又は結合的に処理装置に命令する。ソフトウェア及び/又はデータは、処理装置によって解釈され、処理装置に命令又はデータを提供するためのあらゆる類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、或いは送信される信号波を介して永久的又は一時的に具現化される。ソフトウェアは、ネットワークに接続されたコンピュータシステム上に分散され、分散された方法で格納されるか又は実行される。ソフトウェア及びデータは1つ以上のコンピュータ読み取り可能な記録媒体に格納される。
【0151】
本実施形態による方法は、多様なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであり得る。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD-ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気-光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードのみならず、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明の動作を実行するために1つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【0152】
上述したように実施形態をたとえ限定された図面によって説明したが、当該技術分野で通常の知識を有する者であれば、前記に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順序で実行されたり、及び/又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組合わせられたり、他の構成要素又は均等物によって置き換えたり置換されても適切な結果を達成することができる。