(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-04
(45)【発行日】2022-03-14
(54)【発明の名称】複数の自然言語処理(NLP)タスクのための同時多タスクニューラルネットワークモデル
(51)【国際特許分類】
G06F 40/211 20200101AFI20220307BHJP
G06N 3/04 20060101ALI20220307BHJP
G06F 40/216 20200101ALI20220307BHJP
【FI】
G06F40/211
G06N3/04
G06F40/216
(21)【出願番号】P 2019523092
(86)(22)【出願日】2017-11-03
(86)【国際出願番号】 US2017060056
(87)【国際公開番号】W WO2018085728
(87)【国際公開日】2018-05-11
【審査請求日】2019-07-30
(32)【優先日】2016-11-03
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2016-11-04
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2017-01-31
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2017-01-31
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2017-01-31
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】506332063
【氏名又は名称】セールスフォース ドット コム インコーポレイティッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】橋本 和真
(72)【発明者】
【氏名】ション,カイミング
(72)【発明者】
【氏名】ソーチャー,リチャード
【審査官】長 由紀子
(56)【参考文献】
【文献】国際公開第2012/053175(WO,A1)
【文献】米国特許第08788441(US,B1)
【文献】坪井 祐太,品詞タグ付けニューラルネットワークの深層化,言語処理学会第21回年次大会 発表論文集[online],日本,言語処理学会,2015年03月09日,pp.912-915,Internet<URL:http://www.anlp.jp/proceedings/annual_meeting/2015/pdf_dir/P4-6.pdf>
【文献】清水 浩行, 佐藤 秀樹, 林 達也,ニューラルネットを利用した日本語係り受け解析,電子情報通信学会論文誌 情報・システムII-情報処理,日本,社団法人電子情報通信学会,1997年09月25日,第J80-D-II巻第9号,pp.2457-2465
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/20-58
G06N 3/04
(57)【特許請求の範囲】
【請求項1】
入力文内の単語を処理する多層ニューラルネットワークシステムであって、
言語階層に従って層がスタックされており、下位層への入力とともに、前記下位層の埋め込み出力を、上位層に提供するバイパス結合を含む長短期記憶(LSTM)文モジュールのスタックであって、スタックされている前記層は、品詞(POS)ラベル埋め込み層、前記POSラベル埋め込み層の上にあるチャンクラベル埋め込み層、及び、前記チャンクラベル埋め込み層の上にある係り受け親識別及び係り受け関係ラベル埋め込み層を含み、
前記POSラベル埋め込み層は、前記入力文内の前記単語を表現する単語埋め込みベクトルを処理して前記単語の各々についてPOSラベル埋め込みベクトル及びPOS状態ベクトルを生成する双方向LSTM及びPOSラベル分類器を含み、
前記チャンクラベル埋め込み層は、少なくとも前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記POS状態ベクトルとを処理してチャンクラベル埋め込みベクトル及びチャンク状態ベクトルを生成する双方向LSTM及びチャンクラベル分類器を含み、
前記係り受け親識別及び係り受け関係ラベル埋め込み層は、前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記チャンク状態ベクトルとを処理して前記入力文内の前記単語の各々の係り受け親を識別し、前記単語と前記単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成する双方向LSTM及び1つ以上の分類器を含む、
LSTM文モジュールのスタックと、
前記入力文内の前記単語についての前記係り受け親の識別及び前記係り受け関係ラベル又はラベル埋め込みを反映した結果を少なくとも出力する出力処理器と、
を有する、多層ニューラルネットワークシステム。
【請求項2】
前記POSラベル埋め込み層は、さらに、前記単語埋め込みベクトルに加えて、前記入力文内の前記単語を表現するn文字グラム埋め込みベクトルを処理し、
前記バイパス結合は、さらに、前記チャンクラベル埋め込み層及び前記係り受け親識別及び係り受け関係ラベル埋め込み層への入力として、前記n文字グラム埋め込みベクトルを提供する、請求項1に記載の多層ニューラルネットワークシステム。
【請求項3】
前記POSラベル埋め込み層は、さらに、前記POS状態ベクトルから、POSラベル確率質量ベクトルを生成し、前記POSラベル確率質量ベクトルから、前記POSラベル埋め込みベクトルを生成し、
前記チャンクラベル埋め込み層は、さらに、前記チャンク状態ベクトルから、チャンクラベル確率質量ベクトルを生成し、前記チャンクラベル確率質量ベクトルから、前記チャンクラベル埋め込みベクトルを生成し、
前記係り受け親識別及び係り受け関係ラベル埋め込み層は、さらに、
前記双方向LSTMにより生成された親ラベル状態ベクトルから、親ラベル確率質量ベクトルを生成し、
前記親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成し、
前記親ラベル状態ベクトル及び前記親ラベル埋め込みベクトルから、係り受け関係ラベル確率質量ベクトルを生成し、
前記係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する、請求項1又は2に記載の多層ニューラルネットワークシステム。
【請求項4】
スタックされている前記層は、
前記POSラベル埋め込み層の下にある単語埋め込み層
をさらに含み、
前記単語埋め込み層は、
認識されると、前記入力文内の前記単語を、単語埋め込みベクトルにより表現される単語埋め込み空間にマッピングし、
前記単語における異なるスケールの文字部分文字列を、文字埋め込み空間内の中間ベクトルにマッピングし、前記中間ベクトルを組み合わせて、前記単語について文字埋め込みベクトルを生成し、
前記POSラベル埋め込み層は、さらに、前記単語についての文字埋め込みベクトルを処理して、前記単語埋め込み空間に以前にマッピングされなかった単語を表現する、請求項1乃至3のいずれか一項に記載の多層ニューラルネットワークシステム。
【請求項5】
前記単語埋め込み層は、さらに、前記中間ベクトルを組み合わせて、前記文字埋め込みベクトルにおいて要素ごとの平均を生成する、請求項4に記載の多層ニューラルネットワークシステム。
【請求項6】
前記多層ニューラルネットワークシステムは、前記POSラベル埋め込み層、前記チャンクラベル埋め込み層、又は、前記係り受け親識別及び係り受け関係ラベル埋め込み層におけるビーム探索なく機能する、請求項1乃至5のいずれか一項に記載の多層ニューラルネットワークシステム。
【請求項7】
スタックされている前記層は、
前記係り受け親識別及び係り受け関係ラベル埋め込み層の上にあり、前記LSTM文モジュールのスタックを通じて処理された第1の文と第2の文とのペアに対して作用する意味関連性層であって、前記意味関連性層は、文入力モジュール、関連性ベクトル決定器、及び関連性分類器を含む、意味関連性層
をさらに含み、
前記文入力モジュールは、前記第1の文及び前記第2の文内の単語の各々についての単語埋め込みベクトルとPOSラベル埋め込みベクトルとチャンクラベル埋め込みベクトルと係り受け関係ラベル埋め込みとを含む、前記LSTM文モジュールのスタックを通じて処理された前記第1の文と前記第2の文とのペアを入力し、
前記関連性ベクトル決定器は、前記第1の文及び前記第2の文の各々の文レベルの表現を決定し、
前記第1の文及び前記第2の文内の前記単語の各々についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みとから、前記第1の文及び前記第2の文のそれぞれの文内の前記単語の各々について前方状態ベクトル及び後方状態ベクトルを決定する双方向LSTMと、
前記第1の文及び前記第2の文のそれぞれの文内の前記単語についての前記前方状態ベクトル及び前記後方状態ベクトルにわたって要素ごとに最大プーリングして、前記第1の文及び前記第2の文のそれぞれの文を表現する文レベルの状態ベクトルを生成するプーリングモジュールと、
前記文レベルの状態ベクトルを処理して前記文レベルの状態ベクトルから要素ごとの文関連性ベクトルを生成する特徴量抽出モジュールと、を含み、
前記関連性分類器は、前記要素ごとの文関連性ベクトルから前記第1の文と前記第2の文との間の関連性のカテゴリ分類を導出し、前記関連性のカテゴリ分類から関連性ラベル埋め込みベクトルが生成される、請求項1乃至6のいずれか一項に記載の多層ニューラルネットワークシステム。
【請求項8】
スタックされている前記層は、
前記意味関連性層の上にあり、含意ベクトル決定器及び含意分類器を含み、前記第1の文及び前記第2の文についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みと前記関連性ラベル埋め込みベクトルとを受け取る含意層
をさらに含み、
前記含意ベクトル決定器は、前記第1の文及び前記第2の文の各々の文レベルの表現を決定し、
前記第1の文及び前記第2の文内の前記単語の各々についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みと前記関連性ラベル埋め込みベクトルとから、前記第1の文及び前記第2の文のそれぞれの文内の前記単語の各々について前方状態ベクトル及び後方状態ベクトルを決定する双方向LSTMと、
前記第1の文及び前記第2の文のそれぞれの文内の前記単語についての該前方状態ベクトル及び該後方状態ベクトルにわたって要素ごとに最大プーリングして、前記第1の文及び前記第2の文のそれぞれの文を表現する文レベルの状態ベクトルを生成するプーリングモジュールと、
前記文レベルの状態ベクトル間の要素ごとの差を計算して要素ごとの文レベルの含意ベクトルを生成する特徴量抽出モジュールと、を含み、
前記含意分類器は、前記要素ごとの文レベルの含意ベクトルから前記第1の文と前記第2の文との間の含意をカテゴリ分類する、請求項7に記載の多層ニューラルネットワークシステム。
【請求項9】
言語階層に従って層がスタックされている、長短期記憶(LSTM)文モジュールのスタックを用いて、入力文内の単語を処理する方法であって、
スタックされている前記層は、品詞(POS)ラベル埋め込み層、前記POSラベル埋め込み層の上にあるチャンクラベル埋め込み層、及び、前記チャンクラベル埋め込み層の上にある係り受け親識別及び係り受け関係ラベル埋め込み層を含み、
前記方法は、
バイパス結合を介して、下位層により使用された入力とともに、前記下位層からの埋め込み出力を、上位層に提供することと、
前記POSラベル埋め込み層において、双方向LSTMを適用して、前記入力文内の前記単語を表現する単語埋め込みベクトルを処理して前記単語の各々についてPOS状態ベクトルを生成し、POSラベル分類器を適用して、前記POS状態ベクトルを処理してPOSラベル埋め込みを生成することと、
前記チャンクラベル埋め込み層において、双方向LSTMを適用して、少なくとも前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記POS状態ベクトルとを処理してチャンク状態ベクトルを生成し、チャンクラベル分類器を適用して、前記チャンク状態ベクトルを処理してチャンクラベル埋め込みベクトルを生成することと、
前記係り受け親識別及び係り受け関係ラベル埋め込み層において、双方向LSTMを適用して、前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記チャンク状態ベクトルとを処理して親ラベル状態ベクトルを生成し、1つ以上の分類器を前記親ラベル状態ベクトルに適用して、前記入力文内の前記単語の各々の係り受け親を識別し、前記単語と前記単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成することと、
前記入力文内の前記単語についての前記係り受け関係ラベル又はラベル埋め込みを反映した結果を出力することと、
を含む、方法。
【請求項10】
前記POSラベル埋め込み層において、さらに、前記単語埋め込みベクトルに加えて、前記入力文内の前記単語を表現するn文字グラム埋め込みベクトルを処理すること
をさらに含み、
前記バイパス結合は、さらに、前記チャンクラベル埋め込み層と前記係り受け親識別及び係り受け関係ラベル埋め込み層とに、前記チャンクラベル埋め込み層と前記係り受け親識別及び係り受け関係ラベル埋め込み層とにおけるそれぞれの双方向LSTMへの入力として、前記n文字グラム埋め込みベクトルを提供する、請求項
9に記載の方法。
【請求項11】
前記POSラベル埋め込み層において、さらに、前記POS状態ベクトルのスケーリング正規化により、POSラベル確率質量ベクトルを生成し、前記POSラベル確率質量ベクトルから、前記POSラベル埋め込みベクトルを生成することと、
前記チャンクラベル埋め込み層において、さらに、前記チャンク状態ベクトルのスケーリング正規化により、チャンクラベル確率質量ベクトルを生成し、前記チャンクラベル確率質量ベクトルから、前記チャンクラベル埋め込みベクトルを生成することと、
前記係り受け親識別及び係り受け関係ラベル埋め込み層において、さらに、
前記双方向LSTMにより生成された親ラベル状態ベクトルの分類及びスケーリング正規化により、親ラベル確率質量ベクトルを生成することと、
前記親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成することと、
前記親ラベル状態ベクトル及び前記親ラベル埋め込みベクトルの分類及びスケーリング正規化により、係り受け関係ラベル確率質量ベクトルを生成することと、
前記係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成することと、
をさらに含む、請求項
9又は1
0に記載の方法。
【請求項12】
スタックされている前記層は、
前記POSラベル埋め込み層の下にあり、単語埋め込みモジュール及びn文字グラム埋め込みモジュールを含む単語埋め込み層
をさらに含み、
前記方法は、
前記単語埋め込みモジュールにおいて、認識されると、前記入力文内の前記単語を、単語埋め込みベクトルにより表現される単語埋め込み空間にマッピングすることと、
前記n文字グラム埋め込みモジュールにおいて、
前記単語の文字部分文字列を、部分文字列長の複数のスケールで処理することと、
各処理された文字部分文字列を、文字埋め込み空間内の位置を表現する中間ベクトルにマッピングすることと、
各一意な処理された文字部分文字列についての前記中間ベクトルを組み合わせて、前記単語の各々について文字埋め込みベクトルを生成することと、
をさらに含み、
前記単語埋め込み層は、さらに、前記n文字グラム埋め込みモジュールからの出力を処理して、前記単語埋め込み空間に以前にマッピングされなかった単語を表現する、請求項
9乃至1
1のいずれか一項に記載の方法。
【請求項13】
前記n文字グラム埋め込みモジュールは、前記中間ベクトルを組み合わせて、前記文字埋め込みベクトルにおいて要素ごとの平均を生成する、請求項1
2に記載の方法。
【請求項14】
スタックされている前記層は、
前記係り受け親識別及び係り受け関係ラベル埋め込み層の上にあり、関連性ベクトル決定器及び関連性分類器を含む意味関連性層
をさらに含み、
前記方法は、
前記意味関連性層において、請求項
9に記載の方法を通じて処理された第1の文と第2の文とのペアからの単語の各々についての単語埋め込みベクトル、POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みを受け取ることと、
前記関連性ベクトル決定器において、前記第1の文及び前記第2の文の各々の文レベルの表現を決定することであって、
双方向LSTMを適用して、前記第1の文及び前記第2の文内の前記単語の各々についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みとから、前記第1の文及び前記第2の文のそれぞれの文内の前記単語の各々について前方状態ベクトル及び後方状態ベクトルを決定することと、
前記第1の文及び前記第2の文の各々についての前記前方状態ベクトル及び前記後方状態ベクトルの要素ごとの最大値を決定することと、
前記前方状態ベクトル及び前記後方状態ベクトルの前記要素ごとの最大値から、要素ごとの文レベルの関連性ベクトルを計算することと、
を含む、決定することと、
前記関連性分類器において、前記要素ごとの文レベルの関連性ベクトルを処理して、前記第1の文と前記第2の文との間の関連性のカテゴリ分類を導出することと、
をさらに含む、請求項
9乃至1
3のいずれか一項に記載の方法。
【請求項15】
スタックされている前記層は、
前記意味関連性層の上にあり、含意ベクトル決定器及び含意分類器を含む含意層
をさらに含み、
前記方法は、
前記含意層において、前記第1の文及び前記第2の文についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みと関連性ラベル埋め込みとを受け取ることと、
前記含意ベクトル決定器において、前記第1の文及び前記第2の文の各々の文レベルの表現を決定することであって、
双方向LSTMを適用して、前記第1の文及び前記第2の文内の前記単語の各々についての前記単語埋め込みベクトルと前記POSラベル埋め込みベクトルと前記チャンクラベル埋め込みベクトルと前記係り受け関係ラベル埋め込みと前記関連性ラベル埋め込みとから、前記第1の文及び前記第2の文のそれぞれの文内の前記単語の各々について前方状態ベクトル及び後方状態ベクトルを決定することと、
前記第1の文及び前記第2の文の各々についての該前方状態ベクトル及び該後方状態ベクトルの要素ごとの最大値を決定することと、
前記前方状態ベクトル及び前記後方状態ベクトルの前記要素ごとの最大値から、要素ごとの文レベルの含意ベクトルを決定することと、
を含む、決定することと、
前記含意分類器において、前記文レベルの含意ベクトルを処理して、前記第1の文と前記第2の文との間の含意のカテゴリ分類を導出することと、
をさらに含む、請求項1
4に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
開示されている技術は、一般に、深層ニューラルネットワークを用いた自然言語処理(NLP)のためのアーキテクチャに関し、詳細には、エンドツーエンドのトレーニング可能な同時多タスクニューラルネットワークモデルを用いたマルチタスク学習に関する。本アーキテクチャは、他の多層分析フレームワーク及びタスクに拡張可能である。
【0002】
本出願は、2016年11月3日に出願された米国仮特許出願第62/417,269号「JOINT MANY-TASK MODEL(同時多タスクモデル)」(代理人案件番号SALE 1182-1/1948PROV1)の利益を主張する。この優先権仮出願は、全ての目的のために参照により本明細書に組み込まれる。この優先権仮出願は、発明者の研究のさらなる詳細を提供する技術論文を含む。
本出願は、2016年11月4日に出願された米国仮特許出願第62/418,070号「JOINT MANY-TASK MODEL(同時多タスクモデル)」(代理人案件番号SALE 1182-2/1948PROV2)の利益を主張する。この優先権仮出願は、全ての目的のために参照により本明細書に組み込まれる。この優先権仮出願は、発明者の研究のさらなる詳細を提供する技術論文を含む。
本出願は、2017年1月31日に出願された米国特許出願第15/421,407号「JOINT MANY-TASK NEURAL NETWORK MODEL FOR MULTIPLE NATURAL LANGUAGE PROCESSING (NLP) TASKS(複数の自然言語処理(NLP)タスクのための同時多タスクニューラルネットワークモデル)」(代理人案件番号SALE 1182-3/1948US1)の利益を主張する。この優先権出願は、全ての目的のために参照により本明細書に組み込まれる。
本出願は、2017年1月31日に出願された米国特許出願第15/421,424号「DEEP NEURAL NETWORK MODEL FOR PROCESSING DATA THROUGH MUTLIPLE LINGUISTIC TASK HIERARCHIES(複数の言語タスク階層を通じてデータを処理するための深層ニューラルネットワークモデル)」(代理人案件番号SALE 1182-4/1948US2)の利益を主張する。この優先権出願は、全ての目的のために参照により本明細書に組み込まれる。
本出願は、2017年1月31日に出願された米国特許出願第15/421,431号「TRAINING A JOINT MANY-TASK NEURAL NETWORK MODEL USING SUCCESSIVE REGULARIZATION(逐次正則化を用いた同時多タスクニューラルネットワークモデルのトレーニング)」(代理人案件番号SALE 1182-5/1948US3)の利益を主張する。この優先権出願は、全ての目的のために参照により本明細書に組み込まれる。
【背景技術】
【0003】
このセクションにおいて論じられている主題は、単にこのセクションにおいて述べられている結果として、従来技術であるとみなされるべきではない。同様に、このセクションにおいて述べられている又は背景として提供されている主題に関連付けられている問題は、従来技術において以前に認識されているとみなされるべきではない。このセクションにおける主題は、単に、特許請求される技術の実施形態に対応し得る異なるアプローチを表す。
【0004】
転移及びマルチタスク学習は、従来、単一のソース-ターゲットペア又は非常に少ない類似するタスクのいずれかにフォーカスしていた。理想的には、形態素、構文、及び意味という言語レベルは、単一のモデルにおいてトレーニングされることにより、互いの利益になるであろう。開示されている技術は、単一のエンドツーエンドモデルにおいてますます深くなる層を使用して、ますます複雑化している様々な自然言語処理(NLP)タスクを解決するための、いわゆる「同時多タスクニューラルネットワークモデル」を提供する。このモデルは、言語階層を考慮し、単語表現を全てのモデル層に直接結合し、下位タスクにおける予測を明示的に用い、壊滅的忘却を防ぐためのいわゆる「逐次正則化」技術を適用することにより、逐次トレーニングされる。下位レベルモデル層の3つの例は、品詞(POS)タグ付け層、チャンキング層、及び係り受け解析層である。上位レベルモデル層の2つの例は、意味関連性層及びテキスト含意層である。このモデルは、チャンキング、係り受け解析、意味関連性、及びテキスト含意に関する最高水準の結果を実現している。
【図面の簡単な説明】
【0005】
図面において、同様の参照符号は、一般に、異なる図を通じて、同様の部分を指す。また、図面は、必ずしも縮尺通りではなく、代わりに、概して、開示されている技術の原理を示すことに対して強調がなされている。以下の説明において、開示されている技術の様々な実施形態が、図面を参照して説明される。
【
図1A】連続する層において、ますます複雑化しているNLPタスクを実行する同時多タスクニューラルネットワークモデルの態様を示す図。
【
図1B】同時多タスクニューラルネットワークモデルを実現するために使用され得る様々なモジュールを示す図。
【
図1C】同時多タスクニューラルネットワークモデルを実現するために使用され得る様々なモジュールを示す図。
【
図2A】入力単語、特に未知の単語、をロバストに符号化するために本出願において使用される同時埋め込み技術を示す図。
【
図2B】文字nグラム埋め込みの使用が未知の単語の処理の向上をもたらすことを実証する様々な表を示す図。
【
図4A】同時多タスクニューラルネットワークモデルのPOS層の動作の一実施形態を示す図。
【
図4B】同時多タスクニューラルネットワークモデルのPOSタグ付けの結果を示す表を含む図。
【
図5A】同時多タスクニューラルネットワークモデルのチャンキング層の動作の一実施形態を示す図。
【
図5B】同時多タスクニューラルネットワークモデルのチャンキングの結果を示す表を含む図。
【
図6A】係り受け解析層の動作の一実施形態を示す図。
【
図6B】係り受け解析層のアテンション符号化器の動作の一実施形態を示す図。
【
図6C】係り受け解析層のアテンション符号化器の動作の一実施形態を示す図。
【
図6D】係り受け解析層のアテンション符号化器の動作の一実施形態を示す図。
【
図6E】係り受け解析層のアテンション符号化器の動作の一実施形態を示す図。
【
図6F】係り受け解析層のアテンション符号化器の動作の一実施形態を示す図。
【
図6G】係り受け解析層の係り受け関係ラベル分類器の動作の一実施形態を示す図。
【
図6H】モデルが係り受け解析を適用する2つの例示的な文を示す図。
【
図6I】モデルの係り受け解析層の結果を示す表を含む図。
【
図7B】意味関連性タスクの結果を示す表を含む図。
【
図9A】分析階層に従って少なくとも3つの層がスタックされているスタック型LSTM系列処理器をトレーニングする一実施形態を示す図。
【
図9B】「逐次正則化」技術の有効性を実証する表を含む図。
【
図10】5つの異なるNLPタスクに関するテストセットの結果を示す表を含む図。
【
図11】同時多タスクニューラルネットワークモデルを実現するために使用され得るコンピュータシステムの簡略化されたブロック図。
【発明を実施するための形態】
【0006】
詳細な説明
以下の説明は、当業者が開示されている技術を製造及び使用することを可能にするように提示されており、特定の用途及びその要件の文脈において提供されている。開示されている技術の主旨及び範囲から逸脱することなく、開示されている実施形態に対する様々な変更が、当業者には容易に明らかであり、本開示において規定されている一般的な原理は、他の実施形態及び用途にも適用可能である。したがって、開示されている技術は、例示されている実施形態に限定されるよう意図されるものではなく、本出願において開示されている原理及び特徴と整合する最も広い範囲に従うべきである。
【0007】
(序論)
自然言語処理(NLP)の分野において、複数のレベルの言語表現が、様々な方法で使用されている。例えば、品詞(POS)タグは、構文解析器により適用される。POSタグは、自然言語推論、関係分類、感情分析、又は機械翻訳等のより上位レベルのタスクを向上させる。しかしながら、システムは、単方向パイプラインであり、エンドツーエンドでトレーニングされないことが多いので、より上位レベルのタスクは、通常、より下位レベルのタスクを向上させることができない。
【0008】
深層学習において、教師あり単語及び文コーパスは、後続のタスクのための再帰型ニューラルネットワーク(RNN)を初期化するためにしばしば使用される。しかしながら、同時トレーニングされないので、深層NLPモデルは、ますます複雑化している言語タスクの層をスタックすることからの利益をまだ示していない。代わりに、既存のモデルは、言語階層を無視して、完全に別々に又は同じ深さで、異なるタスクを予測するように、しばしば設計される。
【0009】
開示されている技術の全体的なテーマは、連続する層において、ますます複雑化しているNLPタスクを実行する、いわゆる「同時多タスクニューラルネットワークモデル」である。従来のNLPパイプラインシステムとは異なり、同時多タスクニューラルネットワークモデルは、POSタグ付け、チャンキング、及び係り受け解析についてエンドツーエンドでトレーニングされる。同時多タスクニューラルネットワークモデルは、さらに、意味関連性、テキスト含意、及び他のより上位レベルのタスクについてエンドツーエンドでトレーニングされ得る。単一のエンドツーエンドの実施形態において、このモデルは、チャンキング、係り受け解析、意味関連性、及びテキスト含意に関する最高水準の結果を得ている。これはまた、POSタグ付けに関して競争力を有して機能する。さらに、このモデルの係り受け解析層は、単一のフィードフォワードパスに依拠し、ビーム探索を必要とせず、このことは、並列化を高め、計算効率を向上させる。
【0010】
壊滅的忘却を回避しつつ、同時多タスクニューラルネットワークモデルが深さにおいて大きくなることを可能にするために、我々はまた、いわゆる「逐次正則化」技術を開示する。逐次正則化は、他のタスクの壊滅的干渉を示すことなく、1つのNLPタスクの損失を改善するために、モデル重みの多層トレーニングを可能にする。タスク間の壊滅的干渉を回避することにより、このモデルは、より下位レベルのタスク及びより上位レベルのタスクが同時トレーニングから利益を受けることを可能にする。
【0011】
汎化を向上させ、同時多タスクニューラルネットワークモデルにおける過剰適合(過学習)を低減させるために、我々は、さらに、いわゆる「次元射影(dimensionality projection)」技術を開示する。次元射影は、ニューラルネットワーク分類器の低次元出力を高次元ベクトル空間に射影することを含む。低次元空間から高次元空間へのこの射影は、過剰適合を低減させる次元ボトルネック(dimensionality bottleneck)をもたらす。
【0012】
同時多タスクニューラルネットワークモデルに提供される入力単語、特に未知の単語、をロバストに符号化するために、我々は、「同時埋め込み(joint-embedding)」技術を開示する。同時埋め込みは、入力単語の単語埋め込みと入力単語の文字nグラム埋め込みとの組み合わせを使用して、入力単語を表現することを含む。同時埋め込みは、未知の単語に関する情報及び形態素素性を効率的に符号化する。
【0013】
(同時多タスクニューラルネットワークモデル)
図1は、連続する層において、ますます複雑化しているNLPタスクを実行する同時多タスクニューラルネットワークモデル100の態様を示している。実施形態において、モデル100は、言語階層に従って層がスタックされており、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供するバイパス結合を含むスタック型長短期記憶(「LSTM」)文処理器である。言語階層は、文(例えば、sentence
1又はsentence
2)内の単語から、品詞、文のチャンク、単語と単語の係り受け親(dependency parents)との間の係り受けリンク(dependency links)、係り受けリンクに関するラベルまでを構築する。
図1に示されている例において、モデル100は、同様のアーキテクチャを有する2つのLSTMスタック(すなわち、スタックa及びスタックb)を含む。一実施形態において、モデル100は、1つのLSTMスタックのみを含む。別の実施形態において、モデル100は、3つ以上のLSTMスタック(例えば、3つのLSTMスタック、4つのLSTMスタック、10個のLSTMスタック等)を含む。
【0014】
モデル100において、スタックされている層は、品詞(POS)ラベル埋め込み層(例えば104a又は104b)、POSラベル埋め込み層の上にあるチャンク/チャンキングラベル埋め込み層(例えば106a又は106b)、及び、チャンクラベル埋め込み層の上にある係り受け親識別及び係り受け関係ラベル埋め込み層(例えば108a又は108b)を含む。
【0015】
POSラベル埋め込み層は、POSラベル分類器を使用する双方向LSTMとして実現される。これは、入力文内の単語を表現する単語埋め込みベクトル(例えば102a又は102b)を処理し、単語の各々についてPOSラベル埋め込みベクトル及びPOS状態ベクトルを生成する。
【0016】
チャンクラベル埋め込み層は、チャンクラベル分類器を使用する双方向LSTMとして実現される。これは、少なくとも単語埋め込みベクトルとPOSラベル埋め込みベクトルとPOS状態ベクトルとを処理して、チャンクラベル埋め込み及びチャンク状態ベクトルを生成する。
【0017】
係り受け親識別及び係り受け関係ラベル埋め込み層は、1つ以上の分類器を使用する双方向LSTMとして実現される。これは、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語の各々の係り受け親を識別し、単語と単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成する。
【0018】
また、POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0019】
いくつかの実施形態において、モデル100は、文内の単語についての、係り受け親の識別と係り受け関係ラベル埋め込みの生成とを反映した結果を少なくとも出力する出力処理器を含む。
図1に示されている例において、関連性符号化器(例えば110a又は110b)は、係り受け関係ラベル埋め込みを関連性層(例えば112)に提供する処理器の外部にあるとみなされ得る。関連性層は、第1の文と第2の文との間の関連性のカテゴリ分類を提供し、含意符号化器(例えば114a又は114b)を介して含意層(例えば116)にカテゴリ分類を提供する。含意層は、第1の文と第2の文との間の含意のカテゴリ分類を出力する。実施形態において、関連性層及び含意層は、出力処理器として使用される。
【0020】
バイパス結合に関して、バイパス結合は、下位層により使用された入力ベクトルを、変更することなく、上位層に提供する。
図1に示されている例において、「タイプ2」バイパス結合は、単語表現を、モデル100における各層に直接提供する。バイパス結合の別の例において、「タイプ3」バイパス結合は、POSラベル埋め込み層において生成されたPOSラベル埋め込みベクトルを、上位層の各々に提供する。バイパス結合の別の例において、「タイプ4」バイパス結合は、チャンクラベル埋め込み層において生成されたチャンクラベル埋め込みを、上位層の各々に提供する。
【0021】
モデル100はまた、下位層から、連続する上位層にだけ情報を提供する結合を含む。例えば、「タイプ5」結合は、意味関連性層において計算された、第1の文と第2の文との間の関連性のカテゴリ分類を、含意層に提供する。「タイプ6」結合は、含意層からの、第1の文と第2の文との間の含意のカテゴリ分類を出力する。また、「タイプ1」結合は、所与の層において生成された隠れ状態ベクトルを、連続する上位層にだけ提供する。
【0022】
図1におけるコンポーネントは、ハードウェアで実装されてもよいしソフトウェアで実装されてもよく、
図1に示されているのと全く同じブロックに分割される必要はない。コンポーネントの一部は、異なるプロセッサ又はコンピュータにおいて実装されてもよいし、複数の異なるプロセッサ又はコンピュータの間で分散されてもよい。さらに、コンポーネントの一部は、実現される機能に影響を及ぼすことなく、組み合わせられることもあるし、並列に動作することもあるし、
図1に示されている順序とは異なる順序で動作することもあることが、理解されよう。また、本明細書において使用される場合、用語「コンポーネント」は、それ自体がコンポーネントを構成すると本明細書においてみなされ得る「サブコンポーネント」を含み得る。例えば、POSラベル埋め込み層及びチャンクラベル埋め込み層は、「単語レベル処理器」コンポーネントのサブコンポーネントであるとも本明細書においてみなされ得る。同様に、係り受け親識別及び係り受け関係ラベル埋め込み層は、「構文レベル処理器」コンポーネントのサブコンポーネントであるとも本明細書においてみなされ得る。同様に、意味関連性層及び含意層は、本明細書において「意味レベル処理器」コンポーネントのサブコンポーネントであるとも本明細書においてみなされ得る。さらに、
図1におけるブロックは、方法におけるフローチャートステップとみなされ得る。コンポーネント又はサブコンポーネントはまた、必ずしも、その全てのコードをメモリ内で連続して配置する必要はない。コードのいくつかの部分は、他のコンポーネント又はサブコンポーネント又はそれらの間に配置される他の関数からのコードにより、コードの他の部分から分離され得る。
【0023】
いくつかの実施形態において、モデル100は、分析階層に従って層がスタックされており、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供するバイパス結合を含むスタック型LSTMトークン系列処理器である。そのような実施形態において、モデル100のスタックされている層は、第1の埋め込み層、第1の埋め込み層の上にある第2の埋め込み層、及び、第2の埋め込み層の上にある第3の埋め込み層を含む。
【0024】
一実施形態において、双方向LSTM及び第1のラベル分類器として実現される、モデル100の第1の埋め込み層は、入力系列内のトークンを表現するトークン埋め込みを処理し、トークンの第1のラベル埋め込み及び第1の状態ベクトルを生成する。一実施形態において、双方向LSTM及び第2のラベル分類器として実現される、モデル100の第2の埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第1の状態ベクトルとを処理して、第2のラベル埋め込み及び第2の状態ベクトルを生成する。一実施形態において、双方向LSTMとして実現される、モデル100の第3の埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第2の状態ベクトルとを処理して、第3のラベル埋め込み及び第3の状態ベクトルを生成する。一実施形態において、モデル100の出力処理器は、入力系列内のトークンについての第3のラベル埋め込みを反映した結果を少なくとも出力する。
【0025】
いくつかの実施形態において、第1の埋め込み層は、さらに、第1の状態ベクトルの指数関数的正規化により、第1のラベル確率質量ベクトルを生成し、第1のラベル確率質量ベクトルから、第1のラベル埋め込みベクトルを生成する。いくつかの実施形態において、第2の埋め込み層は、さらに、第2の状態ベクトルの指数関数的正規化により、第2のラベル確率質量ベクトルを生成し、第2のラベル確率質量ベクトルから、第2のラベル埋め込みベクトルを生成する。いくつかの実施形態において、第3の埋め込み層は、さらに、第3の状態ベクトルの指数関数的正規化により、第3のラベル確率質量ベクトルを生成し、第3のラベル確率質量ベクトルから、第3のラベル埋め込みベクトルを生成する。実施形態において、第1のラベル埋め込みベクトル、第2のラベル埋め込みベクトル、及び第3のラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0026】
一実施形態において、モデル100は、第1のラベル埋め込み層の下にあるトークン埋め込み処理器を含み、トークン埋め込み処理器は、トークン埋め込み器及び分解トークン埋め込み器を含む。トークン埋め込み器は、認識されると、系列内のトークンを、トークン埋め込みベクトルにより表現されるトークン埋め込み空間にマッピングする。分解トークン埋め込み器は、トークンのトークン分解を、複数のスケールで処理し、各処理されたトークン分解を、トークン分解埋め込み空間内の位置を表現する中間ベクトルにマッピングし、各一意な処理されたトークン分解についての中間ベクトルを組み合わせて、トークンの各々についてトークン分解埋め込みベクトルを生成する。トークン埋め込み処理器は、トークン埋め込み器の結果と分解トークン埋め込み器の結果とを組み合わせ、それにより、トークン埋め込み空間に以前にマッピングされなかったトークンが、それにもかかわらず、トークン分解埋め込みベクトルにより表現される。
【0027】
(同時埋め込み)
図2Aは、入力単語、特に未知の単語、をロバストに符号化するために使用される同時埋め込み技術200を示している。同時埋め込みは、長さLの入力系列s内の各単語w
tについて、単語w
tの単語埋め込み210と、本明細書において「n文字グラム」埋め込みとも呼ばれる、単語w
tの1つ以上の文字nグラム埋め込みと、を連結することにより、いわゆる「単語表現」222を構築することを含む。
図2Aにおいて、この連結演算は、「+」記号で表されている。
【0028】
単語埋め込みに関して、モデル100は、単語埋め込み空間204を作成するための単語埋め込み行列をトレーニングする単語埋め込み器202を含む。一実施形態において、単語埋め込み器202は、スキップグラムモデルを使用して、単語埋め込み行列をトレーニングする。別の実施形態において、単語埋め込み器202は、連続単語袋詰め(CBOW)モデルを使用して、単語埋め込み行列をトレーニングする。実施形態において、単語埋め込み行列は、モデル100の全てのNLPタスクにわたって共有される。いくつかの実施形態において、語彙に含まれない単語は、特別な「UNK」トークンにマッピングされる。
【0029】
文字nグラム埋め込みに関して、モデル100は、文字埋め込み空間208を作成するための文字埋め込み行列をトレーニングする文字埋め込み器206を含む。一実施形態において、文字埋め込み器206は、スキップグラムモデルを使用して、文字埋め込み行列をトレーニングする。別の実施形態において、文字埋め込み器206は、連続単語袋詰め(CBOW)モデルを使用して、文字埋め込み行列をトレーニングする。実施形態において、文字nグラム埋め込みは、単語ベクトルと同じスキップグラム目的関数を使用して学習される。
【0030】
本明細書において「n文字グラム埋め込み器」とも呼ばれる文字埋め込み器206は、トレーニングデータにおける文字nグラムの語彙を構築し、各文字nグラムに対して埋め込みを割り当てる。
図2Aに示されている例において、文字埋め込み空間208は、1グラム埋め込み212、2グラム埋め込み214、3グラム埋め込み216、及び4グラム埋め込み218を含む。他の実施形態において、文字埋め込み空間208は、異なる、さらなる、且つ/又はより少ないnグラムについての埋め込みを含む。
【0031】
最終文字埋め込み220は、単語w
tの一意な文字nグラム埋め込みを表現するベクトルを要素ごとに組み合わせる。例えば、単語「Cat」の文字nグラム(n=1,2,3)は、{C, a, t, #BEGIN#C, Ca, at, t#END#, #BEGIN#Ca, Cat, at#END#}であり、ここで、「#BEGIN#」及び「#END#」は、それぞれ、各単語の始まり及び終わりを表す。これらの部分文字列を表現するベクトルの要素ごとの組み合わせは、要素ごとの平均又は最大値であってよい。文字nグラム埋め込みの使用は、未知の単語に関する情報及び形態素素性を効率的に提供する。したがって、各単語は、その対応する単語埋め込み210と文字埋め込み220との連結である単語表現
【数1】
222として表現される。
【0032】
実施形態において、単語埋め込み器202及び文字埋め込み器206は、いわゆる「単語埋め込み処理器」の一部である。POSラベル埋め込み層は、単語埋め込み処理器の上にある。単語埋め込み器202は、認識されると、文内の単語を、単語埋め込みベクトルにより表現される単語埋め込み空間204にマッピングする。n文字グラム埋め込み器206は、単語の文字部分文字列を、部分文字列長の複数のスケールで処理し、各処理された文字部分文字列を、文字埋め込み空間208内の位置を表現する中間ベクトルにマッピングし、各一意な処理された文字部分文字列についての中間ベクトルを組み合わせて、単語の各々について文字埋め込みベクトルを生成する。単語埋め込み処理器は、単語埋め込み器202の結果とn文字グラム埋め込み器206の結果とを組み合わせ、それにより、単語埋め込み空間に以前にマッピングされなかった単語が、それにもかかわらず、文字埋め込みベクトルにより表現される。未知の単語又は語彙外(OoV)単語の処理は、質問回答等の他のNLPタスクにも適切に適用される。
【0033】
いくつかの実施形態において、n文字グラム埋め込み器206は、中間ベクトルを組み合わせて、文字埋め込みベクトルにおいて要素ごとの平均を生成する。
【0034】
POSラベル埋め込み層は、さらに、単語埋め込みベクトルに加えて、入力文内の単語を表現するn文字グラム埋め込みベクトルを処理し、バイパス結合は、さらに、チャンクラベル埋め込み層と係り受け親識別及び係り受け関係ラベル埋め込み層とに、これらの上位層におけるそれぞれの双方向LSTMへの入力として、n文字グラム埋め込みベクトルを提供する。
【0035】
トレーニングに関して、一実施形態に従うと、単語埋め込みは、ネガティブサンプリングを伴うスキップグラムモデル又はCBOWモデルを使用してトレーニングされる。文字nグラム埋め込みも同様にトレーニングされる。いくつかの実施形態において、単語埋め込みのトレーニングと文字nグラム埋め込みのトレーニングとの1つの差異は、スキップグラムモデルにおける各入力単語が、文字nグラム埋め込みのその対応する平均埋め込みで置き換えられることである。また、これらの埋め込みは、バックプロパゲーション中に勾配を使用して対応する文字nグラム埋め込みを更新するように、モデル100の同時トレーニング中に微調整される。埋め込みパラメータは、
【数2】
で表される。
【0036】
一実施形態において、文字nグラムの語彙は、大文字と小文字とを区別する英語のWikipediaテキストであるトレーニングコーパス上に構築される。このような大文字と小文字とを区別する情報は、固有表現のようないくつかのタイプの単語を処理する上で重要である。単語w
tについて、対応するK個の文字nグラム
【数3】
があり、ここで、重複及び未知のエントリは除去されていると仮定する。次いで、単語w
tは、以下のように計算される、埋め込み
【数4】
により表現される:
【数5】
上記において、
【数6】
は、文字nグラム
【数7】
のパラメータ付き埋め込みである。
【0037】
さらに、トレーニングコーパスにおける各単語-文脈ペア
【数8】
について、N個のネガティブ文脈単語がサンプリングされ、目的関数は、以下のように定義される:
【数9】
上記において、
【数10】
は、ロジスティックシグモイド関数であり、
【数11】
は、文脈単語についての重みベクトルであり、
【数12】
は、ネガティブサンプルである。
【0038】
図2Bは、文字nグラム埋め込みの使用が未知の単語の処理の向上をもたらすことを実証する様々な表を示している。これは、事前にトレーニングされた文字nグラム埋め込みがある場合とない場合とについての、3つの単一タスクであるPOSタグ付け、チャンキング、及び係り受け解析についての結果を示す、
図2Bの表224に示されている。「W&C」列は、単語埋め込みと文字nグラム埋め込みとの両方を使用することに対応し、「Wのみ」列は、単語埋め込みのみを使用することに対応する。これらの結果は、事前にトレーニングされた単語埋め込みと文字nグラム埋め込みとを併用することが、結果を向上させるのに有用であることを明確に示している。文字nグラム埋め込みの事前トレーニングも有効である。例えば、事前トレーニングがないと、POSの正解率は、97.52%から97.38%に低下し、チャンキングの正解率は、95.65%から95.14%に低下しているが、これらの正解率は、word2vec埋め込みのみを使用した場合の正解率よりも依然として良い。
【0039】
図2Bの表226は、単語埋め込みと文字nグラム埋め込みとの併用が、未知の単語についての正解率に関して約19%だけスコアを向上させていることを示している。
図2Bの表228は、未知の単語についてのUAS及びLASにフォーカスした、文字nグラム埋め込みがある場合とない場合とについての、開発セットに関する係り受け解析スコアを示している。UASは、unlabeled attachment score(ラベルなし正解率)の略語であり、LASは、labeled attachment score(ラベルあり正解率)の略語である。UASは、係り受け木の構造を調べ、出力が正しいヘッド及び係り受け関係を有するかどうかを評価する。UASにおける構造スコアに加えて、LASは、各係り受け関係に関する係り受けラベルの正解率も測る。表228は、文字レベルの情報を使用することが有効であること、特に、LASスコアの向上が大きいこと、を明確に示している。
【0040】
(次元射影)
図3は、次元射影300の一実施形態を示している。次元射影は、双方向LSTMのニューラルネットワークスタックにおいて下位層から上位層に中間結果を伝達することを含み、ここで、ニューラルネットワークスタックは、トークンの系列を処理する、分析フレームワークに対応する層を有し、下位層は、トークンの各々について分析フレームワークラベルベクトルを生成する。
【0041】
図3において、隠れ状態ベクトル314は、LSTM若しくは双方向LSTM、又は他のRNN等、ニューラルネットワークにより生成される。隠れ状態ベクトル314は、高次元ベクトル空間302において符号化され、
【数13】
という次元数を有し、これは、要素ごとに、
【数14】
として識別され、dは、個々の次元を表し、下付き文字は、次元の順序位置を表す。一例において、
【数15】
である。一実施形態において、分類器304は、利用可能なフレームワークラベルの数とほぼ同じ次元数を有するラベル空間ベクトルとして、隠れ状態ベクトル314を、分析フレームワークラベル空間306へと分類する。分析フレームワークラベル空間306は、言語的有意義性(linguistic meaningfulness)を符号化する。例えば、POSラベル埋め込み層が、20個のラベルを有する場合、
【数16】
である。一実施形態において、分類器304は、次元削減行列
【数17】
を含むだけである。別の実施形態において、分類器304は、次元削減重み行列
【数18】
に加えて、次元削減重み行列
【数19】
により生成されたラベル空間ベクトルを正規化する指数関数的正規化器308(例えばソフトマックス)を含む。
【0042】
生成されると、低次元ラベル空間ベクトルは、次元拡張重み行列
【数20】
310により、拡張次元ラベル空間312に射影されて、拡張トークンラベルベクトル316が生成される。拡張次元ラベル空間312は、高次元ベクトル空間である。したがって、隠れ状態ベクトル314と同様に、ラベルベクトル316も、高次元ベクトル空間にマッピングされ、
【数21】
という次元数を有し、これは、要素ごとに、
【数22】
として識別され、lは、個々の次元を表し、下付き文字は、次元の順序位置を表す。ラベルベクトル316は、隠れ状態ベクトル314の次元数とほぼ同じ次元数を有することに留意されたい。ほぼ同じであることは、+/-10パーセント以内を意味する。次元数が同じである必要はないが、同じである場合には、プログラミングがより簡単になり得る。
【0043】
モデル100は、処理の様々な段階において、次元射影を用いる。一例において、モデル100は、低次元POS分析ラベル空間ベクトルが、該ベクトルを生成するために使用されたPOS隠れ状態ベクトルと同じ次元数を有するベクトル空間に射影されるように、次元射影を用いて、POSラベル埋め込みを、より高次元の空間に射影する。別の例において、モデル100は、低次元チャンク分析ラベル空間ベクトルが、該ベクトルを生成するために使用されたチャンク隠れ状態ベクトルと同じ次元数を有するベクトル空間に射影されるように、次元射影を用いて、チャンクラベル埋め込みを、より高次元の空間に射影する。同様に、他の例において、他の層も次元射影を用いる。
【0044】
一実施形態において、利用可能な分析フレームワークラベルの数が、隠れ状態ベクトル314の次元数の5分の1以下である場合、ラベル空間ベクトル316は、モデル100をトレーニングするときの過剰適合を低減させる次元ボトルネックとして機能する。別の実施形態において、利用可能な分析フレームワークラベルの数が、隠れ状態ベクトル314の次元数の10分の1以下である場合、ラベル空間ベクトル316は、モデル100をトレーニングするときの過剰適合を低減させる次元ボトルネックとして機能する。
【0045】
次元ボトルネックはまた、機械翻訳等の他のNLPタスクにおける処理を向上させる。
【0046】
(単語レベルのタスク-POSタグ付け)
図4Aは、モデル100のPOS層400の動作の一実施形態を示している。
【0047】
本明細書において「POS層」とも呼ばれるPOSラベル埋め込み層は、POS状態ベクトル(例えば408)の指数関数的正規化(例えば、単一のReLU層を有するソフトマックス406)により、POSラベル確率質量ベクトル(例えば404)を生成し、POSラベル確率質量ベクトルから、POSラベル埋め込みベクトル(例えば402)を生成する。
【0048】
一実施形態において、モデル100のPOSラベル埋め込み層400は、双方向LSTM410であり、その隠れ状態は、POSタグを予測するために使用される。一実施形態において、以下のLSTMユニットが、前方へのパス方向について使用される:
【数23】
上記において、入力
【数24】
は、
【数25】
、すなわち、前の隠れ状態と単語表現
【数26】
との連結、と定義される。単語にわたるLSTMの後方へのパスも同じように拡張されるが、重みのセットが異なる。
【0049】
w
tのPOSタグを予測するために、前方状態と後方状態との連結
【数27】
が、t番目の単語に対応する1層の双方向LSTM層において用いられる。次いで、各
【数28】
が、単一のReLU層を有する指数関数的正規化器に与えられ、これが、POSタグの各々についての確率ベクトル
【数29】
を出力する。
【0050】
図4Bは、モデル100のPOSタグ付けの結果を示す表を含む。モデル100は、最高水準の結果に近いスコアを実現している。
【0051】
(単語レベルのタスク-チャンキング)
図5Aは、モデル100のチャンキング層400の動作の一実施形態を示している。
【0052】
チャンキングは、各単語に対してチャンキングタグ(B-NP、I-VP等)を割り当てる単語レベルの分類タスクである。タグは、文内の主要句(major phrases)(又はチャンク)の領域を指定する。
【0053】
本明細書において「チャンキング層」とも呼ばれるチャンクラベル埋め込み層500は、さらに、チャンクラベル状態ベクトル(例えば508)の指数関数的正規化(例えば、単一のReLU層を有するソフトマックス506)により、チャンクラベル確率質量ベクトル(例えば504)を生成し、チャンクラベル確率質量ベクトルから、チャンクラベル埋め込みベクトル(例えば502)を生成する。
【0054】
モデル100において、チャンキングは、POS層の上にある第2の双方向LSTM層510を使用して実行される。双方向LSTM層をスタックする場合、LSTMユニットに、以下の入力が提供される:
【数30】
上記において、
【数31】
は、最初のPOS層の隠れ状態である。重みラベル埋め込み
【数32】
は、以下のように定義される:
【数33】
上記において、Cは、POSタグの数であり、
【数34】
は、j番目のPOSタグが単語w
tに割り当てられる確率質量であり、
【数35】
は、対応するラベル埋め込みである。前述のように、ラベル埋め込みは、確率質量よりも高次元数であり得る。確率値は、POSラベル埋め込み層が内蔵のPOSタグ付け器のように動作することにより自動的に予測され、したがって、いくつかの実施形態において、正解POSタグは必要とされない。
【0055】
チャンキングタグを予測するために、チャンキング層において、連結された双方向の隠れ状態
【数36】
を使用することにより、POSタグ付けと同様の方策が用いられる。いくつかの実施形態において、単一のReLU隠れ層が、指数関数的分類器の前に使用される。
【0056】
図5Bは、モデル100のチャンキングの結果を示す表を含む。モデル100は、最高水準の結果を実現しており、これは、より上位レベルのタスクに加えて、より下位レベルのタスクも同時学習により向上されることを示している。
【0057】
(構文タスク-係り受け解析)
図6Aは、モデル100の係り受け解析層600の動作の一実施形態を示している。
【0058】
係り受け解析は、文内の単語のペアの間の構文関係(名詞を修飾する形容詞等)を識別する。
【0059】
本明細書において「係り受け層又は係り受け解析層」とも呼ばれる係り受け親識別及び係り受け関係ラベル埋め込み層600は、本明細書において「係り受け親分析器」とも呼ばれる双方向LSTM604により生成された親ラベル状態ベクトル602の分類及び指数関数的正規化により、親ラベル確率質量ベクトルを生成する。係り受け解析層は、親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成し、親ラベル状態ベクトル及び親ラベル埋め込みベクトルの分類及び指数関数的正規化により、係り受け関係ラベル確率質量ベクトルを生成し、係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する。
【0060】
係り受け親分析器604は、各単語について、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理することを含め、入力文内の単語を処理して、文内の単語間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトル602を蓄積する。
【0061】
図6B、
図6C、
図6D、
図6E、及び
図6Fは、係り受け解析層600のアテンション符号化器610の動作の一実施形態を示している。アテンション符号化器610は、文内の各単語についての前方状態ベクトル及び後方状態ベクトル602を処理して、当該単語又は他の単語について前方状態ベクトル及び後方状態ベクトル602に線形変換608を適用した後(これにより、線形変換における重み606がトレーニング可能である)、文内の各単語と文内の他の単語との間の内積612としてアテンションを符号化する。いくつかの実施形態において、センチネルベクトル622が、根単語(root word)を符号化するためにアテンション符号化器610により使用される。
【0062】
アテンション符号化器610は、さらに、内積612のベクトル616に指数関数的正規化614を適用して、親ラベル確率質量ベクトル618を生成し、親ラベル確率質量ベクトルを射影して、親ラベル確率質量ベクトル618に応じて、前方状態ベクトル及び後方状態ベクトル602の線形変換の重み付け和620を混合又は計算することにより、親ラベル埋め込みベクトルを生成する。
【0063】
図6Gは、係り受け解析層の係り受け関係ラベル分類器626の動作の一実施形態を示している。係り受け関係ラベル分類器626は、文内の各単語について、前方状態ベクトル及び後方状態ベクトル602並びに親ラベル埋め込みベクトル624を分類及び正規化して(ソフトマックス628等の別の指数関数的正規化器を使用することにより)、係り受け関係ラベル確率質量ベクトル630を生成し、係り受け関係ラベル確率質量ベクトル630を射影して係り受け関係ラベル埋め込みベクトル632を生成する。
【0064】
上述のように、係り受け解析のために、モデル100は、POS層及びチャンキング層の上にある第3の双方向LSTM層604を使用して、単語の全てのペアの間の関係を分類する。
図6Aに示されているように、係り受け解析LSTMに対する入力ベクトルは、隠れ状態、単語表現102、並びに、2つの前のタスクについてのラベル埋め込み402及び502を含む:
【数37】
ここで、チャンキングベクトルは、上記の式(1)におけるPOSベクトルと同様のやり方で計算される。POSタグ402及びチャンキングタグ502は、係り受け解析を向上させるために使用される。
【0065】
逐次ラベル付けタスクと同様に、モデル100は、文内の各単語について、本明細書において「ヘッド」とも呼ばれる親ノードを予測する。次いで、係り受けラベルが、子-親ノードペアの各々について予測される。t番目の単語w
tの親ノードを予測するために、モデル100は、w
tと親ノードの候補との間のマッチング関数612(ドット積/内積又は双線形積に基づく)を
【数38】
として定義する。上記において、
【数39】
は、パラメータ行列である。上述のように、根について、モデル100は、
【数40】
をパラメータ付きセンチネルベクトル622として定義する。上述のように、w
j(又は根ノード)がw
tの親である確率を計算するために、スコアが、指数関数的正規化器(例えばソフトマックス614)を使用して、以下のように正規化される:
【数41】
上記において、Lは文の長さである。
【0066】
次いで、係り受けラベルが、別の指数関数的正規化器(例えば、単一のReLU層を有するソフトマックス628)への入力として
【数42】
を使用して予測される。テスト時において、一実施形態では、親ノード及び係り受けラベルが、文内の各単語について貪欲に(greedily)選択される。すなわち、モデル100は、POSラベル埋め込み層、チャンクラベル埋め込み層、又は、係り受け親識別及び係り受け関係ラベル埋め込み層においてビーム探索なく機能する。これは、モデル100が単語ごとにラベル埋め込みを計算することが理由で生じ、これは、ビーム探索により通常もたらされる冗長さ及び計算待ち時間を回避するので、並列化を高め、計算効率を向上させる。加えて、係り受け解析中の単語ごとの計算は、単語がそれだけで根として予測される場合、モデル100がそれを誤った予測として検出でき、単語についての新たな正しい予測を自動的に計算できるように、モデル100が、誤ってラベル付けされた根を修正することを可能にする。
【0067】
一実施形態において、モデル100は、文内の各単語が1つの親ノードのみを有すると仮定する。別の実施形態において、モデル100は、各単語が複数の親ノードを有することができると仮定し、巡回グラフのような計算を用いて、係り受けラベルを生成する。トレーニング時において、モデル100は、正解又は真の子-親ペアを使用して、ラベル予測器をトレーニングする。
【0068】
図6Hは、モデル100が係り受け解析を適用する2つの例示的な文を示している。例(a)において、2つの太字の単語「counsels」及び「need」が、根ノードの子ノードとして予測され、下線が引かれた単語「counsels」が、正解アノテーションに基づく正しいものである。例(b)において、どの単語も根ノードに接続されず、根の正しい子ノードは、下線が引かれた単語「chairman」である。モデル100は、単一のパラメータ付きベクトルrを使用して、各文についての根ノードを表現し、様々なタイプの根ノードを取り込む。いくつかの実施形態において、モデル100は、文依存の根表現を使用する。
【0069】
図6Iは、モデル100の係り受け解析層の結果を示す表を含む。モデル100は、最高水準の結果を実現している。モデル100の貪欲な(greedy)係り受け解析器は、大局的情報を用いたビーム探索に基づく以前の最高水準の結果よりも優れていることに留意されたい。これは、モデル100の双方向LSTMが、係り受け解析に必要な大局的情報を効率的に取り込んでいることを示している。
【0070】
(意味タスク-意味関連性)
図7Aは、モデル100の意味関連性層700の動作の一実施形態を示している。
【0071】
モデル100の次の2つのNLPタスクは、2つの入力文の間の意味関係を符号化する。第1のタスクは、2つの文の間の意味関連性を測る。意味関連性層の出力は、入力文ペアについての実数値関連性スコアである。第2のタスクは、テキスト含意タスクであり、これは、前提文が仮説文を含意するかどうかを判定することを必要とする。これらは、一般的に、含意、矛盾、及び中立という3つのクラスである。
【0072】
これらの2つの意味タスクは、互いに密接に関連している。実施形態において、良好な意味関連性は、低い意味関連性スコアにより表される。したがって、2つの文の間の意味関連性スコアが非常に低い場合、すなわち、2つの文が高い意味関連性を有する場合、これらは、互いを含意する可能性が高い。この直感に基づいて、且つ、より下位の層からの情報を利用するために、モデル100は、関連性タスク及び含意タスクについて、それぞれ第4の双方向LSTM層及び第5の双方向LSTM層を使用する。
【0073】
これらのタスクは、前のタスクにおいて使用された単語レベルの表現ではなく、文レベルの表現を必要とするので、モデル100は、第4の層において、以下のように、文レベルの表現
【数43】
を、全ての単語レベルの表現にわたる要素ごとの最大値として計算する:
【数44】
上記において、Lは文の長さである。
【0074】
sとs’との間の意味関連性をモデル化するために、特徴量ベクトルが、以下のように計算される:
【数45】
上記において、
【数46】
は、要素ごとの減算の絶対値であり、
【数47】
は、要素ごとの乗算である。これらの演算の両方が、2つのベクトルの2つの異なる類似性指標とみなされ得る。次いで、
【数48】
が、単一のマックスアウト隠れ層722を有する指数関数的正規化器(例えばソフトマックス)に与えられ、文ペアについての関連性スコア(例えば1~5の間)が出力される。マックスアウト隠れ層722は、最大非線形射影が指数関数的正規化器に与えられるように、それぞれが
【数49】
の非線形射影を生成する複数の線形関数(例えばプールサイズが4である)を含む。
【0075】
図7Aを参照すると、係り受け親識別及び係り受け関係ラベル埋め込み層600の上にある、双方向LSTM702を含む意味関連性層700は、関連性ベクトル計算器720及び関連性分類器714も含む。関連性ベクトル計算器720は、第1の文及び第2の文のそれぞれの文内の単語の各々についての前方状態ベクトル及び後方状態ベクトル704の双方向LSTM計算と、それぞれの文内の単語についての前方状態ベクトル及び後方状態ベクトル704にわたる要素ごとの最大プーリング計算706と、を含め、第1の文及び第2の文の各々の文レベルの表現708a及び708bを計算して、それぞれの文を表現する文レベルの状態ベクトル708a及び708bを生成する。代替実施形態は、平均プーリングを用いてもよい。次いで、関連性ベクトル計算器720は、さらに、第1の文と第2の文との間の関連性のカテゴリ分類を導出するために関連性分類器714により処理される要素ごとの文レベルの関連性ベクトル712を計算する。いくつかの実施形態において、関連性ベクトル計算器は、さらなる処理のために、例えば、生成される関連性ラベル埋め込み718のために、カテゴリ分類を報告する。
【0076】
関連性ベクトル計算器720は、第1の文についての文レベルの関連性ベクトル708aと第2の文についての文レベルの関連性ベクトル708bとの間の要素ごとの差を計算し、第1の文についての文レベルの関連性ベクトル708aと第2の文についての文レベルの関連性ベクトル708bとの間の要素ごとの積を計算し、要素ごとの差及び要素ごとの積の絶対値のベクトルを、関連性分類器714への入力として使用する特徴量抽出モジュール716を含む。
【0077】
図7Bは、意味関連性タスクの結果を示す表を含む。モデル100は、最高水準の結果を実現している。
【0078】
(意味タスク-テキスト含意)
2つの文の間の含意分類のために、モデル100はまた、意味関連性タスクと同様に、最大プーリング技術を使用する。前提-仮説ペア(s,s’)を3つのクラスのうちの1つに分類するために、モデル100は、どれが前提(又は仮説)であるかを識別するために要素ごとの減算の絶対値を使用しないことを除いて、式(2)と同様に特徴量ベクトル
【数50】
を計算する。次いで、
【数51】
が、複数のマックスアウト隠れ層(例えば、3つのマックスアウト隠れ層)822を有する指数関数的正規化器(例えばソフトマックス)に与えられる。
【0079】
マックスアウト隠れ層は、複数の線形関数及び非線形アクティベーションを入力に適用し、最良の結果を選択する。複数のマックスアウト隠れ層がスタックに配置されている場合、前のマックスアウト隠れ層からの最大出力が、次のマックスアウト隠れ層への入力として提供される。スタックにおける最後のマックスアウト隠れ層の最大出力が、分類のために指数関数的正規化器に提供される。時間最大プーリング(temporal max pooling)は、単に、複数の入力ベクトルの要素ごとの個々の次元を評価し、最大プーリング処理がなされたベクトルにおいて符号化するための、各順序位置についての最大次元値を選択することに留意されたい。対照的に、マックスアウト隠れ層は、入力ベクトルを複数の非線形変換にかけ、最大の次元値を有する1つの線形変換だけを選択する。
【0080】
関連性層からの出力を直接利用するために、モデル100は、関連性タスクについてのラベル埋め込みを使用する。モデル100は、式(1)と同様に、意味関連性タスクについてクラスラベル埋め込みを計算する。連結されて含意分類器に与えられる最終特徴量ベクトルは、重み付けされた関連性埋め込みと特徴量ベクトル
【数52】
とである。
【0081】
図8Aを参照すると、意味関連性層700の上にある、双方向LSTM802を含む含意層800は、含意ベクトル計算器820及び含意分類器814も含む。含意ベクトル計算器820は、第1の文及び第2の文のそれぞれの文内の単語の各々についての前方状態ベクトル及び後方状態ベクトル804の双方向LSTM計算と、それぞれの文内の単語についての前方状態ベクトル及び後方状態ベクトル804にわたる要素ごとの最大プーリング計算806と、を含め、第1の文及び第2の文の各々の文レベルの表現808a及び808bを計算して、それぞれの文を表現する文レベルの状態ベクトル808a及び808bを生成する。代替実施形態は、平均プーリングを用いてもよい。次いで、含意ベクトル計算器820は、さらに、第1の文と第2の文との間の含意のカテゴリ分類を導出するために含意分類器814により処理される要素ごとの文レベルの含意ベクトル812を計算する。いくつかの実施形態において、含意ベクトル計算器は、さらなる処理のために、例えば、生成される含意ラベル埋め込み818のために、カテゴリ分類を報告する。
【0082】
含意ベクトル計算器820は、第1の文についての文レベルの含意ベクトル808aと第2の文についての文レベルの含意ベクトル808bとの間の要素ごとの差を計算し、第1の文についての文レベルの含意ベクトル808aと第2の文についての文レベルの含意ベクトル808bとの間の要素ごとの積を計算し、要素ごとの差及び要素ごとの積の絶対値のベクトルを、含意分類器814への入力として使用する特徴量抽出モジュール816を含む。
【0083】
図8Bは、テキスト含意タスクの結果を示す表を含む。モデル100は、最高水準の結果を実現している。
【0084】
(トレーニング-逐次正則化)
NLPタスクにおいて、マルチタスク学習は、より上位レベルのタスクだけでなくより下位レベルのタスクも向上させる可能性を有している。事前にトレーニングされたモデルパラメータを固定されたものとして扱うのではなく、開示されている逐次正則化は、モデル100が、壊滅的忘却なく、より下位レベルのタスクを継続的にトレーニングすることを可能にする。
【0085】
モデル100は、全てのデータセットにわたって同時トレーニングされる。各エポック中、最適化が、上述した対応するタスクと同じ順序で、各完全なトレーニングデータセットにわたって繰り返される。
【0086】
(POS層のトレーニング)
POS層400のための1つのトレーニングコーパスは、Penn TreebankのWall Street Journal(WSJ)部分である。このコーパスは、POSタグでラベル付けされたトークンを含む。POS層400のトレーニング中、これが現在の層であるので、L2ノルム正則化が、POS層400の層パラメータに適用される。逐次正則化が、ただ1つの下位層、すなわち、単語埋め込み空間204及び文字埋め込み空間208を含む埋め込み層の層パラメータに適用される。
【0087】
【数53】
が、POS層400に関連付けられているモデルパラメータのセットを表すとする。ここで、
【数54】
は、第1の双方向LSTM及び分類器における重み行列のセットであり、
【数55】
は、バイアスベクトルのセットである。
【数56】
を最適化するための目的関数は、以下のように定義される:
【数57】
上記において、
【数58】
は、正しいラベルαが、文s内のw
tに割り当てられる確率値であり、
【数59】
は、L2ノルム正則化項であり、λは、L2ノルム正則化ハイパーパラメータである。
【数60】
は、逐次正則化項である。逐次正則化は、モデル100における壊滅的忘却を防ぎ、したがって、モデル100が他のタスクについて学習された情報を忘却するのを防ぐ。POSタグ付けの場合、正則化は、
【数61】
に適用され、
【数62】
は、前のトレーニングエポックにおいて、最上層における最終タスクをトレーニングした後の埋め込みパラメータである。δは、逐次正則化ハイパーパラメータであり、これは、モデル100の異なる層ごとに異なり得るものであり、また、ネットワーク重み及びバイアスに様々に割り当てられる値であり得る。
【0088】
(チャンキング層のトレーニング)
チャンキング層500をトレーニングするために、チャンクがラベル付けされているWSJコーパスが使用された。チャンキング層500のトレーニング中、これが現在の層であるので、L2ノルム正則化が、チャンキング層500の層パラメータに適用される。逐次正則化が、2つの下位層、すなわち、埋め込み層及びPOS層400の層パラメータに適用される。
【0089】
チャンキング層のための目的関数は、以下のように定義される:
【数63】
上記は、POSタグ付けのものと類似しており、
【数64】
は、
【数65】
であり、上記において、
【数66】
及び
【数67】
は、
【数68】
における重み及びバイアスパラメータを含む重み及びバイアスパラメータであり、
【数69】
は、POSラベル埋め込みのセットである。
【数70】
は、現在のトレーニングエポックにおいてPOS層400をトレーニングした後のPOSパラメータである。
【0090】
(係り受け層のトレーニング)
係り受け解析層600をトレーニングするために、係り受けラベルが付されたWSJコーパスが使用された。係り受け解析層600のトレーニング中、これが現在の層であるので、L2ノルム正則化が、係り受け解析層600の層パラメータに適用される。逐次正則化が、3つの下位層、すなわち、埋め込み層、POS層400、及びチャンキング層500の層パラメータに適用された。
【0091】
係り受け層のための目的関数は、以下のように定義される:
【数71】
上記において、
【数72】
は、正しい親ノードラベルαがw
tに割り当てられる確率値であり、
【数73】
は、正しい係り受けラベルβが子-親ペア
【数74】
に割り当てられる確率値である。
【数75】
は、
【数76】
と定義され、上記において、
【数77】
及び
【数78】
は、
【数79】
における重み及びバイアスパラメータを含む重み及びバイアスパラメータであり、
【数80】
は、チャンキングラベル埋め込みのセットである。
【0092】
(関連性層のトレーニング)
意味関連性層700において、SICKデータセットがトレーニングにおいて使用された。意味関連性層700のトレーニング中、これが現在の層であるので、L2ノルム正則化が、意味関連性層700の層パラメータに適用された。逐次正則化が、4つの下位層、すなわち、埋め込み層、POS層400、チャンキング層500、及び係り受け解析層600の層パラメータに適用された。
【0093】
関連性層のための目的関数は、以下のように定義される:
【数81】
上記において、
【数82】
は、規定された関連性スコアにわたる正解分布であり、
【数83】
は、文表現を所与とする予測分布であり、
【数84】
は、2つの分布の間のKLダイバージェンスである。
【数85】
は、
【数86】
と定義される。
【0094】
(含意層のトレーニング)
含意層800をトレーニングするために、我々は、SICKデータセットを使用した。含意層800のトレーニング中、これが現在の層であるので、L2ノルム正則化が、含意層800の層パラメータに適用される。逐次正則化が、5つの下位層、すなわち、埋め込み層、POS層400、チャンキング層500、係り受け解析層600、及び意味関連性層700の層パラメータに適用される。
【0095】
含意層のための目的関数は、以下のように定義される:
【数87】
上記において、
【数88】
は、正しいラベルαが前提-仮説ペア(s,s’)に割り当てられる確率値である。
【数89】
は、
【数90】
と定義され、上記において、
【数91】
は、関連性ラベル埋め込みのセットである。
【0096】
(トレーニングのエポック)
図9Aを参照すると、
図9Aは、分析階層に従って少なくとも3つの層がスタックされているスタック型LSTM系列処理器をトレーニングする一実施形態を示している。
図9Aにおいて、第1の層、第2の層、及び第3の層(例えば、POS層400、チャンキング層500、及び係り受け層600)は、各層に関するトレーニング例を用いてバックプロパゲーションによりトレーニングされ、トレーニング中、下位層への正則化パスダウンが伴う。トレーニングは、第1の層のトレーニング例(例えばPOSデータ)を用いて、第1の層をトレーニングすること、第1の層への正則化パスダウントレーニングを伴う、第2の層のトレーニング例(例えばチャンキングデータ)を用いて、第2の層をトレーニングすること、及び、第1の層及び第2の層への正則化パスダウントレーニングを伴う、第3の層のトレーニング例(例えば係り受けデータ)を用いて、第3の層をトレーニングすることを含む。正則化パスダウントレーニングは、少なくとも2つの正則化項を含むフィットネス関数を有するトレーニング目的関数を制約することにより正則化される。少なくとも2つの正則化項は、下位層に適用された係数行列における重みの大きさの増加にペナルティを与えることにより正則化し、これは、下位層に適用された係数行列における重みの全ての変化を逐次正則化する。一実施形態において、フィットネス関数は、交差エントロピー損失である。別の実施形態において、フィットネス関数は、KLダイバージェンスである。さらに別の実施形態において、フィットネス関数は、平均二乗誤差である。
【0097】
図9Aに示されている例において、単一のエポックの2つのサブエポックが示されている。一実施形態において、モデル100は、5つのNLPタスクに対応する5つのサブエポックを有する。各サブエポックにおいて、現在の層のトレーニングデータに対応するトレーニング例のバッチ
【数92】
が処理される。トレーニング例が、現在の層により処理されるたびに、下位層の層パラメータ
【数93】
及び現在の層の層パラメータ
【数94】
が、勾配をバックプロパゲーションすることにより更新される。
【数95】
は、現在の層の所与のトレーニング例に関するバックプロパゲーションの結果としての、下位層のパラメータ
【数96】
の更新された値を表す。また、各サブエポックの終わりにおいて、現在の層の埋め込みパラメータの現在の状態及び全ての下位層の埋め込みパラメータの現在の状態の「スナップショット」が取られる。スナップショット値は、本明細書において「現在のアンカー値」と呼ばれ、
【数97】
として、メモリに保持される。
【0098】
各サブエポックの終わりにおいて、逐次正則化項
【数98】
は、更新値
【数99】
が、層パラメータの現在のアンカー値
【数100】
から大きくずれていないことを確実にする。
【0099】
図9Aにおいて、POS層400における第1のサブエポックは、埋め込み層の現在のアンカー値で始まり、埋め込み層パラメータ
【数101】
のみを逐次正則化する。逐次正則化は、現在の層のパラメータ、すなわち、POS層400の層パラメータ
【数102】
に適用されず、L2ノルム正則化
【数103】
だけが、現在の層の更新されたパラメータに適用されて、正則化された現在の層のパラメータ
【数104】
が生成される。逐次正則化は、POS層400のトレーニング中に更新された下位層の層パラメータ値、すなわち、
【数105】
が、現在のアンカー値
【数106】
から大きくずれていないことを確実にする。これは、逐次正則化された下位層のパラメータ
【数107】
をもたらす。サブエポックの終わりにおいて、最も直近に正則化された現在の層のパラメータ
【数108】
及び最も直近に逐次正則化された下位層のパラメータ
【数109】
が、スナップショット動作を受け、新たな現在のアンカー値として、メモリに保持される。
【0100】
チャンキング層500等の次の層において、下位層のパラメータは、埋め込み層及びPOS層についてのパラメータを含む。これらの下位層のパラメータは、逐次正則化を受けるのに対し、チャンキング層の現在の層のパラメータは、L2ノルム正則化だけを受ける。このプロセスは、モデル100の全ての層に対して続く。
【0101】
図9Bは、逐次正則化技術の有効性を実証する表を含む。
図9Bにおいて、「SRなし」列は、モデル100において逐次正則化を用いない場合の結果を示している。チャンキングの正解率は、逐次正則化により向上するが、他の結果は、あまり影響を受けないことが分かる。ここで使用されたチャンキングデータセットは、他の下位レベルタスクであるPOSタグ付け及び係り受け解析と比較して、相対的に小さい。したがって、これらの結果は、データセットサイズが不均衡である場合に逐次正則化が有効であることを示唆している。
【0102】
図10は、5つの異なるNLPタスクに関するテストセットの結果を示す表を含む。
図10において、「単一」列は、単一層の双方向LSTMを使用して各タスクを別々に処理した結果を示し、「JMTall」列は、モデル100の結果を示している。単一タスク設定は、自身のタスクのアノテーションのみを使用する。例えば、係り受け解析を単一のタスクとして扱う場合、POSタグ及びチャンキングタグは使用されない。モデル100において、5つの異なるタスクの全ての結果が向上していることがわかる。これは、モデル100が、単一のモデルにおいて5つの異なるタスクを処理することを示している。モデル100はまた、これらの異なるタスクから学習された任意の情報にアクセスすることを可能にする。例えば、いくつかの実施形態において、モデル100をPOSタグ付け器としてだけ使用するためには、第1の双方向LSTM層からの出力を使用することができる。出力は、個別のPOSタグ及び重み付きPOSラベル埋め込みであり得る。
【0103】
図10における表はまた、これらの異なるタスクの3つのサブセットの結果を示している。例えば、「JMTABC」の場合、最初の3つの層の双方向LSTMだけが、3つのタスクを処理するために使用されている。「JMTDE」の場合、最初の3つの層からの全ての情報を省くことにより、上位の2つの層だけが、2層の双方向LSTMとして使用されている。密接に関連するタスクの結果は、モデル100が、上位レベルタスクだけでなく下位レベルタスクも向上させることを示している。
【0104】
開示されている技術の他の実施形態は、指数関数的正規化器とは異なる正規化器を使用すること、指数関数的正規化器に加えて正規化器を使用すること、及び/又は、指数関数的正規化器と組み合わせて正規化器を使用することを含む。いくつかの例は、シグモイドベースの正規化器(例えば、マルチクラスシグモイド、区分ランプ)、双曲線正接ベースの正規化器、正規化線形ユニット(ReLU)ベースの正規化器、IDベースの正規化器、ロジスティックベースの正規化器、正弦ベースの正規化器、余弦ベースの正規化器、単位合計(unit sum)ベースの正規化器、及びステップベースの正規化を含む。他の例は、階層的ソフトマックス、区分ソフトマックス、重点サンプリング、雑音対照推定、ネガティブサンプリング、ゲート付きソフトマックス、球状ソフトマックス、テイラーソフトマックス、及びスパースマックスを含む。さらに他の実施形態において、任意の他の従来の又は将来開発される正規化器が使用されてもよい。
【0105】
本技術が、双方向LSTMに関連して説明されているが、LSTMの代替として進化する可能性がある他の新しい形態のLSTMが存在する。他の実施形態において、開示されている技術は、モデル100の1つ以上の層又は全ての層において、単方向LSTMを使用する。LSTMのいくつかの変形例は、入力ゲートなし(NIG:no input gate)の変形例、忘却ゲートなし(NFG:no forget gate)の変形例、出力ゲートなし(NOG:no output gate)の変形例、入力活性化関数なし(NIAF:no input activation function)の変形例、出力活性化関数なし(NOAF:no output activation function)の変形例、結合入力-忘却ゲート(CIFG:coupled input-forget gate)の変形例、のぞき穴(PH:peephole)の変形例、及びフルゲート再帰(FGR:full gate recurrent)の変形例を含む。さらに他の実施形態は、ゲート付き再帰型ユニット(GRU)、又は、任意の他のタイプのRNN、任意の他の従来の又は将来開発されるニューラルネットワークを含む。
【0106】
さらに他の実施形態において、モデル100の層は、有向非巡回グラフの形でスタックされる。そのような実施形態において、いくつかの層は、他の層の上に連続しなくてもよく、代わりに、非巡回的に配置されてもよい。
【0107】
(特定の実施形態)
単一のエンドツーエンドモデルにおいてますます深くなる層を使用して、ますます複雑化している自然言語処理(NLP)タスクを解決するための、いわゆる「同時多タスクニューラルネットワークモデル」のためのシステム、方法、及び製品が記載される。相互に排他的ではない実施形態は、組み合わせ可能であると教示される。実施形態の1つ以上の特徴は、他の実施形態と組み合わせられることもある。本開示は、これらのオプションについてユーザに定期的にリマインドする。これらのオプションを繰り返す記載事項の、いくつかの実施形態からの省略は、前のセクションにおいて教示された組み合わせを限定するものとして解釈されるべきではない。これらの記載事項は、参照により以下の実施形態の各々に組み込まれる。
【0108】
図1B及び
図1Cは、同時多タスクニューラルネットワークモデルを実現するために使用され得る様々なモジュールを示している。単語表現層102a、102b、POS層104a、104b、チャンキング層106a、106b、係り受け層108a、108b、関連性層110a、110b、112、及び含意層114a、114b、116等の、モデル100の前述のモジュール又はコンポーネントは、代替的に、モデル100の動作の原理を変えることなく、より小さくモジュール化されたモジュール又はコンポーネントを使用して説明され得る。
【0109】
図1B及び
図1Cにおけるモジュールは、ハードウェアで実装されてもよいしソフトウェアで実装されてもよく、
図1B及び
図1Cに示されているのと全く同じブロックに分割される必要はない。モジュールの一部は、異なるプロセッサ又はコンピュータにおいて実装されてもよいし、複数の異なるプロセッサ又はコンピュータの間で分散されてもよい。さらに、モジュールの一部は、実現される機能に影響を及ぼすことなく、組み合わせられることもあるし、並列に動作することもあるし、
図1B及び
図1Cに示されている順序とは異なる順序で動作することもあることが、理解されよう。また、本明細書において使用される場合、用語「モジュール」は、それ自体がモジュールを構成すると本明細書においてみなされ得る「サブモジュール」を含み得る。例えば、単語埋め込みモジュール1021及び単語n文字グラムモジュール1022は、単語表現モジュール102a、102bのサブモジュールであるとも本明細書においてみなされ得る。別の例において、POS処理モジュール1041及びPOS生成モジュール1042は、POSモジュール104a、104bのサブモジュールであると本明細書においてみなされ得る。さらに別の例において、係り受け処理モジュール1081、係り受け識別モジュール1082、係り受け生成モジュール1083、埋め込み処理モジュール1084、質量ベクトル処理モジュール1085、及び親ラベルベクトル生成モジュール1086は、係り受けモジュール108a、108bのサブモジュールであると本明細書においてみなされ得る。さらに別の例において、アテンション符号化器1087、アテンション符号化モジュール1087、親ラベルベクトルモジュール1089、及び親ラベル付けモジュール1086は、係り受けモジュール108a、108bのサブモジュールであると本明細書においてみなされ得る。さらに別の例において、係り受け親分析モジュール1180、埋め込みモジュール1181、状態ベクトル生成モジュール1182、正規化モジュール1184、係り受け関係ラベルベクトル生成モジュール1187、及び係り受けラベルベクトル生成モジュール1188は、係り受けモジュール108a、108bのサブモジュールであると本明細書においてみなされ得る。さらなる例において、文入力モジュール1101、文表現モジュール1102、関連性ベクトル決定モジュール1103、及び関連性分類モジュール1104は、関連性符号化モジュール110a、110b及び/又は関連性モジュール112のサブモジュールであると本明細書においてみなされ得る。さらに別の例において、含意ベクトル決定モジュール1141、プーリングモジュール1142、及び含意分類モジュール1143は、含意符号化モジュール114a、114b及び/又は含意モジュール116のサブモジュールであると本明細書においてみなされ得る。モジュールとして特定される、
図1B及び
図1Cにおけるブロックは、方法におけるフローチャートステップとみなされ得る。モジュールはまた、必ずしも、その全てのコードをメモリ内で連続して配置する必要はない。コードのいくつかの部分は、他のモジュール又はそれらの間に配置される他の関数からのコードにより、コードの他の部分から分離され得る。
【0110】
一実施形態において、入力文内の単語を処理するハードウェア上で動作する多層ニューラルネットワークシステムであって、言語階層に従って層がスタックされている、ハードウェア上で動作するスタック型長短期記憶(LSTM)文処理器を含む多層ニューラルネットワークシステムが記載される。スタック型LSTM文処理器は、LSTM文モジュールのスタックで具現化され得る。スタック型LSTMは、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供するバイパス結合を含む。スタックされている層は、(i)品詞(略してPOS)ラベル埋め込み層、(ii)POSラベル埋め込み層の上にあるチャンクラベル埋め込み層、及び(iii)チャンクラベル埋め込み層の上にある係り受け親識別及び係り受け関係ラベル埋め込み層を含む。双方向LSTM及びPOSラベル分類器として実現されるPOSラベル埋め込み層は、入力文内の単語を表現する単語埋め込みベクトルを処理し、単語の各々についてPOSラベル埋め込みベクトル及びPOS状態ベクトルを生成する。POSラベル埋め込み層104のこれらのコンポーネントは、入力文内の単語を表現する単語埋め込みベクトルを処理するPOS処理モジュール1041、及び、単語の各々についてPOSラベル埋め込みベクトル及びPOS状態ベクトルを生成するPOS生成モジュール1042で具現化され得る。
【0111】
双方向LSTM及びチャンクラベル分類器として実現されるチャンクラベル埋め込み層106は、少なくとも単語埋め込みベクトルとPOSラベル埋め込みベクトルとPOS状態ベクトルとを処理して、チャンクラベル埋め込み及びチャンク状態ベクトルを生成する。チャンクラベル埋め込み層106のこれらのコンポーネントは、少なくとも単語埋め込みベクトルとPOSラベル埋め込みベクトルとPOS状態ベクトルとを処理するチャンク処理モジュール1061、及び、チャンクラベル埋め込み及びチャンク状態ベクトルを生成するチャンク生成モジュール1062で具現化され得る。
【0112】
双方向LSTM及び1つ以上の分類器として実現される係り受け親識別及び係り受け関係ラベル埋め込み層108は、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語の各々の係り受け親を識別し、単語と単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成する。係り受け親識別及び係り受け関係ラベル埋め込み層108のこれらのコンポーネントは、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理する係り受け処理モジュール1081、入力文内の単語の各々の係り受け親を識別する係り受け識別モジュール1082、及び、単語と単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成する係り受け生成モジュール1083で具現化され得る。
【0113】
多層ニューラルネットワークシステムはまた、入力文内の単語についての係り受け親の識別及び係り受け関係ラベル埋め込みの生成を反映した結果を少なくとも出力する出力処理器をさらに含む。
【0114】
このシステム及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なシステムに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0115】
開示されている多層ニューラルネットワークシステムの一実施形態において、言語階層は、文内の単語から、品詞、文のチャンク、単語と単語の係り受け親との間の係り受けリンク、係り受けリンクに関するラベルまでを、構築する。
【0116】
バイパス結合は、下位層により使用された入力ベクトルを、変更することなく、上位層に提供する。
【0117】
いくつかの実施形態において、POSラベル埋め込み層104は、さらに、単語埋め込みベクトルに加えて、入力文内の単語を表現するn文字グラム埋め込みベクトルを処理する。さらに、バイパス結合は、チャンクラベル埋め込み層と係り受け親識別及び係り受け関係ラベル埋め込み層とに、これらの上位層におけるそれぞれの双方向LSTMへの入力として、n文字グラム埋め込みベクトルを提供する。単語表現層102のこれらのさらなるコンポーネントは、単語埋め込みモジュール1021及びn文字グラム埋め込みモジュール1022で具現化され得る。バイパス結合は、チャンク処理モジュール及び係り受け処理モジュールとの結合で具現化され得る。
【0118】
POSラベル埋め込み層104は、さらに、POS状態ベクトルの指数関数的正規化により、POSラベル確率質量ベクトルを生成し、POSラベル確率質量ベクトルから、POSラベル埋め込みベクトルを生成することができる。この機能は、POSモジュール104で具現化され得る。さらに、チャンクラベル埋め込み層106は、チャンクラベル状態ベクトルのスケーリング正規化により、チャンクラベル確率質量ベクトルを生成し、チャンクラベル確率質量ベクトルから、チャンクラベル埋め込みベクトルを生成する。この機能は、チャンク生成モジュール1062で具現化され得る。さらに、係り受け親識別及び係り受け関係ラベル埋め込み層108は、双方向LSTMにより生成された親ラベル状態ベクトルの分類及びスケーリング正規化により、親ラベル確率質量ベクトルを生成する。この機能は、係り受け識別モジュール1082で具現化され得る。係り受け親識別及び係り受け関係ラベル埋め込み層はまた、親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成し、親ラベル状態ベクトル及び親ラベル埋め込みベクトル分類の分類及び指数関数的正規化により、係り受け関係ラベル確率質量ベクトルを生成し、係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する。この機能は、係り受け生成モジュール1083で具現化され得る。POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0119】
開示されている技術は、POSラベル埋め込み層の下にある単語埋め込み層又は処理器102をさらに含み得る。単語埋め込み処理器は、単語埋め込み器1021及びn文字グラム埋め込み器1022を含む。単語埋め込み器は、認識されると、入力文内の単語を、単語埋め込みベクトルにより表現される単語埋め込み空間にマッピングする。さらに、n文字グラム埋め込み器は、(i)単語の文字部分文字列を、部分文字列長の複数のスケールで処理し、(ii)各処理された文字部分文字列を、文字埋め込み空間内の位置を表現する中間ベクトルにマッピングし、(iii)各一意な処理された文字部分文字列についての中間ベクトルを組み合わせて、単語の各々について文字埋め込みベクトルを生成する。単語埋め込み処理器はまた、単語埋め込み器の結果とn文字グラム埋め込み器の結果とを組み合わせ、それにより、単語埋め込み空間に以前にマッピングされなかった単語が、それにもかかわらず、文字埋め込みベクトルにより表現される。単語埋め込み層102のこれらのコンポーネントは、入力文内の単語をマッピングする単語埋め込みモジュール1021、及び、単語における異なるスケールの文字部分文字列をマッピングするn文字グラム埋め込みモジュール1022で具現化され得、POS処理モジュール1041は、さらに、n文字グラム埋め込みモジュールの出力を処理して、単語埋め込み空間に以前にマッピングされなかった単語を表現する。
【0120】
n文字グラム埋め込み器は、少なくとも2つの方法で中間ベクトルを組み合わせることができる。n文字グラム埋め込み器は、文字埋め込みベクトルにおいて要素ごとの平均を生成することもできるし、要素ごとの最大値を選択することもできる。POSラベル分類器は、ソフトマックス層、又は、より一般的には、指数関数的正規化器を含み得る。これらの選択肢は、チャンクラベル分類器にも適用される。これらの代替の機能は、n文字グラム埋め込みモジュール及び/又はチャンク処理モジュール若しくはチャンク生成モジュールで具現化され得る。
【0121】
開示されている技術は、POSラベル埋め込み層、チャンクラベル埋め込み層、又は係り受け親識別及び係り受け関係ラベル埋め込み層におけるビーム探索なく良好に機能する。これは、狭いスパンを有するビーム探索を伴って実現されることもある。
【0122】
係り受け親識別及び係り受け関係ラベル埋め込み層は、さらに、係り受け親層及び係り受け関係ラベル分類器を含む。係り受け親識別層は、入力文内の単語を処理する、双方向LSTMとして実現される係り受け親分析器を含む。具体的には、係り受け親分析器は、各単語について、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語の間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトルを蓄積する。係り受け親識別層はまた、入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理し、入力文内の各単語の埋め込みと入力文内の他の単語の埋め込みとの間の内積としてアテンションを符号化する(ここで、内積の前に、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換が適用されている)アテンション符号化器を含む。さらに、アテンション符号化器は、内積のベクトルに指数関数的正規化を適用して、親ラベル確率質量ベクトルを生成し、親ラベル確率質量ベクトルを射影して、親ラベル埋め込みベクトルを生成する。さらに、開示されている技術は、入力文内の各単語について、(i)前方状態ベクトル及び後方状態ベクトル、親ラベル埋め込みベクトル、並びに親ラベル埋め込みベクトルを分類及び正規化して、係り受け関係ラベル確率質量ベクトルを生成し、(ii)係り受け関係ラベル確率質量ベクトルを射影して、係り受け関係ラベル埋め込みベクトルを生成する係り受け関係ラベル分類器を含む。係り受け親識別及び係り受け関係ラベル埋め込み層108のこれらのコンポーネントは、入力文内の単語を処理する係り受け親分析モジュール、及び、前方状態ベクトル及び後方状態ベクトルを処理して、親ラベル確率質量ベクトル及び親ラベル埋め込みベクトルを生成するアテンション符号化モジュールで具現化され得る。
【0123】
一実施形態において、開示されている多層ニューラルネットワークシステムは、係り受け親識別及び係り受け関係ラベル埋め込み層の上にある意味関連性層をさらに含む。意味関連性層は、関連性ベクトル計算器及び関連性分類器を含み、多層ニューラルネットワークシステムを通じて処理された第1の文と第2の文とのペアに対して作用する。開示されている技術の関連性ベクトル計算器は、第1の文及び第2の文の各々の文レベルの表現を決定する。関連性ベクトル計算器により行われる決定は、(i)第1の文及び第2の文のそれぞれの文内の単語の各々についての前方状態ベクトル及び後方状態ベクトルの双方向LSTM計算、及び(ii)それぞれの文を表現する文レベルの状態ベクトルを生成するための、それぞれの文内の単語についての前方状態ベクトル及び後方状態ベクトルにわたる要素ごとの最大プーリング計算を含む。関連性ベクトル計算器は、さらに、第1の文と第2の文との間の関連性のカテゴリ分類を導出するために関連性分類器により処理される要素ごとの文レベルの関連性ベクトルを計算する。この層は、さらなる処理のために、カテゴリ分類を報告することができる。
【0124】
意味関連性層110のコンポーネントは、文入力モジュール1101、文表現モジュール1102、関連性ベクトル決定器1103、及び関連性分類器1104で具現化され得る。文入力モジュール1101は、文モジュールのスタックを通じて処理された第1の文と第2の文とのペアを入力する。関連性ベクトル決定器1103は、第1の文及び第2の文の各々の文レベルの表現を決定し、関連性ベクトル決定器1103は、第1の文及び第2の文のそれぞれの文内の単語の各々について前方状態ベクトル及び後方状態ベクトルを決定する双方向LSTMと、それぞれの文内の単語の各々についての前方状態ベクトル及び後方状態ベクトルにわたって要素ごとに最大プーリングするプーリングモジュールと、それぞれの文を表現する文レベルの状態ベクトルを生成する文表現モジュール1102と、を含み、関連性分類器1104は、第1の文と第2の文との間の関連性をカテゴリ分類する。
【0125】
関連性ベクトル計算器はまた、(i)第1の文についての文レベルの関連性ベクトルと第2の文についての文レベルの関連性ベクトルとの間の要素ごとの差を決定し、(ii)第1の文についての文レベルの関連性ベクトルと第2の文についての文レベルの関連性ベクトルとの間の要素ごとの積を決定し、(iii)要素ごとの差の絶対値のベクトル及び要素ごとの積のベクトルを、関連性分類器への入力として使用することができる。
【0126】
開示されている技術は、意味関連性層の上にある含意層をさらに含み得る。含意層は、含意ベクトル計算器及び含意分類器を含む。さらに、含意ベクトル計算器は、第1の文及び第2の文の各々の文レベルの表現を計算する。含意ベクトル計算器により行われる計算は、(i)第1の文及び第2の文のそれぞれの文内の単語の各々についての前方状態ベクトル及び後方状態ベクトルの双方向LSTM計算、及び(ii)それぞれの文を表現する文レベルの状態ベクトルを生成するための、それぞれの文内の単語についての前方状態ベクトル及び後方状態ベクトルにわたる要素ごとの最大プーリング計算を含み得る。含意ベクトル計算器は、さらに、第1の文と第2の文との間の含意のカテゴリ分類を導出するために含意分類器により処理される要素ごとの文レベルの含意ベクトルを計算することができる。この層は、さらなる処理のために、カテゴリ分類を報告することができる。
【0127】
含意層114のコンポーネントは、第1の文及び第2の文の各々の文レベルの表現を決定する含意ベクトル決定器1141であって、第1の文及び第2の文のそれぞれの文内の単語の各々について前方状態ベクトル及び後方状態ベクトルを決定する双方向LSTMと、それぞれの文内の単語についての前方状態ベクトル及び後方状態ベクトルにわたって要素ごとに最大プーリングするプーリングモジュール1142と、それぞれの文を表現する文レベルの状態ベクトルを生成する文表現モジュール102と、を含む含意ベクトル決定器1141、及び、第1の文と第2の文との間の含意をカテゴリ分類する含意分類器1143で具現化され得る。
【0128】
含意ベクトル決定器又は計算器は、さらに、(i)第1の文についての文レベルの含意ベクトルと第2の文についての文レベルの含意ベクトルとの間の要素ごとの差を決定し、(ii)第1の文についての文レベルの含意ベクトルと第2の文についての文レベルの含意ベクトルとの間の要素ごとの積を決定し、(iii)要素ごとの差のベクトル及び要素ごとの積のベクトルを、含意分類器への入力として使用することができる。
【0129】
別の実施形態において、言語階層に従って層がスタックされている、ハードウェア上で動作するスタック型長短期記憶(略してLSTM)文処理器を用いて、入力文内の単語を処理する方法が提供される。このスタックは、LSTMトークン系列モジュールのスタックで具現化され得る。これらのスタックされている層は、(i)品詞(略してPOS)ラベル埋め込み層、(ii)POSラベル埋め込み層の上にあるチャンクラベル埋め込み層、及び(iii)チャンクラベル埋め込み層の上にある係り受け親識別及び係り受け関係ラベル埋め込み層を含む。詳細には、開示されている技術のこの方法は、バイパス結合を介して、下位層により使用された入力とともに、下位層からの埋め込み出力を、上位層に提供することを含む。この方法はまた、POSラベル埋め込み層において、双方向LSTM及びPOSラベル分類器を適用して、入力文内の単語を表現する単語埋め込みベクトルを処理し、単語の各々についてPOSラベル埋め込みベクトル及びPOS状態ベクトルを生成することを含む。さらに、この方法は、チャンクラベル埋め込み層において、双方向LSTM及びチャンクラベル分類器を適用して、少なくとも単語埋め込みベクトルとPOSラベル埋め込みベクトルとPOS状態ベクトルとを処理し、チャンクラベル埋め込み及びチャンク状態ベクトルを生成することを含む。この方法に従うと、係り受け親識別及び係り受け関係ラベル埋め込み層において、双方向LSTM及び1つ以上の分類器が適用されて、単語埋め込みベクトルとPOSラベル埋め込みベクトルとチャンクラベル埋め込みとチャンク状態ベクトルとが処理される。これは、入力文内の単語の各々の係り受け親を識別し、単語と単語のそれぞれの可能性のある親との間の関係の係り受け関係ラベル又はラベル埋め込みを生成するために、行われる。この方法はまた、入力文内の単語についての係り受け関係ラベル又はラベル埋め込みを反映した結果を出力することを含む。
【0130】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0131】
開示されている方法の一実施形態において、言語階層は、文内の単語から、品詞、文のチャンク、単語と単語の係り受け親との間の係り受けリンク、係り受けリンクに関するラベルまでを、構築する。
【0132】
バイパス結合を介して提供することは、下位層により使用された入力ベクトルを、変更することなく、上位層に提供することができる。
【0133】
いくつかの実施形態において、この方法は、POSラベル埋め込み層において、単語埋め込みベクトルに加えて、入力文内の単語を表現するn文字グラム埋め込みベクトルを処理する。さらに、バイパス結合は、チャンクラベル埋め込み層と係り受け親識別及び係り受け関係ラベル埋め込み層とに、これらの上位層におけるそれぞれの双方向LSTMへの入力として、n文字グラム埋め込みベクトルを提供する。
【0134】
開示されている方法は、POSラベル埋め込み層において、POS状態ベクトルの指数関数的正規化により、POSラベル確率質量ベクトルを生成することと、POSラベル確率質量ベクトルから、POSラベル埋め込みベクトルを生成することと、をさらに含み得る。さらに、この方法は、チャンクラベル埋め込み層において、チャンクラベル状態ベクトルのスケーリング正規化により、チャンクラベル確率質量ベクトルを生成し、チャンクラベル確率質量ベクトルから、チャンクラベル埋め込みベクトルを生成する。指数関数的正規化を適用するソフトマックス関数が、スケーリング正規化のために使用され得る。さらに、開示されている技術は、係り受け親識別及び係り受け関係ラベル埋め込み層において、(i)双方向LSTMにより生成された親ラベル状態ベクトルの分類及びスケーリング正規化により、親ラベル確率質量ベクトルを生成し、(ii)親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成し、(iii)親ラベル状態ベクトル及び親ラベル埋め込みベクトルの分類及びスケーリング正規化により、係り受け関係ラベル確率質量ベクトルを生成し、(iv)係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する。
【0135】
任意的に、POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似していてよい。
【0136】
いくつかの実施形態において、スタックされている層は、POSラベル埋め込み層の下にある単語埋め込み層を含み得る。単語埋め込み層は、単語埋め込み器及びn文字グラム埋め込み器を含み得る。さらに、この方法は、単語埋め込み器において、認識されると、入力文内の単語を、単語埋め込みベクトルにより表現される単語埋め込み空間にマッピングすることを含む。この方法はまた、n文字グラム埋め込み器において、(i)単語の文字部分文字列を、部分文字列長の複数のスケールで処理することと、(ii)各処理された文字部分文字列を、文字埋め込み空間内の位置を表現する中間ベクトルにマッピングすることと、(iii)各一意な処理された文字部分文字列についての中間ベクトルを組み合わせて、単語の各々について文字埋め込みベクトルを生成することと、を含む。単語埋め込み層は、単語埋め込み器及びn文字グラム埋め込み器からのベクトルを出力することができ、それにより、単語埋め込み空間に以前にマッピングされなかった単語が、それにもかかわらず、文字埋め込みベクトルにより表現される。単語埋め込み層のこれらのコンポーネントは、請求項に記載されているような単語埋め込みモジュール及びn文字グラム埋め込みモジュールで具現化され得る。
【0137】
n文字グラム埋め込み器は、少なくとも2つの方法で中間ベクトルを組み合わせることができる。n文字グラム埋め込み器は、文字埋め込みベクトルにおいて要素ごとの平均を生成することもできるし、要素ごとの最大値を選択することもできる。POSラベル分類器は、ソフトマックス層、又は、より一般的には、指数関数的正規化器を含み得る。これらの選択肢は、チャンクラベル分類器にも適用される。
【0138】
開示されている技術は、POSラベル埋め込み層、チャンクラベル埋め込み層、又は係り受け親識別及び係り受け関係ラベル埋め込み層におけるビーム探索なく良好に機能する。
【0139】
係り受け親識別及び係り受け関係ラベル埋め込み層は、さらに、係り受け親分析器、アテンション符号化器、及び係り受け関係ラベル分類器を含む。開示されている方法は、係り受け親分析器において、双方向LSTMを適用して、入力文内の単語を処理する。単語のこの処理は、各単語について、単語埋め込みとn文字グラム埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトルを蓄積することを含み得る。この方法はまた、アテンション符号化器において、入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理して、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換を適用した後(これにより、線形変換における重みがトレーニング可能である)、入力文内の各単語の埋め込みと入力文内の他の単語の埋め込みとの間の内積としてアテンションを符号化することを含み得る。この方法はまた、アテンション符号化器において、内積のベクトルに指数関数的正規化を適用して、親ラベル確率質量ベクトルを生成することと、親ラベル確率質量ベクトルを射影して、親ラベル埋め込みベクトルを生成することと、を含む。この方法は、係り受け関係ラベル分類器において、入力文内の各単語について、(i)前方状態ベクトル及び後方状態ベクトル、親ラベル埋め込みベクトル、並びに親ラベル埋め込みベクトルを分類及び正規化して、係り受け関係ラベル確率質量ベクトルを生成し、(ii)係り受け関係ラベル確率質量ベクトルを射影して、係り受け関係ラベル埋め込みベクトルを生成する。
【0140】
一実施形態において、スタックされている層すなわちモジュールのスタックは、係り受け親識別及び係り受け関係ラベル埋め込み層の上にある意味関連性層をさらに含む。意味関連性層は、関連性ベクトル計算器及び関連性分類器を含む。開示されている方法は、意味関連性層において、開示されている方法を通じて既に処理されている第1の文と第2の文とのペアに対して作用することを含む。さらに、開示されている方法は、関連性ベクトル計算器において、(i)双方向LSTMを適用して、第1の文及び第2の文のそれぞれの文内の単語の各々について前方状態ベクトル及び後方状態ベクトルを計算し、(ii)それぞれの文の各々についての前方状態ベクトル及び後方状態ベクトルの要素ごとの最大値を計算して、要素ごとの文レベルの関連性ベクトルを計算することにより、第1の文及び第2の文の各々の文レベルの表現を計算する。この方法はまた、文レベルの関連性ベクトルを処理して、第1の文と第2の文との間の関連性のカテゴリ分類を導出することを含む。この方法は、さらなる処理のために、カテゴリ分類又は文レベルの関連性ベクトルを報告することを含み得る。
【0141】
開示されている技術は、関連性ベクトル決定器又は計算器112において、(i)第1の文についての文レベルの関連性ベクトルと第2の文についての文レベルの関連性ベクトルとの間の要素ごとの差を決定し、(ii)第1の文についての文レベルの関連性ベクトルと第2の文についての文レベルの関連性ベクトルとの間の要素ごとの積を決定し、(iii)要素ごとの差の絶対値のベクトル及び要素ごとの積のベクトルを、関連性分類器への入力として使用する。
【0142】
いくつかの実施形態において、スタックされている層は、意味関連性層の上にある含意層をさらに含む。含意層114は、含意ベクトル決定器又は計算器1141と含意分類器1142とを含む。含意ベクトル決定器は、(i)双方向LSTMを適用して、第1の文及び第2の文のそれぞれの文内の単語の各々について前方状態ベクトル及び後方状態ベクトルを決定し、(ii)それぞれの文の各々についての前方状態ベクトル及び後方状態ベクトルの要素ごとの最大値を決定することにより、第1の文及び第2の文の各々の文レベルの表現を決定する。開示されている方法は、(i)含意ベクトル決定器において、要素ごとの文レベルの含意ベクトルを決定することと、(ii)文レベルの含意ベクトルを処理して、第1の文と第2の文との間の含意をカテゴリ分類することと、をさらに含む。
【0143】
開示されている方法はまた、含意ベクトル決定器が、(i)第1の文についての文レベルの含意ベクトルと第2の文についての文レベルの含意ベクトルとの間の要素ごとの差を決定することと、(ii)第1の文についての文レベルの含意ベクトルと第2の文についての文レベルの含意ベクトルとの間の要素ごとの積を決定することと、(iii)要素ごとの差のベクトル及び要素ごとの積のベクトルを、含意分類器への入力として使用することと、を含み得る。
【0144】
別の実施形態において、入力系列内のトークンの系列を処理するハードウェア上で動作する多層ニューラルネットワークシステムであって、分析階層に従って層がスタックされているスタック型LSTMトークン系列処理器を含む多層ニューラルネットワークシステムが記載される。このスタックは、LSTMトークン系列モジュールのスタックで具現化され得る。スタック型LSTMは、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供するバイパス結合を含む。スタックされている層は、(i)第1の埋め込み層、(ii)第1の埋め込み層の上にある第2の埋め込み層、及び(iii)第2の埋め込み層の上にある第3の埋め込み層を含む。双方向LSTM及び第1のラベル分類器として実現される第1の埋め込み層は、入力系列内のトークンを表現するトークン埋め込みを処理し、トークンの第1のラベル埋め込み及び第1の状態ベクトルを生成する。双方向LSTM及び第2のラベル分類器として実現される第2の埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第1の状態ベクトルとを処理して、第2のラベル埋め込み及び第2の状態ベクトルを生成する。双方向LSTMとして実現される第3の埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第2の状態ベクトルとを処理して、第3のラベル埋め込み及び第3の状態ベクトルを生成する。これらの3つの埋め込み層のコンポーネントは、請求項に記載されるような、それぞれの層の第1の処理モジュール、第2の処理モジュール、及び第3の処理モジュール(例えば、102、104、106)、並びに、第1の生成モジュール、第2の生成モジュール、及び第3の生成モジュールで具現化され得る。この多層ニューラルネットワークシステムはまた、入力系列内のトークンについての第3のラベル埋め込みを反映した結果を少なくとも出力する出力処理器を含む。
【0145】
このシステム及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なシステムに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0146】
バイパス結合は、下位層により使用された入力ベクトルを、変更することなく、上位層に提供する。
【0147】
開示されている多層ニューラルネットワークシステムの一実施形態において、第1の埋め込み層は、さらに、トークン埋め込みベクトルに加えて、入力系列内のトークンを表現するトークン分解埋め込みベクトルを処理する。さらに、バイパス結合は、第2の埋め込み層と第3の埋め込み層とに、これらの上位層におけるそれぞれの双方向LSTMへの入力として、トークン分解埋め込みベクトルを提供する。
【0148】
いくつかの実施形態において、第1の埋め込み層は、さらに、第1の状態ベクトルの指数関数的正規化により、第1のラベル確率質量ベクトルを生成し、第1のラベル確率質量ベクトルから、第1のラベル埋め込みベクトルを生成する。さらに、第2の埋め込み層は、第2の状態ベクトルの指数関数的正規化により、第2のラベル確率質量ベクトルを生成し、第2のラベル確率質量ベクトルから、第2のラベル埋め込みベクトルを生成する。さらに、第3の埋め込み層は、第3の状態ベクトルの指数関数的正規化により、第3のラベル確率質量ベクトルを生成し、第3のラベル確率質量ベクトルから、第3のラベル埋め込みベクトルを生成する。さらに、第1のラベル埋め込みベクトル、第2のラベル埋め込みベクトル、及び第3のラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0149】
開示されている技術は、第1の埋め込み層の下にあるトークン埋め込み処理器をさらに含み得る。トークン埋め込み処理器は、トークン埋め込み器及び分解トークン埋め込み器を含む。トークン埋め込み器は、認識されると、入力系列内のトークンを、トークン埋め込みベクトルにより表現されるトークン埋め込み空間にマッピングする。さらに、分解トークン埋め込み器は、(i)トークンのトークン分解を、複数のスケールで処理し、(ii)各処理されたトークン分解を、トークン分解埋め込み空間内の位置を表現する中間ベクトルにマッピングし、(iii)各一意な処理されたトークン分解についての中間ベクトルを組み合わせて、トークンの各々についてトークン分解埋め込みベクトルを生成する。トークン埋め込み処理器はまた、トークン埋め込み器の結果と分解トークン埋め込み器の結果とを組み合わせ、それにより、トークン埋め込み空間に以前にマッピングされなかったトークンが、それにもかかわらず、トークン分解埋め込みベクトルにより表現される。
【0150】
これらのラベル分類器のうち少なくとも1つは、ソフトマックス層、又は、より一般的には、指数関数的正規化器を含み得る。
【0151】
開示されている技術はまた、第1のラベル埋め込み層~第3のラベル埋め込み層におけるビーム探索なく良好に機能する。
【0152】
一実施形態において、開示されている多層ニューラルネットワークシステムは、第3のラベル埋め込み層の上にある第4のラベル埋め込み層をさらに含む。第4のラベル埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第3のラベル埋め込みと第3の状態ベクトルとを処理して、第4のラベル埋め込み及び第4の状態ベクトルを生成する双方向LSTMとして実現され得る。
【0153】
開示されている技術はまた、第4のラベル埋め込み層の上にある第5のラベル埋め込み層を含む。第5のラベル埋め込み層は、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第3のラベル埋め込みと第4のラベル埋め込みと第4の状態ベクトルとを処理して、第5のラベル埋め込み及び第5の状態ベクトルを生成する双方向LSTMとして実現され得る。
【0154】
別の実施形態において、言語階層に従って層がスタックされている、ハードウェア上で動作するスタック型長短期記憶(略してLSTM)文処理器を用いて、入力系列内のトークンを処理する方法が提供される。このスタックは、LSTMトークン系列モジュールのスタックで具現化され得る。これらのスタックされている層は、(i)第1の埋め込み層、(ii)第1の埋め込み層の上にある第2の埋め込み層、及び(iii)第2の埋め込み層の上にある第3の埋め込み層を含む。詳細には、この方法は、バイパス結合を介して、下位層により使用された入力とともに、下位層の埋め込み出力を、上位層に提供することを含む。この方法はまた、第1の埋め込み層が、双方向LSTM及び第1のラベル分類器を適用して、入力系列内のトークンを表現するトークン埋め込みを処理することと、トークンの第1のラベルベクトル及び第1の状態ベクトルを生成することと、を含む。さらに、この方法は、第2の埋め込み層が、双方向LSTM及び第2のラベル分類器を適用して、少なくともトークン埋め込みと第1のラベル埋め込みと第1の状態ベクトルとを処理して、第2のラベル埋め込み及び第2の状態ベクトルを生成することを含む。この方法に従うと、第3の埋め込み層が、双方向LSTMを適用して、少なくとも単語埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第2の状態ベクトルとを処理し、第3のラベル埋め込み及び第3の状態ベクトルを生成する。さらに、開示されている技術に従うと、この方法は、入力系列内のトークンについての第3のラベル埋め込みを含む、分析階層に従ったスタック型LSTM分析を反映した結果を出力することを含む。
【0155】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0156】
バイパス結合を介して提供することは、下位層により使用された入力ベクトルを、変更することなく、上位層に提供することができる。
【0157】
いくつかの実施形態において、この方法は、第1の埋め込み層において、トークン埋め込みベクトルに加えて、入力系列内のトークンを表現するトークン分解埋め込みベクトルを処理する。さらに、バイパス結合は、さらに、第2の埋め込み層と第3の埋め込み層とに、これらの上位層におけるそれぞれの双方向LSTMへの入力として、トークン分解埋め込みベクトルを提供する。
【0158】
開示されている方法は、第1の埋め込み層が、第1の状態ベクトルの指数関数的正規化により、第1のラベル確率質量ベクトルを生成することと、第1のラベル確率質量ベクトルから、第1のラベル埋め込みベクトルを生成することと、をさらに含み得る。さらに、第2の埋め込み層が、第2の状態ベクトルの指数関数的正規化により、第2のラベル確率質量ベクトルを生成し、第2のラベル確率質量ベクトルから、第2のラベル埋め込みベクトルを生成する。さらに、第3の埋め込み層が、第3の状態ベクトルの指数関数的正規化により、第3のラベル確率質量ベクトルを生成し、第3のラベル確率質量ベクトルから、第3のラベル埋め込みベクトルを生成する。開示されている方法に従うと、第1のラベル埋め込みベクトル、第2のラベル埋め込みベクトル、及び第3のラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0159】
開示されている方法はまた、トークン埋め込み器及び分解トークン埋め込み器を含む、第1のラベル埋め込み層の下にあるトークン埋め込み処理器を呼び出すことをさらに含み得る。さらに、この方法は、トークン埋め込み器において、認識されると、入力系列内のトークンを、トークン埋め込みベクトルにより表現されるトークン埋め込み空間にマッピングすることを含み得る。さらに、この方法は、分解トークン埋め込み器において、(i)トークンのトークン分解を、複数のスケールで処理し、(ii)各処理されたトークン分解を、トークン分解埋め込み空間内の位置を表現する中間ベクトルにマッピングし、(iii)各一意な処理されたトークン分解についての中間ベクトルを組み合わせて、トークンの各々についてトークン分解埋め込みベクトルを生成する。この方法はまた、トークン埋め込み器の結果と分解トークン埋め込み器の結果とを組み合わせ、それにより、トークン埋め込み空間に以前にマッピングされなかったトークンが、それにもかかわらず、トークン分解埋め込みベクトルにより表現される。
【0160】
これらのラベル分類器のうち少なくとも1つは、ソフトマックス層、又は、より一般的には、指数関数的正規化器を含み得る。
【0161】
開示されている技術はまた、第1のラベル埋め込み層~第3のラベル埋め込み層におけるビーム探索なく良好に機能する。
【0162】
開示されている技術に従うと、スタックされている層は、第3のラベル埋め込み層の上にある第4のラベル埋め込み層を含む。この方法はまた、第4のラベル埋め込み層において、双方向LSTMを適用して、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第3のラベル埋め込みと第3の状態ベクトルとを処理し、第4のラベル埋め込み及び第4の状態ベクトルを生成することを含む。
【0163】
別の実施形態において、スタックされている層は、第4のラベル埋め込み層の上にある第5のラベル埋め込み層を含む。さらに、この方法は、第5のラベル埋め込み層において、双方向LSTMを適用して、少なくともトークン埋め込みと第1のラベル埋め込みと第2のラベル埋め込みと第3のラベル埋め込みと第4のラベル埋め込みと第4の状態ベクトルとを処理し、第5のラベル埋め込み及び第5の状態ベクトルを生成することを含む。
【0164】
別の実施形態において、分析階層に従って少なくとも3つの層がスタックされている、ハードウェア上で動作するスタック型LSTM系列処理器をトレーニングする方法が提供される。バイパス結合は、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供する。この方法は、第1の層、第2の層、及び第3の層を、各層に関するトレーニング例を用いてバックプロパゲーションによりトレーニングすることであって、トレーニング中、下位層への正則化パスダウンが伴う、トレーニングすることを含む。具体的には、このトレーニングは、(i)第1の層のトレーニング例を用いて、第1の層をトレーニングすることと、(ii)第1の層への正則化パスダウントレーニングを伴う、第2の層のトレーニング例を用いて、第2の層をトレーニングすることと、(iii)第1の層及び第2の層への正則化パスダウントレーニングを伴う、第3の層のトレーニング例を用いて、第3の層をトレーニングすることと、を含む。正則化パスダウントレーニングは、少なくとも2つの正則化項を含むフィットネス関数を有するトレーニング目的関数を制約することにより正則化される。さらに、開示されている技術に従うと、少なくとも2つの正則化項は、下位層に適用された係数行列における重みの大きさの増加にペナルティを与えることにより正則化し、これは、下位層に適用された係数行列における重みの全ての変化を逐次正則化する。
【0165】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0166】
フィットネス関数は、負対数尤度に基づく交差エントロピー、平均二乗誤差、又はカルバック・ライブラーダイバージェンス(KLダイバージェンス)であってよい。さらに、開示されている技術に従うと、フィットネス関数は、
【数110】
により表され得、上記において、(n)は、スタック型LSTMのn番目の層を表し、
【数111】
は、正しいラベルαが文s内のw
tに割り当てられる確率値を表す。
【0167】
いくつかの実施形態において、下位層に適用された係数行列における重みの大きさの増加にペナルティを与える正則化項は、
【数112】
であり、上記において、nと同じ層である(m)は、スタック型LSTMの層1~mを表し、λは、L2ノルム正則化ハイパーパラメータであり、
【数113】
は、スタック型LSTMの層1~mについて重み付け行列の要素に、要素ごとに二乗演算を適用する。
【0168】
開示されている方法の一実施形態において、逐次正則化項は、
【数114】
であり、上記において、n-1と同じ層である(m-1)は、スタック型LSTMの層1~m-1を表し、δは、逐次正則化ハイパーパラメータであり、
【数115】
は、1つ以上の下位層の層パラメータを表し、
【数116】
は、前のサブエポックにおいて保持された1つ以上の下位層の層パラメータを表し、
【数117】
は、スタック型LSTMの層1~m-1について重み付け行列の要素に、要素ごとに二乗演算を適用する。
【0169】
さらに、開示されている方法において、スタック型LSTMにおける分析階層は、少なくとも5つの層又は少なくとも10個の層を含み得る。さらに、スタック型LSTMの下にあるベースメント(basement)層は、スタック型LSTMとは別個にトレーニングされ得、スタック型LSTMの最下層により使用される入力を生成することができる。スタック型LSTMの上にあるアチック(attic)層も、スタック型LSTMとは別個にトレーニングされ得、スタック型LSTMの最上層からの出力を使用することができる。このトレーニング方法は、スタックにおける少なくとも5つの層又は少なくとも10個の層をトレーニングすることを含み得る。ベースメント層及びアチック層は、別個にトレーニングされ得る。
【0170】
別の実施形態において、双方向LSTMのニューラルネットワークスタックにおいて下位層から上位層に中間結果を伝達する方法が提供される。双方向LSTMのニューラルネットワークスタックは、トークンの系列を処理する、分析フレームワークに対応する層を含む。さらに、下位層は、トークンの各々について分析フレームワークラベルベクトルを生成する。具体的には、この方法は、系列について、下位層を使用してトークンを分析することを含む。トークンの分析は、(i)双方向LSTMを適用して、トークンの各々について前方状態ベクトル及び後方状態ベクトルを計算することと、(ii)分類器を前方状態ベクトル及び後方状態ベクトルに適用して、利用可能な分析フレームワークラベルの数とほぼ同じ次元数を有するラベル空間ベクトルとして、トークンの各々を、分析フレームワークラベル空間に埋め込むことと、(iii)各トークンのラベル空間ベクトルを、前方状態及び後方状態の次元数とほぼ同じ次元数を有する拡張次元ラベル空間に射影して、拡張トークンラベルベクトルを生成することと、を含み得る。さらに、この方法は、下位層から上位層に、前方状態ベクトル、後方状態ベクトル、及び拡張トークンラベルベクトルを伝達することを含み、それにより、トークンを処理するための分析フレームワークにおいてその役割を果たすために、上位層により必要とされる入力を提供する。
【0171】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0172】
いくつかの実施形態において、開示されている方法は、状態ベクトル以外の、下位層により入力として受信されたベクトルを、バイパスにより上位層に伝達することを含む。下位層は、2つのより深い層の上にあり得る。さらに、開示されている方法は、2つのより深い層により入力として受信されたベクトル、及び、2つのより深い層により出力として生成された埋め込みラベルベクトルを、バイパスにより上位層に伝達することを含み得る。バイパスによるこの伝達は、伝達されるベクトルを、変更することなく、伝達させ得る。
【0173】
開示されている方法に従うと、利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数よりも少なく、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。いくつかの実施形態において、次元数は、前方状態及び後方状態の次元数の5分の1以下又は10分の1以下であり得る。
【0174】
別の実施形態において、入力系列内のトークンの系列を処理するハードウェア上で動作する多層ニューラルネットワークシステムであって、ハードウェア上で動作する、分析階層に従って層がスタックされているスタック型LSTMトークン系列処理器を含む多層ニューラルネットワークシステムが記載される。スタック型LSTMトークン系列処理器は、LSTM文モジュールのスタックで具現化され得る。スタック型LSTMは、下位層への入力とともに、下位層の埋め込み出力を、上位層に提供するバイパス結合を含む。スタックされている層は、(i)第1の埋め込み層及び(ii)第1の埋め込み層の上にある第2の埋め込み層を含む。第1の埋め込み層は、双方向LSTM及び第1のラベル分類器として実現され、入力系列内のトークンを表現するトークン埋め込みを処理する。第1の埋め込み層はまた、トークンの各々について分析フレームワークラベルベクトルを生成する。さらに、双方向LSTMは、トークンの各々について前方状態ベクトル及び後方状態ベクトルを生成する。第1の埋め込み層のこの機能は、入力系列内のトークンを表現するトークン埋め込みを処理する埋め込み処理モジュール、及び、分析フレームワークラベルベクトルを生成するラベルベクトル生成モジュールで具現化され得る。さらに、前方状態ベクトル及び後方状態ベクトルに適用される分類器は、利用可能な分析フレームワークラベルの数とほぼ同じ次元数を有するラベル空間ベクトルとして、トークンの各々を、分析フレームワークラベル空間に埋め込む。第1の埋め込み層のこの機能は、出力ポートで具現化され得る。
【0175】
第1の埋め込み層はまた、各トークンのラベル空間ベクトルを、前方状態及び後方状態の次元数とほぼ同じ次元数を有する拡張次元ラベル空間に射影して、拡張トークンラベルベクトルを生成することができる。この方法はまた、第1の埋め込み層が、第2の埋め込み層に、前方状態ベクトル、後方状態ベクトル、及び拡張トークンラベルベクトルを送信し、それにより、トークンを処理するための分析フレームワークにおいてその役割を果たすために、第2の埋め込み層により必要とされる入力を提供する。
【0176】
このシステム及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なシステムに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0177】
いくつかの実施形態において、この方法は、バイパスが、状態ベクトル以外の、第1の埋め込み層により入力として受信されたベクトルを、第2の埋め込み層に伝達することを含む。
【0178】
この多層ニューラルネットワークシステムの一実施形態において、第1の埋め込み層は、2つのより深い層の上にある。このシステムは、さらに、2つのより深い層により入力として受信されたベクトル、及び、2つのより深い層により出力として生成された埋め込みラベルベクトルを、バイパスにより第2の埋め込み層に伝達する。バイパスは、ベクトルを、変更することなく、伝達することができる。
【0179】
利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数よりも少ないものであり得、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。いくつかの実施形態において、次元数は、前方状態及び後方状態の次元数の5分の1以下又は10分の1以下であり得る。
【0180】
別の実施形態において、単語埋め込み空間に以前にマッピングされなかった単語を含む、入力文内の単語を処理するハードウェア上で動作する多層ニューラルネットワークシステムであって、単語埋め込み器又は埋め込みモジュールと部分文字列埋め込み器又は埋め込みモジュールであって、これらの両方が入力文内の単語を処理する、単語埋め込み器又は埋め込みモジュールと部分文字列埋め込み器又は埋め込みモジュールとを含む多層ニューラルネットワークシステムが記載される。単語埋め込み器は、以前に認識された単語を単語埋め込み空間にマッピングし、以前に認識されなかった単語を識別して、単語の各々について単語埋め込みベクトルを生成する。部分文字列埋め込み器は、(i)単語の文字部分文字列を、部分文字列長の複数のスケールで処理し、(ii)各処理された文字部分文字列を、文字埋め込み空間内の位置を表現する中間ベクトルにマッピングし、(iii)各一意な処理された文字部分文字列についての中間ベクトルを組み合わせて、単語の各々について文字埋め込みベクトルを生成する。この多層ニューラルネットワークシステムはまた、さらなるプロセス又は処理層による使用のために、単語埋め込みベクトル及び文字埋め込みベクトルの両方を報告する埋め込み組み合わせ器を含み、それにより、単語埋め込み空間に以前にマッピングされなかった単語が、それにもかかわらず、文字埋め込みベクトルにより表現される。
【0181】
このシステム及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なシステムに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0182】
開示されている多層ニューラルネットワークシステムの一実施形態において、部分文字列埋め込み器又は埋め込みモジュールは、(i)各一意な処理された文字部分文字列についての中間ベクトルの要素ごとの平均化により、中間ベクトルを組み合わせる、又は、(ii)各一意な処理された文字部分文字列についての中間ベクトルからの最大値の要素ごとの選択により、中間ベクトルを組み合わせる。
【0183】
いくつかの実施形態において、部分文字列埋め込み器又は埋め込みモジュールは、単語の始まり及び終わりにおけるセンチネルを計数せずに、2文字、3文字、及び4文字の部分文字列長を用いて、文字部分文字列を処理する。
【0184】
中間ベクトルの次元数は、単語埋め込みベクトルの次元数と等しくてよい。
【0185】
開示されている技術はまた、中間ベクトルを、単語埋め込みベクトルの次元数と等しい次元数の空間に射影することができる。
【0186】
さらに、この多層ニューラルネットワークシステムは、以前に認識されなかった単語を、未知の単語についての予約単語埋め込みベクトルにマッピングする単語埋め込み器を含み得る。
【0187】
別の実施形態において、ハードウェア上で動作する多層ニューラルネットワークシステムによる処理のために、単語埋め込み空間に以前にマッピングされなかった単語を含む、入力文内の単語を準備する方法が提供される。この処理は、単語埋め込み器及び部分文字列埋め込み器であって、これらの両方が入力文内の単語を処理する、単語埋め込み器及び部分文字列埋め込み器を使用して実行され得る。単語埋め込み器及び部分文字列埋め込み器は、それぞれ、単語埋め込み器モジュール及び文字列埋め込みモジュールで具現化され得る。この方法は、単語埋め込み器において、以前に認識された単語を単語埋め込み空間にマッピングすることと、以前に認識されなかった単語を識別して、単語の各々について単語埋め込みベクトルを生成することと、を含む。この方法はまた、部分文字列埋め込み器において、入力文内の単語の各々について、(i)単語の文字部分文字列を、部分文字列長の複数のスケールで処理することと、(ii)各処理された文字部分文字列を、文字埋め込み空間内の位置を表現する中間ベクトルにマッピングすることと、(iii)各一意な処理された文字部分文字列についての中間ベクトルを組み合わせて、単語の各々について文字埋め込みベクトルを生成することと、を含む。さらに、この方法は、単語埋め込みベクトル及び文字埋め込みベクトルを出力することを含み、それにより、単語埋め込み空間に以前にマッピングされなかった単語が、それにもかかわらず、文字埋め込みベクトルにより表現される。
【0188】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0189】
いくつかの実施形態において、部分文字列埋め込み器又は埋め込みモジュールは、(i)各一意な処理された文字部分文字列についての中間ベクトルの要素ごとの平均化により、中間ベクトルを組み合わせることができる、又は、(ii)各一意な処理された文字部分文字列についての中間ベクトルからの最大値の要素ごとの選択により、中間ベクトルを組み合わせることができる。
【0190】
開示されている方法は、部分文字列埋め込み器又は埋め込みモジュールが、単語の始まり及び終わりにおけるセンチネルを計数せずに、2文字、3文字、及び4文字の部分文字列長を用いて、文字部分文字列を処理することを含み得る。
【0191】
中間ベクトルの次元数は、単語埋め込みベクトルの次元数と等しくてよい。
【0192】
一実施形態において、開示されている方法は、(i)中間ベクトルを、単語埋め込みベクトルの次元数と等しい次元数の空間に射影すること、及び/又は、(ii)単語埋め込み器又は埋め込みモジュールが、以前に認識されなかった単語を、未知の単語についての予約単語埋め込みベクトルにマッピングすることを含み得る。
【0193】
別の実施形態において、入力文内の単語を処理する、ハードウェア上で動作する、ニューラルネットワークデバイスの係り受け解析層コンポーネントが記載される。係り受け解析層は、チャンクラベル埋め込み及びチャンク状態ベクトルを生成するチャンクラベル埋め込み層の上にある。さらに、チャンクラベル埋め込み層は、POSラベル埋め込みを生成するPOSラベル埋め込み層の上にある。係り受け解析層コンポーネントは、係り受け親層及び係り受け関係ラベル分類器を含む。さらに、係り受け親層は、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、双方向LSTMにより生成された親ラベル状態ベクトルの分類及び指数関数的正規化により親ラベル確率質量ベクトルを生成する、双方向LSTM及び1つ以上の分類器を含む。係り受け親層はまた、親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成する。係り受け関係ラベル分類器は、親ラベル状態ベクトル及び親ラベル埋め込みベクトルの分類及び指数関数的正規化により、係り受け関係ラベル確率質量ベクトルを生成する。さらに、係り受け関係ラベル分類器は、係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する。POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。係り受け解析層コンポーネントは、係り受け関係ラベル埋め込みベクトル又はこれに基づく係り受け関係ラベルを少なくとも出力する出力処理器をさらに含む。
【0194】
係り受け解析層コンポーネント108の一部は、埋め込み処理モジュール1084、質量ベクトル生成モジュール1085、及び親ラベルベクトル生成モジュール1086で具現化され得る。埋め込み処理モジュールは、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理する。質量ベクトル生成モジュールは、双方向LSTMにより生成された親ラベル状態ベクトルから、親ラベル確率質量ベクトルを生成する。親ラベルベクトル生成モジュールは、親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成する。係り受け関係ラベル分類器は、正規化モジュール及び係り受けラベルベクトル生成モジュールで具現化され得る。正規化モジュールは、親ラベル状態ベクトル及び親ラベル埋め込みベクトルをスケーリング正規化する。係り受けラベルベクトル生成モジュールは、親ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する。
【0195】
このコンポーネント及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なコンポーネントに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0196】
いくつかの実施形態において、双方向LSTMは、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する、入力文内の各単語についての前方親ラベル状態ベクトル及び後方親ラベル状態ベクトルを生成し、前方親ラベル状態ベクトル及び後方親ラベル状態ベクトルから、親ラベル確率質量ベクトルが生成される。ニューラルネットワークの開示されている係り受け解析層コンポーネント108は、(i)入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理し、(ii)入力文内の各単語の埋め込みと入力文内の他の単語の埋め込みとの間の内積のベクトルとして、アテンションを符号化し(内積の前に、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換が適用されている)、(iii)符号化されたアテンションベクトルから、親ラベル埋め込みベクトルを生成するアテンション符号化器1087をさらに含む。アテンション符号化器のコンポーネントは、符号化されたアテンションベクトルから、親ラベル埋め込みベクトルを生成するアテンション符号化モジュール1088及び親ラベルベクトルモジュール1089で具現化され得る。
【0197】
内積の前に適用される線形変換は、係り受け親層及び係り受け関係分類器のトレーニング中にトレーニング可能である。
【0198】
開示されている係り受け解析層コンポーネントに従うと、(i)係り受け関係確率質量ベクトルが決定される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数よりも少なく、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する、又は、(ii)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の10分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。いくつかの実施形態において、次元数は、前方状態及び後方状態の次元数の5分の1以下であり得る。
【0199】
一実施形態において、入力文内の単語を処理する、ハードウェア上で動作する、ニューラルネットワークデバイスの係り受け解析層コンポーネントが記載される。係り受け解析層は、チャンクラベル埋め込み及びチャンク状態ベクトルを生成するチャンクラベル埋め込み層の上にある。チャンクラベル埋め込み層は、POSラベル埋め込み及びPOS状態ベクトルを生成するPOSラベル埋め込み層の上にある。係り受け解析層コンポーネントは、係り受け親層及び係り受け関係ラベル分類器を含む。さらに、係り受け親層は、入力文内の単語を処理する、双方向LSTMとして実現される係り受け親分析器を含む。双方向LSTMは、各単語について、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトルを蓄積する。係り受け親分析器1180のコンポーネントは、各単語について、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理する埋め込みモジュール又は処理器1181、及び、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトルを生成する状態ベクトル生成モジュール1182で具現化され得る。
【0200】
係り受け親層はまた、(i)入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理し、(ii)可能性のある係り受けに対するアテンションを符号化し、(iii)スケーリング正規化を内積のベクトルに適用して、親ラベル確率質量ベクトルを生成し、親ラベル確率質量ベクトルを射影して、親ラベル埋め込みベクトルを生成するアテンション符号化器を含む。アテンション符号化器1087のこれらのコンポーネントの機能は、スケーリング正規化を適用して、親ラベル確率質量ベクトルを生成する正規化モジュール1184、及び、親ラベル確率質量ベクトルを射影して、親ラベル埋め込みベクトルを生成する親ラベル付けモジュール1186で具現化され得る。
【0201】
さらに、係り受けラベル分類器は、入力文内の各単語について、(i)前方状態ベクトル及び後方状態ベクトル、親ラベル埋め込みベクトル、並びに親ラベル埋め込みベクトルを分類及び正規化して、係り受け関係ラベル確率質量ベクトルを生成し、(ii)係り受け関係ラベル確率質量ベクトルを射影して、係り受け関係ラベル埋め込みベクトルを生成する。係り受け解析層コンポーネントはまた、各単語の係り受け関係についての分類ラベル、係り受け関係ラベル確率質量ベクトル、又は係り受け関係ラベル埋め込みベクトルを反映した結果を少なくとも出力する出力処理器を含む。係り受け関係ラベル分類器1186は、埋め込みベクトル及び親ラベル埋め込みベクトルから、係り受け関係ラベル確率質量ベクトルを生成する係り受け関係ラベルベクトル生成モジュール1187、及び、係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成する係り受けラベルベクトル生成モジュール1188で具現化され得る。
【0202】
可能性のある係り受けに対するアテンションは、入力文内の各単語の埋め込みと入力文内の他の単語の埋め込みとの間の内積として決定され得、内積の前に、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換が適用されている。
【0203】
このコンポーネント及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的なコンポーネントに関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0204】
内積の前に適用される線形変換は、係り受け親層及び係り受け関係分類器のトレーニング中にトレーニング可能である。
【0205】
いくつかの実施形態において、次元ボトルネックは、上述したように、利用可能な分析フレームワークラベルの数を制限することにより、スタックをトレーニングするときの過剰適合を低減させる利点をもって、もたらされ得る。代替実施形態において、(i)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の5分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する、又は、(ii)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の10分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。
【0206】
別の実施形態において、入力文内の単語を処理する、ハードウェア上で動作する、ニューラルネットワークシステム又はデバイスを用いる係り受け解析の方法が提供される。係り受け解析層は、チャンクラベル埋め込み及びチャンク状態ベクトルを生成するチャンクラベル埋め込み層の上にある。チャンクラベル埋め込み層は、POSラベル埋め込みを生成するPOSラベル埋め込み層の上にある。さらに、係り受け解析層は、係り受け親層及び係り受け関係ラベル分類器を含む。開示されている方法は、係り受け親層において、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理する双方向LSTM及び1つ以上の分類器を適用して、双方向LSTMにより生成された親ラベル状態ベクトルの分類及びスケーリング正規化により、親ラベル確率質量ベクトルを生成することを含む。スケーリング正規化は、指数関数的正規化を実行するソフトマックスコンポーネントを使用して実施され得る。この方法はまた、親ラベル確率質量ベクトルから、親ラベル埋め込みベクトルを生成することを含む。開示されている方法は、係り受け関係ラベル分類器において、(i)親ラベル状態ベクトル及び親ラベル埋め込みベクトルの分類及びスケーリング正規化により、係り受け関係ラベル確率質量ベクトルを生成することと、(ii)係り受け関係ラベル確率質量ベクトルから、係り受け関係ラベル埋め込みベクトルを生成することと、をさらに含む。開示されている方法に従うと、係り受け関係ラベル埋め込みベクトル又はこれに基づく係り受け関係ラベルが少なくとも報告、出力、又は保持される。
【0207】
任意的に、POSラベル埋め込みベクトル、チャンクラベル埋め込みベクトル、及び係り受け関係ラベル埋め込みベクトルの次元数は、+/-10パーセント以内で類似している。
【0208】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0209】
いくつかの実施形態において、この方法は、双方向LSTMが、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する、入力文内の各単語についての前方親ラベル状態ベクトル及び後方親ラベル状態ベクトルを生成することを含み、前方親ラベル状態ベクトル及び後方親ラベル状態ベクトルから、親ラベル確率質量ベクトルが生成される。この方法はまた、入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理するアテンション符号化器において、ベクトルとして、可能性のある係り受けに対するアテンションを符号化することを含む。
【0210】
これは、入力文内の各単語の埋め込みと入力内の他の単語の埋め込みとの間の内積を決定することと、内積の前に、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換を適用することと、符号化されたアテンションベクトルから、親ラベル埋め込みベクトルを生成することと、を含み得る。
【0211】
内積の前に適用される線形変換は、係り受け親層及び係り受け関係分類器のトレーニング中にトレーニング可能である。
【0212】
開示されている方法に従うと、次元ボトルネックは、上述したように、利用可能な分析フレームワークラベルの数を制限することにより、スタックをトレーニングするときの過剰適合を低減させる利点をもって、もたらされ得る。代替実施形態において、(i)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の5分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する、又は、(ii)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の10分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。
【0213】
別の実施形態において、入力文内の単語を処理する、ハードウェア上で動作する、ニューラルネットワークデバイスを用いる係り受け解析の方法が提供される。係り受け解析層は、チャンクラベル埋め込み及びチャンク状態ベクトルを生成するチャンクラベル埋め込み層の上にある。チャンクラベル埋め込み層は、POSラベル埋め込みを生成するPOSラベル埋め込み層の上にある。さらに、係り受け解析層は、係り受け親層及び係り受け関係ラベル分類器を含む。開示されている方法は、係り受け親層において、係り受け親分析器において、双方向LSTMを適用して、入力文内の単語を処理することを含む。これらのプロセスは、各単語について、単語埋め込みとPOSラベル埋め込みとチャンクラベル埋め込みとチャンク状態ベクトルとを処理して、入力文内の単語間の相互作用の前方への進行及び後方への進行を表現する前方状態ベクトル及び後方状態ベクトルを蓄積することを含む。開示されている方法はまた、係り受け親層において、入力文内の各単語についての前方状態ベクトル及び後方状態ベクトルを処理するアテンション符号化器において、(i)入力文内の各単語の埋め込みと入力文内の他の単語の埋め込みとの間の内積として、アテンションを符号化することと(内積の前に、単語又は他の単語についての前方状態ベクトル及び後方状態ベクトルに線形変換が適用されている)、(ii)スケーリング正規化を内積のベクトルに適用して、親ラベル確率質量ベクトルを生成し、親ラベル確率質量ベクトルを射影して、親ラベル埋め込みベクトルを生成することと、を含む。さらに、開示されている方法に従うと、係り受け関係ラベル分類器において、入力文内の各単語について、(i)前方状態ベクトル及び後方状態ベクトル、親ラベル埋め込みベクトル、並びに親ラベル埋め込みベクトルを分類及び正規化して、係り受け関係ラベル確率質量ベクトルを生成し、(ii)係り受け関係ラベル確率質量ベクトルを射影して、係り受け関係ラベル埋め込みベクトルを生成する。開示されている方法はまた、各単語の係り受け関係についての分類ラベル、係り受け関係ラベル確率質量ベクトル、又は係り受け関係ラベル埋め込みベクトルを反映した結果を少なくとも出力することを含む。
【0214】
この方法及び開示されている技術の他の実施形態は各々、任意的に、以下の特徴及び/又は開示されている追加的な方法に関して説明されている特徴のうちの1つ以上を含んでもよい。簡潔にするために、本出願において開示されている特徴の組み合わせは、個々には列挙されず、各ベースとなる特徴のセットについて繰り返されない。読者は、このセクションにおいて特定される特徴が、実施形態として特定されるベースとなる特徴のセットとどのように容易に組み合わせられ得るかを理解するであろう。
【0215】
内積の前に適用される線形変換は、係り受け親層及び係り受け関係分類器のトレーニング中にトレーニング可能である。
【0216】
開示されている方法に従うと、次元ボトルネックは、上述したように、利用可能な分析フレームワークラベルの数を制限することにより、スタックをトレーニングするときの過剰適合を低減させる利点をもって、もたらされ得る。代替実施形態において、(i)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の5分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する、又は、(ii)係り受け関係確率質量ベクトルが計算される利用可能な分析フレームワークラベルの数は、前方状態及び後方状態の次元数の10分の1以下であり、それにより、双方向LSTMのニューラルネットワークスタックをトレーニングするときの過剰適合を低減させる次元ボトルネックを形成する。
【0217】
他の実施形態は、プロセッサとプロセッサに接続されたメモリとにより組み合わせ可能である命令が与えられた有形の非一時的なコンピュータ読み取り可能な媒体を含み得る。命令は、コンピュータデバイス及び1つ以上のサーバ上で実行されたときに、前述の方法のいずれかを実行する。さらに他の実施形態において、プロセッサとプロセッサに接続されたメモリとにより組み合わせ可能である命令を含む有形の非一時的なコンピュータ読み取り可能な媒体は、前述のシステムを実現する。
【0218】
さらに別の実施形態は、1つ以上のプロセッサと、1つ以上のプロセッサに接続された、コンピュータ命令を含むメモリと、を含む少なくとも1つのサーバを含むコンピューティングシステムであって、コンピュータ命令が、1つ以上のプロセッサ上で実行されたとき、コンピュータ命令が、コンピューティングシステムに、前述のプロセスのうちのいずれかを実行させる、コンピューティングシステムを含み得る。
【0219】
開示されている技術は、上記で詳述された好ましい実施形態及び例を参照することにより開示されているが、これらの例は、限定ではなく例示であるよう意図されていることを理解されたい。当業者であれば、変更及び組み合わせが容易に思い付くであろうことが企図されており、そのような変更及び組み合わせは、本発明の主旨及び請求項の範囲内である。
【0220】
(コンピュータシステム)
図11は、同時多タスクニューラルネットワークモデル100を実現するために使用され得るコンピュータシステム1100の簡略化されたブロック図である。コンピュータシステム1100は、一般に、バスサブシステム1132を介して複数の周辺デバイスと通信する1つ以上のCPUプロセッサ1120を含む。これらの周辺デバイスは、例えばメモリデバイスを含むメモリサブシステム1112及びファイル記憶サブシステム1118と、ユーザインタフェース入力デバイス1130と、ユーザインタフェース出力デバイス1124と、ネットワークインタフェースサブシステム1122と、複数のGPUプロセッシングコア又はGPUプロセッサ1128を含むGPU1126と、を含み得る。入力デバイス及び出力デバイスは、コンピュータシステム1100とのユーザインタラクションを可能にする。ネットワークインタフェースサブシステム1122は、他のコンピュータシステムにおける対応するインタフェースデバイスへのインタフェースを含め、外部ネットワークへのインタフェースを提供する。
【0221】
いくつかの実施形態に従うと、同時多タスクニューラルネットワークモデル100の動作は、GPUプロセッシングコア1128により実行される。
【0222】
ユーザインタフェース入力デバイス1130又はクライアント若しくはクライアントデバイスは、キーボード;マウス、トラックボール、タッチパッド、又はグラフィックスタブレット等のポインティングデバイス;スキャナ;ディスプレイに組み込まれたタッチスクリーン;音声認識システム及びマイクロフォン等のオーディオ入力デバイス;及び、他のタイプの入力デバイスを含み得る。概して、用語「入力デバイス」の使用は、コンピュータシステム1100に情報を入力するための全ての可能なタイプのデバイス及び態様を含むよう意図されている。
【0223】
ユーザインタフェース出力デバイス1124は、ディスプレイサブシステム;プリンタ;ファックス機;及び、オーディオ出力デバイス等の非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)等のフラットパネルデバイス、投影デバイス、又は可視画像を生成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイス等の非視覚的ディスプレイを提供することができる。概して、用語「出力デバイス」の使用は、コンピュータシステム1100からユーザ又は別のマシン若しくはコンピュータシステムに情報を出力するための全ての可能なタイプのデバイス及び態様を含むよう意図されている。
【0224】
記憶サブシステム1110は、本開示に記載のモジュール及び方法の一部又は全ての機能を提供するプログラミング及びデータ構造を記憶する。これらのソフトウェアモジュールは、一般に、CPUプロセッサ1120により単独で、又は、GPUプロセッサ1128等の他のプロセッサとCPUプロセッサ1120との組み合わせにより、実行される。
【0225】
記憶サブシステムにおけるメモリサブシステム1112は、プログラムの実行中に命令及びデータを記憶するためのメインランダムアクセスメモリ(RAM)1116と、固定された命令が記憶される読み取り専用メモリ(ROM)1114と、を含め、複数のメモリを含み得る。ファイル記憶サブシステム1118は、プログラム及びデータファイルのための永続的記憶を提供することができ、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ及び関連する着脱可能な媒体、CD-ROMドライブ、光学ドライブ、及び着脱可能なメディアカートリッジを含み得る。所定の実施形態の機能を実装しているモジュールは、ファイル記憶サブシステム1118又はメモリサブシステム1112により記憶されることもあるし、プロセッサによりアクセス可能な他のマシンに記憶されることもある。
【0226】
バスサブシステム1132は、意図されるようにコンピュータシステム1100の様々なコンポーネント及びサブシステムに互いと通信させるための機構を提供する。バスサブシステム1132が、単一のバスとして概略的に図示されているが、バスサブシステムの代替実施形態は、複数のバスを使用してもよい。いくつかの実施形態において、アプリケーションサーバ(図示せず)は、ハードウェア及び/又はソフトウェア(例えばオペレーティングシステム)等、コンピュータシステム1100のアプリケーションが動作することを可能にするフレームワークであってよい。
【0227】
コンピュータシステム1100自体は、パーソナルコンピュータ、ポータブルコンピュータ、ワークステーション、コンピュータ端末、ネットワークコンピュータ、テレビジョン、メインフレーム、サーバファーム、自由にネットワーク化されたコンピュータの広く分散されているセット、又は、任意の他のデータ処理システム若しくはユーザデバイスを含む様々なタイプであってよい。コンピュータ及びネットワークの常に変化する性質に起因して、
図11に示されているコンピュータシステム1100の記載は、本発明の好ましい実施形態を例示するための具体例として意図されているに過ぎない。
図11に示されているコンピュータシステムよりも多い又は少ないコンポーネントを有する、コンピュータシステム1100の多くの他の構成が可能である。
【0228】
前述の説明は、開示されている技術の製造及び使用を可能にするように提示されている。開示されている技術の主旨及び範囲から逸脱することなく、開示されている実施形態に対する様々な変更が明らかであり、本開示において規定されている一般的な原理は、他の実施形態及び用途にも適用可能である。したがって、開示されている技術は、例示されている実施形態に限定されるよう意図されるものではなく、本出願において開示されている原理及び特徴と整合する最も広い範囲に従うべきである。開示されている技術の範囲は、請求項により定められる。
【0229】