(57)【要約】  質問応答としてのマルチタスク学習のアプローチは、訓練するための方法を含み、当該方法は、複数のタスクタイプからの訓練サンプルを含む複数の訓練サンプルを受信し、訓練サンプルを神経モデルに提示してアンサーを生成し、提示された各訓練サンプルについて、生成されたアンサーと自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、誤差に基づいて神経モデルのパラメータを調節することを含む。訓練サンプルの各々が、自然言語のコンテキスト、クエスチョン、及びグラウンドトゥルースアンサーを含む。訓練サンプルが神経モデルに提示される順序は、最初に第１の訓練戦略に従って訓練サンプルを選択することと、第２の訓練戦略に従って訓練サンプルを選択することに切り替えることとを含む。一部の人実施形態において、第１の訓練戦略は逐次訓練戦略であり、第２の訓練戦略は統合訓練戦略である。
2021513165.tif 000002
【特許請求の範囲】
【請求項１】
質問応答システムを訓練する方法であって、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ことを有し、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
方法。
【請求項２】
前記複数のタスクタイプの各々は、言語翻訳タスクタイプ、分類タスクタイプ、又は質問応答タスクタイプである、請求項１に記載の方法。
【請求項３】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項１又は２に記載の方法。
【請求項４】
前記逐次訓練戦略は、前記複数のタスクタイプの各々に関する訓練サンプルを選択した後に、前記第１のタスクタイプに関する訓練サンプルを再び選択することを含む、請求項３に記載の方法。
【請求項５】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１乃至４のいずれか一項に記載の方法。
【請求項６】
前記第２の訓練戦略は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１乃至４のいずれか一項に記載の方法。
【請求項７】
前記第１の訓練戦略は、前記訓練サンプルが逐次訓練戦略に従って選択され、周期的な間隔で前記訓練サンプルが統合訓練戦略に従って選択されるという修正逐次訓練戦略である、請求項１又は２に記載の方法。
【請求項８】
前記複数のタスクタイプの各々に関する前記訓練サンプルの各々が所定回数だけ前記神経モデルに提示された後に、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替える、ことを更に有する請求項１乃至７のいずれか一項に記載の方法。
【請求項９】
前記複数のタスクタイプの各々に関連する性能メトリックのモニタリングに基づいて、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替える、ことを更に有する請求項１乃至７のいずれか一項に記載の方法。
【請求項１０】
前記神経モデルは、
前記コンテキストからの第１の単語及び前記クエスチョンからの第２の単語をエンコードする入力レイヤと、
前記入力レイヤからの出力及びアンサーの一部を受信するエンコーダ及びデコーダを有するセルフアテンションベースのトランスフォーマと、
前記エンコーダの出力を更にエンコードする双方向長期短期メモリ（ｂｉＬＳＴＭ）と、
前記デコーダの出力及び隠れ状態からコンテキスト調整された隠れ状態を生成する長期短期メモリ（ＬＳＴＭ）と、
前記ｂｉＬＳＴＭの出力及びアテンション重みに基づいてアテンション重みを生成するアテンションネットワークと、
前記アテンション重みに基づいて用語集の第３の単語にわたる分布を生成する用語集レイヤと、
前記アテンション重みに基づいて前記コンテキストから前記第１の単語にわたる分布を生成するコンテキストレイヤと、
スイッチであり、
前記用語集からの前記第３の単語にわたる前記分布と前記コンテキストからの前記第１の単語にわたる前記分布との間の重み付けを生成し、
前記用語集からの前記第３の単語にわたる前記分布と前記コンテキストからの前記第１の単語にわたる前記分布との前記重み付けに基づいて、複合分布を生成し、且つ
前記複合分布を用いて前記アンサーに含める単語を選択する、
ためのスイッチと、
を有する、請求項１乃至９のいずれか一項に記載の方法。
【請求項１１】
複数の機械読み取り可能命令を有した非一時的な機械読み取り可能媒体であって、前記複数の機械読み取り可能命令は、コンピューティング装置に関連する１つ以上のプロセッサによって実行されるときに、該１つ以上のプロセッサに方法を実行させ、当該方法は、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ことを有し、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
非一時的な機械読み取り可能媒体。
【請求項１２】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項１１に記載の非一時的な機械読み取り可能媒体。
【請求項１３】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１１又は１２に記載の非一時的な機械読み取り可能媒体。
【請求項１４】
前記第２の訓練戦略は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１１又は１２に記載の非一時的な機械読み取り可能媒体。
【請求項１５】
前記方法は更に、前記複数のタスクタイプの各々に関する前記訓練サンプルの各々が所定回数だけ前記神経モデルに提示された後に、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替えることを有する、請求項１１乃至１４のいずれか一項に記載の非一時的な機械読み取り可能媒体。
【請求項１６】
ディープラーニング用のシステムであって、
多層ニューラルネットワークを有し、
当該システムは、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ように構成され、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
システム。
【請求項１７】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項１６に記載のシステム。
【請求項１８】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１６又は１７に記載のシステム。
【請求項１９】
前記第２の訓練戦略は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１６又は１７に記載のシステム。
【請求項２０】
当該システムは更に、前記複数のタスクタイプの各々に関する前記訓練サンプルの各々が所定回数だけ前記神経モデルに提示された後に、前記第２の訓練戦略を用いて前記訓練サンプルを選択するように構成される、請求項１６乃至１９のいずれか一項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、どちらも“Multitask  Learning  as  Question  Answering”と題された、２０１８年２月９日に出願された米国仮特許出願第６２／６２８，８５０号、及び２０１８年５月８日に出願された米国特許出願第１５／９７４，０７５号の利益を主張するものであり、それらの全体をここに援用する。
【０００２】
この出願は、“Multitask  Learning  as  Question  Answering”と題された、２０１８年５月８日に同日出願された米国特許出願第１５／９７４，１１８号（代理人整理番号７０６８９．９ＵＳ０２  Ａ３３４１ＵＳ２）に関連し、その全体をここに援用する。
【０００３】
本開示は、概して自然言語処理に関し、より具体的には自然言語コンテキストについての自然言語での質問（自然言語クエスチョン）に応答することに関する。
【背景技術】
【０００４】
自然言語処理、及び自然言語サンプルのコンテキストについての自然言語クエスチョンに応答するシステムの能力は、自然言語形式で提供される情報についての文脈特有の推論をテストするためのベンチマークである。これは複雑な作業であり得る。何故なら、質問され得る自然言語クエスチョンには多数の異なるタイプが存在し、その回答（アンサー）は、異なるタイプの推論及び／又は異なるタイプの分析を必要とし得るからである。
【０００５】
従って、異なる種類の自然言語クエスチョンに同時に答えることができるようにする統一されたシステム及び方法を有することが有利である。
【図面の簡単な説明】
【０００６】
【図１】一部の実施形態に従った自然言語処理タスクの簡略図である。
【図２】一部の実施形態に従ったコンピューティング装置の簡略図である。
【図３】一部の実施形態に従ったマルチタスク質問応答のためのシステムの簡略図である。
【図４】一部の実施形態に従ったアテンションネットワークの簡略図である。
【図５】一部の実施形態に従ったアテンションベースのトランスフォーマネットワークのレイヤの簡略図である。
【図６】一部の実施形態に従ったワードジェネレータの簡略図である。
【図７】一部の実施形態に従ったマルチタスク学習の方法の簡略図である。
【図８】図８及び９Ａ−９Ｃは、一部の実施形態に従った訓練性能の簡略図である。
【図９Ａ】図８及び９Ａ−９Ｃは、一部の実施形態に従った訓練性能の簡略図である。
【図９Ｂ】図８及び９Ａ−９Ｃは、一部の実施形態に従った訓練性能の簡略図である。
【図９Ｃ】図８及び９Ａ−９Ｃは、一部の実施形態に従った訓練性能の簡略図である。
【図１０Ａ】図１０Ａ及び１０Ｂは、一部の実施形態に従った訓練順序に基づく訓練性能の簡略図である。
【図１０Ｂ】図１０Ａ及び１０Ｂは、一部の実施形態に従った訓練順序に基づく訓練性能の簡略図である。
【０００７】
図面において、同じ参照符号を持つ要素は、同じ又は同様の機能を持つ。
【発明を実施するための形態】
【０００８】
自然言語情報の内容に関するコンテキスト特有の推論を含むコンテキスト特有の推論は、機械インテリジェンス及び学習アプリケーションにおいて重要な問題である。コンテキスト特有の推論は、自然言語テキストの解釈に使用するための貴重な情報を提供することができ、また、例えば自然言語テキストの内容に関する質問に回答すること、言語翻訳、セマンティックコンテキスト分析、及び／又はこれらに類するものなどの、複数の異なるタスクを含み得る。しかしながら、これらの異なるタイプの自然言語処理タスクの各々が、異なるタイプの分析及び／又は異なるタイプの期待される応答を伴うことが多い。
【０００９】
自然言語処理におけるマルチタスク学習は、タスクタイプが類似している場合には進展している。しかし、例えば言語翻訳、質問応答及び分類などの複数の異なるタイプのタスクに取り組む場合、パラメータ共有が単語ベクトル又はパラメータのサブセットに制限されることが多い。最終的なアーキテクチャは、典型的に、各タスクタイプに対して高度に最適化されて工学設計され、複数のタスクタイプにまたがって一般化する能力を制限している。
【００１０】
しかしながら、これらのタスクタイプのうち多くは、単一タイプのタスクとしてフレーム化されるときに、同じアーキテクチャ及びモデルによって取り扱われることができる。例えば、全てではないが多くの自然言語処理タスクを、質問応答タスクとして扱うことが可能である。例えば、分類、言語翻訳、及び質問応答のタスクタイプは全て、質問応答タスクとしてフレーム化され得る。質問応答形態でのこれら３つのタスクタイプの各々の例を図１に示す。
【００１１】
図２は、一部の実施形態に従ったコンピューティング装置２００の簡略図である。図２に示すように、コンピューティング装置２００は、メモリ２２０に結合されたプロセッサ２１０を含む。コンピューティング装置２００の動作は、プロセッサ２１０によって制御される。１つのプロセッサ２１０のみを備えたコンピューティング装置２００が示されているが、理解されることには、プロセッサ２１０は、コンピューティング装置２００内の１つ以上の中央演算処理ユニット、マルチコアプロセッサ、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、グラフィックス処理ユニット（ＧＰＵ）、及び／又はこれらに類するものを代表するものとし得る。コンピューティング装置２００は、スタンドアローンのサブシステムとして、コンピューティング装置に追加されたボードとして、及び／又は仮想マシンとして実装され得る。
【００１２】
メモリ２２０は、コンピューティング装置２００によって実行されるソフトウェア、及び／又はコンピューティング装置２００の動作中に使用される１つ以上のデータ構造を格納するために使用され得る。メモリ２２０は、１つ以上のタイプの機械読み取り可能媒体を含み得る。一部の一般的な形態の機械読み取り可能媒体は、フロッピーディスク（登録商標）、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、ＣＤ−ＲＯＭ、他の光媒体、パンチカード、紙テープ、穴のパターンを有する他の物理媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、他のメモリチップ若しくはカートリッジ、及び／又はプロセッサ若しくはコンピュータが読み出すように適応される他の媒体を含み得る。
【００１３】
プロセッサ２１０及び／又はメモリ２２０は、任意の好適な物理的構成で構成され得る。一部の実施形態において、プロセッサ２１０及び／又はメモリ２２０は、同一ボード上、同一パッケージ（例えば、システム・イン・パッケージ）内、同一チップ（例えば、システム・オン・チップ）上、及び／又はこれらに類するもので実装され得る。一部の実施形態において、プロセッサ２１０及び／又はメモリ２２０は、分散された、仮想化された、及び／又はコンテナ化された計算リソースを含み得る。そのような実施形態と一致して、プロセッサ２１０及び／又はメモリ２２０は、１つ以上のデータセンター及び／又はクラウドコンピューティング施設に置かれてもよい。
【００１４】
図示のように、メモリ２２０は、ここに更に記載される質問応答システム及びモデルを実装及び／又はエミュレートするために、及び／又はここに更に記載される方法のうちのいずれかを実装するために使用され得る質問応答モジュール２３０を含む。一部の例において、質問応答モジュール２３０は、自然言語コンテキストに関する自然言語クエスチョンに答えるために使用され得る。一部の例において、質問応答モジュール２３０はまた、自然言語コンテキストに関する自然言語クエスチョンに答えるために使用される質問応答システム又はモデルの反復訓練及び／又は評価を取り扱い得る。一部の例において、メモリ２２０は、１つ以上のプロセッサ（例えば、プロセッサ２１０）によって実行されるときに、該１つ以上のプロセッサに、ここに更に詳述される計数方法を実行させ得る実行可能コードを含んだ、非一時的な有形の機械読み取り可能媒体を含み得る。一部の例において、質問応答モジュール２３０は、ハードウェア、ソフトウェア、及び／又はハードウェアとソフトウェアとの組み合わせを用いて実装され得る。図示のように、コンピューティング装置２００は、質問応答モジュール２３０に提供されるものである自然言語コンテキスト２４０と自然言語コンテキスト２４０に関する自然言語クエスチョン（質問）２５０とを受信し、そして、質問応答モジュール２３０が、自然言語コンテキスト２４０の内容に基づいて、自然言語クエスチョン２５０に対する自然言語アンサー（回答）２６０を生成する。
【００１５】
図３は、一部の実施形態に従ったマルチタスク質問応答のためのシステム３００の簡略図である。システム３００は、自然言語コンテキストｃ及び自然言語クエスチョンｑを受信する。コンテキストｃ及びクエスチョンｑの各々が、システム３００による処理のためにベクトルにエンコードされる。一部の例において、コンテキストｃ及びクエスチョンｑの中の単語の各々が、単語符号化を使用してエンコードされる。一部の例において、各単語の符号化は、各単語がＲ３００の要素としてエンコードされるＧｌｏＶｅ符号化に基づく。一部の例において、各単語の符号化は、各単語がＲ１００の要素としてエンコードされる文字ｎ−ｇｒａｍ符号化に基づく。一部の例において、各単語の符号化は、ＧｌｏＶｅ符号化と文字ｎ−ｇｒａｍ符号化との連結に基づく。一部の例において、単語に対してＧｌｏＶｅ及び／又は文字ｎ−ｇｒａｍ符号化が存在しない（例えば、その単語が英語でない）場合、ＧｌｏＶｅ符号化と同じ平均及び標準偏差（例えば、平均ゼロ及び標準偏差０．４）を持つ正規分布からランダムな符号化が選択され、それぞれの単語の各出現に対して一貫して同じランダムな符号化が使用される。
【００１６】
次いで、コンテキストｃの符号化が線形（Linear）レイヤ３１０に渡され、クエスチョンｑの符号化が線形レイヤ３１５に渡される。線形レイヤ３１０及び３１５は各々、式１と一致するそれぞれの伝達関数を実装し、ここで、Ｗ及びｂは、それぞれの線形レイヤ３１０又は３１５の重み及びバイアスであり、ａは、それぞれの線形レイヤ３１０又は３１５の出力であり、ｘは、それぞれの線形レイヤ３１０又は３１５への入力であり、ｆは、例えば純線形関数、飽和線形関数、及び／又はこれらに類するものなどの、それぞれの線形レイヤ３１０又は３１５の線形伝達関数である。一部の例において、線形レイヤ３１０及び３１５は、コンテキストｃ及びクエスチョンｑに関する符号化の次元を削減する。一部の例において、符号化の次元は、各エンコーディングがＲ３００の要素であるものまで削減される。
【数１】
2021513165.tif 000003
【００１７】
線形レイヤ３１０によって出力される符号化は、１レイヤの双方向の長短期メモリネットワーク（bidirectional  long  short-term  memory  network；ｂｉＬＳＴＭ）３２０によって更にエンコードされて、
【数２】
2021513165.tif 000004
（以下、ｃ〜とも表記する）を形成し、線形レイヤ３１５によって出力される符号化は、１レイヤのｂｉＬＳＴＭ３２５によって更にエンコードされて、
【数３】
2021513165.tif 000005
（以下、ｑ〜とも表記する）を形成する。一部の例において、ｂｉＬＳＴＭ３２０及び／又は３２５は、コンテキストｃ及びクエスチョンｑに関する符号化の次元を更に削減し得る。ｂｉＬＳＴＭ３２０及び３２５の各々は、各時間ステップｉにおいて出力を、式２に従ったｈｉ→及びｈｉ←の連結としてのｈｉとして生成し、ここで、ｘは、それぞれのｂｉＬＳＴＭへの入力であり、ＬＳＴＭは長期短期メモリネットワークに相当する。一部の例において、ｂｉＬＳＴＭ３２０及び／又は３２５は、２００なる隠れサイズ（hidden  size）を持ち、ｃ〜及びｑ〜の符号化の次元をＲ２００の要素まで更に削減する。
【数４】
2021513165.tif 000006
【００１８】
次いで、出力ｃ〜及びｑ〜が、コアテンション（Coattention）レイヤ３３０に渡される。コアテンションレイヤ３３０は、先ず、ｃ〜の先頭にコンテキストセンチネルベクトルを追加し、ｃ〜の先頭にクエスチョンセンチネルベクトルを追加する。これらのセンチネルベクトルは、コアテンションレイヤ３３０のコアテンション機構が２つのシーケンス間でトークンの全てを揃えないようにすることを可能にする。コアテンションレイヤ３３０は、次いで、ベクトルｃ〜及びｑ〜を時間次元に沿って積み重ねて、それぞれ、
【数５】
2021513165.tif 000007
（以下、Ｃ＾及びＱ＾とも表記する）を得る。コアテンションレイヤ３３０は、次いで、式３に従ってアフィニティ行列Ａを生成する。
【数６】
2021513165.tif 000008
【００１９】
コアテンションレイヤ３３０は、次いで、式４を用いて各シーケンスにわたってＡｃ及びＡｑのアテンション重みを生成し、ここで、softmax(X)は、Ｘの列にわたって正規化するものである。
【数７】
2021513165.tif 000009
【００２０】
コアテンションレイヤ３３０は、次いで、アテンション重みＡｃ及びＡｑを用い、それぞれ、式５を使用して、コンテキスト及びクエスチョンの重み付けられた総和をＣ〜及びＱ〜として生成する。
【数８】
2021513165.tif 000010
【００２１】
コアテンションレイヤ３３０は、次いで、Ｃ〜Ａｑ及びＱ〜との連結としてコアテンションサマリーＳを生成する。コアテンションサマリーＳはベクトルのシーケンスを含み、センチネル位置に対応するｓからの最初のベクトルが落とされ得る。そして、ＳがｂｉＬＳＴＭ３４０に渡され、ｂｉＬＳＴＭ３４０が出力ｓ＾を生成し、それに位置符号化が追加される。
【００２２】
次いで、出力ｓ＾が、多層のセルフアテンションベースのトランスフォーマに渡され、それらが、多層セルフアテンションベーストランスフォーマのレイヤｉの各々について符号化ｓｉ〜を生成する。図３に示すように、多層セルフアテンションベーストランスフォーマは、トランスフォーマ（Transformer）レイヤ３５１及び３５２を含む。２つのレイヤを有する多層セルフアテンションベーストランスフォーマが示されているが、一部の実施形態において、多層セルフアテンションベーストランスフォーマは、単一のレイヤのみ又は３つ以上のレイヤを含み得る。各トランスフォーマレイヤ３５１及び３５２は、図４及び５に関して更に詳細に後述するように、残余接続及びレイヤ正規化と共に、位置的に完全に接続されたフィードフォワードネットワークに続かれた、マルチヘッドのセルフアテンション機構を含む。
【００２３】
図４は、一部の実施形態に従ったアテンションネットワーク４００の簡略図である。図４に示すように、アテンションネットワーク４００は、クエリｑ∈Ｒｄｑ、キーｋ∈Ｒｄｋ、及び値ｖ∈Ｒｄｖを受信する。ｑ、ｋ、及びｖの各々は、式６−式８に従ってそれぞれの重みＷＱ４１０、ＷＫ４２０、及びＷＶ４３０を被る。重みＷＱ４１０、ＷＫ４２０、及びＷＶ４３０は、逆伝搬を用いて訓練中に変更される。
【数９】
2021513165.tif 000011
【００２４】
得られたＱベクトル、Ｋベクトル、及びＶベクトルが、ＱとＫとの内積を生成するアテンション伝達関数４４０を通され、それが式９に従ってＶに適用される。
【数１０】
2021513165.tif 000012
【００２５】
次いで、アテンションネットワーク４００による学習の速度を改善する残余接続を提供するために、付加及び正規化モジュール４５０を用いて、クエリｑをアテンション伝達関数からの出力と結合する。付加及び正規化モジュール４５０は式１０を実装し、ここで、μ及びσは、それぞれ、入力ベクトルの平均及び標準偏差であり、ｇｉは、レイヤ正規化をスケーリングするための利得パラメータである。付加及び正規化モジュール４５０からの出力が、アテンションネットワーク４００の出力である。
【数１１】
2021513165.tif 000013
【００２６】
アテンションネットワーク４００は、しばしば、２つの変形形態で使用される。第１の変形形態は、マルチヘッドアテンションレイヤであり、アテンションネットワーク４００と一致する複数のアテンションネットワークが並列に実装され、マルチヘッドアテンションネットワークの“ヘッド”の各々が、異なる値に初期化され且つそれ故に異なる符号化を学習するように訓練されるそれ自身の重みＷＱ４１０、ＷＫ４２０、及びＷＶ４３０を持つ。次いで、それらのヘッドの各々からの出力が共に連結されて、マルチヘッドアテンションレイヤの出力を形成する。第２の変形形態は、アテンションネットワークの各ヘッドに対するｑ、ｋ、及びｖ入力が同じマルチヘッドアテンションレイヤであるセルフアテンションレイヤである。
【００２７】
セルフアテンションベースのレイヤは、２０１７年６月１２日に提出された、Vaswani,  et  al.，“Attention  is  All  You  Need”，arXiv  preprint  arXiv：1706.03762に更に記載されており、その全体をここに援用する。
【００２８】
図５は、一部の実施形態に従ったアテンションベースのトランスフォーマネットワークのレイヤ５００の簡略図である。一部の実施態様によれば、システム３００の各トランスフォーマレイヤ３５１及び／又は３５２がレイヤ５００と一致する。図５に示すように、レイヤ５００は、符号化レイヤ５１０及び復号化レイヤ５２０を含む。
【００２９】
符号化レイヤ５１０は、レイヤ入力（例えば、符号化スタック内の最初のレイヤに対する入力ネットワークから、又は符号化スタックの他の全てのレイヤに対する次に最も下のレイヤのレイヤ出力から）を受信し、それをマルチヘッドアテンションレイヤ５１１の３つ全ての入力（ｑ、ｋ、及びｖ）に提供し、従って、マルチヘッドアテンションレイヤ５１１は、セルフアテンションネットワークとして構成される。マルチヘッドアテンションレイヤ５１１の各ヘッドは、アテンションネットワーク４００と一致する。一部の例において、マルチヘッドアテンションレイヤ５１１は３つのヘッドを含んでいるが、例えば２つ又は４つ以上など、他のヘッド数も可能である。一部の例において、各アテンションレイヤは、２００なる次元、及び１２８なる隠れサイズを持つ。マルチヘッドアテンションレイヤ５１１の出力が、フィードフォワードネットワーク５１２に提供され、フィードフォワードネットワーク５１２の入力及び出力の両方が、付加及び正規化モジュール５１３に提供され、付加及び正規化モジュール５１３が、符号化レイヤ５１０に関するレイヤ出力を生成する。一部の例において、フィードフォワードネットワーク５１２は、式１１を実装するものである二層のパーセプトロンネットワークであり、ここで、γはフィードフォワードネットワーク５１２への入力であり、Ｍｉ及びｂｉは、それぞれ、パーセプトロンネットワーク内のレイヤの各々の重み及びバイアスである。一部の例において、付加及び正規化モジュール５１３は、付加及び正規化モジュール４５０と実質的に同様である。
【数１２】
2021513165.tif 000014
【００３０】
復号化レイヤ５２０は、レイヤ入力（例えば、復号化スタック内の最初のレイヤに対する入力ネットワークから、又は復号化スタックの他の全てのレイヤに対する次に最も下のレイヤのレイヤ出力から）を受信し、それをマルチヘッドアテンションレイヤ５２１の３つ全ての入力（ｑ、ｋ、及びｖ）に提供し、従って、マルチヘッドアテンションレイヤ５２１は、セルフアテンションネットワークとして構成される。マルチヘッドアテンションレイヤ５２１の各ヘッドは、アテンションネットワーク４００と一致する。一部の例において、マルチヘッドアテンションレイヤ５２１は３つのヘッドを含んでいるが、例えば２つ又は４つ以上など、他のヘッド数も可能である。マルチヘッドアテンションレイヤ５２１の出力は、別のマルチヘッドアテンションレイヤ５２２へのｑ入力として提供され、マルチヘッドアテンションレイヤ５２２のｋ及びｖ入力は、対応する符号化レイヤからの符号化出力を提供される。マルチヘッドアテンションレイヤ５２１の各ヘッドは、アテンションネットワーク４００と一致する。一部の例において、マルチヘッドアテンションレイヤ５２２は３つのヘッドを含んでいるが、例えば２つ又は４つ以上など、他のヘッド数も可能である。一部の例において、各アテンションレイヤは、２００なる次元、及び１２８なる隠れサイズを持つ。マルチヘッドアテンションレイヤ５２２の出力が、フィードフォワードネットワーク５２３に提供され、フィードフォワードネットワーク５２３の入力及び出力の両方が、付加及び正規化モジュール５２４に提供され、付加及び正規化モジュール５２４が、復号化レイヤ５２０に関するレイヤ出力を生成する。一部の例において、フィードフォワードネットワーク５２３、付加及び正規化モジュール５１３は、それぞれ、フィードフォワードネットワーク５１２、付加及び正規化モジュール５１３と実質的に同様である。
【００３１】
戻って図３を参照するに、多層セルフアテンションベーストランスフォーマの符号化側の出力（例えば、図３の例における（ｓ２〜）が、ｂｉＬＳＴＭ３６０に渡され、それが、最終的な符号化シーケンスｈを生成する。そして、この最終的な符号化シーケンスｈが、図６に関して更に詳細に後述するような単語ジェネレータ３７０に渡される。
【００３２】
多層セルフアテンションベーストランスフォーマの復号側の出力は、ベクトルのシーケンスｚである。ベクトルのシーケンスｚも単語ジェネレータ３７０に渡され、そして、解答ｐにおける単語の各々が生成されるときに、それらが多層セルフアテンションベーストランスフォーマの復号側の最初のレイヤに戻される。
【００３３】
図６は、一部の実施形態に従った単語ジェネレータ３７０の簡略図である。単語ジェネレータ３７０は、ｚを一連の入力ベクトルとして扱うとともに、ｈをそれのアテンション用のコンテキストとして扱う。単語ジェネレータは、繰り返し動作して、システム３００に関するアンサーｐを生成する。アンサーｐは、先ず、完全なアンサーｐが生成された後に削除されるものであるセンチネルエントリを用いて初期化される。更に後述するように、各繰り返しｔ（図６に下付き文字によって表記される）において、アンサーにおける次の単語がｐｔとして生成される。
【００３４】
時間ステップｔにて、１つのレイヤの一方向ＬＳＴＭ６１０が、多層セルフアテンションベーストランスフォーマのデコーダ側からの前の入力ｚｔ−１と前の時間ステップｔからの前の隠れ状態ｈｔ−１〜との連結、並びに前のコンテキスト調整済み隠れ状態ｈｔ−１ｄｅｃに基づいて、式１２を用いて、コンテキスト調整済み隠れ状態ｈｔｄｅｃを生成する。
【数１３】
2021513165.tif 000015
【００３５】
次いで、アテンションレイヤ６２０が、最終的な符号化シーケンスｈと、コンテキスト調整済み隠れ状態ｈｔｄｅｃとに基づいて、式１３を用いて、現在のデコーダ状態に対する各符号化時間ステップの関連性を表すアテンション重みのベクトルαｔを生成し、ここで、Ｈは、時間次元にわたって積み重ねられたｈの要素であり、Ｗ１及びｂ１は、アテンションレイヤ６２０についての訓練可能な重み及びバイアスである。
【数１４】
2021513165.tif 000016
【００３６】
次いで、ｔａｎｈレイヤ６３０及びｓｏｆｔｍａｘレイヤ６４０を含む用語集レイヤが、アンサーｐの次の単語ｐｔとしての候補である用語集内の単語ｐｖｏｃａｂ（ｗｔ）の各々にわたる分布を生成する。ｔａｎｈレイヤ６３０は、アテンション重みαｔ、最終的な符号化シーケンスｈ、及びコンテキスト調整済み隠れ状態ｈｔｄｅｃに基づいて、式１４を用いて、現在の時間ステップについての隠れ状態ｈｔ〜を生成し、ここで、Ｈは時間次元にわたって積み重ねられたｈの要素であり、Ｗ２及びｂ２は、ｔａｎｈレイヤ６３０についての訓練可能な重み及びバイアスである。
【数１５】
2021513165.tif 000017
【００３７】
ｓｏｆｔｍａｘレイヤ６４０が、アンサーｐの次の単語ｐｔとしての候補である用語集内の単語ｐｖｏｃａｂ（ｗｔ）の各々にわたる分布を、式１５を用いて、隠れ状態ｈｔ〜に基づいて生成し、ここで、Ｗｏｕｔ及びｂｏｕｔは、ｓｏｆｔｍａｘレイヤ６４０についての訓練可能な重み及びバイアスである。
【数１６】
2021513165.tif 000018
【００３８】
コンテキストレイヤ６５０が、アンサーｐの次の単語ｐｔとしての候補であるコンテキストｃ内の単語ｐｃｏｐｙ（ｗｔ）の各々にわたる分布を、式１６を用いて、アテンション重みαｔに基づいて生成する。
【数１７】
2021513165.tif 000019
【００３９】
スイッチ６６０が、ｐｖｏｃａｂ（ｗｔ）分布とｐｃｏｐｙ（ｗｔ）分布とを互いに対してどのように重み付けるかを決定する。スイッチ６６０は、先ず、隠れ状態ｈｔ〜と、コンテキスト調整済み隠れ状態ｈｔｄｅｃと、多層セルフアテンションベーストランスフォーマのデコーダ側からの前の入力ｚｔ−１との連結に基づいて、式１７を用いて、重み付け係数γを生成し、ここで、σは、例えば対数シグモイド、双曲線正接シグモイド、及び／又はこれらに類するものなどのシグモイド伝達関数を表し、Ｗｓｗｉｔｃｈは、重み付け係数レイヤについての訓練可能な重みである。一部の例において、重み付け係数γは更に訓練可能なバイアスｂｓｗｉｔｃｈを用いて決定されてもよい。
【数１８】
2021513165.tif 000020
【００４０】
スイッチ６６０は、次いで、重み付け係数γを使用して、用語集内の単語及びコンテキスト内の単語の結合にわたる最終的な出力分布を、式１８を用いて生成する。そして、最も大きい重みを持つｐ（ｗｔ）内の単語に基づいて、アンサーｐにおける次の単語ｐｔを決定することができる。
【数１９】
2021513165.tif 000021
【００４１】
上述のように、また、ここで更に強調するように、図３は、請求項の範囲を不当に限定するはずのない単なる例に過ぎない。当業者、数多くの変形、代替、及び変更を認識することになる。一部の実施形態によれば、システム３００内のレイヤのうち１つ以上はオプションであり、省略されてもよい。一部の例において、線形レイヤ３１０及び／又は３１５はオプションであり、コンテキストｃ及びクエスチョンｑに使用される符号化を、それぞれ、ｂｉＬＳＴＭ３２０及び３２５に直接渡すこととして、省略され得る。一部の例において、ｂｉＬＳＴＭ３２０及び／又は３２５はオプションであり、線形レイヤ３１０及び３１５の出力をコアテンションレイヤ３３０に直接通すこととして、省略され得る。一部の例において、線形レイヤ３１０及び３１５並びにｂｉＬＳＴＭ３２０及び３２５はオプションであり、コンテキストｃ及びクエスチョンｑに使用される符号化をコアテンションレイヤ３３０に直接渡すこととして、省略され得る。
【００４２】
システム３００は、複数のタスク（例えば、分類（例えば感情分析など）、言語翻訳、及び質問応答）に使用され、全てのタスクタイプにわたって様々なレイヤに関するそのパラメータを共有するので、注意深く訓練されない場合には、壊滅的忘却の影響を受けやすい。これに対処するため、一部の実施形態において、システム３００は、統合的（ジョイント）戦略に従って訓練されることができ、これは、複数のタスクタイプの各々のバランスのとれた混ぜ合わせに対して同時にシステム３００を訓練するように訓練サンプルが提示される順序を用いて、システム３００が訓練されるというものである。すなわち、この、訓練サンプルがシステム３００に提示される順序は、立て続けの訓練サンプル又は立て続けの小グループ（例えば、２個から１０個くらい）の訓練サンプルを異なるタスクタイプから選択する。一部の例において、統合的戦略は、訓練の各繰り返しで、複数のタスクタイプのうちの異なる１つから訓練サンプル（コンテキストｃ、クエスチョンｑ、及びグラウンドトゥルースアンサー）を選択することを含む。統合的戦略の目標は、１つのタスクタイプを別の１つよりも過度に重視重することなく、タスクタイプの各々に対して同時に訓練することである。しかしながら、実際には、システム３００は、タスクタイプの各々を学習するが、タスクタイプのうちのいずれについても特別よくは学習しない。統合訓練戦略は、Collobert,  et  al.，“A  Unified  Architecture  for  Natural  Language  Processing:  Deep  Neural  Networks  with  Multitask  Learning”，International  Conference  on  Machine  Learning  2008，pp．160−167、及びHashimoto,  et  al.，“A  Joint  Many-task  Model:  Growing  a  Neural  Network  for  Multiple  NLP  Tasks”，Conference  on  Empirical  Methods  in  Natural  Language  Processing，2017，pp．1923-33にもっと詳細に記載されており、それらの各々の全体をここに援用する。
【００４３】
一部の実施形態において、システム３００は、逐次訓練戦略に従って訓練されることができ、これは、タスクタイプの各々に対してシステム３００を個別に訓練するように訓練サンプルがシステム３００に提示される順序を用いて、システム３００が訓練されるものである。すなわち、この、訓練のために訓練サンプルがシステム３００に提示される順序は、第１のタスクタイプについてのサンプルの各々を提示してから、第２のタスクタイプについての訓練サンプルの各々を提示し、その後で、第１のタスクタイプについてのサンプルの各々を再び提示する、等々と続ける。逐次訓練戦略では、タスクタイプのうちの１つに対する訓練が終了し、訓練がタスクタイプのうちの２つ目に切り替わると、最初のタスクタイプの幾らかの壊滅的忘却が発生し始める。しかしながら、タスクタイプの各々についての訓練サンプルを代わる代わる複数回通った後、システム３００は、以前に訓練したタスクタイプの各々に関する訓練をより迅速に回復して、潜在知識を集め始める。一部の例において、訓練がタスクタイプ間で切り替わるときに生じる壊滅的忘却のために、システム３００は概して、最後に訓練したタスクタイプの強い学習を示すのみである。逐次訓練戦略は、Kirkpatrick,  et  al.，“Overcoming  Catastrophic  Forgetting  in  Neural  Networks”，Proceedings  of  the  National  Academy  of  Sciences，2017，pp．3521−3526にもっと詳細に記載されており、その全体をここに援用する。
【００４４】
一部の実施形態において、統合訓練戦略及び逐次訓練戦略の限界に対処することにおける試みが提案される。一部の例において、これらは、計算的に高価なフィッシャー（Ｆｉｓｈｅｒ）インフォメーションの生成、全てのタスクタイプに対する統一システムの目標に負の影響を与えるものであるタスク特有の変更（例えば、パッキング及び／又は適応戦略）の使用、及び／又はこれらに類するものを含む。
【００４５】
一部の実施形態において、システム３００は、ハイブリッド訓練戦略に従って訓練され得る。ハイブリッド訓練戦略において、システム３００は、最初に逐次訓練戦略を用いて訓練される。これは、システム３００が、タスクタイプの各々の潜在知識を集めることを可能にする。タスクタイプの各々についての訓練サンプルを何回か通った後、システム３００は、統合訓練戦略を用いて訓練される。最初の逐次訓練からの潜在知識のため、続く統合訓練は、マルチタスクを実行しながらも、最初の逐次訓練なしの統合訓練単独よりも効果的にタスクタイプの各々を学習することができる。システム３００が最初の逐次訓練中に前もって訓練したタスクタイプを潜在知識へと完全に抑え込むことを可能にすることによって、ハイブリッド訓練戦略は、システム３００に、タスクタイプの各々に特化することに集中するためのより多くの時間を与える。一部の例において、ハイブリッド訓練戦略は、全てのタスクタイプをまとめてどのように学習するかを学ぶことから、各タスクタイプを学習するという目標を切り離す。従って、訓練が統合訓練戦略に切り替わるとき、システム３００は、タスクタイプの各々をよく学習する準備がよく整っている。
【００４６】
一部の実施形態において、システム３００は、ハイブリッド訓練戦略の変形である合成訓練戦略に従って訓練される。合成訓練戦略において、システム３００は、最初に逐次訓練戦略を用いて訓練されるが、逐次訓練の間に一定のインターバル且つ一定回数の繰り返しで、訓練が、前に訓練したタスクタイプの各々に統合訓練戦略に切り替わり、そしてその後に逐次訓練戦略に戻る。以前に学習したタスクタイプについての統合訓練戦略に一時的に切り替わることによって、システム３００は、古いタスクタイプをより頻繁に思い出すとともに、古い知識を新しい知識と合成することを余儀なくされる。
【００４７】
図７は、一部の実施形態に従ったマルチタスク学習の方法７００の簡略図である。方法７００の処理７１０−７８０のうちの１つ以上は少なくとも部分的に、１つ以上のプロセッサによって実行されるときに該１つ以上のプロセッサに処理７１０−７８０のうちの１つ以上を実行させ得る、非一時的な有形の機械読み取り可能媒体に格納された実行可能コードの形態で実装され得る。一部の実施形態において、方法７００は、システム３００を訓練するためのハイブリッド訓練戦略として使用され得るが、方法７００はまた、システム３００以外の他のマルチタスクシステムを訓練するためにも使用され得る。一部の実施形態において、方法７００によって訓練されるタスクタイプは、例えば言語翻訳、分類（例えば、感情分析）、質問応答、及び／又はこれらに類するものなどの、様々な自然言語処理タスクのうちのいずれかを含み得る。
【００４８】
処理７１０にて、第１の訓練戦略に従って訓練サンプルが選択される。一部の実施形態において、第１の訓練戦略は逐次訓練戦略であり、第１のタスクタイプに関する訓練サンプルの各々が選択されるまで第１のタスクタイプに関する訓練サンプルから訓練サンプルが選択され、その後、第１のタスクタイプとは異なる第２のタスクタイプに関する訓練サンプルの各々が選択されるまで、第２のタスクタイプから訓練サンプルが選択される。次いで、存在する場合に、順次に更なるタスクタイプから訓練サンプルが選択され、それらのタスクタイプの各々に関する訓練サンプルの各々が選択された後に、次のタスクタイプに切り替えが起こる。一部の例において、選択される訓練サンプルは、自然言語コンテキストと、自然言語クエスチョンと、コンテキスト及びクエスチョンに対応するグラウンドトゥルース自然言語アンサーとを含む。
【００４９】
処理７２０にて、選択された訓練サンプルがシステムに提示される。一部の例において、システムはシステム３００である。訓練サンプルがシステムに与えられると、訓練サンプルが、現在訓練されているパラメータ（例えば、重み及びバイアス）に従ってシステムの様々なレイヤを通って前方に送られ、アンサーが生成される。一部の例において、アンサーは自然言語フレーズである。
【００５０】
処理７３０にて、誤差に基づいてシステムが調整される。処理７２０中にシステムによって生成されたアンサーが、選択された訓練サンプルについてのグラウンドトゥルースアンサーと比較され、選択された訓練サンプルについての誤差が決定される。次いで、その誤差が、レイヤの様々なパラメータ（例えば、重み及びバイアス）を更新するために、逆伝搬を用いてシステム３００にフィードバックされ得る。一部の例において、逆伝搬は、確率的勾配降下（stochastic  gradient  descent；ＳＧＤ）訓練アルゴリズム、適応モーメント推定（adaptive  moment  estimation；ＡＤＡＭ）訓練アルゴリズム、及び／又はこれらに類するものを使用して実行され得る。一部の例において、逆伝搬に使用される勾配は、１．０にクリップされ得る。一部の例において、学習減衰レートは、２０１７年６月１２日に提出された、Vaswani,  et  al.，“Attention  is  All  You  Need”，arXiv  preprint  arXiv：1706.03762によって使用されたものと同じレートとし得る。
【００５１】
処理７４０にて、第１の訓練戦略から第２の訓練戦略に切り替えるべきかが決定される。一部の例において、第２の訓練戦略に切り替えるべきとの決定は、タスクタイプの各々に関する訓練サンプルの各々が所定の回数だけ選択された後に行われる。一部の例において、この所定の回数は５回とし得るが、例えば３回、４回、及び／又は６回以上などの、他の回数も使用され得る。一部の例において、第２の訓練戦略にいつ切り替えるべきかについての決定を行うために、１つ以上の他のファクタが使用されてもよい。一部の例において、該１つ以上の他のファクタは、訓練サンプルを通る各パスでタスクタイプの各々についての性能メトリックの変化を監視し、そして、各パス後の性能メトリックの各々における向上が閾値量よりも小さくしか向上しない場合に切り替えを行うことを含み得る。第２の訓練戦略に切り替えないと決定された場合、方法７００は、処理７１０に戻り、第１の訓練戦略に従って訓練サンプルが選択され続ける。第２の学習訓練戦略に切り替えると決定された場合、処理７５０で始まる第２の訓練戦略を用いて訓練サンプルの選択が行われる。
【００５２】
処理７５０にて、第２の訓練戦略に従って訓練サンプルが選択される。一部の例において、第２の訓練戦略は統合訓練戦略であり、複数のタスクタイプの各々に関する訓練サンプルから等しく訓練サンプルが選択される。
【００５３】
処理７６０にて、処理７２０と実質的に同じ処理を使用して、選択された訓練サンプルがシステムに提示される。
【００５４】
処理７７０にて、処理７３０と実質的に同じ処理を使用して、誤差に基づいてシステムが調整される。
【００５５】
処理７８０にて、訓練が完了したかが決定される。一部の例において、訓練は、タスクタイプの各々に関する訓練サンプルが所定の回数だけシステムに提示された後に完了する。一部の例において、この所定の回数は８回とし得るが、例えば２−７回及び／又は９回以上などの他の回数も使用され得る。一部の例において、訓練が終了したときについての決定を行うために、１つ以上の他のファクタが使用されてもよい。一部の例において、該１つ以上の他のファクタは、訓練サンプルを通る各パスでタスクタイプの各々についての性能メトリックの変化を監視し、そして、各パス後の性能メトリックの各々における向上が閾値量よりも小さくしか向上しない場合に訓練が完了したとすることを含み得る。訓練が完了していないと決定された場合、方法７００は、処理７５０に戻り、第２の訓練戦略に従って訓練サンプルが選択され続ける。訓練が完了したと決定された場合、方法７００は終了し、この訓練済みのシステムは、もはや、それに関して訓練したタスクのいずれに対しても使用されることができる。
【００５６】
訓練が完了した後、訓練済みのシステムは、処理７２０及び／又は７６０と実質的に同様の処理を使用して、タスクタイプのいずれに対しても使用されることができ、コンテキストｃ及びクエスチョンｑが、システムに提示され、方法７００に従って訓練されたパラメータ（例えば、重み及びバイアス）に従って、システムの様々なレイヤを通って前方に送られ得る。そして、生成されるアンサーは、提示されたコンテキストｃ及びクエスチョンｑへの応答に相当する。
【００５７】
上述のように、また、ここで更に強調するように、図７は、請求項の範囲を不当に限定するはずのない単なる例に過ぎない。当業者、数多くの変形、代替、及び変更を認識することになる。一部の実施形態において、方法７００は、合成訓練戦略を使用するように適応される。合成訓練戦略において、第１の訓練戦略は逐次訓練戦略の変形であり、第２の訓練戦略は統合訓練戦略とし得る。逐次訓練戦略の変形は概して、訓練サンプルが統合訓練戦略に従って選択される時のインターバル中を除いて、逐次訓練戦略に従って訓練サンプルを選択することを含む。一部の例において、統合訓練戦略インターバルの位置及び配置は、各タスクタイプについての訓練の繰り返し回数（例えば、訓練サンプルがシステムに提示される回数）に基づき得る。非限定的な一例として、訓練サンプルの選択は、第１のタスクタイプについて１０，０００個の訓練サンプルを選択し、複数のタスクタイプの各々から統合的に１０００個の訓練サンプルを選択し、第１のタスクタイプについて別の１０，０００個の訓練サンプルを選択し、複数のタスクタイプの各々から統合的に１０００個の訓練サンプルを選択し、そして、第１のタスクタイプの訓練サンプルの各々が提示されるまで繰り返し、その後、第２のタスクタイプについて１０，０００個の訓練サンプルを選択し、等々とすることを含み得る。一部の例において、逐次型の選択と統合型の選択との間で交番させる前の訓練サンプルの数は、各タスクタイプに関する訓練サンプルの数のパーセンテージに基づいてもよい（例えば、それぞれのタスクタイプに関する訓練サンプルの数の１０％から２５％までのどこかの後）。
【００５８】
図８は、一部の実施形態に従った訓練性能の簡略図である。より具体的には、図８は、英語からドイツ語への（英独）言語翻訳、英語からフランス語への（英仏）言語翻訳、質問応答、及び感情分類、という４つのタスクタイプに従ってシステム３００を訓練した結果を示している。
【００５９】
英語からドイツ語への及び英語からフランス語への翻訳タスクタイプに関する訓練サンプルは、音声翻訳国際ワークショップ（International  Workshop  on  Spoken  Language  Translation）の英語からドイツ語（ＩＷＳＬＴ  ＥＮ−＞ＤＥ）及び英語からフランス語（ＩＷＳＬＴ  ＥＮ−＞ＦＲ）の訓練セットに基づいており、これらは、ＴＥＤトークから音声転写された約２１０，０００の文章ペアを含んでいる。これら２つの言語翻訳タスクタイプに使用される性能メトリックは、ＢＬＥＵスコアである。
【００６０】
質問応答タスクタイプに関する訓練サンプルは、Ｗｉｋｉｐｅｄｉａ記事からの段落サンプルに関連する質問に基づく１０，５７０の訓練サンプルを含むものであるスタンフォード質問応答データセット（Stanford  Question  Answering  Dataset；ＳＱｕＡＤ）に基づく。質問応答タスクタイプに使用される性能メトリックは、Ｆ１スコアである。
【００６１】
感情分類タスクタイプに関する訓練サンプルは、中立的な例が除されたスタンフォード感情ツリーバンク（Stanford  Sentiment  Treebank；ＳＳＴ）に基づく。ＳＳＴは、映画レビューとその感情に基づいた約５６，４００の訓練サンプルを含んでいる。感情分類タスクタイプに使用される性能メトリックは、完全一致のパーセンテージである。
【００６２】
図８は更に、前述の性能メトリックに従った各タスクタイプの学習結果を示している。各タスクタイプについて３つの結果が示されている。シングル（単一）の欄は、示されたタスクタイプに関する訓練サンプルのみを使用してシステム３００が訓練される場合のそれぞれの性能メトリックを示している。ジョイント（統合）の欄は、統合訓練戦略を使用してシステム３００が訓練される場合の同じ性能メトリックを示している。ハイブリッド（混成）の欄は、方法７００のハイブリッド訓練戦略を使用してシステム３００が訓練される場合の同じ性能メトリックを示している。予期されるように、シングルタスクタイプ訓練結果が最も高い性能メトリックを有する。何故なら、システム３００の各バージョンが、その単一タスクに特化することを許されたからである。ジョイントの欄は、統合訓練戦略の使用が著しく乏しい結果をもたらすことを示しており、ハイブリッドの欄は、統合訓練戦略に対して、方法７００のハイブリッド訓練戦略を用いることでの改善を示している。また、感情分類タスクタイプを例外として、方法７００のハイブリッド訓練戦略は、統合訓練戦略よりもかなり優れた性能結果をもたらした。
【００６３】
図９Ａ−９Ｃは、一部の実施形態に従った訓練性能の簡略図である。図９Ａは、システム３００がタスクタイプの各々に対して別々に訓練される場合の、タスクタイプの各々についてのそれぞれの性能メトリックを、訓練の繰り返しにわたって追跡している（例えば、図８のシングルの欄と比較されたい）。故に、図９Ａは、システム３００の４つの別々に訓練されたバージョンについての結果を示している。図９Ｂは、システム３００が統合訓練戦略に従って訓練される場合のそれぞれの性能メトリックを追跡している。図９Ｂの性能メトリックが示すように、ＳＳＴ分類タスクタイプ以外では、統合訓練戦略を用いて訓練されたシステム３００のバージョンは、タスクタイプのいずれについても特によくは学習しなかった。図９Ｃは、システム３００が方法７００のハイブリッド訓練戦略に従って訓練される場合のそれぞれの性能メトリックを追跡している。当初の逐次訓練中に訓練サンプルが１つのタスクタイプから別の１つに切り替わるときの壊滅的忘却の効果が、図９Ｃに明瞭に見えている。複数のタスクタイプの各々からの訓練サンプルが、逐次訓練戦略を用いて５回提示され、そして、（約２５０，０００の繰り返しにて）訓練戦略が統合訓練戦略に切り替わった後、性能メトリックは、図９Ｂの統合訓練戦略のみのアプローチの性能メトリックよりも良い値に急速に向上し、図９Ａの別々に訓練されたシステム３００のバージョンの性能メトリックにいっそう近づく。
【００６４】
図１０Ａ及び１０Ｂは、一部の実施形態に従った訓練順序に基づく訓練性能の簡略図である。図１０Ａ及び１０Ｂは、ハイブリッド訓練戦略の初期の逐次訓練中に様々なタスクタイプについての訓練がシステム３００に提示される順序を変更することの影響を例証している。図１０Ａに示されるように、システム３００が、最初に英語からドイツ語への言語翻訳タスクタイプからの訓練サンプル（ＩＷＳＬＴ  ＥＮ−＞ＤＥ）で訓練されてから、感情分類タスクタイプからの訓練サンプル（ＳＳＴ）で訓練される場合、システム３００は、再び訓練サンプルが英語からドイツ語への言語翻訳タスクタイプから引き出されるときに、その英語からドイツ語への翻訳知識を迅速に回復することができる。対照的に、図１０Ｂが示すことには、システム３００が、最初に感情分類タスクタイプに対して訓練されてから、英語からドイツ語への言語翻訳タスクタイプに対して訓練される場合には、システム３００は、英語からドイツ語への言語翻訳タスクタイプをあまりよく学習することができない。これは、英語からドイツ語への言語翻訳タスクタイプに対する最初の訓練が、訓練サンプルの非常に高い複雑さ及び豊富さのために、より良好な初期エンコーディング知識につながるからであると推測される。
【００６５】
例えばコンピューティング装置１００などのコンピューティング装置の一部の例は、１つ以上のプロセッサ（例えば、プロセッサ２１０）によって実行されるときに該１つ以上のプロセッサに方法７００の処理を実行させる実行可能コードを含んだ、非一時的な有形の機械読み取り可能媒体を含み得る。方法７００の処理を含み得る機械読み取り可能媒体の一部の一般的な形態は、例えば、フロッピーディスク（登録商標）、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、ＣＤ−ＲＯＭ、他の光媒体、パンチカード、紙テープ、穴のパターンを有する他の物理媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、他のメモリチップ若しくはカートリッジ、及び／又はプロセッサ若しくはコンピュータが読み出すように適応される他の媒体を含み得る。
【００６６】
発明の態様、実施形態、実装、又は用途を例示するこの明細書及び添付の図面は、限定的なものと解釈されるべきでない。この説明及び請求項の精神及び範囲から逸脱することなく、種々の機械的、組成的、構造的、電気的、及び動作的な変更が為され得る。一部の例において、この開示の実施形態を不明瞭にしないために、周知の回路、構造、又は技術については詳細に図示したり説明したりしていない。２つ以上の図における似通った参照符号は、同じ又は同様の要素を表している。
【００６７】
この説明においては、本開示と一貫した一部の実施形態を記述する具体的詳細事項が記載されている。それらの実施形態の完全な理解を提供するために、数多くの具体的詳細事項が記載される。しかしながら、当業者に明らかになることには、一部の実施形態は、それらの具体的詳細事項の一部又は全てなしで実施され得る。ここに開示される特定の実施形態は、例示的なものであり、限定的なものではない。当業者は、ここに具体的に記載されていないが本開示の範囲及び精神の中にある他の要素に気付き得る。また、不要な繰り返しを避けるため、１つの実施形態に関連して図示して説明された１つ以上の機構が、別のことが具体的に記載されていない限り、あるいは、該１つ以上の機構が実施形態を機能しないものにしない限り、他の実施形態に組み込まれてもよい。
【００６８】
例示的な実施形態が図示されて説明されたが、以上の開示では、広範な変更、変形及び代替が企図され、また、一部の例では、実施形態の一部の機構が、他の機構の対応する使用なしに使用されてもよい。当業者は、数多くの変形、代替、及び変更を認識するであろう。従って、発明の範囲は、以下の請求項によってのみ限定されるべきであり、請求項は、ここに開示された実施形態の範囲と一致するように広く解釈されるのが妥当である。
【図１】
2021513165.tif 000022
【図２】
2021513165.tif 000023
【図３】
2021513165.tif 000024
【図４】
2021513165.tif 000025
【図５】
2021513165.tif 000026
【図６】
2021513165.tif 000027
【図７】
2021513165.tif 000028
【図８】
2021513165.tif 000029
【図９Ａ】
2021513165.tif 000030
【図９Ｂ】
2021513165.tif 000031
【図９Ｃ】
2021513165.tif 000032
【図１０Ａ】
2021513165.tif 000033
【図１０Ｂ】
2021513165.tif 000034
【手続補正書】
【提出日】令和2年8月7日(2020.8.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
質問応答システムを訓練する方法であって、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ことを有し、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
方法。
【請求項２】
前記複数のタスクタイプの各々は、言語翻訳タスクタイプ、分類タスクタイプ、又は質問応答タスクタイプである、請求項１に記載の方法。
【請求項３】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項１又は２に記載の方法。
【請求項４】
前記逐次訓練戦略は、前記複数のタスクタイプの各々に関する訓練サンプルを選択した後に、前記第１のタスクタイプに関する訓練サンプルを再び選択することを含む、請求項３に記載の方法。
【請求項５】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１乃至４のいずれか一項に記載の方法。
【請求項６】
前記第２の訓練戦略は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１乃至４のいずれか一項に記載の方法。
【請求項７】
前記第１の訓練戦略は、前記訓練サンプルが逐次訓練戦略に従って選択され、周期的な間隔で前記訓練サンプルが統合訓練戦略に従って選択されるという修正逐次訓練戦略である、請求項１又は２に記載の方法。
【請求項８】
前記複数のタスクタイプの各々に関する前記訓練サンプルの各々が所定回数だけ前記神経モデルに提示された後に、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替える、又は
前記複数のタスクタイプの各々に関連する性能メトリックのモニタリングに基づいて、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替える、
ことを更に有する請求項１乃至７のいずれか一項に記載の方法。
【請求項９】
複数の機械読み取り可能命令を有した非一時的な機械読み取り可能媒体であって、前記複数の機械読み取り可能命令は、コンピューティング装置に関連する１つ以上のプロセッサによって実行されるときに、該１つ以上のプロセッサに方法を実行させ、当該方法は、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ことを有し、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
非一時的な機械読み取り可能媒体。
【請求項１０】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項９に記載の非一時的な機械読み取り可能媒体。
【請求項１１】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略、又は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項９又は１０に記載の非一時的な機械読み取り可能媒体。
【請求項１２】
前記方法は更に、前記複数のタスクタイプの各々に関する前記訓練サンプルの各々が所定回数だけ前記神経モデルに提示された後に、前記第２の訓練戦略を用いて前記訓練サンプルを選択することに切り替えることを有する、請求項９乃至１１のいずれか一項に記載の非一時的な機械読み取り可能媒体。
【請求項１３】
ディープラーニング用のシステムであって、
多層ニューラルネットワークを有し、
当該システムは、
複数の訓練サンプルを受信し、前記訓練サンプルの各々が、自然言語コンテキスト、自然言語クエスチョン、及び自然言語グラウンドトゥルースアンサーを含み、前記訓練サンプルは、複数のタスクタイプからの訓練サンプルを含み、
前記訓練サンプルを神経モデルに提示してアンサーを生成し、
提示された各訓練サンプルについて、前記生成されたアンサーと前記自然言語グラウンドトゥルースアンサーとの間の誤差を決定し、そして、
前記誤差に基づいて前記神経モデルのパラメータを調節する、
ように構成され、
前記訓練サンプルが前記神経モデルに提示される順序が、
最初に、第１の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第１の訓練戦略に従って前記訓練サンプルを選択することと、
第２の順序に従って、前記複数のタスクタイプの各々からの訓練サンプルが前記神経モデルに提示される順序を制御するために使用される第２の訓練戦略に従って前記訓練サンプルを選択することに切り替えることと、
を含む、
システム。
【請求項１４】
前記第１の訓練戦略は、第１のタスクタイプに関する前記訓練サンプルの各々が選択されてから第２のタスクタイプの訓練サンプルを選択するという逐次訓練戦略である、請求項１３に記載のシステム。
【請求項１５】
前記第２の訓練戦略は、続いて選択される訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略、又は、続いて選択される小グループの訓練サンプルが前記複数のタスクタイプのうちの異なるものから選択されるように前記訓練サンプルの各々が選択されるという統合訓練戦略である、請求項１３又は１４に記載のシステム。
【国際調査報告】
2021513165.tif 000035
2021513165.tif 000036