(57)【要約】開示されている技術は、直近の文脈からトークンを再生成する又は予め規定された語彙からトークンを生成する能力を有する、ニューラルネットワーク系列モデルのためのいわゆる「ポインタセンチネル混合アーキテクチャ」を提供する。一実施形態において、ポインタセンチネル−ＬＳＴＭアーキテクチャは、標準的なソフトマックスＬＳＴＭよりもはるかに少ないパラメータを使用しながら、Penn  Treebankデータセットに関して７０．９パープレキシティという最高水準の言語モデリング性能を実現している。
2019537809.tif 000002
【特許請求の範囲】
【請求項１】
文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測する、コンピュータにより実行される方法であって、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成するステップであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成するステップであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成するステップであって、前記混合は、前記センチネルにより制御される、ステップと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から単語を選択するステップと、
を含む、コンピュータにより実行される方法。
【請求項２】
前記ニューラルネットワークは、再帰型ニューラルネットワーク（ＲＮＮ）である、請求項１に記載のコンピュータにより実行される方法。
【請求項３】
前記ＲＮＮは、長短期メモリ（ＬＳＴＭ）ネットワークである、請求項１又は２に記載のコンピュータにより実行される方法。
【請求項４】
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成するステップと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成するステップと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成するステップと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成するステップと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用するステップと、
をさらに含む、請求項１乃至３のいずれか一項に記載のコンピュータにより実行される方法。
【請求項５】
ある単語が、前記系列内にあり前記語彙内にない場合、対応する正規化されたアテンション質量から、該ある単語についての結合尤度を決定するステップと、
ある単語が、前記語彙内にあり前記系列内にない場合、前記語彙分布から決定された対応する語彙確率質量から、該ある単語についての結合尤度を決定するステップと、
ある単語が、前記系列内にも前記語彙内にもある場合、前記正規化されたセンチネルゲート質量を、前記語彙分布から生成された対応する語彙確率質量と乗算し、対応する正規化されたアテンション質量を加算することにより、該ある単語についての結合尤度を決定するステップと、
前記クエリベクトルに対する応答として、したがって、前記の予測された次単語として、最大結合尤度を有する単語を選択するステップと、
をさらに含む、請求項１乃至４のいずれか一項に記載のコンピュータにより実行される方法。
【請求項６】
前記正規化されたセンチネルゲート質量は、前記次単語が、前記系列からの文脈単語であるか又は前記語彙からの語彙単語であるかを制御する、請求項１乃至５のいずれか一項に記載のコンピュータにより実行される方法。
【請求項７】
前記正規化されたセンチネルゲート質量は、前記次単語が前記語彙内にのみ存在する場合には１であり、前記語彙からのみ前記次単語を予測するステップ
をさらに含む、請求項１乃至６のいずれか一項に記載のコンピュータにより実行される方法。
【請求項８】
前記正規化されたセンチネルゲート質量は、前記次単語が前記系列内にのみ存在する場合には０であり、前記系列からのみ前記次単語を予測するステップ
をさらに含む、請求項１乃至７のいずれか一項に記載のコンピュータにより実行される方法。
【請求項９】
１つの文脈単語が、前記系列内の複数の位置において出現し、
前記コンピュータにより実行される方法は、
前記系列内の、前記１つの文脈単語の前記複数の位置の各々の位置に対応する正規化されたアテンション質量を加算して、前記次単語についての最終の正規化されたアテンション質量を生成するステップと、
前記最終の正規化されたアテンション質量を使用して、前記次単語についての結合尤度を生成するステップと、
をさらに含む、請求項１乃至８のいずれか一項に記載のコンピュータにより実行される方法。
【請求項１０】
音声認識、機械翻訳、テキスト要約、質問回答、画像キャプション付け、及びテキスト音声合成を含む１つ以上の言語モデリングタスクのために、前記ニューラルネットワーク及び前記の生成された結合尤度を使用するステップ
をさらに含む、請求項１乃至９のいずれか一項に記載のコンピュータにより実行される方法。
【請求項１１】
メモリに接続されている１つ以上のプロセッサを含むシステムであって、文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測するためのコンピュータ命令が、前記メモリにロードされ、前記コンピュータ命令は、前記１つ以上のプロセッサ上で実行されたときに、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成することであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、生成することと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成することであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、生成することと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成することであって、前記混合は、前記センチネルにより制御される、生成することと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から単語を選択することと、
を含む動作を実行する、システム。
【請求項１２】
前記コンピュータ命令は、前記１つ以上のプロセッサ上で実行されたときに、
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成することと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成することと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成することと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成することと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用することと、
を含む動作をさらに実行する、請求項１１に記載のシステム。
【請求項１３】
前記コンピュータ命令は、前記１つ以上のプロセッサ上で実行されたときに、
ある単語が、前記系列内にあり前記語彙内にない場合、対応する正規化されたアテンション質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記語彙内にあり前記系列内にない場合、前記語彙分布から決定された対応する語彙確率質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記系列内にも前記語彙内にもある場合、前記正規化されたセンチネルゲート質量を、前記語彙分布から生成された対応する語彙確率質量と乗算し、対応する正規化されたアテンション質量を加算することにより、該ある単語についての結合尤度を決定することと、
前記クエリベクトルに対する応答として、したがって、前記の予測された次単語として、最大結合尤度を有する単語を選択することと、
を含む動作をさらに実行する、請求項１１又は１２に記載のシステム。
【請求項１４】
文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測するためのコンピュータプログラム命令が与えられた非一時的なコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラム命令は、プロセッサ上で実行されたときに、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成するステップであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成するステップであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成するステップであって、前記混合は、前記センチネルにより制御される、ステップと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から単語を選択するステップと、
を含む方法を実行する、非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項１５】
前記コンピュータプログラム命令は、前記プロセッサ上で実行されたときに、
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成するステップと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成するステップと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成するステップと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成するステップと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用するステップと、
をさらに含む前記方法を実行する、請求項１４に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
開示されている技術は、一般に、深層ニューラルネットワークを用いた自然言語処理（ＮＬＰ）に関し、詳細には、ニューラルネットワークベースの言語モデリングにおいて次単語予測を向上させるポインタセンチネル混合アーキテクチャに関する。
【０００２】
本出願は、２０１６年９月２２日に出願された米国仮特許出願第62/397,926号「POINTER  SENTINEL  MIXTURE  MODELS（ポインタセンチネル混合モデル）」（代理人案件番号SALE  1174-1/1863PROV1）の利益を主張する。この優先権仮出願は、参照により本明細書に組み込まれる。
本出願は、２０１６年９月２２日に出願された米国仮特許出願第62/398,461号「POINTER  SENTINEL  MIXTURE  MODELS（ポインタセンチネル混合モデル）」（代理人案件番号SALE  1174-2/1863PROV2）の利益を主張する。この優先権仮出願は、参照により本明細書に組み込まれる。
本出願は、２０１６年１１月  ４日に出願された米国仮特許出願第62/417,334号「POINTER  SENTINEL  MIXTURE  MODELS（ポインタセンチネル混合モデル）」（代理人案件番号SALE  1174-3/1863PROV3）の利益を主張する。この優先権仮出願は、参照により本明細書に組み込まれる。
本出願は、２０１７年  １月３１日に出願された米国特許出願第15/421,016号「POINTER  SENTINEL  MIXTURE  MODELS（ポインタセンチネル混合モデル）」（代理人案件番号SALE  1174-4/1863US）の利益を主張する。この優先権出願は、参照により本明細書に組み込まれる。
【背景技術】
【０００３】
このセクションにおいて論じられている主題は、単にこのセクションにおいて述べられている結果として、従来技術であるとみなされるべきではない。同様に、このセクションにおいて述べられている又は背景として提供されている主題に関連付けられている問題は、従来技術において以前に認識されているとみなされるべきではない。このセクションにおける主題は、単に、特許請求される技術の実施形態に対応し得る異なるアプローチを表す。
【０００４】
ソフトマックス分類器を含む最近のニューラルネットワーク系列モデルは、非常に大きな隠れ状態及び大きな語彙を用いて、最良の言語モデリング性能を実現しているに過ぎない。それらは、文脈が予測を明瞭にする場合であっても、低頻度単語又は未知単語を予測するのに苦しんでいる。開示されている技術は、直近の文脈からトークンを再生成する又は予め規定された語彙からトークンを生成する能力を有する、ニューラルネットワーク系列モデルのためのいわゆる「ポインタセンチネル混合アーキテクチャ」を提供する。一実施形態において、ポインタセンチネル−ＬＳＴＭアーキテクチャは、標準的なソフトマックスＬＳＴＭよりもはるかに少ないパラメータを使用しながら、Penn  Treebankデータセットに関して７０．９パープレキシティという最高水準の言語モデリング性能を実現している。
【図面の簡単な説明】
【０００５】
図面において、同様の参照符号は、一般に、異なる図を通じて、同様の部分を指す。また、図面は、必ずしも縮尺通りではなく、代わりに、概して、開示されている技術の原理を示すことに対して強調がなされている。以下の説明において、開示されている技術の様々な実施形態が、図面を参照して説明される。
【図１】ニューラルネットワーク系列モデリングにおいて低頻度トークン及び語彙外（ＯｏＶ）トークンの予測を向上させるポインタセンチネル混合アーキテクチャの態様を示す図。
【図２】図１のポインタセンチネル混合アーキテクチャの動作の一実施形態を示す図。
【図３】ポインタネットワーク及び語彙ネットワークにどれだけの重みを与えるかを指示するセンチネルゲートベクトルの一実施形態を示す図。
【図４】図１のポインタセンチネル混合アーキテクチャの動作の一実施形態を示す数値例を示す図。
【図５】Penn  Treebankデータセットに関して、ポインタセンチネル−ＬＳＴＭを様々な他のモデルと比較している表を示す図。
【図６】WikiText-2言語モデリングタスクに関して、ポインタセンチネル−ＬＳＴＭを様々な他のモデルと比較している表を示す図。
【図７】ＬＳＴＭモデルと比較して、ポインタセンチネル−ＬＳＴＭを使用したときの、Penn  Treebankデータセットに関する対数パープレキシティにおける平均差を示すグラフ。
【図８Ａ】低頻度トークン及び語彙外（ＯｏＶ）トークンを予測するためにポインタネットワークが図１のポインタセンチネル混合アーキテクチャによりどのように使用されるかの可視化定性分析を示す図。
【図８Ｂ】低頻度トークン及び語彙外（ＯｏＶ）トークンを予測するためにポインタネットワークが図１のポインタセンチネル混合アーキテクチャによりどのように使用されるかの可視化定性分析を示す図。
【図９】図１のポインタセンチネル混合アーキテクチャを実現するために使用され得るコンピュータシステムの簡略化されたブロック図。
【発明を実施するための形態】
【０００６】
付録Ａ
以下が、参照により本明細書に組み込まれ、単一の発明の一部として本明細書に添付されている：Stephen  Merity,  Caiming  Xiong,  James  Bradbury,  and  Richard  Socher.  Pointer  sentinel  mixture  models.  arXiv  preprint  arXiv:1609.07843,  2016。ポインタセンチネル混合モデルは、直近の文脈から単語を再生成する又は標準的なソフトマックス分類器から単語を生成する能力を有する。ポインタセンチネル−ＬＳＴＭモデルは、標準的なソフトマックスＬＳＴＭよりもはるかに少ないパラメータを使用しながら、Penn  Treebankに関して最高水準の言語モデリング性能（７０．９パープレキシティ）を実現している。
【０００７】
詳細な説明
以下の説明は、当業者が開示されている技術を製造及び使用することを可能にするように提示されており、特定の用途及びその要件の文脈において提供されている。開示されている技術の主旨及び範囲から逸脱することなく、開示されている実施形態に対する様々な変更が、当業者には容易に明らかであり、本開示において規定されている一般的な原理は、他の実施形態及び用途にも適用可能である。したがって、開示されている技術は、例示されている実施形態に限定されるよう意図されるものではなく、本出願において開示されている原理及び特徴と整合する最も広い範囲に従うべきである。
【０００８】
この説明は、次のように編成されている。最初に、ポインタセンチネル混合アーキテクチャにより対処される問題のうちのいくつかを説明する序論が提示される。次いで、ポインタネットワークが説明され、次いで、ポインタセンチネル混合アーキテクチャの動作のいくつかの例が説明される。最後に、様々なＮＬＰデータセット及びタスクに関するポインタセンチネル混合アーキテクチャの性能を示すいくつかの実験結果が提供される。
【０００９】
（序論）
言語モデリングにおける主要な難しさは、直接的な文脈から特定のトークンをいつ予測するかを学習することである。例えば、新しい人が紹介され、２段落後の文脈が、次のトークン（次トークン）としてその人の名前を非常に正確に予測できるようにする、ということを想像してほしい。標準的なニューラルネットワーク系列モデルがこの名前を予測するためには、標準的なニューラルネットワーク系列モデルは、この名前を符号化し、多くの時間ステップで隠れ状態においてこれを格納し、適切なときにこれを復号する必要があるであろう。隠れ状態は、容量が制限されており、そのようなモデルの最適化は、勾配消失問題に悩まされるので、これは、多くの時間ステップにわたって実行されるときには損失の多い動作である。これは、低頻度トークンに特に当てはまる。
【００１０】
関連する以前の隠れ状態の検索及び使用を可能にし、事実上隠れ状態容量を増大させ、時間ステップに結び付けられない勾配についてのパスを提供することを目的として、この課題に対処するのを助けるために、ソフトアテンション（attention）又はメモリコンポーネントを有するモデルが提案されている。アテンションを用いても、これらのモデルにおいて使用されている標準的なソフトマックス分類器は、しばしば、低頻度トークン又は未知トークンを正しく予測するのに苦労する。
【００１１】
ポインタネットワークは、アテンションを用いて、入力からの要素を出力として選択するので、ポインタネットワークは、低頻度トークン及び語彙外（ＯｏＶ）トークンに対する１つの可能なソリューションを提供する。これは、以前には見られていない入力トークンを生成することを可能にする。ポインタネットワークは、低頻度トークン及び長期依存性に関する性能を向上させるが、言語モデリングの一般的なシナリオである、入力に存在しないトークンを選択することができない。
【００１２】
これらの問題に対処するために、開示されている技術は、効果的で効率的な言語モデリングのために、標準的なソフトマックス分類器の利点とポインタネットワークの利点とを組み合わせるいわゆる「ポインタセンチネル混合アーキテクチャ」を提供する。ポインタネットワークをいつ使用するかを決定するためにＲＮＮ隠れ状態に依拠するのではなく、ポインタセンチネル混合アーキテクチャは、ポインタネットワーク自体が、センチネルゲートベクトルを通じて、語彙をいつ使用するかを決定することを可能にする。ポインタセンチネル混合アーキテクチャは、Penn  Treebankデータセットに関する最高水準のパープレキシティを向上させる。
【００１３】
（ポインタセンチネル混合アーキテクチャ）
図１は、ニューラルネットワーク系列モデリングにおいて低頻度トークン及び語彙外（ＯｏＶ）トークンの予測を向上させるポインタセンチネル混合アーキテクチャ１００の態様を示している。図２は、ポインタセンチネル混合アーキテクチャ１００の動作の一実施形態を示している。
【００１４】
本明細書において「文脈テキスト」又は「ポインタウィンドウ」とも呼ばれるトークンの系列又はウィンドウ
【数１】
2019537809.tif 000003
２０２を所与として、ポインタセンチネル混合アーキテクチャ１００は、次のトークン
【数２】
2019537809.tif 000004
を予測する。文脈テキストは、データベース１２２に格納される。本明細書において使用される場合、用語「トークン」は、単語、文字、又は句を指し得る。
【００１５】
ポインタセンチネル混合アーキテクチャ１００は、再帰型ニューラルネットワーク（ＲＮＮ）１１４を含む。ＲＮＮは、長期依存性を保つ能力に起因して、言語モデリングのために広範に使用されている。ＲＮＮは、連鎖ルールを使用して、トークンの系列にわたって結合確率を因数に分解する：
【数３】
2019537809.tif 000005
より正確には、各時間ステップiにおいて、ＲＮＮ隠れ状態
【数４】
2019537809.tif 000006
は、
【数５】
2019537809.tif 000007
であるように、前の隠れ状態
【数６】
2019537809.tif 000008
及び入力
【数７】
2019537809.tif 000009
に応じて算出される。本明細書において「出力状態」又は「出力状態ベクトル」とも呼ばれる、トークンのウィンドウ
【数８】
2019537809.tif 000010
にわたって生成された、ＲＮＮ１１４の隠れ状態は、データベース１１６に格納される。
【００１６】
（N-1）個の全てのトークンが、ＲＮＮ１１４により処理されたとき、最終出力状態ベクトル
【数９】
2019537809.tif 000011
２０４が、語彙ネットワーク１２４に提供される。語彙ネットワーク１２４は、語彙確率質量算出器１２６を含み、語彙確率質量算出器１２６は、最終出力状態ベクトル
【数１０】
2019537809.tif 000012
２０４を指数関数的正規化器（exponential  normalizer）（例えばソフトマックス層）に与え、本明細書において「語彙分布」２２０とも呼ばれる、可能なトークンの語彙にわたる語彙確率質量の分布を算出する。そのようなものとして、実施形態において、語彙確率質量の合計は、予め定められた定数（例えば、１、２、１０等）である。
【００１７】
以下の数学的定式化は、語彙ネットワーク１２４及び語彙確率質量算出器１２６の動作の一実施形態を示している：
【数１１】
2019537809.tif 000013
ここで、
【数１２】
2019537809.tif 000014
は、語彙分布２２０であり、
【数１３】
2019537809.tif 000015
であり、Hは隠れサイズであり、Vは語彙サイズである。本明細書において「語彙テキスト」とも呼ばれる語彙は、データベース１１８に格納される。
【００１８】
ＲＮＮは、勾配消失問題に悩まされることがある。ゲートのセットに従って隠れ状態を更新することにより勾配消失問題に対処するために、長短期メモリ（ＬＳＴＭ）アーキテクチャが提案されている。一実施形態において、ポインタセンチネル混合アーキテクチャは、ＬＳＴＭを使用する。他の実施形態において、ポインタセンチネル混合アーキテクチャは、入力ゲートなし（ＮＩＧ：no  input  gate）の変形例、忘却ゲートなし（ＮＦＧ：no  forget  gate）の変形例、出力ゲートなし（ＮＯＧ：no  output  gate）の変形例、入力活性化関数なし（ＮＩＡＦ：no  input  activation  function）の変形例、出力活性化関数なし（ＮＯＡＦ：no  output  activation  function）の変形例、のぞき穴なし（ＮＰ：no  peepholes）の変形例、結合入力−忘却ゲート（ＣＩＦＧ：coupled  input-forget  gate）の変形例、及びフルゲート再帰（ＦＧＲ：full  gate  recurrent）の変形例等の、ＬＳＴＭの変形例を使用する。さらに他の実施形態において、ポインタセンチネル混合アーキテクチャは、ゲート付き再帰型ユニット（ＧＲＵ）、又は、ソフトマックス分類器を使用するもの等の、任意の他のタイプのＲＮＮ若しくは任意の他の従来の又は将来開発されるニューラルネットワークを使用する。
【００１９】
ポインタセンチネル混合アーキテクチャ１００はまた、ポインタネットワーク１０２を含む。一実施形態に従うと、系列における次のトークン
【数１４】
2019537809.tif 000016
を予測するために、ポインタネットワーク１０２は、最大アテンション確率質量を有する、入力系列
【数１５】
2019537809.tif 000017
のメンバを出力として選択する。ポインタネットワーク１０２は、各隠れ状態が
【数１６】
2019537809.tif 000018
である、全ての過去の隠れ状態
【数１７】
2019537809.tif 000019
との内積を使用して、特定の隠れ状態についてのアテンション確率質量２１４を算出するアテンション確率質量算出器１１２を含む。本明細書において使用される場合、「内積」は、「ドット積」、「距離尺度積」、及び／又は「言語的類似性決定子」と呼ばれる。別の実施形態において、（最も直近のトークンは繰り返される可能性があるので）最も直近のトークンについてアテンション確率質量２１４を算出するために、アテンション確率質量算出器１１２は、内積に、最終隠れ状態自体も含める。実施形態において、内積は、トークンのウィンドウ
【数１８】
2019537809.tif 000020
におけるトークン位置の各々についてそれぞれの正規化されていないアテンション値を生成する、ポインタネットワーク１０２の距離尺度算出器１０８により実行される。次いで、アテンション確率質量算出器１１２は、ソフトマックス活性化関数のような指数関数的正規化器を使用して、正規化されていないアテンション値から、正規化されたアテンション確率質量２１４を生成する。
【００２０】
ベクトルとそのベクトルとの内積をとることは、ベクトルの大きさの二乗をもたらし、これは、アテンション確率質量２１４が、最も直近のトークンに向かって強くバイアスされることを意味する。この問題を解決するために、ポインタネットワーク１０２は、線形層（例えば多層パーセプトロン）を通じて現在の出力状態ベクトルを射影して、いわゆる「クエリベクトル」
【数１９】
2019537809.tif 000021
２０８の形で非線形射影を生成するクエリ生成器１０６を含む。以下の数学的定式化は、クエリベクトル
【数２０】
2019537809.tif 000022
を生成する一実施形態を示している：
【数２１】
2019537809.tif 000023
ここで、
【数２２】
2019537809.tif 000024
であり、
【数２３】
2019537809.tif 000025
であり、
【数２４】
2019537809.tif 000026
である。
【００２１】
別の実施形態において、アテンション確率質量算出器１１２は、以下の数学的定式化において示されるように、前のＲＮＮ出力状態
【数２５】
2019537809.tif 000027
とクエリベクトル
【数２６】
2019537809.tif 000028
２０８との内積を計算し、続いて、確率分布を得るためのソフトマックス活性化関数により、トークンのウィンドウ
【数２７】
2019537809.tif 000029
における各トークン位置についてアテンション確率質量２１４を算出する：
【数２８】
2019537809.tif 000030
【数２９】
2019537809.tif 000031
ここで、
【数３０】
2019537809.tif 000032
であり、
【数３１】
2019537809.tif 000033
であり、Lは隠れ状態の総数である。実施形態において、出力状態
【数３２】
2019537809.tif 000034
とクエリベクトル
【数３３】
2019537809.tif 000035
２０８との内積は、トークンのウィンドウ
【数３４】
2019537809.tif 000036
におけるトークン位置の各々についてそれぞれの正規化されていないアテンション値を生成する距離尺度算出器１０８により実行される。次いで、アテンション確率質量算出器１１２は、ソフトマックス活性化関数のような指数関数的正規化器を使用して、正規化されていないアテンション値から、正規化されたアテンション確率質量２１４を生成する。
【００２２】
トークンが、文脈テキスト内の複数の位置において出現した場合、トークンに割り当てられる最終アテンション確率質量は、以下の数学的定式化において示されるように、トークンが出現した全てのトークン位置に与えられたアテンション確率質量の合計である：
【数３５】
2019537809.tif 000037
ここで、
【数３６】
2019537809.tif 000038
は、入力
【数３７】
2019537809.tif 000039
におけるトークン
【数３８】
2019537809.tif 000040
の全ての位置をもたらし、
【数３９】
2019537809.tif 000041
はポインタ分布である。
【００２３】
言語モデリングにおいて使用される文書の長さを所与として、ポインタネットワーク１０２は、データセットの始めに戻って全てのトークンについてのアテンション確率質量２１４を評価することが実行可能でないかもしれない。代わりに、いくつかの実施形態において、ポインタネットワーク１０２は、マッチングするためのM個の最も直近のトークンのウィンドウのみを維持することを選択する。ウィンドウの長さMは、ホールドアウトされたデータセットで調整され得る、又は、位置tにあるトークンが、最近のM個のトークンにおいて、どれくらいの頻度で出現しているかを実験的に分析することにより調整され得る、ハイパーパラメータである。
【００２４】
このアプローチの利点を示すために、「President  Obama  discussed  the  economy」及び「President  Obama  then  flew  to  Prague」という２つの文を特色とする長い記事について検討する。質問が、「Which  President  is  the  article  about?」である場合、アテンション確率質量が、どちらの文にもある「Obama」について算出され得る。代わりに、質問が、「Who  flew  to  Prague?」である場合、「Obama」の後者の出現のみが、適切な文脈を提供する。ポインタネットワーク１０２は、最終アテンション確率質量が「Obama」の全ての出現にわたって分布される限りにおいて、ポインタネットワーク１０２がゼロ損失を達成することを確実にする。このフレキシビリティは、誤っている可能性がある又は適切な文脈を欠如している可能性がある教師信号にアテンション確率質量を課すことをポインタネットワーク１０２に強いることのない教師あり学習を提供する。
【００２５】
したがって、ポインタセンチネル混合アーキテクチャ１００は、２つのベース分布、すなわち、ポインタネットワーク１０２により算出される、文脈テキスト１２２内のトークンにわたるアテンション確率質量の分布２１４（本明細書において「ポインタ分布」２１４とも呼ばれる）と、語彙テキスト１１８内のトークンにわたる語彙確率質量の分布（本明細書において「語彙分布」２２０とも呼ばれる）と、を有する。２つのベース分布を組み合わせるために、ポインタセンチネル混合アーキテクチャ１００は、本明細書において「ゲート確率質量」
【数４０】
2019537809.tif 000042
２１６と呼ばれるゲーティング関数（gating  function）を実現するポインタ−語彙混合器１２８を有する。ゲート確率質量
【数４１】
2019537809.tif 000043
２１６は、ポインタネットワーク１０２のいわゆる「センチネルゲートベクトル」１０４から導出される。実施形態において、センチネルゲートベクトル１０４は、ポインタネットワーク１０２のセンチネル層２０６の一部である。センチネルゲートベクトル１０４は、語彙ネットワーク１２４及びポインタネットワーク１０２からの情報の蓄積を制御する。すなわち、センチネルゲートベクトル１０４は、以下の数学的定式化において示されるように、アテンション確率質量２１４と語彙確率質量２２０との混合を制御する：
【数４２】
2019537809.tif 000044
【数４３】
2019537809.tif 000045
ここで、
【数４４】
2019537809.tif 000046
は、テスト中にデータ点がどちらのベース分布に属するかを指示するためにアプリオリにトレーニングされているセンチネルゲートベクトル１０４であり、
【数４５】
2019537809.tif 000047
は、トークン
【数４６】
2019537809.tif 000048
にわたる出力確率質量の分布（本明細書において「出力分布」２２２とも呼ばれる）であり、
【数４７】
2019537809.tif 000049
は、各トークンが出力分布２２２において一度だけ特定されるような、文脈テキスト１２２及び語彙テキスト１１８内のトークンを表す。
【００２６】
一実施形態において、センチネルゲートベクトル１０４は、テスト中に変更されず、固定されたままであるトレーニングされているベクトルである。別の実施形態において、センチネルゲートベクトル１０４は、文脈テキストの所与の入力系列について生成された最終出力状態ベクトル
【数４８】
2019537809.tif 000050
２０４に応じて、テスト中に動的に変更されるトレーニングされているベクトルである。この動的な実施形態において、センチネルゲートベクトル１０４は、（例えば、連結又は要素ごとの合計を用いて）最終出力状態ベクトル
【数４９】
2019537809.tif 000051
２０４と組み合わせられ（２２４）、これら２つの組み合わせが、線形層（例えば多層パーセプトロン）を通じて射影されて、いわゆる「動的センチネル状態ベクトル」の形で非線形射影が生成される。以下の数学的定式化は、動的センチネル状態ベクトル
【数５０】
2019537809.tif 000052
の一実施形態を示している：
【数５１】
2019537809.tif 000053
ここで、
【数５２】
2019537809.tif 000054
であり、
【数５３】
2019537809.tif 000055
であり、
【数５４】
2019537809.tif 000056
であり、
【数５５】
2019537809.tif 000057
は連結を表す。
【００２７】
センチネルゲートベクトル１０４をトレーニングするために、ポインタセンチネル混合アーキテクチャ１００は、センチネル損失関数を実行する。センチネル損失関数を実行することは、
【数５６】
2019537809.tif 000058
という交差エントロピー損失を最小化することを含み、ここで
【数５７】
2019537809.tif 000059
は、正しい出力のワンホット符号化である。トレーニング中、
【数５８】
2019537809.tif 000060
はワンホットであるので、単一の混合確率
【数５９】
2019537809.tif 000061
のみが、損失を計算するために算出される。これは、はるかに効率的なＧＰＵ実装をもたらす。予測時において、長さLのポインタウィンドウには、最大L個の一意なトークンが存在するので、
【数６０】
2019537809.tif 000062
の全ての値について、最大L個のトークン確率が混合される。この混合は、ランダムアクセスインデクシングがＧＰＵよりも効率的なＣＰＵで行われる。その後、センチネル損失関数は、
【数６１】
2019537809.tif 000063
になり、ここで、
【数６２】
2019537809.tif 000064
は、入力
【数６３】
2019537809.tif 000065
における正しい出力
【数６４】
2019537809.tif 000066
の全ての位置をもたらす。
【００２８】
ゲート確率質量
【数６５】
2019537809.tif 000067
２１６を生成するために、ポインタネットワーク１０２のゲート確率質量算出器１１０は、センチネルゲートベクトル１０４とクエリベクトル
【数６６】
2019537809.tif 000068
２０８との内積を計算する。固定的な実施形態において、ゲート確率質量算出器１１０は、固定されたセンチネルゲートベクトルとクエリベクトル
【数６７】
2019537809.tif 000069
２０８との内積を計算する。動的な実施形態において、ゲート確率質量算出器１１０は、動的センチネルゲートベクトルとクエリベクトル
【数６８】
2019537809.tif 000070
２０８との内積を計算する。内積の結果は、正規化されていないゲート値である。
【００２９】
次に、ゲート確率質量算出器１１０は、ソフトマックス活性化関数のような指数関数的正規化器を使用して、正規化されていないゲート値から、ゲート確率質量
【数６９】
2019537809.tif 000071
２１６を生成する。実施形態において、トークンのウィンドウ
【数７０】
2019537809.tif 000072
におけるトークン位置の各々についての正規化されていないアテンション値及び正規化されていないゲート値が、いわゆる「ポインタ系列」において配列及び／又は配置及び／又は連結される。次いで、指数関数的正規化器（例えばソフトマックス）が、ポインタ系列に適用されて、正規化されていないアテンション値から、正規化されたアテンション確率質量２１４が生成され、正規化されていないゲート値から、ゲート確率質量
【数７１】
2019537809.tif 000073
２１６が生成される。すなわち、アテンション確率質量算出器１１２及びゲート確率質量算出器１１０は、結合確率質量
【数７２】
2019537809.tif 000074
２１２を算出するために、ポインタ系列の正規化されていないアテンション値及び正規化されていないゲート値に並列に適用される単一の指数関数的正規化器２１０（例えばソフトマックス）を共有する。そのようなものとして、実施形態において、アテンション確率質量２１４及びゲート確率質量
【数７３】
2019537809.tif 000075
２１６の合計は、予め定められた定数（例えば、１、２、１０等）である。以下の数学的定式化は、ポインタ系列にわたる結合確率質量
【数７４】
2019537809.tif 000076
２１２を示している：
【数７５】
2019537809.tif 000077
ここで、
【数７６】
2019537809.tif 000078
は、文脈テキスト１２２及びセンチネルゲートベクトル１０４の両方におけるトークンにわたる結合確率質量分布２１２であり、
【数７７】
2019537809.tif 000079
は、文脈テキスト１２２内のトークンのウィンドウ
【数７８】
2019537809.tif 000080
におけるトークン位置の各々についての正規化されていないアテンション値を含むベクトルであり、
【数７９】
2019537809.tif 000081
はクエリベクトル２０８であり、
【数８０】
2019537809.tif 000082
はセンチネルゲートベクトル１０４であり、
【数８１】
2019537809.tif 000083
は連結を表し、角括弧
【数８２】
2019537809.tif 000084
内の値は一緒になって、ポインタ系列を表す。結合確率質量分布
【数８３】
2019537809.tif 000085
２１２の最後の要素は、
【数８４】
2019537809.tif 000086
であるゲート確率質量
【数８５】
2019537809.tif 000087
２１６であると解釈される。
【００３０】
したがって、一実施形態において、正規化されたポインタ分布は、以下になる：
【数８６】
2019537809.tif 000088
ここで、
【数８７】
2019537809.tif 000089
は、ベクトルの最初のV個の要素を表す。
【００３１】
出力分布
【数８８】
2019537809.tif 000090
２２２は、以下になる：
【数８９】
2019537809.tif 000091
ここで、ポインタ−語彙混合器１２８は、ゲート確率質量
【数９０】
2019537809.tif 000092
２１６を使用して、語彙分布
【数９１】
2019537809.tif 000093
２２０とポインタ分布
【数９２】
2019537809.tif 000094
２１４とを混合し、出力分布
【数９３】
2019537809.tif 000095
２２２を生成する。
【００３２】
実施形態において、ゲート確率質量
【数９４】
2019537809.tif 000096
２１６は、範囲［０，１］内のスカラーである。０という値は、ポインタネットワーク１０２のみが使用されることを意味し、１という値は、語彙ネットワーク１２４のみが使用されることを意味する。したがって、ポインタセンチネル混合アーキテクチャ１００は、可能な場合はいつでもポインタネットワーク１０２を使用し、そうでない場合は語彙ネットワーク１２４にバックオフ（back-off）するように、ゲート確率質量
【数９５】
2019537809.tif 000097
２１６に依拠する。センチネルゲートベクトル１０４を使用してゲーティング関数をポインタネットワーク１０２の計算に統合することにより、ポインタセンチネル混合アーキテクチャ１００は、ＲＮＮ１１４の隠れ状態と直接的な文脈テキスト１２２内のトークンのウィンドウとの両方により影響が及ぼされる。
【００３３】
統合は、ゲート確率質量
【数９６】
2019537809.tif 000098
２１６が可能な限り文脈を使用することを可能にする。次いで、語彙分布２２０にバックオフする決定が、ＲＮＮ１１４の最終出力状態ベクトル
【数９７】
2019537809.tif 000099
２０４を使用して生成されたクエリベクトル
【数９８】
2019537809.tif 000100
２０８と、ポインタウィンドウ自体についての隠れ状態の内容と、の両方によって通知される。これは、ポインタセンチネル混合アーキテクチャ１００が、どの隠れ状態がポインタウィンドウに含まれるのかを正確に問い合わせ、ポインタウィンドウから外れている可能性があるトークンについての状態を維持するのを回避することを可能にする。
【００３４】
いくつかの実施形態において、ゲート確率質量
【数９９】
2019537809.tif 000101
２１６により制御される混合の前に、変換器２１８を使用して、語彙分布２２０の次元数と一致するように、ポインタ分布２１４の次元数を変換する。
【００３５】
トレーニング中、例えば、正しい出力
【数１００】
2019537809.tif 000102
が、語彙分布２２０にのみ存在する場合、ゲート確率質量
【数１０１】
2019537809.tif 000103
２１６には、全確率質量が割り当てられ得る。いくつかの実施形態において、ポインタセンチネル混合アーキテクチャ１００が、ポインタウィンドウ内の正しいトークンのインスタンスのうちのいずれかのインスタンスに全確率質量を課す場合にはペナルティは存在しない。いくつかの実施形態に従うと、ポインタネットワーク１０２が、ゲート確率質量
【数１０２】
2019537809.tif 000104
２１６に全確率質量を課す場合、ポインタネットワーク１０２は、ペナルティを受けず、損失は、語彙ネットワーク１２４の損失により完全に決定される。
【００３６】
一実施形態において、ＬＳＴＭベースのポインタセンチネル混合アーキテクチャ１００（本明細書において「ポインタセンチネル−ＬＳＴＭ」とも呼ばれる）は、特に、標準的なＬＳＴＭを使用して同様の性能を実現するのに必要とされるモデルサイズと比較すると、パラメータ及びハイパーパラメータ並びに計算時間における比較的わずかな増加をもたらす。アーキテクチャ１００により必要とされる２つの追加のパラメータは、クエリベクトル
【数１０３】
2019537809.tif 000105
２０８、具体的には、
【数１０４】
2019537809.tif 000106
及び
【数１０５】
2019537809.tif 000107
と、
【数１０６】
2019537809.tif 000108
を埋め込んでいるセンチネルゲートベクトルと、を算出するために必要とされるパラメータである。これは、ＲＮＮ１１４の深さとは無関係である。なぜならば、ポインタネットワーク１０２は、最終ＲＮＮ層の出力とインタラクトするだけであるからである。追加の（H2+2H）個のパラメータは、単一のＬＳＴＭ層の（8H2+4H）個のパラメータと比較してわずかである。いくつかの実施形態はまた、複数のＬＳＴＭ層を使用することを含む。追加の計算に関しては、ウィンドウサイズLのポインタセンチネル−ＬＳＴＭは、tanhの活性化を伴う線形層を用いて、
【数１０７】
2019537809.tif 000109
２０８を算出し、合計L個の並列化可能な内積計算を演算し、ソフトマックス関数を介して、結果として得られるL個のスカラーについてアテンション確率質量２１４を算出することだけを必要とする。
【００３７】
ポインタセンチネル混合アーキテクチャ１００の他の実施形態は、指数関数的正規化器とは異なる正規化器を使用すること、指数関数的正規化器に加えて正規化器を使用すること、及び／又は、指数関数的正規化器と組み合わせて正規化器を使用することを含む。いくつかの例は、シグモイドベースの正規化器（例えば、マルチクラスシグモイド、区分ランプ）、双曲線正接ベースの正規化器、正規化線形ユニット（ＲｅＬＵ）ベースの正規化器、ＩＤベースの正規化器、ロジスティックベースの正規化器、正弦ベースの正規化器、余弦ベースの正規化器、単位合計（unit  sum）ベースの正規化器、及びステップベースの正規化を含む。他の例は、階層的ソフトマックス、区分ソフトマックス、重点サンプリング、雑音対照推定、ネガティブサンプリング、ゲート付きソフトマックス、球状ソフトマックス、テイラーソフトマックス、及びスパースマックスを含む。さらに他の実施形態において、任意の他の従来の又は将来開発される正規化器が使用されてもよい。
【００３８】
図１におけるコンポーネントは、ハードウェアで実装されてもよいしソフトウェアで実装されてもよく、図１に示されているのと全く同じブロックに分割される必要はない。コンポーネントの一部は、異なるプロセッサ又はコンピュータにおいて実装されてもよいし、複数の異なるプロセッサ又はコンピュータの間で分散されてもよい。さらに、コンポーネントの一部は、実現される機能に影響を及ぼすことなく、組み合わせられることもあるし、並列に動作することもあるし、図１に示されている順序とは異なる順序で動作することもあることが、理解されよう。また、本明細書において使用される場合、用語「コンポーネント」は、それ自体がコンポーネントを構成すると本明細書においてみなされ得る「サブコンポーネント」を含み得る。例えば、センチネルゲートベクトル１０４、クエリ生成器１０６、距離尺度算出器１０８、ゲート確率質量算出器１１０、及びアテンション確率質量算出器１１２も、ポインタネットワーク１０２のサブコンポーネントであると本明細書においてみなされ得る。さらに、図１におけるブロックは、方法におけるフローチャートステップとみなされ得る。コンポーネント又はサブコンポーネントはまた、必ずしも、その全てのコードをメモリ内で連続して配置する必要はない。コードのいくつかの部分は、他のコンポーネント又はサブコンポーネント又はそれらの間に配置される他の関数からのコードにより、コードの他の部分から分離され得る。また、図１におけるコンポーネントは、１つ以上のネットワーク１２０を介して接続される。
【００３９】
いくつかの実施形態において、ポインタネットワーク１０２と語彙ネットワーク１２４とは、完全に別々である。他の実施形態において、ポインタネットワーク１０２と語彙ネットワーク１２４とは、パラメータ及びハイパーパラメータの多くを共有する。一実施形態において、共有は、ポインタセンチネル混合アーキテクチャ１００におけるパラメータ及びハイパーパラメータの総数を最小限に抑え、語彙ネットワーク１２４に対するポインタネットワーク１０２の教師あり学習を向上させる。
【００４０】
図３は、ポインタネットワーク１０２及び語彙ネットワーク１２４にどれだけの重みを与えるかを指示するセンチネルゲートベクトル１０４の一実施形態を示している。図３に示されている例において、ポインタセンチネル混合アーキテクチャ１００は、「Fed  Chair  Janet  Yellen  ...  raised  rates.  Ms.  ???」のような文のセットを確認した後に次の単語（次単語）を予測する。
【００４１】
図３の下部において、語彙ネットワーク１２４は、語彙テキスト１１８内の固定された単語のセットを使用して、次の単語を予測する。この知識は、前のFed  Char  Ben  Barnankeに関する過去の参考文献又はトレーニングデータ等の遠い過去により関連し得る。図３の上部において、ポインタネットワーク１０２は、ストーリーの最近の履歴を使用して、次の単語を予測する。関連する文脈を見ることにより、これは、「Janet  Yellen」が再び参照される可能性が高いことを認識し、「Janet」がファーストネームであり、ラストネームが必要であることを認識すると、ポインタネットワーク１０２は、「Yellen」を指し示す。
【００４２】
２つの情報ソースを混合することにより、すなわち、最初に文脈を用いて最近の関連する単語を「指し示し」、次いで、適切な文脈が存在しない場合には、ＲＮＮの内部メモリ及び語彙を用いることにより、ポインタセンチネル混合アーキテクチャ１００は、はるかに信頼性の高い回答を得ることができる。
【００４３】
図４は、ポインタセンチネル混合アーキテクチャ１００の動作の一実施形態を示す数値例である。図４において、単語「dog」及び単語「chased」は、ＮＬＰタスクが、先行する単語「dog」及び単語「chased」に照らして、次の欠落した単語???を予測することになるような、入力系列又は文脈単語４０２を表す。
【００４４】
ポインタネットワーク１０２により算出されたポインタ分布２１４は、単語「dog」に、０．１というアテンション確率質量を割り当て、単語「chased」に、０というアテンション確率質量０を割り当てている。さらに、ポインタネットワーク１０２により決定されたゲート確率質量
【数１０８】
2019537809.tif 000110
２１６は０．９である。ポインタ系列４０４にわたる結合確率質量
【数１０９】
2019537809.tif 000111
は、単位合計へと加算されることに留意されたい。
【００４５】
また、図４に示されている例において、語彙テキスト１１８は、４つの既知の単語４０６のみ、すなわち、「dog」、「chased」、「cat」、及び「mailman」のみを含むと仮定する。したがって、語彙ネットワーク１２４により算出された語彙分布２２０は、単語「dog」に、０．２という語彙確率質量を割り当て、単語「chased」に、０という語彙確率質量を割り当て、単語「cat」に、０．５という語彙確率質量を割り当て、単語「mailman」に、０．３という語彙確率質量を割り当てている。語彙単語４０６にわたる語彙分布２２０は、単位合計へと加算されることに留意されたい。
【００４６】
欠落した単語???を特定するために、出力分布２２２は、０．９というゲート確率質量
【数１１０】
2019537809.tif 000112
２１６により混合が制御されるように、ポインタ分布２１４と語彙分布２２０とを混合することにより算出される。図４に示されているように、単語「dog」についての出力分布は、０．２８であると算出され、単語「chased」についての出力分布は、０であると算出され、単語「cat」についての出力分布は、０．４５であると算出され、単語「mailman」についての出力分布は、０．２７であると算出される。文脈単語４０２及び語彙単語４０６にわたる出力分布２２２は、単位合計へと加算されることに留意されたい。
【００４７】
最後に、最大の又は最高の出力確率質量を有する単語、この例においては単語「cat」が、欠落した単語???として選択される。
【００４８】
一例において、文脈テキスト１２２を完成させる選択されたトークンが、文脈テキスト１２２内にあり、語彙テキスト１１８内にない場合、出力確率質量は、対応するアテンション確率質量に応じて、トークンについて生成される。別の例において、トークンが、語彙テキスト１１８内にあり、文脈テキスト１２２内にない場合、出力確率質量は、ゲート確率質量
【数１１１】
2019537809.tif 000113
２１６を、対応する語彙確率質量と乗算することに応じて、トークンについて生成される。さらに別の例において、トークンが、文脈テキスト１２２内にも語彙テキスト１１８内にもある場合、出力確率質量は、ゲート確率質量
【数１１２】
2019537809.tif 000114
２１６を、対応する語彙確率質量と乗算し、対応するアテンション確率質量を加算することに応じて、トークンについて生成される。
【００４９】
（実験結果）
図５は、Penn  Treebankデータセットに関して、ポインタセンチネル−ＬＳＴＭを様々な他のモデルと比較している表を示している。ポインタセンチネル−ＬＳＴＭアーキテクチャは、標準的なソフトマックスＬＳＴＭよりもはるかに少ないパラメータを使用しながら、Penn  Treebankデータセットに関して、７０．９パープレキシティという最高水準の言語モデリング性能を実現している。
【００５０】
図６は、WikiText-2言語モデリングタスクに関して、ポインタセンチネル−ＬＳＴＭを様々な他のモデルと比較している表である。ポインタセンチネル−ＬＳＴＭアーキテクチャは、標準的なソフトマックスＬＳＴＭよりはるかに少ないパラメータを使用しながら、WikiText-2言語モデリングタスクに関して、８０．８パープレキシティという最高水準の言語モデリング性能を実現している。
【００５１】
ポインタセンチネル−ＬＳＴＭがＬＳＴＭよりもなぜ性能が優れているかについての仮説は、ポインタネットワーク１０２が、低頻度単語をポインタセンチネル混合アーキテクチャ１００が効果的に再生成することを可能にすることである。ＲＮＮ１１４は、ポインタネットワーク１０２に依拠することにより、隠れ状態容量をより良く使用することができる。ポインタネットワーク１０２はまた、ソフトマックス分類器のみを使用して可能であり得るよりも優れた、単一のトークンの選択を可能にする。
【００５２】
図７は、ＬＳＴＭをポインタセンチネル−ＬＳＴＭと比較したときのパープレキシティの向上を示すグラフを含む。単語は、頻度に従って、バケット（buckets）にわたって分割されている。単語が低頻度になるにつれて、ポインタセンチネル−ＬＳＴＭは、パープレキシティのより大きい向上を有している。Penn  Treebankデータセットでも、最も頻度の高い１００００個の単語を選択していることのみに起因して低頻度単語が比較的存在しない場合、ポインタセンチネル−ＬＳＴＭは、直接的な利点を提供する。向上は、低頻度単語において最も大きいが、ポインタセンチネル−ＬＳＴＭは、比較的頻度の高い単語においても、やはり有用である。これは、ポインタネットワーク１０２が、単語を直接選択すること、又は、ポインタ教師信号を介して、そのウィンドウ内の単語の他の出現に勾配が直接流れることを可能にすることにより、ＲＮＮ１１４を向上させるためである。
【００５３】
定性分析において、図８Ａ及び図８Ｂは、ゲートがポインタネットワーク１０２により主に使用される予測にフォーカスして、検証セットにおける様々な例についてのゲート使用及びポインタアテンションを可視化している。予想されるように、ポインタネットワーク１０２は、次のようなまれな名前について頻繁に使用されている：「Seidman」（トレーニングにおいて２３回）、「Iverson」（トレーニングにおいて７回）、及び「Rosenthal」（トレーニングにおいて３回）。ポインタネットワーク１０２はまた、次のような会社等の他の固有表現名について頻繁に使用されている：「Honeywell」（トレーニングにおいて８回）及び「Integrated」（トレーニングにおいて４１回（単語の大文字を小文字に替えることに起因して、これは、integrated  circuits、完全にintegrated、及び他の一般的使用を含むが））。ポインタネットワーク１０２はまた、多くの高頻度トークンについても使用される。測定単位（tons、kilograms、．．．）又は短いスケールの数（thousands、millions、billions、．．．）を選択するために、ポインタネットワーク１０２は、最近の使用を参照する。これは、特に、句がNトンからNトンに増加した形である場合に予想される。いくつかの実施形態において、ポインタセンチネル混合アーキテクチャ１００は、「said」等の頻度の高い動詞を予測するために、ソフトマックスとポインタネットワーク１０２との混合に依拠する。
【００５４】
さらに、ポインタネットワーク１０２は、１００個の単語ウィンドウの最後の位置（位置９７）にある単語を指し示し、これは、ほとんどの言語モデルがそれらのバックプロパゲーショントレーニングを切り捨てる３５ステップよりもはるかに長い範囲である。これは、ポインタセンチネル混合アーキテクチャ１００が、ゲーティング関数をポインタネットワーク１０２になぜ統合するかを示している。ゲーティング関数が、ＲＮＮ隠れ状態１１６のみを使用する場合、特に、単語を確認してからどれほどの長さであったかを正確に追跡できないのであれば、ポインタウィンドウの末尾付近にあった単語に注意する必要があるであろう。ゲーティング関数をポインタネットワーク１０２に統合することにより、ポインタセンチネル混合アーキテクチャ１００は、ＲＮＮ隠れ状態１１６がこの集約的なブックキーピングを維持しなければならないことを回避する。
【００５５】
図８Ａ及び図８Ｂは、定性分析について、ポインタネットワーク１０２が、ポインタセンチネル混合アーキテクチャ１００内でどのように使用されるかを可視化している。ゲートは、語彙ネットワーク１２４が排他的に使用されていることを１が示すのに対し、ポインタネットワーク１０２が排他的に使用されていることを０が示す、ゲーティング関数の結果を指す。図８Ａ及び図８Ｂは、主に語彙ネットワーク１２４を使用している予測で始まり、主にポインタネットワーク１０２を使用している予測に移る。
【００５６】
予測８０２を参照すると、「the  fall  season  has  been  a  good  one  especially  for  those  retailers」と予測する際、ポインタネットワーク１０２は、「retailers」、「investments」、「chains」、及び「institutions」等、適合するであろう多くの単語を、履歴ウィンドウから提案する。ゲートは、依然として主に語彙ネットワーク１２４に向かって重み付けされている。
【００５７】
予測８０４を参照すると、「the  national  cancer  institute  also  projected  that  overall  u.s.  mortality」と予測する際、ポインタネットワーク１０２は、mortality及びratesにフォーカスし、これらの両方が適合するであろう。ゲートは、依然として主に語彙ネットワーク１２４に向かって重み付けされている。
【００５８】
予測８０６を参照すると、「people  don’t  seem  to  be  unhappy  with  it  he  said」と予測する際、ポインタネットワーク１０２は、「said」を正しく選択し、語彙ネットワーク１２４とほぼ等しく重み付けされている。
【００５９】
予測８０８を参照すると、「the  federal  government  has  had  to  pump  in  $N  billion」と予測する際、ポインタネットワーク１０２は、非常に類似した文脈を有する最近のbillionの使用にフォーカスする。ポインタネットワーク１０２はまた、語彙ネットワーク１２４よりも重く依拠される。
【００６０】
予測８１０を参照すると、「[unk]’s  ghost  sometimes  runs  through  the  e  ring  dressed  like  gen.  noriega」と予測する際、ポインタネットワーク１０２は、「gen.  douglas」を検索するために９７時間ステップ戻る。残念ながら、この予測は正しくないが、追加の文脈がなければ、人間は、同じ単語を推測していたであろう。これは、さらに、ゲーティング関数がポインタネットワーク１０２になぜ統合されるかを示している。ＲＮＮ隠れ状態１１６は、ほぼ１００時間ステップの間情報を正確に保持することができないので、固有表現「gen.  douglas」は、さらなる４時間ステップだけではウィンドウから外れていたであろう。
【００６１】
予測８１２を参照すると、「mr.  iverson」と予測する際、ポインタネットワーク１０２は、最も直近の固有表現のラストネームを指し示す能力を学習する。固有表現はまた、４５時間ステップ前に出現しており、これは、ほとんどの言語モデルがそれらのバックプロパゲーションを切り捨てる３５ステップよりも長い。
【００６２】
予測８１４を参照すると、「mr.  rosenthal」と予測する際、ポインタネットワーク１０２が、ほぼ排他的に使用され、「bruce  rosenthal」を発話者として特定するために６５時間ステップ戻り、ラストネームだけを正しく選択する。
【００６３】
予測８１６を参照すると、「in  composite  trading  on  the  new  york  stock  exchange  yesterday  integrated」と予測する際、会社「Integrated」及び[unk]トークンが、ポインタネットワーク１０２により主に注目され、ほぼ完全な予測が、ポインタネットワーク１０２により決定される。
【００６４】
（特定の実施形態）
ニューラルネットワークベースの言語モデリングにおいて次単語予測を向上させるポインタセンチネル混合アーキテクチャのためのシステム、方法、及び製品が記載される。実施形態の１つ以上の特徴は、ベースとなる実施形態と組み合わせられることもある。相互に排他的ではない実施形態は、組み合わせ可能であると教示される。実施形態の１つ以上の特徴は、他の実施形態と組み合わせられることもある。本開示は、これらのオプションについてユーザに定期的にリマインドする。これらのオプションを繰り返す記載事項の、いくつかの実施形態からの省略は、前のセクションにおいて教示された組み合わせを限定するものとして解釈されるべきではない。これらの記載事項は、参照により以下の実施形態の各々に組み込まれる。
【００６５】
開示されている技術のシステムの実施形態は、メモリに接続されている１つ以上のプロセッサを含む。文脈テキスト及び語彙テキストを所与として、トークンが語彙テキスト内にあり文脈テキスト内にない状況を含む、トークンを予測するためのコンピュータ命令が、メモリにロードされる。
【００６６】
このシステムは、ポインタネットワークの結果と語彙ネットワークの結果とを混合して、トークンを予測し、混合は、ゲート確率質量により制御される。
【００６７】
このシステムは、トレーニングされているセンチネルゲートベクトル、文脈テキスト内のトークンのウィンドウ内の各位置についての再帰型ニューラルネットワーク（略してＲＮＮ）の隠れ状態ベクトル、ＲＮＮの最終隠れ状態ベクトルから生成されたクエリベクトル、クエリベクトルとトレーニングされているセンチネルゲートベクトルとの距離尺度積として算出された正規化されていないゲート値、及びトークンのウィンドウ内の各位置についての正規化されていないアテンション値であって、各アテンション値は、クエリベクトルと隠れ状態ベクトルの各々との距離尺度積として算出されている、アテンション値を使用することにより、文脈テキスト内のトークンのウィンドウにわたるポインタネットワークの結果及びゲート確率質量を算出する。
【００６８】
このシステムは、正規化されていないアテンション値及び正規化されていないゲート値を連結し、連結されたアテンション値及びゲート値を指数関数的に正規化して（exponentially  normalize）、アテンション確率質量のベクトル及びゲート確率質量を生成する。
【００６９】
このシステムは、ＲＮＮの最終隠れ状態ベクトルから、語彙テキスト内のトークンにわたる語彙確率質量の分布を算出することにより、語彙ネットワークの結果を算出する。
【００７０】
このシステムは、文脈テキスト及び語彙テキスト内のトークンにわたる出力確率質量の分布を生成する。トークンが、文脈テキスト内にあり語彙テキスト内にない場合、このシステムは、対応するアテンション確率質量から、トークンについての出力確率質量を生成する。トークンが、語彙テキスト内にあり文脈テキスト内にない場合、このシステムは、ゲート確率質量を、対応する語彙確率質量と乗算することにより、トークンについての出力確率質量を生成する。トークンが、文脈テキスト内にも語彙テキスト内にもある場合、このシステムは、ゲート確率質量を、対応する語彙確率質量と乗算し、対応するアテンション確率質量を加算することにより、トークンについての出力確率質量を生成する。
【００７１】
このシステムは、クエリベクトルに対する応答として、最大出力確率質量を有するトークンを選択する。
【００７２】
システムのこの実施形態及び開示されている他のシステムは、以下の特徴のうちの１つ以上を任意的に含む。システムはまた、開示されている方法に関連して記載されている特徴を含んでもよい。簡潔にするために、システムの特徴の代替の組み合わせは、個々には列挙されない。システム、方法、及び製品に適用可能な特徴は、ベースとなる特徴の各法定分類セットについて繰り返されない。読者は、このセクションにおいて特定された特徴が他の法定分類におけるベースとなる特徴とどのように容易に組み合わせられ得るかを理解するであろう。
【００７３】
クエリベクトルは、線形層を通じてＲＮＮの最終隠れ状態ベクトルを処理して、非線形射影を生成することにより、ＲＮＮの最終隠れ状態ベクトルから生成され得る。
【００７４】
ゲート確率質量は、正規化されていないゲート値を指数関数的に正規化することから生じ得る。アテンション確率質量のベクトル及びゲート確率質量の合計は、予め定められた定数（例えば１）であってよい。語彙テキスト内のトークンにわたる語彙確率質量の分布の合計は、予め定められた定数（例えば１）であってよい。文脈テキスト及び語彙テキスト内のトークンにわたる出力確率質量の分布の合計は、予め定められた定数（例えば１）であってよい。
【００７５】
トークンが、文脈テキスト内の複数の位置において出現した場合、このシステムは、文脈テキスト内のトークンの複数の位置の各々の位置に対応するアテンション確率質量を加算して、トークンについての最終アテンション確率質量を算出し、最終アテンション確率質量を使用して、トークンについての出力確率質量を算出する。
【００７６】
トレーニングされるセンチネルゲートベクトルは、アプリオリにトレーニングされ得る。トレーニングされているセンチネルゲートベクトルは、語彙ネットワーク及びポインタネットワークからの情報の蓄積を制御することができる。ゲート確率質量が１であることは、語彙ネットワークからの情報の蓄積をもたらし得る。ゲート確率質量が０であることは、ポインタネットワークからの情報の蓄積をもたらし得る。
【００７７】
動的センチネルゲートベクトルは、ＲＮＮの最終隠れ状態ベクトルを、トレーニングされているセンチネルゲートベクトルと連結し、線形層を通じてこの連結を処理して、非線形射影を生成することにより、ＲＮＮの最終隠れ状態ベクトルから生成され得る。
【００７８】
トークンは、単語、文字、又は句であってよい。
【００７９】
他の実施形態は、上述したシステムの機能を実行するための、プロセッサにより実行可能な命令を記憶している非一時的なコンピュータ読み取り可能な記憶媒体を含み得る。さらに別の実施形態は、上述したシステムの機能を実行する方法を含み得る。
【００８０】
開示されている技術のシステムの別の実施形態は、メモリに接続されている１つ以上のプロセッサを含む。文脈テキスト及び語彙テキストを所与として、トークンが語彙テキスト内にあり文脈テキスト内にない状況を含む、トークンを予測するためのコンピュータ命令が、メモリにロードされる。
【００８１】
このシステムは、ポインタネットワークの結果と語彙ネットワークの結果とを混合して、トークンを予測し、混合は、ゲート確率質量により制御される。
【００８２】
このシステムは、トレーニングされているセンチネルゲートベクトル、文脈テキスト内のトークンのウィンドウ内の各位置についての再帰型ニューラルネットワーク（略してＲＮＮ）の隠れ状態ベクトル、ＲＮＮの最終隠れ状態ベクトルから生成されたクエリベクトル、クエリベクトルとトレーニングされているセンチネルゲートベクトルとの距離尺度積として算出された正規化されていないゲート値、及びトークンのウィンドウ内の各位置についての正規化されていないアテンション値であって、各アテンション値は、クエリベクトルと隠れ状態ベクトルの各々との距離尺度積として算出されている、アテンション値を使用することにより、文脈テキスト内のトークンのウィンドウにわたるポインタネットワークの結果及びゲート確率質量を算出する。
【００８３】
このシステムは、正規化されていないアテンション値及び正規化されていないゲート値を連結し、連結されたアテンション値及びゲート値を指数関数的に正規化して、アテンション確率質量のベクトル及びゲート確率質量を生成する。
【００８４】
このシステムは、ＲＮＮの最終隠れ状態ベクトルから、語彙テキスト内のトークンにわたる語彙確率質量の分布を算出することにより、語彙ネットワークの結果を算出する。
【００８５】
このシステムは、文脈テキスト及び語彙テキスト内のトークンにわたる出力確率質量の分布を生成する。
【００８６】
このシステムは、クエリベクトルに対する応答として、最大出力確率質量を有するトークンを選択する。
【００８７】
システムの最初の実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、システムのこの実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【００８８】
トークンが、文脈テキスト内にあり語彙テキスト内にない場合、このシステムは、対応するアテンション確率質量として、トークンについての出力確率質量を生成することができる。トークンが、語彙テキスト内にあり文脈テキスト内にない場合、このシステムは、ゲート確率質量を、対応する語彙確率質量と乗算することにより、トークンについての出力確率質量を生成することができる。トークンが、文脈テキスト内にも語彙テキスト内にもある場合、このシステムは、ゲート確率質量を、対応する語彙確率質量と乗算し、対応するアテンション確率質量を加算することにより、トークンについての出力確率質量を生成することができる。
【００８９】
他の実施形態は、上述したシステムの機能を実行するための、プロセッサにより実行可能な命令を記憶している非一時的なコンピュータ読み取り可能な記憶媒体を含み得る。さらに別の実施形態は、上述したシステムの機能を実行する方法を含み得る。
【００９０】
開示されている技術のシステムのさらに別の実施形態は、メモリに接続されている１つ以上のプロセッサを含む。文脈テキスト及び語彙テキストを所与として、トークンが語彙テキスト内にあり文脈テキスト内にない状況を含む、トークンを予測するためのコンピュータ命令が、メモリにロードされる。
【００９１】
このシステムは、ポインタネットワークの結果と語彙ネットワークの結果とを混合して、トークンを予測し、混合は、ゲート確率質量により制御される。
【００９２】
このシステムは、トレーニングされているセンチネルゲートベクトル、文脈テキスト内のトークンのウィンドウ内の各位置についての再帰型ニューラルネットワーク（略してＲＮＮ）の隠れ状態ベクトル、ＲＮＮの最終隠れ状態ベクトルから生成されたクエリベクトル、クエリベクトルとトレーニングされているセンチネルゲートベクトルとの距離尺度積として算出された正規化されていないゲート値、及びトークンのウィンドウ内の各位置についての正規化されていないアテンション値であって、各アテンション値は、クエリベクトルと隠れ状態ベクトルの各々との距離尺度積として算出されている、アテンション値を使用することにより、文脈テキスト内のトークンのウィンドウにわたるポインタネットワークの結果及びゲート確率質量を算出する。
【００９３】
このシステムは、正規化されていないアテンション値及び正規化されていないゲート値を連結し、連結されたアテンション値及びゲート値を指数関数的に正規化して、アテンション確率質量のベクトル及びゲート確率質量を生成する。
【００９４】
このシステムは、ＲＮＮの最終隠れ状態ベクトルから、語彙テキスト内のトークンにわたる語彙確率質量の分布を算出することにより、語彙ネットワークの結果を算出する。
【００９５】
このシステムは、ゲート確率質量を、ポインタネットワークの結果及び語彙ネットワークの結果のうちの少なくとも一方に適用した後に、結果を組み合わせる。
【００９６】
このシステムは、組み合わせられた結果に基づいて、文脈テキスト又は語彙テキスト内のトークンから、クエリベクトルに応答するトークンを選択する。
【００９７】
システムの最初の実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、システムのこの実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【００９８】
他の実施形態は、上述したシステムの機能を実行するための、プロセッサにより実行可能な命令を記憶している非一時的なコンピュータ読み取り可能な記憶媒体を含み得る。さらに別の実施形態は、上述したシステムの機能を実行する方法を含み得る。
【００９９】
開示されている技術の方法の実施形態は、上述したシステムの動作を実行する方法を含む。システムの実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、方法の実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【０１００】
開示されている技術のコンピュータ読み取り可能な媒体（略してＣＲＭ）の実施形態は、コンピュータプログラム命令が与えられた非一時的なコンピュータ読み取り可能な記憶媒体であって、コンピュータプログラム命令がプロセッサ上で実行されたときに、コンピュータプログラム命令が、上述したシステムの動作を実行する、非一時的なコンピュータ読み取り可能な記憶媒体を含む。システムの実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、ＣＲＭの実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【０１０１】
開示されている技術のシステムのさらに別の実施形態は、メモリに接続されている１つ以上のプロセッサを含む。文脈単語の系列及び単語の語彙を所与として、次単語が語彙内にあり系列内にない状況を含む、次単語を予測するためのコンピュータ命令が、メモリにロードされる。
【０１０２】
このシステムは、入力として文脈単語の系列をニューラルネットワークに提供して、語彙内の単語にわたる語彙分布を生成する。語彙分布は、語彙単語の各々が次単語であるそれぞれの尤度を特定する。ニューラルネットワークは、再帰型ニューラルネットワーク（略してＲＮＮ）であってよい。ＲＮＮは、長短期メモリ（略してＬＳＴＭ）ネットワークであってよい。
【０１０３】
このシステムは、ニューラルネットワークに問い合わせて、系列内の文脈単語にわたるポインタ分布及びセンチネルを生成する。ポインタ分布は、文脈単語の各々が次単語であるそれぞれの尤度を特定する。
【０１０４】
このシステムは、語彙分布及びポインタ分布からのそれぞれの尤度を混合して、語彙及び系列内の単語の各々についての結合尤度を生成し、混合は、センチネルにより制御される。
【０１０５】
このシステムは、生成された結合尤度に基づいて、次単語として、語彙及び／又は系列から単語を選択する。
【０１０６】
システムのこの実施形態及び開示されている他のシステムは、以下の特徴のうちの１つ以上を任意的に含む。システムはまた、開示されている方法に関連して記載されている特徴を含んでもよい。簡潔にするために、システムの特徴の代替の組み合わせは、個々には列挙されない。システム、方法、及び製品に適用可能な特徴は、ベースとなる特徴の各法定分類セットについて繰り返されない。読者は、このセクションにおいて特定された特徴が他の法定分類のベースとなる特徴とどのように容易に組み合わせられ得るかを理解するであろう。
【０１０７】
このシステムは、多層パーセプトロンを通じてニューラルネットワークの最終隠れ状態ベクトルを処理することにより、最終隠れ状態ベクトルからクエリベクトルを生成する。このシステムは、内積を使用して、クエリベクトルを、ニューラルネットワークの隠れ状態ベクトルと比較し、文脈単語の各々について、正規化されていないアテンションスカラーを生成する。このシステムは、内積を使用して、クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成する。このシステムは、アテンションベクトルにおいて、正規化されていないアテンションスカラー及び正規化されていないセンチネルゲートスカラーを連結し、アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成する。このシステムは、ポインタ分布として、正規化されたアテンションベクトルを使用し、文脈単語の各々が次単語であるそれぞれの尤度として、正規化されたアテンション質量を使用する。
【０１０８】
単語が、系列内にあり語彙内にない場合、このシステムは、対応する正規化されたアテンション質量から、単語についての結合尤度を生成することができる。単語が、語彙内にあり系列内にない場合、このシステムは、語彙分布から生成された対応する語彙確率質量から、単語についての結合尤度を生成することができる。単語が、系列内にも語彙内にもある場合、このシステムは、正規化されたセンチネルゲート質量を、語彙分布から生成された対応する語彙確率質量と乗算し、対応する正規化されたアテンション質量を加算することにより、単語についての結合尤度を生成することができる。このシステムは、クエリベクトルに対する応答として、したがって、予測された次単語として、最大結合尤度を有する単語を選択することができる。
【０１０９】
正規化されたセンチネルゲート質量は、次単語が、系列からの文脈単語であるか又は語彙からの語彙単語であるかを制御することができる。正規化されたセンチネルゲート質量は、次単語が語彙内にのみ存在する場合には１であってよい。そのような場合、このシステムは、語彙からのみ次単語を予測する。正規化されたセンチネルゲート質量は、次単語が系列内にのみ存在する場合には０であってよい。そのような場合、このシステムは、系列からのみ次単語を予測する。
【０１１０】
１つの文脈単語が、系列内の複数の位置において出現した場合、このシステムは、系列内の、１つの文脈単語の複数の位置の各々の位置に対応する正規化されたアテンション質量を加算して、１つの文脈単語についての最終の正規化されたアテンション質量を生成し、最終の正規化されたアテンション質量を使用して、１つの文脈単語についての結合尤度を生成する。
【０１１１】
このシステムは、音声認識、機械翻訳、テキスト要約、質問回答、画像キャプション付け、及びテキスト音声合成を含む１つ以上の言語モデリングタスクのために、ニューラルネットワーク及び生成された結合尤度を使用する。
【０１１２】
他の実施形態は、上述したシステムの機能を実行するための、プロセッサにより実行可能な命令を記憶している非一時的なコンピュータ読み取り可能な記憶媒体を含み得る。さらに別の実施形態は、上述したシステムの機能を実行する方法を含み得る。
【０１１３】
開示されている技術の方法の実施形態は、文脈単語の系列及び単語の語彙を所与として、次単語が語彙内にあり系列内にない状況を含む、次単語を予測することを含む。
【０１１４】
この方法は、入力として文脈単語の系列をニューラルネットワークに提供して、語彙内の単語にわたる語彙分布を生成することを含む。語彙分布は、語彙の単語の各々が次単語であるそれぞれの尤度を特定する。ニューラルネットワークは、再帰型ニューラルネットワーク（略してＲＮＮ）であってよい。ＲＮＮは、長短期メモリ（略してＬＳＴＭ）ネットワークであってよい。
【０１１５】
この方法は、ニューラルネットワークに問い合わせて、系列内の文脈単語にわたるポインタ分布及びセンチネルを生成することを含む。ポインタ分布は、文脈単語の各々が次単語であるそれぞれの尤度を特定する。
【０１１６】
この方法は、語彙分布及びポインタ分布からのそれぞれの尤度を混合して、語彙及び系列内の単語の各々についての結合尤度を生成することを含み、混合は、センチネルにより制御される。
【０１１７】
この方法は、生成された結合尤度に基づいて、次単語として、語彙及び／又は系列から単語を選択することを含む。
【０１１８】
システムの実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、方法のこの実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【０１１９】
他の実施形態は、上述した方法を実行するための、プロセッサにより実行可能な命令を記憶している非一時的なコンピュータ読み取り可能な記憶媒体を含み得る。さらに別の実施形態は、メモリ及び１つ以上のプロセッサを含むシステムであって、１つ以上のプロセッサは、上述した方法を実行するための、メモリに記憶されている命令を実行するよう動作可能である、システムを含み得る。
【０１２０】
開示されている技術のコンピュータ読み取り可能な媒体（略してＣＲＭ）の実施形態は、コンピュータプログラム命令が与えられた非一時的なコンピュータ読み取り可能な記憶媒体であって、コンピュータプログラム命令がプロセッサ上で実行されたときに、コンピュータプログラム命令が、上述したシステムの動作を実行する、非一時的なコンピュータ読み取り可能な記憶媒体を含む。
【０１２１】
システムの実施形態について、特定の実施形態のこのセクションにおいて記載されている特徴の各々は、ＣＲＭの実施形態に等しく適用される。上記のように、システムの全ての特徴は、ここでは繰り返されず、参照により繰り返されるとみなされるべきである。
【０１２２】
（コンピュータシステム）
図９は、ポインタセンチネル混合アーキテクチャ１００を実現するために使用され得るコンピュータシステム９００の簡略化されたブロック図である。コンピュータシステム９００は、一般に、バスサブシステム９３２を介して複数の周辺デバイスと通信する１つ以上のＣＰＵプロセッサ９２０を含む。これらの周辺デバイスは、例えばメモリデバイスを含むメモリサブシステム９１２及びファイル記憶サブシステム９１８と、ユーザインタフェース入力デバイス９３０と、ユーザインタフェース出力デバイス９２４と、ネットワークインタフェースサブシステム９２２と、複数のＧＰＵプロセッシングコア又はＧＰＵプロセッサ９２８を含むＧＰＵ９２６と、を含み得る。入力デバイス及び出力デバイスは、コンピュータシステム９００とのユーザインタラクションを可能にする。ネットワークインタフェースサブシステム９２２は、他のコンピュータシステムにおける対応するインタフェースデバイスへのインタフェースを含め、外部ネットワークへのインタフェースを提供する。
【０１２３】
いくつかの実施形態に従うと、ポインタセンチネル混合アーキテクチャ１００の動作は、ＧＰＵプロセッシングコア９２８により実行される。
【０１２４】
ユーザインタフェース入力デバイス９３０又はクライアント若しくはクライアントデバイスは、キーボード；マウス、トラックボール、タッチパッド、又はグラフィックスタブレット等のポインティングデバイス；スキャナ；ディスプレイに組み込まれたタッチスクリーン；音声認識システム及びマイクロフォン等のオーディオ入力デバイス；及び、他のタイプの入力デバイスを含み得る。概して、用語「入力デバイス」の使用は、コンピュータシステム９００に情報を入力するための全ての可能なタイプのデバイス及び態様を含むよう意図されている。
【０１２５】
ユーザインタフェース出力デバイス９２４は、ディスプレイサブシステム；プリンタ；ファックス機；及び、オーディオ出力デバイス等の非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）等のフラットパネルデバイス、投影デバイス、又は可視画像を生成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイス等の非視覚的ディスプレイを提供することができる。概して、用語「出力デバイス」の使用は、コンピュータシステム９００からユーザ又は別のマシン若しくはコンピュータシステムに情報を出力するための全ての可能なタイプのデバイス及び態様を含むよう意図されている。
【０１２６】
記憶サブシステム９１０は、本開示に記載のモジュール及び方法の一部又は全ての機能を提供するプログラミング及びデータ構造を記憶する。これらのソフトウェアモジュールは、一般に、ＣＰＵプロセッサ９２０により単独で、又は、ＧＰＵプロセッサ９２８等の他のプロセッサとＣＰＵプロセッサ９２０との組み合わせにより、実行される。
【０１２７】
記憶サブシステムにおけるメモリサブシステム９１２は、プログラムの実行中に命令及びデータを記憶するためのメインランダムアクセスメモリ（ＲＡＭ）９１６と、固定された命令が記憶される読み取り専用メモリ（ＲＯＭ）９１４と、を含み得る。ファイル記憶サブシステム９１８は、プログラム及びデータファイルのための永続的記憶を提供することができ、ハードディスクドライブ、フロッピー（登録商標）ディスクドライブ及び関連する着脱可能な媒体、ＣＤ−ＲＯＭドライブ、光学ドライブ、及び着脱可能なメディアカートリッジを含み得る。所定の実施形態の機能を実装しているモジュールは、ファイル記憶サブシステム９１８又はメモリサブシステム９１２により記憶されることもあるし、プロセッサによりアクセス可能な他のマシンに記憶されることもある。
【０１２８】
バスサブシステム９３２は、意図されるようにコンピュータシステム９００の様々なコンポーネント及びサブシステムに互いと通信させるための機構を提供する。バスサブシステム９３２が、単一のバスとして概略的に図示されているが、バスサブシステム９３２の代替実施形態は、複数のバスを使用してもよい。いくつかの実施形態において、アプリケーションサーバ（図示せず）は、ハードウェア及び／又はソフトウェア（例えばオペレーティングシステム）等、コンピュータシステム９００のアプリケーションが動作することを可能にするフレームワークであってよい。
【０１２９】
コンピュータシステム９００自体は、パーソナルコンピュータ、ポータブルコンピュータ、ワークステーション、コンピュータ端末、ネットワークコンピュータ、テレビジョン、メインフレーム、サーバファーム、自由にネットワーク化されたコンピュータの広く分散されているセット、又は、任意の他のデータ処理システム若しくはユーザデバイスを含む様々なタイプであってよい。コンピュータ及びネットワークの常に変化する性質に起因して、図９に示されているコンピュータシステム９００の記載は、本発明の好ましい実施形態を例示するための具体例として意図されているに過ぎない。図９に示されているコンピュータシステムよりも多い又は少ないコンポーネントを有する、コンピュータシステム９００の多くの他の構成が可能である。
【０１３０】
前述の説明は、開示されている技術の製造及び使用を可能にするように提示されている。開示されている技術の主旨及び範囲から逸脱することなく、開示されている実施形態に対する様々な変更が明らかであり、本開示において規定されている一般的な原理は、他の実施形態及び用途にも適用可能である。したがって、開示されている技術は、例示されている実施形態に限定されるよう意図されるものではなく、本出願において開示されている原理及び特徴と整合する最も広い範囲に従うべきである。開示されている技術の範囲は、請求項により定められる。
【０１３１】
付録Ａは、以下に添付されている：
2019537809.tif 000115
2019537809.tif 000116
2019537809.tif 000117
2019537809.tif 000118
2019537809.tif 000119
2019537809.tif 000120
2019537809.tif 000121
2019537809.tif 000122
2019537809.tif 000123
2019537809.tif 000124
2019537809.tif 000125
2019537809.tif 000126
2019537809.tif 000127
2019537809.tif 000128
2019537809.tif 000129
【図１】
2019537809.tif 000130
【図２】
2019537809.tif 000131
【図３】
2019537809.tif 000132
【図４】
2019537809.tif 000133
【図５】
2019537809.tif 000134
【図６】
2019537809.tif 000135
【図７】
2019537809.tif 000136
【図８Ａ】
2019537809.tif 000137
【図８Ｂ】
2019537809.tif 000138
【図９】
2019537809.tif 000139
【手続補正書】
【提出日】令和1年5月21日(2019.5.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測する、コンピュータにより実行される方法であって、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成するステップであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成するステップであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成するステップであって、前記混合は、前記センチネルにより制御される、ステップと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から、最大結合尤度を有する単語を選択するステップと、
を含み、
前記それぞれの尤度を混合することは、
ある単語が、前記系列内にあり前記語彙内にない場合、対応する正規化されたアテンション質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記語彙内にあり前記系列内にない場合、前記語彙分布から決定された対応する語彙確率質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記系列内にも前記語彙内にもある場合、正規化されたセンチネルゲート質量を、前記語彙分布から生成された対応する語彙確率質量と乗算し、対応する文脈単語の対応する正規化された尤度を加算することにより、該ある単語についての結合尤度を決定することと、
を含む、コンピュータにより実行される方法。
【請求項２】
前記ニューラルネットワークは、再帰型ニューラルネットワーク（ＲＮＮ）である、請求項１に記載のコンピュータにより実行される方法。
【請求項３】
前記ＲＮＮは、長短期メモリ（ＬＳＴＭ）ネットワークである、請求項２に記載のコンピュータにより実行される方法。
【請求項４】
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成するステップと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成するステップと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成するステップと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成するステップと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用するステップと、
をさらに含む、請求項１乃至３のいずれか一項に記載のコンピュータにより実行される方法。
【請求項５】
前記正規化されたセンチネルゲート質量は、前記次単語が、前記系列からの文脈単語であるか又は前記語彙からの語彙単語であるかを制御する、請求項１乃至４のいずれか一項に記載のコンピュータにより実行される方法。
【請求項６】
前記正規化されたセンチネルゲート質量は、前記次単語が前記語彙内にのみ存在する場合には１であり、前記語彙からのみ前記次単語を予測するステップ
をさらに含む、請求項１乃至５のいずれか一項に記載のコンピュータにより実行される方法。
【請求項７】
前記正規化されたセンチネルゲート質量は、前記次単語が前記系列内にのみ存在する場合には０であり、前記系列からのみ前記次単語を予測するステップ
をさらに含む、請求項１乃至６のいずれか一項に記載のコンピュータにより実行される方法。
【請求項８】
１つの文脈単語が、前記系列内の複数の位置において出現し、
前記コンピュータにより実行される方法は、
前記系列内の、前記１つの文脈単語の前記複数の位置の各々の位置に対応する正規化されたアテンション質量を加算して、前記次単語についての最終の正規化されたアテンション質量を生成するステップと、
前記最終の正規化されたアテンション質量を使用して、前記次単語についての結合尤度を生成するステップと、
をさらに含む、請求項１乃至７のいずれか一項に記載のコンピュータにより実行される方法。
【請求項９】
音声認識、機械翻訳、テキスト要約、質問回答、画像キャプション付け、及びテキスト音声合成を含む１つ以上の言語モデリングタスクのために、前記ニューラルネットワーク及び前記の生成された結合尤度を使用するステップ
をさらに含む、請求項１乃至８のいずれか一項に記載のコンピュータにより実行される方法。
【請求項１０】
メモリに接続されている１つ以上のプロセッサを含むシステムであって、文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測するためのコンピュータ命令が、前記メモリにロードされ、前記コンピュータ命令は、前記１つ以上のプロセッサ上で実行されたときに、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成することであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、生成することと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成することであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、生成することと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成することであって、前記混合は、前記センチネルにより制御される、生成することと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から、最大結合尤度を有する単語を選択することと、
を含む動作を実行し、
前記それぞれの尤度を混合することは、
ある単語が、前記系列内にあり前記語彙内にない場合、対応する正規化されたアテンション質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記語彙内にあり前記系列内にない場合、前記語彙分布から決定された対応する語彙確率質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記系列内にも前記語彙内にもある場合、正規化されたセンチネルゲート質量を、前記語彙分布から生成された対応する語彙確率質量と乗算し、対応する文脈単語の対応する正規化された尤度を加算することにより、該ある単語についての結合尤度を決定することと、
を含む、システム。
【請求項１１】
前記コンピュータ命令は、前記１つ以上のプロセッサ上で実行されたときに、
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成することと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成することと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成することと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成することと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用することと、
を含む動作をさらに実行する、請求項１０に記載のシステム。
【請求項１２】
文脈単語の系列及び単語の語彙を所与として、次単語が前記語彙内にあり前記系列内にない状況を含む、前記次単語を予測するためのコンピュータプログラム命令が与えられたコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラム命令は、プロセッサ上で実行されたときに、
入力として前記文脈単語の系列をニューラルネットワークに提供して、前記語彙内の単語にわたる語彙分布を生成するステップであって、前記語彙分布は、前記語彙の単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記ニューラルネットワークに問い合わせて、前記系列内の文脈単語にわたるポインタ分布及びセンチネルを生成するステップであって、前記ポインタ分布は、前記文脈単語の各々が前記次単語であるそれぞれの尤度を特定する、ステップと、
前記語彙分布及び前記ポインタ分布からのそれぞれの尤度を混合して、前記語彙及び前記系列内の単語の各々についての結合尤度を生成するステップであって、前記混合は、前記センチネルにより制御される、ステップと、
前記の生成された結合尤度に基づいて、前記次単語として、前記語彙及び／又は前記系列から、最大結合尤度を有する単語を選択するステップと、
を含む方法を実行し、
前記それぞれの尤度を混合することは、
ある単語が、前記系列内にあり前記語彙内にない場合、対応する正規化されたアテンション質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記語彙内にあり前記系列内にない場合、前記語彙分布から決定された対応する語彙確率質量から、該ある単語についての結合尤度を決定することと、
ある単語が、前記系列内にも前記語彙内にもある場合、正規化されたセンチネルゲート質量を、前記語彙分布から生成された対応する語彙確率質量と乗算し、対応する文脈単語の対応する正規化された尤度を加算することにより、該ある単語についての結合尤度を決定することと、
を含む、コンピュータ読み取り可能な記憶媒体。
【請求項１３】
前記コンピュータプログラム命令は、前記プロセッサ上で実行されたときに、
多層パーセプトロンを通じて前記ニューラルネットワークの最終隠れ状態ベクトルを処理することにより、前記最終隠れ状態ベクトルからクエリベクトルを生成するステップと、
内積を使用して、前記クエリベクトルを、前記ニューラルネットワークの隠れ状態ベクトルと比較し、前記文脈単語の各々について、正規化されていないアテンションスカラーを生成するステップと、
内積を使用して、前記クエリベクトルを、予めトレーニングされているセンチネルベクトルと比較し、正規化されていないセンチネルゲートスカラーを生成するステップと、
アテンションベクトルにおいて、前記正規化されていないアテンションスカラー及び前記正規化されていないセンチネルゲートスカラーを連結し、前記アテンションベクトルを指数関数的に正規化して、正規化されたアテンション質量及び正規化されたセンチネルゲート質量を生成するステップと、
前記ポインタ分布として、前記の正規化されたアテンションベクトルを使用し、前記文脈単語の各々が前記次単語である前記それぞれの尤度として、前記正規化されたアテンション質量を使用するステップと、
をさらに含む前記方法を実行する、請求項１２に記載のコンピュータ読み取り可能な記憶媒体。
【国際調査報告】
2019537809.tif 000140