(57)【要約】      （修正有）【課題】自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムおよび方法を提供する。【解決手段】技術的アーキテクチャにおいて、多数の意図を処理するために、多目的会話型エージェントからなる複数の構成要素を定義し、論理的に統合することと、高レベル意図識別技法によって、１つまたは複数の自然言語問合せを処理するために適切なエージェントを識別することと、あり得るユーザ意図を予測することと、問合せを分類することと、１つまたは複数の知識グラフ３２２に問い合わせるかまたはそれを更新することによって応答のセットを生成することと、を含む。【選択図】図３
2019215857.tif 000002
【特許請求の範囲】
【請求項１】
自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントの方法であって、前記方法が、プロセッサ実装ステップであって、
１つまたは複数のハードウェア・プロセッサによって、ダイアログ状態マネージャ（ＤＳＭ）、マルチレベル意図識別構成要素、エージェント・マネージャ、複数の１次エージェント、意図−行為−ダイアログ（ＩＡＤ）フレームワーク、問合せ−更新−関与（ＱＵＥ）フレームワーク、知識グラフ更新−自然言語（ＫＧＵ−ＮＬ）エージェント、知識グラフ関与エージェント、複数の補助エージェント、および知識グラフ更新エージェントからなる複数の構成要素を定義するステップであって、前記複数の構成要素の中の各構成要素が１つまたは複数の多目的会話型エージェントを備える、定義するステップ（２０１）と、
予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）によって前記複数の構成要素を論理的に統合するステップ（２０２）と、
論理的に統合された前記複数の構成要素によって、複数のソースから自然言語問合せのセットを受信するステップ（２０３）と、
自然言語問合せの前記セットに基づいて、複数のステップを実施するステップであって、前記複数のステップは、
（ｉ）前記ＤＳＭを使用することによって前記１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別するステップであって、前記識別された多目的会話型エージェントが前記ＩＡＤフレームワークまたは前記ＱＵＥフレームワークのいずれかに対応する、識別するステップ（２０４（ｉ））と、
（ｉｉ）１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測するステップ（２０４）（ｉｉ）と
を含む、実施するステップ（２０４）と、
前記予測されたユーザ意図および前記識別された多目的会話型エージェントに基づいて、
（ｉ）前記識別された多目的会話型エージェントが前記ＩＡＤフレームワークに対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択するか、または、綿密な情報を抽出するためにユーザを関与させるか、または、前記綿密な情報を１つまたは複数の外部サービスに通信するために外部ＡＰＩを呼び出すステップであって、応答の前記１つまたは複数のあらかじめ定義されたセットと前記綿密な情報とが自然言語問合せの前記セットに対応する、選択するかまたは関与させるかまたは呼び出すステップ（２０５（ｉ））、あるいは
（ｉｉ）前記識別された多目的会話型エージェントが前記ＱＵＥフレームワークに対応していると決定すると、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために自然言語問合せの前記セットの中の問合せを分類するステップ（２０５（ｉｉ））、および
（ｉｉｉ）前記分類された問合せに基づいて、
（ａ）１つまたは複数の知識グラフに問い合わせて、自然言語問合せの前記セットに対応する応答の第１のセットを生成するステップ（２０５（ｉｉｉ）（ａ））、または
（ｂ）前記ＫＧＵ−ＮＬエージェントによって、前記１つまたは複数の知識グラフを更新して、自然言語問合せの前記セットに対応する応答の第２のセットを生成するステップ（２０５（ｉｉｉ）（ｂ））のうちの１つを実施するステップ、
のうちの１つを実施するステップ（２０５）と
のプロセッサ実装ステップを含む方法。
【請求項２】
前記論理的な統合が、予期される自然言語ユーザ問合せの前記セットに基づいて、前記自然言語問合せを処理するために前記複数の構成要素と前記１つまたは複数の多目的会話型エージェントとを階層的に定義するステップを含む、請求項１に記載の方法。
【請求項３】
前記定義された複数の構成要素が、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せの前記処理を可能にするために１人または複数のユーザのための複数の推奨される質問を自動生成するための自動提案機構をさらに備える、請求項２に記載の方法。
【請求項４】
前記１つまたは複数のトレーニング・データセットが、問合せの意味論的に類似のセットのセットと、問合せの前記意味論的に類似のセットに対応する返答のセットとを含む、請求項３に記載の方法。
【請求項５】
前記１つまたは複数の知識グラフが、前記知識グラフ関与エージェントによって１人または複数のユーザから取得された情報のセットに基づいて、前記知識グラフ更新エージェントによって更新され、情報の前記セットが自然言語問合せの前記処理に対応する、請求項１に記載の方法。
【請求項６】
情報の前記セットが、積極的ユーザ関与によって、または前記知識グラフ関与エージェントによる前記１つまたは複数の知識グラフに対応する情報の分析によってのいずれかで、前記１人または複数のユーザから取得される、請求項５に記載の方法。
【請求項７】
応答の前記第１のセットを生成する前記ステップが、
（ｉ）転置インデックス・ベースの探索技法によって、前記１つまたは複数の知識グラフに対応する１つまたは複数のエンティティを前記分類された問合せに対応する１つまたは複数のフレーズとマッピングするステップと、
（ｉｉ）前記マッピングに基づいて、応答の前記第１のセットを生成するために前記１つまたは複数の知識グラフをトラバースするステップと
を含む、請求項１に記載の方法。
【請求項８】
応答の前記第２のセットが、自然言語問合せの前記セットに対応する前記綿密な情報を抽出するために前記ユーザを関与させることによって、またはインターフェースによってコマンドのセットを実行することによってのいずれかで生成される、請求項１に記載の方法。
【請求項９】
自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステム（１００）であって、
命令を記憶するメモリ（１０２）と、
１つまたは複数の通信インターフェース（１０６）と、
前記１つまたは複数の通信インターフェース（１０６）を介して前記メモリ（１０２）に結合された１つまたは複数のハードウェア・プロセッサ（１０４）と、
を備え、前記１つまたは複数のハードウェア・プロセッサ（１０４）は、
ダイアログ状態マネージャ（ＤＳＭ）（３０２）、マルチレベル意図識別構成要素（３０３）、エージェント・マネージャ（３０４）、複数の１次エージェント（３０６）、意図−行為−ダイアログ（ＩＡＤ）フレームワーク（３０８）、問合せ−更新−関与（ＱＵＥ）フレームワーク（３１４）、知識グラフ更新−自然言語（ＫＧＵ−ＮＬ）エージェント（３１６）、知識グラフ関与エージェント（３１７）、複数の補助エージェント（３１９）、および知識グラフ更新エージェント（３２１）からなる複数の構成要素を定義することであって、前記複数の構成要素の中の各構成要素が１つまたは複数の多目的会話型エージェントを備える、定義することと、
予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）によって前記複数の構成要素を論理的に統合することと、
論理的に統合された前記複数の構成要素によって、複数のソースから自然言語問合せのセットを受信することと、
自然言語問合せの前記セットに基づいて、複数のステップを実施することであって、前記複数のステップは、
（ｉ）前記ＤＳＭ（３０２）を使用することによって前記１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別するステップであって、前記識別された多目的会話型エージェントが前記ＩＡＤフレームワーク（３０８）または前記ＱＵＥフレームワーク（３１４）のいずれかに対応する、識別するステップと、
（ｉｉ）１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測するステップと
を含む、実施することと、
前記予測されたユーザ意図および前記識別された多目的会話型エージェントに基づいて、
（ｉ）前記識別された多目的会話型エージェントが前記ＩＡＤフレームワーク（３０８）に対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択するか、または、綿密な情報を抽出するためにユーザを関与させるか、または、前記綿密な情報を１つまたは複数の外部サービス（３１８）に通信するために外部ＡＰＩを呼び出すことであって、応答の前記１つまたは複数のあらかじめ定義されたセットと前記綿密な情報とが自然言語問合せの前記セットに対応する、選択するかまたは関与させるかまたは呼び出すこと、あるいは
（ｉｉ）前記識別された多目的会話型エージェントが前記ＱＵＥフレームワーク（３１４）に対応していると決定すると、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために自然言語問合せの前記セットの中の問合せを分類すること、および
（ｉｉｉ）前記分類された問合せに基づいて、
（ａ）１つまたは複数の知識グラフ（３２２）に問い合わせて、自然言語問合せの前記セットに対応する応答の第１のセットを生成すること、または
（ｂ）前記ＫＧＵ−ＮＬエージェント（３１６）によって、前記１つまたは複数の知識グラフ（３２２）を更新して、自然言語問合せの前記セットに対応する応答の第２のセットを生成することのうちの１つを実施すること
のうちの１つを実施することと
を行うように前記命令によって構成される、
システム（１００）。
【請求項１０】
前記論理的な統合が、予期される自然言語ユーザ問合せの前記セットに基づいて、前記自然言語問合せを処理するために前記複数の構成要素と前記１つまたは複数の多目的会話型エージェントとを階層的に定義することを含む、請求項９に記載のシステム（１００）。
【請求項１１】
前記定義された複数の構成要素が、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せの前記処理を可能にするために１人または複数のユーザのための複数の推奨される質問を自動生成するための自動提案機構（３０５）をさらに備える、請求項１０に記載のシステム（１００）。
【請求項１２】
前記１つまたは複数のトレーニング・データセットが、問合せの意味論的に類似のセットのセットと、問合せの前記意味論的に類似のセットに対応する返答のセットとを含む、請求項１１に記載のシステム（１００）。
【請求項１３】
前記１つまたは複数のハードウェア・プロセッサ（１０４）が、１人または複数のユーザから取得された情報のセットに基づいて前記知識グラフ更新エージェント（３２１）を実装することによって前記１つまたは複数の知識グラフ（３２２）を更新するように構成され、情報の前記セットが自然言語問合せの前記処理に対応し、情報の前記セットが前記知識グラフ関与エージェント（３１７）を使用して取得される、請求項９に記載のシステム（１００）。
【請求項１４】
情報の前記セットが、積極的ユーザ関与によって、または前記知識グラフ関与エージェント（３１７）による前記１つまたは複数の知識グラフ（３２２）に対応する情報の分析によってのいずれかで、前記１人または複数のユーザから取得される、請求項１３に記載のシステム（１００）。
【請求項１５】
前記１つまたは複数のハードウェア・プロセッサ（１０４）が、
（ｉ）転置インデックス・ベースの探索技法によって、前記１つまたは複数の知識グラフ（３２２）に対応する１つまたは複数のエンティティを前記分類された問合せに対応する１つまたは複数のフレーズとマッピングすることと、
（ｉｉ）前記マッピングに基づいて、応答の前記第１のセットを生成するために前記１つまたは複数の知識グラフ（３２２）をトラバースすることと
によって応答の前記第１のセットを生成するように構成された、請求項９に記載のシステム（１００）。
【請求項１６】
前記１つまたは複数のハードウェア・プロセッサ（１０４）が、自然言語問合せの前記セットに対応する前記綿密な情報を抽出するために前記ユーザを関与させることによって、またはインターフェースによってコマンドのセットを実行することによってのいずれかで応答の前記第２のセットを生成するように構成された、請求項９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書の開示は、一般に、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェント（Deep Learning techniques based multi-purpose conversational agents）に関し、より詳細には、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムおよび方法に関する。
【背景技術】
【０００２】
自然言語処理（ＮＬＰ：ｎａｔｕｒａｌ  ｌａｎｇｕａｇｅ  ｐｒｏｃｅｓｓｉｎｇ）は、人工知能および言語学のサブフィールドである。ＮＬＰは、自然人間言語の自動の生成および理解に対応する問題を解決することを可能にする。自然言語生成システムは、コンピュータ・データベースからの情報を、正常に聞こえる人間言語に変換し、自然言語理解システムは、人間言語のサンプルを、コンピュータ・プログラムがより操作しやすい、より形式的な表現に変換する。自然言語処理の最近の進歩、特に、深層学習技法（Deep Learning techniques）を実装することにより、ダイアログベースのアプリケーション（たとえばＡＰＩ．ａｉなど）をサポートするための、ならびにユーザを関与させるために有意味なダイアログから学習し、有意味なダイアログを生成することを研究するための、様々なプラットフォームが利用可能になった。ただし、たいていのこれらの旧来のシステムおよび方法は、自分の銀行と対話する（interact with）ことまたは旅行の予約をすることなどの取引目的を果たし、および／あるいは汎用目的の質問返答を提供する。
【０００３】
自然言語インターフェースはユーザ・フレンドリであることが期待され、ユーザは、それをトレーニングなしに使用することが可能でなければならない。しかしながら、実際には、これが当てはまらないことがある。これは、主に、コンピューティング・システムが、あらかじめ定義されたタイプの会話のみに十分よく反応するからである。別の重要な課題は、異なるユーザ・ダイアログごとに、情報の異なるセットが、たとえば、従業員または休暇の開始日／終了日（leave start / end dates）を取得する、ユーザ発話から抽出され得る。要件ごとに異なる情報エクストラクタ（information extractor）を書くことは、高度深層学習手法に鑑みても汎用情報エクストラクタが現実離れしているので、大きな課題である。
【０００４】
さらに、機械学習技法または深層学習技法は、ユーザ意図（user intent）を識別するだけでなく、意図識別（intent identification）に関する機械学習モデルの信頼性が、コンピューティング・システムがそれを信じ、次に進むのに十分高いかどうかを予測しなければならない。結局、エージェントによって自然言語問合せを処理するためのトレーニング・データを作成するには、多くの労力を要する。それは、（１つまたは複数の）その特定のエージェントの領域の何人かの専門家を必要とし得る。初期トレーニング・データを作成する作業を行う人々の数が限られていることにより、実際のユーザ問合せは、同じ意味をもつセンテンスの複数の変形態があり得るので、トレーニング・データ中に存在するユーザ問合せとは異なり得る。したがって、仮想支援を提供するロバストなシステムを作成することは、利用可能なトレーニング・データの量が極めて限られていると、煩雑で難しい。
【発明の概要】
【０００５】
本開示の実施形態は、従来のシステムにおける発明者によって認識された上述の技術的問題のうちの１つまたは複数の解決策としての技術改善を提示する。たとえば、一実施形態では、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのための方法が提供され、本方法は、ダイアログ状態マネージャ（ＤＳＭ：Ｄｉａｌｏｇｕｅ  Ｓｔａｔｅ  Ｍａｎａｇｅｒ）、マルチレベル意図識別構成要素（Ｍｕｌｔｉ−ｌｅｖｅｌ  Ｉｎｔｅｎｔ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｃｏｍｐｏｎｅｎｔ）、エージェント・マネージャ、複数の１次エージェント、意図−行為−ダイアログ（ＩＡＤ：Ｉｎｔｅｎｔ−Ａｃｔｉｏｎ−Ｄｉａｌｏｇｕｅ）フレームワーク、問合せ−更新−関与（ＱＵＥ：Ｑｕｅｒｙ−Ｕｐｄａｔｅ−Ｅｎｇａｇｅ）フレームワーク、知識グラフ更新−自然言語（ＫＧＵ−ＮＬ：Ｋｎｏｗｌｅｄｇｅ  Ｇｒａｐｈ  Ｕｐｄａｔｅ−Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ）エージェント、知識グラフ関与エージェント（Ｋｎｏｗｌｅｄｇｅ  Ｇｒａｐｈ  Ｅｎｇａｇｅ  Ａｇｅｎｔ）、複数の補助エージェント、および知識グラフ更新エージェント（Ｋｎｏｗｌｅｄｇｅ  Ｇｒａｐｈ  Ｕｐｄａｔｅ  Ａｇｅｎｔ）からなる複数の構成要素を定義するステップであって、複数の構成要素の中の各構成要素が１つまたは複数の多目的会話型エージェントを備える、定義するステップと、予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）によって複数の構成要素を論理的に統合するステップと、論理的に統合された複数の構成要素によって、複数のソースから自然言語問合せのセットを受信するステップと、自然言語問合せのセットに基づいて、複数のステップを実施するステップであって、複数のステップは、（ｉ）ＤＳＭを使用することによって１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別するステップであって、識別された多目的会話型エージェントがＩＡＤフレームワークまたはＱＵＥフレームワークのいずれかに対応する、識別するステップと、（ｉｉ）１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測するステップとを含む、実施するステップと、予測されたユーザ意図および識別された多目的会話型エージェントに基づいて、（ｉ）識別された多目的会話型エージェントがＩＡＤフレームワークに対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択するか、または、綿密な情報を抽出するためにユーザを関与させるか、または、綿密な情報を１つまたは複数の外部サービスに通信するために外部ＡＰＩを呼び出すステップであって、応答の１つまたは複数のあらかじめ定義されたセットと綿密な情報とが自然言語問合せのセットに対応する、選択するかまたは関与させるかまたは呼び出すステップ、あるいは（ｉｉ）識別された多目的会話型エージェントがＱＵＥフレームワークに対応していると決定すると、リカレント・ニューラル・ネットワ��ク技法（recurrent neural network technique）を実装することによって会話の１つまたは複数のカテゴリーを識別するために自然言語問合せのセットの中の問合せを分類するステップ、および分類された問合せに基づいて、（ａ）１つまたは複数の知識グラフ（knowledge graphs）に問い合わせて、自然言語問合せのセットに対応する応答の第１のセットを生成するステップ、または（ｂ）ＫＧＵ−ＮＬエージェントによって、１つまたは複数の知識グラフを更新して、自然言語問合せのセットに対応する応答の第２のセットを生成するステップのうちの１つを実施するステップのうちの１つを実施するステップと、予期される自然言語ユーザ問合せのセットに基づいて、自然言語問合せを処理するために複数の構成要素と１つまたは複数の多目的会話型エージェントとを階層的に定義するステップと、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せの処理を可能にするために１つまたは複数のユーザのための複数の推奨される質問を自動生成するステップと、知識グラフ関与エージェントによって１人または複数のユーザから取得された情報のセットに基づいて、知識グラフ更新エージェントによって１つまたは複数の知識グラフを更新するステップであって、情報のセットが自然言語問合せの処理に対応する、更新するステップと、積極的ユーザ関与によって、または知識グラフ関与エージェントによる１つまたは複数の知識グラフに対応する情報の分析によってのいずれかで、１人または複数のユーザから情報のセットを取得するステップと、（ｉ）転置インデックス・ベースの探索技法によって、１つまたは複数の知識グラフに対応する１つまたは複数のエンティティを分類された問合せに対応する１つまたは複数のフレーズ（phrases）とマッピングすることと、（ｉｉ）マッピングに基づいて、応答の第１のセットを生成するために１つまたは複数の知識グラフをトラバースすることとによって、応答の第１のセットを生成するステップと、自然言語問合せのセットに対応する綿密な情報を抽出するためにユーザを関与させることによって、またはインターフェースによってコマンドのセットを実行することによってのいずれかで応答の第２のセットを生成するステップとを含む。
【０００６】
別の態様では、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムが提供され、本システムは、命令を記憶するメモリと、１つまたは複数の通信インターフェースと、１つまたは複数の通信インターフェースを介してメモリに結合された１つまたは複数のハードウェア・プロセッサとを備え、１つまたは複数のハードウェア・プロセッサは、ダイアログ状態マネージャ（ＤＳＭ）、マルチレベル意図識別構成要素、エージェント・マネージャ、複数の１次エージェント、意図−行為−ダイアログ（ＩＡＤ）フレームワーク、問合せ−更新−関与（ＱＵＥ）フレームワーク、知識グラフ更新−自然言語（ＫＧＵ−ＮＬ）エージェント、知識グラフ関与エージェント、複数の補助エージェント、および知識グラフ更新エージェントからなる複数の構成要素を定義することであって、複数の構成要素の中の各構成要素が１つまたは複数の多目的会話型エージェントを備える、定義することと、予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）によって複数の構成要素を論理的に統合することと、論理的に統合された複数の構成要素によって、複数のソースから自然言語問合せのセットを受信することと、自然言語問合せのセットに基づいて、複数のステップを実施することであって、複数のステップは、（ｉ）ＤＳＭを使用することによって１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別するステップであって、識別された多目的会話型エージェントがＩＡＤフレームワークまたはＱＵＥフレームワークのいずれかに対応する、識別するステップと、（ｉｉ）１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測するステップとを含む、実施することと、予測されたユーザ意図および識別された多目的会話型エージェントに基づいて、（ｉ）識別された多目的会話型エージェントがＩＡＤフレームワークに対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択するか、または、綿密な情報を抽出するためにユーザを関与させるか、または、綿密な情報を１つまたは複数の外部サービスに通信するために外部ＡＰＩを呼び出すことであって、応答の１つまたは複数のあらかじめ定義されたセットと綿密な情報とが自然言語問合せのセットに対応する、選択するかまたは関与させるかまたは呼び出すこと、あるいは（ｉｉ）識別された多目的会話型エージェントがＱＵＥフレームワークに対応していると決定すると、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために自然言語問合せのセットの中の問合せを分類すること、および（ｉｉｉ）分類された問合せに基づいて、（ａ）１つまたは複数の知識グラフに問い合わせて、自然言語問合せのセットに対応する応答の第１のセットを生成すること、または（ｂ）ＫＧＵ−ＮＬエージェントによって、１つまたは複数の知識グラフを更新して、自然言語問合せのセットに対応する応答の第２のセットを生成することのうちの１つを実施すること、のうちの１つを実施することと、予期される自然言語ユーザ問合せのセットに基づいて、自然言語問合せを処理するために複数の構成要素と１つまたは複数の多目的会話型エージェントとを階層的に定義することと、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せの処理を可能にするために１人または複数のユーザのための複数の推奨される質問を自動生成することと、１人または複数のユーザから取得された情報のセットに基づいて知識グラフ更新エージェントを実装することによって１つまたは複数の知識グラフを更新することであって、情報のセットが自然言語問合せの処理に対応し、情報のセットが知識グラフ関与エージェントを使用して取得される、更新することと、積極的ユーザ関与によって、または知識グラフ関与エージェントによる１つまたは複数の知識グラフに対応する情報の分析によってのいずれかで、１人または複数のユーザから情報のセットを取得することと、（ｉ）転置インデックス・ベースの探索技法によって、１つまたは複数の知識グラフに対応する１つまたは複数のエンティティを分類された問合せに対応する１つまたは複数のフレーズとマッピングすることと、（ｉｉ）マッピングに基づいて、応答の第１のセットを生成するために１つまたは複数の知識グラフをトラバースすることとによって、応答の第１のセットを生成することと、自然言語問合せのセットに対応する綿密な情報を抽出するためにユーザを関与させることによって、またはインターフェースによってコマンドのセットを実行することによってのいずれかで応答の第２のセットを生成することとを行うように命令によって構成される。
【０００７】
また別の態様では、１つまたは複数のハードウェア・プロセッサによって実行されたとき、１つまたは複数のハードウェア・プロセッサに、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントための方法を実施させる１つまたは複数の命令を含む１つまたは複数の非一時的機械可読情報記憶媒体が提供され、上記方法は、ダイアログ状態マネージャ（ＤＳＭ）、マルチレベル意図識別構成要素、エージェント・マネージャ、複数の１次エージェント、意図−行為−ダイアログ（ＩＡＤ）フレームワーク、問合せ−更新−関与（ＱＵＥ）フレームワーク、知識グラフ更新−自然言語（ＫＧＵ−ＮＬ）エージェント、知識グラフ関与エージェント、複数の補助エージェント、および知識グラフ更新エージェントからなる複数の構成要素を定義するステップであって、複数の構成要素の中の各構成要素が１つまたは複数の多目的会話型エージェントを備える、定義するステップと、予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）によって複数の構成要素を論理的に統合するステップと、論理的に統合された複数の構成要素によって、複数のソースから自然言語問合せのセットを受信するステップと、自然言語問合せのセットに基づいて、複数のステップを実施するステップであって、複数のステップは、（ｉ）ＤＳＭを使用することによって１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別するステップであって、識別された多目的会話型エージェントがＩＡＤフレームワークまたはＱＵＥフレームワークのいずれかに対応する、識別するステップと、（ｉｉ）１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測するステップとを含む、実施するステップと、予測されたユーザ意図および識別された多目的会話型エージェントに基づいて、（ｉ）識別された多目的会話型エージェントがＩＡＤフレームワークに対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択するか、または、綿密な情報を抽出するためにユーザを関与させるか、または、綿密な情報を１つまたは複数の外部サービスに通信するために外部ＡＰＩを呼び出すステップであって、応答の１つまたは複数のあらかじめ定義されたセットと綿密な情報とが自然言語問合せのセットに対応する、選択するかまたは関与させるかまたは呼び出すステップ、あるいは（ｉｉ）識別された多目的会話型エージェントがＱＵＥフレームワークに対応していると決定すると、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために自然言語問合せのセットの中の問合せを分類するステップ、および分類された問合せに基づいて、（ａ）１つまたは複数の知識グラフに問い合わせて、自然言語問合せのセットに対応する応答の第１のセットを生成するステップ、または（ｂ）ＫＧＵ−ＮＬエージェントによって、１つまたは複数の知識グラフを更新して、自然言語問合せのセットに対応する応答の第２のセットを生成するステップのうちの１つを実施するステップ、のうちの１つを実施するステップと、予期される自然言語ユーザ問合せのセットに基づいて、自然言語問合せを処理するために複数の構成要素と１つまたは複数の多目的会話型エージェントとを階層的に定義するステップと、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せの処理を可能にするために１人または複数のユーザのための複数の推奨される質問を自動生成するステップと、知識グラフ関与エージェントによって１人または複数のユーザから取得された情報のセットに基づいて、知識グラフ更新エージェントによって１つまたは複数の知識グラフを更新するステップであって、情報のセットが自然言語問合せの処理に対応する、更新するステップと、積極的ユーザ関与によって、または知識グラフ関与エージェントによる１つまたは複数の知識グラフに対応する情報の分析によってのいずれかで、１人または複数のユーザから情報のセットを取得するステップと、（ｉ）転置インデックス・ベースの探索技法によって、１つまたは複数の知識グラフに対応する１つまたは複数のエンティティを分類された問合せに対応する１つまたは複数のフレーズとマッピングすることと、（ｉｉ）マッピングに基づいて、応答の第１のセットを生成するために１つまたは複数の知識グラフをトラバースすることとによって、応答の第１のセットを生成するステップと、自然言語問合せのセットに対応する綿密な情報を抽出するためにユーザを関与させることによって、またはインターフェースによってコマンドのセットを実行することによってのいずれかで応答の第２のセットを生成するステップとを含む。
【０００８】
上記の概略的な説明と以下の詳細な説明の両方が、例示的および説明的なものにすぎず、請求される本発明を限定するものではでないことを理解されたい。
【０００９】
本開示の一部に組み込まれ、それを構成する添付の図面は、例示的な実施形態を示し、その説明とともに、開示される原理について説明するのに役立つ。
【図面の簡単な説明】
【００１０】
【図１】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムのブロック図である。
【図２Ａ】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのプロセスに関係するステップを示す流れ図である。
【図２Ｂ】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのプロセスに関係するステップを示す流れ図である。
【図２Ｃ】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのプロセスに関係するステップを示す流れ図である。
【図３】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムの構成要素およびフローを示す技術的アーキテクチャを示す図である。
【図４】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムの機能的アーキテクチャを示す図である。
【図５】本開示のいくつかの実施形態による、双方向長短期記憶（ＢｉＬＳＴＭ：Ｂｉｄｉｒｅｃｔｉｏｎａｌ  Ｌｏｎｇ  Ｓｈｏｒｔ  Ｔｅｒｍ  Ｍｅｍｏｒｙ）ネットワーク（またはＢｉＬＳＴＭ分類）、最大プール層（ｍａｘｐｏｏｌ  ｌａｙｅｒ）および平方根カルバック・ライブラー・ダイバージェンス（ＳＱＲＤ−ＬＫＤ：Ｓｑｕａｒｅ  ｒｏｏｔ  Ｋｕｌｌｂａｃｋ  Ｌｅｉｂｌｅｒ  Ｄｉｖｅｒｇｅｎｃｅ）関数に基づく深層学習アーキテクチャを示す図である。
【図６】本開示のいくつかの実施形態による、ダイアログのための有限状態オートメーション（ＦＳＡ：Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ａｕｔｏｍａｔｉｏｎ）の例示的な図である。
【図７】本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントを可能にするセルフサービス・コンソール・ポータルを示す図である。
【図８】本開示のいくつかの実施形態による、とりわけ知識シンセシス（ｋｎｏｗｌｅｄｇｅ  ｓｙｎｔｈｅｓｉｓ）およびＢｉＬＳＴＭ分類のために実装される、ＱＵＥ意図識別器（QUE Intent Identifier）の技術的アーキテクチャを示す図である。
【図９】本開示のいくつかの実施形態による、技術的アーキテクチャと統合された１つまたは複数の知識グラフの視覚表現を示す図である。
【発明を実施するための形態】
【００１１】
添付の図面を参照しながら、例示的な実施形態が説明される。図では、参照番号の（１つまたは複数の）左端の桁は、参照番号が最初に現れる図を識別する。好都合な場合はいつでも、同じまたは類似の部分を指すために図面全体にわたって同じ参照番号が使用される。開示される原理の例および特徴が本明細書で説明されるが、開示される実施形態の趣旨および範囲から逸脱することなく、変更形態、適応形態、および他の実装形態が可能である。以下の詳細な説明は例示にすぎないと見なされ、真の範囲および趣旨は以下の特許請求の範囲によって示されることが意図される。
【００１２】
本開示の実施形態は、本開示のいくつかの実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステムおよび方法を提供する。自然言語処理モデルは、人間言語と対話するためにコンピュータ・システムによって使用される、機械学習システム、またはそれの構成要素であり得る。たとえば、自然言語処理モデルは、問合せを入力として受信し得、問合せのテキストに関する予測を行って、問合せが何を要求しているかと、どの情報または行為が、問合せに対する関連のある応答であり得るかと、を決定するのを助け得る。自然言語処理は、それが、技術が理解し得る形式で話すことをユーザに強制するのではなく、情報についてのユーザの要求を構築するときにユーザがユーザ自身の言語を話すことを可能にするので、望まれる。
【００１３】
人工知能ベースの会話型システムの大部分は、深層学習アルゴリズムを採用せず、したがって、多数の意図を処理することができない。さらに、それらのシステムのいずれも、現在、知識の引き出し（knowledge elicitation）のための知識グラフまたは積極的ユーザ関与（proactive user engagement）をサポートしていないが、我々はそれをサポートしている。また、現在のＡＩベースの会話型システムは、単一のデジタルペルソナ（ｄｉｇｉｔａｌ  ｐｅｒｓｏｎａ）を介した仮想支援のために複数の異なる処理および返答エージェントをホストする能力がない。意図を識別するために、システムの大部分は、我々が意図識別のために畳み込みニューラル・ネットワーク（Convolutional Neural Networks）（ＣＮＮ）、長短期記憶（ＬＳＴＭ）ベースのモデルを使用することによって回避してきた、ルールを使用する。エンドツーエンド・モデルが、複数の異なる領域（たとえば、組織における休暇（leave）、保険など）におけるユーザの問合せを処理し、また、必要とされる情報を引き出すためにユーザを有意味なダイアログに関与させることは、難しいことがある。所与の意図のコンテキストにおいてどの情報が引き出される必要があるかに関する明確な構成がなければ、（１人または複数の）ユーザと会話を行うことは、難しいことがある。
【００１４】
したがって、並行して動作する複数の機械学習確率的構成要素間のシームレスな相互作用（interaction）と、エージェントのための継続的トレーニングおよび作業リストと、知識シンセシスのための積極的ユーザ関与と、同じデジタルペルソナの下で複数のエージェントをサポートするための高レベル意図識別とを提供し、プログラムを書くことなしにエージェントを作成する能力を提供する技術が必要である。
【００１５】
次に、類似の参照符号が図全体にわたって一貫して対応する特徴を示す図面、より詳細には、図１〜図９を参照すると、好ましい実施形態が示されており、これらの実施形態は、以下の例示的なシステムおよび／または方法のコンテキストにおいて説明される。
【００１６】
図１は、本開示の一実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのためのシステム１００の例示的なブロック図を示す。一実施形態では、システム１００は、１つまたは複数のプロセッサ１０４と、（１つまたは複数の）通信インターフェース・デバイスまたは（１つまたは複数の）入出力（Ｉ／Ｏ）インターフェース１０６と、１つまたは複数のプロセッサ１０４に動作可能に結合された１つまたは複数のデータ記憶デバイスまたはメモリ１０２とを含む。ハードウェア・プロセッサである１つまたは複数のプロセッサ１０４は、１つまたは複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理ユニット、状態機械、論理回路、および／または動作命令に基づいて信号を操作する任意のデバイスとして実装され得る。能力の中でも、（１つまたは複数の）プロセッサは、メモリ１０２に記憶されたコンピュータ可読命令をフェッチし、実行するように構成される。一実施形態では、システム１００は、ラップトップ・コンピュータ、ノートブック、ハンドヘルド・デバイス、ワークステーション、メインフレーム・コンピュータ、サーバ、ネットワーク・クラウドなど、様々なコンピューティング・システムにおいて実装され得る。
【００１７】
（１つまたは複数の）Ｉ／Ｏインターフェース・デバイス１０６は、様々なソフトウェアおよびハードウェア・インターフェース、たとえば、ウェブ・インターフェース、グラフィカル・ユーザ・インターフェースなどを含むことができ、ワイヤード・ネットワーク、たとえば、ＬＡＮ、ケーブルなどと、ＷＬＡＮ、セルラー、または衛星など、ワイヤレス・ネットワークとを含む、多種多様なネットワークＮ／Ｗおよびプロトコル・タイプ内での複数の通信を可能にすることができる。一実施形態では、（１つまたは複数の）Ｉ／Ｏインターフェース・デバイスは、いくつかのデバイスを互いにまたは別のサーバに接続するための１つまたは複数のポートを含むことができる。
【００１８】
メモリ１０２は、たとえば、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）およびダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）などの揮発性メモリ、ならびに／または、読取り専用メモリ（ＲＯＭ）、消去可能プログラマブルＲＯＭ、フラッシュ・メモリ、ハードディスク、光ディスク、および磁気テープなどの不揮発性メモリを含む、当技術分野で知られている任意のコンピュータ可読媒体を含み得る。
【００１９】
図２Ａ〜図２Ｃは、図１を参照しながら、本開示の一実施形態による、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントのための方法の例示的な流れ図を示す。一実施形態では、システム１００は、１つまたは複数のハードウェア・プロセッサ１０４に動作可能に結合されたメモリ１０２の１つまたは複数のデータ記憶デバイスを備え、１つまたは複数のプロセッサ１０４による方法のステップの実行のための命令を記憶するように構成される。次に、図１に示されているシステム１００の構成要素、および流れ図を参照しながら、本開示の方法のステップが説明される。本開示の実施形態では、ハードウェア・プロセッサ１０４は、命令を構成したとき、本明細書で説明される１つまたは複数の方法論を実施する。
【００２０】
本開示の一実施形態によれば、ステップ２０１において、１つまたは複数のハードウェア・プロセッサ１０４は、ダイアログ状態マネージャ（ＤＳＭ）３０２、（ＤＳＭ３０２の一部としての）マルチレベル意図識別構成要素３０３、エージェント・マネージャ３０４、複数の１次エージェント３０６、複数の補助エージェント３１９、および知識グラフ最適化エージェントからなる複数の構成要素を定義する。一実施形態では、複数の構成要素の中の各構成要素は、１つまたは複数の多目的会話型エージェントを備える。次に、図３を参照しながら、定義された複数の構成要素が詳細に考慮され得る。
【００２１】
本開示の一実施形態によれば、ＤＳＭ３０２は、１つまたは複数の深層学習技法ベースのマルチレベル意図識別構成要素３０３からなる。複数の構成要素の中の多目的会話型エージェントのうちのいずれかが、１人または複数のユーザによって開始されたマルチターン・ダイアログ（multi-turn dialogue）に入る必要があるとき、複数の構成要素の中の構成要素の各々に対応するすべての多目的会話型エージェントは、マルチターン・ダイアログに入る必要がある多目的会話型エージェントがフローを決定するために再びＤＳＭ３０２に制御を解放するまで、１人または複数のユーザによって開始されたマルチターン・ダイアログを、マルチターン・ダイアログに入る必要があるその多目的会話型エージェントにフォワーディングし続けるためにＤＳＭ３０２と（１つまたは複数のアプリケーション・プログラミング・インターフェース（ＡＰＩ）を介して）（図示せず）通信する。
【００２２】
一実施形態では、ＤＳＭ３０２はスタックを維持し、スタックは、複数の１次エージェント３０６と、複数の補助エージェント３１９と、知識グラフ最適化エージェントと、図３に示されている他のエージェントとの間の相互作用を可能にする１つまたは複数のポインタからなる。例示的なシナリオでは、再び図３を参照すると、健康保険エージェント（Ｈｅａｌｔｈ  Ｉｎｓｕｒａｎｃｅ  Ａｇｅｎｔ）３１０が、ある意図のためにダイアログ・エージェント３２０を呼び出すかまたはそれと対話し得る。スタックは、１つまたは複数が、図３で参照される複数のエージェントにわたって会話を行うとき、セッション状態にとどまり（persisted）得る。
【００２３】
本開示の一実施形態によれば、マルチレベル意図識別構成要素３０３は、（後で説明される）深層学習分類器によって複数のユーザ発話（または自然言語問合せ）に基づいて適切な多目的会話型エージェントを識別する。適切な多目的会話型エージェントによって生成された（１つまたは複数の）応答が適切でないか、または、１人または複数のユーザの期待通りでない場合、マルチレベル意図識別構成要素３０３は、ＡＰＩを介して、複数の１次エージェント３０６または複数の補助エージェント３１９、および複数の１次エージェント３０６または複数の補助エージェント３１９に対応する１つまたは複数の多目的会話型エージェントに、自然言語問合せを通信する。１つまたは複数の多目的会話型エージェントは、（１つまたは複数の）適切な応答とともに、または問合せが処理されないことがあるというステータスとともに、ＤＳＭ３０２に制御を返す。（１つまたは複数の）応答はＤＳＭ３０２によって評価され、（後で説明される）問合せ−返答類似度に基づいて、１人または複数のユーザへの最良の応答が生成される。
【００２４】
本開示の一実施形態によれば、定義された複数の構成要素は、１つまたは複数のトレーニング・データセットに基づいて、自然言語問合せを処理するために１人または複数のユーザのための複数の推奨される質問を自動生成するための自動提案（ａｕｔｏ−ｓｕｇｇｅｓｔｉｏｎ）機構３０５をさらに備える。一実施形態では、（１つまたは複数の）過去の使用または問合せに基づき得る複数の推奨される質問が、１人または複数のユーザに対して自動生成され得る。複数の推奨される質問は、１つまたは複数のトレーニング・データセットに基づき得る質問の異なるカテゴリーを含み得る。
【００２５】
一実施形態では、１つまたは複数の多目的会話型エージェントの各々は、１つまたは複数のトレーニング・データセットを維持し、１人または複数のユーザからの自然言語問合せが１つまたは複数のトレーニング・データセットと一致する場合、１つまたは複数の多目的会話型エージェントは、機械学習モデルを実行せず、１つまたは複数のトレーニング・データセットに基づいて（１つまたは複数の）応答を生成する。これは、受信された自然言語問合せに対応する（１つまたは複数の）正しい応答が、１つまたは複数のトレーニング・データセットを介して生成されることを保証する。例示的なシナリオでは、自動生成され得る複数の推奨される質問は、現在のエージェントの１つまたは複数のトレーニング・データセット中の（たとえば、病気休暇（sick leave）など、同じ休暇タイプに属する）１人または複数のユーザの直近の質問と類似の意図からとられた質問と、１つまたは複数のトレーニング・データセット中で利用可能であるような次の意図からの質問と、ランダムに選定されたエージェントの１つまたは複数のトレーニング・データセットからの質問とを含み得る。
【００２６】
一実施形態では、エージェント・マネージャ３０４は、複数の１次エージェント３０６、複数の補助エージェント３１９および１つまたは複数の多目的会話型エージェントの（１つまたは複数の）トレーニングを管理するための、または、使用パターンを観測するための、たとえば、使用統計値、ユーザ・ログ、好まれなかった／好まれた問合せなどを示すためのコマンドのセット、ならびに、継続的トレーニングを提供する（以下で説明される）。コマンドのセットは、マルチレベル意図識別構成要素３０３の対象とならず、ＤＳＭ３０２によって別様に扱われ得る。
【００２７】
１人または複数のユーザによる自然言語問合せに対応する（１つまたは複数の）適切な応答が生成されないとき、１人または複数のユーザは、代替応答、たとえば、「ｘ  ｏｐｔ」コマンドを求め得、次いで、「ｘ  ｏｐｔ」コマンドは、分類器確率の順で（１つまたは複数の）適切な応答を返す。その後、「ｘ  ｉｎｔｅｎｔ−ｉｄ  ４」などのコマンドが、正しい意図をマークする。コマンドのセットに基づいて生成された（１つまたは複数の）適切な応答は、それぞれのエージェントの１つまたは複数のトレーニング・データセットに追加され、その結果、同じ問合せが後で１人または複数のユーザによって提起される場合、（１つまたは複数の）正しい応答が生成される。知識グラフ更新−自然言語（ＫＧＵ−ＮＬ）エージェント３１６、休暇エージェント（Ｌｅａｖｅ  Ａｇｅｎｔ）３０９および健康保険エージェント３１０などのような１つまたは複数の多目的会話型エージェントの機能、使用および実装は、例示的な実装形態とともに後で説明される。
【００２８】
機械学習構成要素の性能の継続的改善には、１人または複数のユーザからフィードバックを取得することが必要であり得る。提案される開示は、これを可能にするためのフィードバック管理機構（図示せず）を可能にする。フィードバック管理機構は、１つまたは複数の多目的会話型エージェントの各々のための１つまたは複数のメンター（ｍｅｎｔｏｒ）を備える。１人または複数のユーザが、処理された自然言語問合せに対応する（１つまたは複数の）応答を好まないとき、ワークフローが作成され得、ワークフローは、（１つまたは複数の）応答を生成した（１つまたは複数の多目的会話型エージェントの中の）多目的会話型エージェントに対応する１つまたは複数のメンターによってクリアされる。
【００２９】
一実施形態では、１つまたは複数のメンターは、ワークフローをクリアする前に（（１つまたは複数の）応答を生成した）多目的会話型エージェントをトレーニングするために１つまたは複数のコマンドを最初に使用する。（自然言語問合せのセットの中の）１つまたは複数の自然言語問合せが（１つまたは複数の多目的会話型エージェントの中の）間違ったエージェントに通信された場合、１つまたは複数のメンターは、ＤＳＭ３０２に対応するメンターのセットにワークフローをフォワーディングする。
【００３０】
ＤＳＭ３０２に対応するメンターのセットの中のメンターのワークフロー中の１つまたは複数の自然言語問合せの中の放置された問合せ（ｕｎ−ａｔｔｅｎｄｅｄ  ｑｕｅｒｙ）に基づいて、適切な多目的会話型エージェントが、メンターとの（すなわち、ＤＳＭ３０２に対応するメンターのセットの中のメンターとの）ダイアログを積極的に開始し、放置された問合せに最良のやり方で返答することに関する指導を求める。フィードバック管理機構は、すべての複数の構成要素および１つまたは複数の多目的会話型エージェントの周期トレーニングを可能にする。
【００３１】
図４を参照すると、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントの機能的アーキテクチャが参照され得る。再び図４を参照すると、３つのタイプの会話型カテゴリー、すなわち、ａ）１人または複数のユーザが会話を開始する状況の場合のユーザ主導型会話（ＵＤＣ：Ｕｓｅｒ  Ｄｒｉｖｅｎ  Ｃｏｎｖｅｒｓａｔｉｏｎ）、ｂ）１つまたは複数の多目的会話型エージェントの中のエージェントが会話を積極的に開始するときの、エージェント主導型会話（ＡＤＣ：Ａｇｅｎｔ  Ｄｒｉｖｅｎ  Ｃｏｎｖｅｒｓａｔｉｏｎ）、およびｃ）機械学習モデルがそれのトレーニング・データを更新するためにダイアログを開始するときの、モデル主導型会話（ＭＤＣ：Ｍｏｄｅｌ  Ｄｒｉｖｅｎ  Ｃｏｎｖｅｒｓａｔｉｏｎ）が示されていることに留意されたい。
【００３２】
本開示の一実施形態によれば、ステップ２０２において、１つまたは複数のハードウェア・プロセッサ１０４は、予期される自然言語ユーザ問合せのセットに基づいて、１つまたは複数のＡＰＩによって複数の構成要素を論理的に統合する。再び図３および図４を参照すると、複数の構成要素の論理的な統合が、（技術的アーキテクチャおよび機能的アーキテクチャを介して）参照され得る。予期される自然言語ユーザ問合せのセットは、単純な問合せ、たとえば、「いかがお過ごしですか」から、健康または医療関係の保険契約に関係する複雑な問合せ、および研究質問から変動する極めて複雑な問合せに及び得、それらは、知識データベースから問合せをマッピングすることによって応答を生成することを必要とし得る。さらに、（自然言語問合せの形態の）研究質問は、組織内の研究ユニットのような複数のソースから来ることがある。
【００３３】
初期層は、コア構成要素からなり、コア構成要素は、ＤＳＭ３０２、エージェント・マネージャ３０４および自動提案（Ａｕｔｏ−ｓｕｇｇｅｓｔ）機構３０５である。複数の構成要素の機能が上記で説明されたが、それは、論理的な統合の概念を理解するために以下で再び参照され得る。
【００３４】
一実施形態では、自然言語問合せのセットは、最初にＤＳＭ３０２によって受信され、次いで（自然言語問合せのセットの中の）自然言語問合せの各々の意図に基づいて、それは、次いで、マルチレベル意図識別構成要素３０３によって、（後で詳細に後で説明される）処理のために１つまたは複数の多目的会話型エージェントの中の適切なエージェントにフォワーディングされる。自動提案機構３０５は、１人または複数のユーザが、どんな種類の自然言語問合せまたは複数の質問が提起され得るかを決定するのを支援する。エージェント・マネージャ３０４は、複数の１次エージェント３０６、複数の補助エージェント３１９および１つまたは複数の多目的会話型エージェントを管理するためのコマンドのセットを提供する。
【００３５】
再び図３を参照すると、次の層が、一般チャター・ボックス・エージェント（Ｇｅｎｅｒａｌ  Ｃｈａｔｔｅｒ  Ｂｏｘ  Ａｇｅｎｔ）３０７、意図−行為−ダイアログ（ＩＡＤ）フレームワーク３０８および問合せ−更新−関与（ＱＵＥ）フレームワーク３１４からなる複数の１次エージェント３０６からなることに留意されたい。一般チャター・ボックス・エージェント３０７は、ＩＡＤフレームワーク３０８に対応し、一般的な発話、たとえば、「いかがお過ごしですか？」、「お仕事は何ですか？」などに返答する。ＩＡＤフレームワーク３０８は、１人または複数のユーザからの１つまたは複数の自然言語問合せに返答するための１つまたは複数の多目的会話型エージェントからなる。例示的なシナリオを考慮し、再び図３を参照すると、ＩＡＤフレームワーク３０８に対応する１つまたは複数の多目的会話型エージェントは、休暇エージェント３０９、健康保険エージェント３１０、救急医療エージェント（Ｅｍｅｒｇｅｎｃｙ  Ｍｅｄｉｃａｌ  Ａｇｅｎｔ）３１１、タイムシート・エージェント（Ｔｉｍｅｓｈｅｅｔ  Ａｇｅｎｔ）３１２および旅行エージェント（Ｔｒａｖｅｌ  Ａｇｅｎｔ）３１３からなる。
【００３６】
一実施形態では、ＩＡＤフレームワーク３０８に対応する１つまたは複数の多目的会話型エージェントは、複数の機能を実施し得る。再び例示的なシナリオを考慮すると、健康保険エージェント３１０は、自然言語問合せ「私の支払う健康保険料の額はどのくらいですか（what is my health premium amount due）」に返答し得、休暇エージェント３０９は、自然言語問合せ「私は何日の休暇が残っていますか？（how many leaves I have pending?）」に返答し得る。同様に、タイムシート・エージェント３１２は、タイムシート関係の自然言語問合せに返答し得、旅行エージェント３１３は、旅行関係の自然言語問合せに返答し得る。救急医療エージェント３１１は、医療関係の緊急時に１人または複数のユーザを支援し得る。本開示の実施形態が、ＩＡＤフレームワーク３０８を上記で説明された１つまたは複数の多目的会話型エージェントに制限しないことに留意されたい。ＩＡＤフレームワーク３０８は、様々な種類の機能を実施するための（説明されたもの以外の）複数の異なる多目的会話型エージェントを備え得る。
【００３７】
一実施形態では、ＱＵＥフレームワーク３１４は、研究に関する自然言語問合せに返答するように構成された知識グラフ質問返答（ＫＧＱＡ：Ｋｎｏｗｌｅｄｇｅ  Ｇｒａｐｈ  Ｑｕｅｓｔｉｏｎ  Ａｎｓｗｅｒｉｎｇ）エージェント３１５、知識シンセシスのために構成された知識グラフ自然言語更新（ＫＧＵ−ＮＬ）エージェント３１６、および１人または複数のユーザからの自然言語問合せに対応するさらなる情報を取得するために１人または複数のユーザを積極的に関与させるための知識グラフ関与エージェント３１７からなる。知識グラフ関与エージェント３１７は、１人または複数のユーザまたは研究者および他の関連のある利害関係者との（１つまたは複数の）ダイアログのために１人または複数のユーザを関与させる。上述のように、（自然言語問合せの形態の）研究質問は、組織内の研究ユニットのような複数のソースから来ることがある。
【００３８】
一実施形態では、再び図３を参照すると、複数の補助エージェント３１９が、すべてのダイアログを管理するためのダイアログ・エージェント３２０、１つまたは複数の知識グラフ３２２を更新し、知識グラフ・データベースと通信する知識グラフ更新エージェント３２１からなることに留意されたい（今度は図示される）。知識グラフ・データベースは、１つまたは複数の知識グラフ３２２に対応するすべての関連のある情報を維持する。
【００３９】
一実施形態では、１つまたは複数の外部サービス３１８が、１つまたは複数のＡＰＩを介して複数の構成要素と通信し得る（１つまたは複数の）外部ソースからの、任意のデータベースまたはアーキテクチャ、あるいは任意の他のハードウェア／ソフトウェア構成要素からなり得る。したがって、複数の構成要素および１つまたは複数の多目的会話型エージェントは、論理的に統合され、予期される自然言語ユーザ問合せのセット、それらの（１つまたは複数の）使用、機能、および他の必要なパラメータに基づいて階層的に定義される。
【００４０】
次に、複数の構成要素の技術的な統合が詳細に考慮され得る。クライアント・インターフェース層３０１は、入って来る表現状態転送（ＲＥＳＴ：Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）要求を受信し、要求の真正性を実施し、要求をＤＳＭ３０２にフォワーディングする、ＪＡＶＡ（登録商標）におけるフロント・コントローラ・サーブレット（front controller servlet）を使用して実装され得る。複数の構成要素は、Ｎｕｍｐｙ、Ｓｃｉｐｙ、Ｋｅｒａｓ、Ｔｅｎｓｏｒｆｌｏｗ／Ｔｈｅａｎｏなど、様々な機械学習および深層学習ライブラリを使用するｐｙｔｈｏｎにおいて実装されている。複数の構成要素はＲＥＳＴｆｕｌサービスとして展開され、ＪａｖａＳｃｒｉｐｔ（登録商標）オブジェクト表記法（JavaScript Object Notation）（ＪＳＯＮ）フォーマットがメッセージ交換のために使用される。ユーザ・セッション状態は、ｎｏ−ｓｑｌデータベースＲｅｄｉｓに記憶される。システム開始型ダイアログを可能にするために、質問キューが、Ｒｅｄｉｓデータベース自体中で、１人または複数のユーザの中のユーザごとに維持され、知識グラフ関与エージェント３１７がこれらの質問をピック・アップする。論理的な統合は、デジタルペルソナとの、１人または複数のユーザの（１つまたは複数の）相互作用の追跡を可能にし、相互作用ログを維持する。相互作用ログは、コンピューティング・システムの使用統計値を生成するために使用される。コンピューティング・システム（すなわち、提案される方法論が実装され、テストされたコンピューティング・システム）が常に起動していることを保証するために、すべての個々のｒｅｓｔｆｕｌサービスのために自動起動機構（auto-startup mechanism）が確立された。
【００４１】
本開示の実施形態が、複数の構成要素の論理的な統合を図３および図４で参照されるようなもののみに制限しないことに留意されたい。本開示の実施形態は、１つまたは複数の新しい構成要素を定義すること、ならびに、自然言語問合せに基づくおよび／または予期される自然言語問合せのセットに基づく、あるいは（１つまたは複数の）任意の他の技術的／非技術的要件に基づく、１つまたは複数の新しい構成要素の論理的な統合を提供する。
【００４２】
本開示の一実施形態によれば、ステップ２０３において、１つまたは複数のハードウェア・プロセッサ１０４は、論理的に統合された複数の構成要素を実装することによって、複数のソースから自然言語問合せのセットを受信する。自然言語問合せのセットは、最初に、（上記で説明された）ＤＳＭ３０２によって受信され得、次いで、マルチレベル意図識別構成要素３０３は、受信された自然言語問合せのセットを処理するために１つまたは複数の多目的会話型エージェントの中の適切な多目的会話型エージェントを識別する（以下のステップ２０４（ｉ）において詳細に説明される）。
【００４３】
概して、自然言語問合せのセットは、通常の様式で、英語でまたは任意の他の話し言葉（spoken language）（または任意の自然言語）で表される１つまたは複数の問合せからなり得る。たとえば、「私の支払う健康保険料はどのくらいですか」または「私の休暇の残りはどのくらいですか（what is my leave balance）」。自然言語テキストの特性は、通常、他の単語、あるいはテキストの他の部分（先行詞）において現れるかまたはそれらによって暗示される概念を指す単語（参照）の使用である。自然言語問合せのセットは、処理のための複数のソースから、たとえば、１人または複数のユーザから受信され得る。さらに、現代のコンピューティング・システムおよびプロセッサを使用すると、様々なソースからの情報が、ほとんど瞬時に取得され得、さらなる処理のために自然言語での問合せとして提起され得る。
【００４４】
本開示の一実施形態によれば、ステップ２０４（ｉ）において、１つまたは複数のハードウェア・プロセッサ１０４は、受信された自然言語問合せのセットに基づいて、ＤＳＭ３０２を使用することによって１つまたは複数の多目的会話型エージェントの中の少なくとも１つの多目的会話型エージェントを識別し、識別された多目的会話型エージェントはＩＡＤフレームワーク３０８またはＱＵＥフレームワーク３１４のうちのいずれかに対応する。ステップ２０４（ｉｉ）において、１つまたは複数のハードウェア・プロセッサ１０４は、１つまたは複数の深層学習技法を使用することによって、分類されていない自然言語問合せのセットの中のユーザ問合せに対してあり得るユーザ意図を予測する。自然言語問合せに返答するために対話型ボイス応答を使用する旧来のシステムおよび方法と比較して、提案される開示は、多目的会話型エージェントを識別するための高レベル意図識別技法を提供する。ステップ２０４（ｉ）および（ｉｉ）は、以下で説明される意図識別技法を介して、並行して詳細に説明され得る。
【００４５】
意図識別：
一実施形態では、ＩＡＤフレームワーク３０８は、あり得るユーザ意図を予測するための２つのタイプのモデル、シンプル意図モデル（Ｓｉｍｐｌｅ  Ｉｎｔｅｎｔ  Ｍｏｄｅｌ）およびアドバンス意図モデル（Ａｄｖａｎｃｅ  Ｉｎｔｅｎｔ  Ｍｏｄｅｌ）を可能にする。モデルは、１つまたは複数のトレーニング・データセットを入力としてとる。１つまたは複数のトレーニング・データセットは、問合せの意味論的に類似のセットのセットと、問合せの意味論的に類似のセットに対応する返答のセットとを含む。一実施形態では、モデルは、意図ＩＤ  ｓｉのセットである、Ｄ＝｛ｓ１，ｓ２．．．．．．ｓｉ｝として表現されるトレーニング・データをとる。上述のように、各意図ＩＤ  ｓｉは、
【数１】
2019215857.tif 000003
として表現される意味論的に類似の問合せのセットと、
【数２】
2019215857.tif 000004
として表現される返答の対応するセットとを含み、すなわち、ｓｉ＝（Ｘｉ，Ｙｉ）である。モデルの目標は、意図ＩＤＦ、すなわち、ユーザ問合せｘごとのｓｉを識別することである。例示的な一実装形態では、以下の表１を参照すると、１つまたは複数のトレーニング・データセットの一例が参照され得る。
【００４６】
シンプル意図モデル：
データの量が限られており、データが低い意図ＩＤ間類似度（ｉｎｔｅｒ−ｉｎｔｅｎｔ  ＩＤ  ｓｉｍｉｌａｒｉｔｙ）を有するとき、すなわち、任意の２つの異なる意図ＩＤに属する（自然言語問合せのセットの中の）１つまたは複数の自然言語問合せ間のテキスト類似度が低いとき、シンプル意図モデルが実装される。一実施形態では、量は、意図ＩＤの数と意図ＩＤにおける問合せの数とを指す。テキスト類似度に基づくモデル、すなわち、シンプル意図モデルは、そのような状況下で好適である。問合せのペアの間の１つまたは複数の類似度を見つけるためにシーケンサーマッチャー（Ｓｅｑｕｅｎｃｅｒ  Ｍａｔｃｈｅｒ）技法が実装され得、これは、以下の式に示されているように各問合せを文字のシーケンスと見なす。シーケンサーマッチャー技法は、シンプル意図モデルを実装しながらスペル・ミスに対するロバストネスを可能にする。
【００４７】
一実施形態では、ユーザ問合せｘに返答するために、ユーザ問合せｘとＤに存在するあらゆる問合せとの間の類似度が計算され得、最も類似する問合せをもつ意図ＩＤが、
【数３】
2019215857.tif 000005
として識別され、ここで、
【数４】
2019215857.tif 000006
上式で、Ｍは一致の数であり、Ｔは、ｘおよび
【数５】
2019215857.tif 000007
における総文字数である。意図ｓｉが識別されると、応答Ｙｉの対応するセットからのランダム応答が生成され得る。
表１
【表１】
2019215857.tif 000008
【００４８】
例示的な一実装形態では、ユーザ問合せが「事前に病気休暇を申請してもよいですか？」であり、問合せの意味論的に類似のセットが「事前に病気休暇を申請することは可能ですか？」または「明日医師の予約があるので、事前に病気休暇を申請してもよいですか？」を含むと仮定する。シンプル意図モデルを実装することによる、あり得るユーザ意図は、「病気休暇」または「（１日または複数の）休日」として予測され得、問合せの意味論的に類似のセットに対応する返答のセットは、「事前病気休暇を申請してください」または「医師の予約の場合、（１日または複数の）病気休暇を申請してください」として生成され得る。
【００４９】
アドバンス意図モデル
提案される開示は、意図の数が高く、２つの異なるＩＤの１つまたは複数の自然言語問合せ、たとえば、「次の金曜日と月曜日に休暇をとった場合、週末もカウントされますか？」間で多くの単語が共通であると決定すると、高レベル意図識別技法を提供する。
【００５０】
アドバンス意図モデルは、リカレント・ニューラル・ネットワークの変形態である双方向長短期記憶（ＢｉＬＳＴＭ）に基づく。一実施形態では、あらゆる意図ＩＤ  ｓｉは、マルチクラス分類問題におけるクラスであると仮定され、すなわち、
ｓ＝ａｒｇｍａｘＰ（ｓｉ｜ｘ）
ｓｉ∈Ｄ
【００５１】
本開示の一実施形態によれば、あらゆる自然言語問合せは、最初に、単語埋込みのシーケンスとして表現され得る。単語埋込みのシーケンスは、（１つまたは複数の）アルゴリズムによる処理を可能にするためにテキスト中のあらゆる単語をベクトルとして表現するｗｏｒｄ２ｖｅｃ技法を使用して取得され得る。次いで、単語ベクトルのシーケンスが、単語埋込み（word embedding）のシーケンスとして表現される自然言語問合せの表現を取得するためにＢｉＬＳＴＭの層に供給され得る。
【００５２】
あらゆるステップ（すなわち、ユーザ発話に対応する単語）において、単語埋込みが長短期記憶（ＬＳＴＭ）に入力として供給され得る。双方向アーキテクチャにより、シーケンスは順方向および逆方向順序で入力として与えられ、これは、あらゆる単語において両方の方向からのコンテキスト保持を生じる。その結果、ＢｉＬＳＴＭの層からＴ個の隠れ状態（hidden states）が取得され得、隠れ状態は、さらに、最大プール層に入力として供給され、最大プール層は隠れ状態にわたる監視層（supervisory layer）として働く。
【００５３】
最大プール層は、あらゆる次元において隠れ状態から意味論的に有意な特徴を抽出する。最大プール層の出力が、センテンス埋込み（sentence embedding）として保持される。最終的に、センテンス埋込みは、対応する意図ＩＤを取得するためにソフトマックス（ｓｏｆｔｍａｘ）分類器を使用して分類され得る。例示的な一実装形態では、図５を参照すると、ＢｉＬＳＴＭ、最大プール、および平方根カルバック・ライブラー・ダイバージェンス（ＳＱＲＤ−ＬＫＤ）に基づく深層学習アーキテクチャが参照され得る。とはいえ、アドバンス意図モデルは、限られた領域の問合せについて、すなわち、問合せがデータに関してトレーニングされたそのデータのみについて、意図を決定することができる。ただし、アドバンス意図モデルは、他の領域の問合せ、すなわち、トレーニングされていない問合せをもサポートし得る。
【００５４】
ステップ２０４（ｉ）の例示的な一実装形態では、１人または複数のユーザからの自然言語問合せのセットの中の１つまたは複数の自然言語問合せが、「次の金曜日と月曜日に休暇をとった場合、週末もカウントされますか？」および「その間に病気休暇をとった場合、無給休暇日がカウントされますか？」を含むと仮定する。高レベル意図識別技法を実装することによって、多目的会話型エージェントは休暇エージェント３０９として識別され得、休暇エージェント３０９はＩＡＤフレームワーク３０８に対応する。
【００５５】
同様に、１つまたは複数の自然言語問合せが、「クラウド・ロボティクスの深層学習論文を見せてください」を含むと仮定する。高レベル意図識別技法を実装することによって、多目的会話型エージェントはＫＧＱＡエージェント３１５として識別され得、ＫＧＱＡエージェント３１５はＱＵＥフレームワーク３１４に対応する。
【００５６】
ステップ２０４（ｉｉ）の例示的な一実装形態では、１人または複数のユーザからの自然言語問合せのセットの中の１つまたは複数の自然言語問合せが、「私の年間の健康保険料はどのくらいですか？」を含むと仮定する。アドバンス意図モデルを実装することによって、予測され得る、あり得るユーザ意図は、意味論的に類似の質問、たとえば、「私の健康保険料の額はどのくらいですか」および「私の保険料はどのくらいですか」のカテゴリーを含む。
【００５７】
本開示の一実施形態によれば、ステップ２０５において、１つまたは複数のハードウェア・プロセッサ１０４は、予測されたあり得るユーザ意図と識別された多目的会話型エージェントとに基づいて、ステップ２０５（ｉ）または２０５（ｉｉ）のうちのいずれか１つを実施する。
【００５８】
一実施形態では、１つまたは複数の自然言語問合せ「次の金曜日と月曜日に休暇をとった場合、週末もカウントされますか？」について、予測されたあり得るユーザ意図が、意味論的に類似の質問、たとえば、「金曜日と月曜日に休暇をとった場合には週末もカウントされますか」および「金曜日と月曜日に休暇をとることを計画した場合、週末も含まれますか？」のカテゴリーからなると仮定する。多目的会話型エージェントは休暇エージェント３０９として識別され、休暇エージェント３０９はＩＡＤフレームワーク３０８に対応する。１つまたは複数のハードウェア・プロセッサ１０４は、識別された多目的会話型エージェントがＩＡＤフレームワーク３０８に対応していると決定すると、応答の複数のあらかじめ定義されたセットの中の応答の１つまたは複数のあらかじめ定義されたセットを選択すること、または、綿密な情報を抽出するためにユーザを関与させること、または、綿密な情報を１つまたは複数の外部サービス３１８に通信するために外部ＡＰＩを呼び出すことのいずれかを行い得、応答のあらかじめ定義されたセットと綿密な情報とは自然言語問合せのセットに対応する。
【００５９】
一実施形態では、１つまたは複数の自然言語問合せが「事前に病気休暇を申請してもよいですか」を含むと仮定すると、１つまたは複数のハードウェア・プロセッサ１０４が、「はい」および／または「病気休暇は事前に申請することができます」として応答のあらかじめ定義されたセットを選択し得る。しかしながら、１人または複数のユーザが、さらに、問合せ「次の金曜日と月曜日に休暇をとった場合、週末もカウントされますか？」を尋ねた場合、および上記で説明された意図識別モデルのうちのいずれかによる予測されたあり得るユーザ意図に基づいて、さらなる問合せは、「金曜日と月曜日に休暇をとった場合には週末もカウントされますか」および「金曜日と月曜日に休暇をとることを計画した場合、週末も含まれますか？」として識別される。そのような状況は、さらなる綿密な情報を必要とし得る。
【００６０】
一実施形態では、適切な応答を選択するために意図が追加情報を必要とするとき、ダイアログ開始が必要とされ得る。１つまたは複数の自然言語問合せが「２日間の臨時休暇（Casual leave）」を含むと仮定する。そのようなシナリオでは、休暇タイプ、休暇開始日および休暇終了日が必要とされ得る。しかしながら、１人または複数のユーザは、さらに、上記のコンテキストとは異なる１つまたは複数の自然言語問合せに関係する（１つまたは複数の）質問をし得る。そのようなシナリオでは、１つまたは複数のハードウェア・プロセッサ１０４は、ＤＳＭ３０２に制御をフォワーディングし、ＤＳＭ３０２は、（１つまたは複数の多目的会話型エージェントの中の）適切なエージェントに１つまたは複数の自然言語問合せをフォワーディングし、１人または複数のユーザにダイアログまたは会話を続けさせることを決定する。
【００６１】
図６を参照すると、有限状態オートメーション（ＦＳＡ）があり得る。ダイアログの現在の状態に応じて、１人または複数のユーザは、１つまたは複数の多目的会話型エージェントのうちのいずれかによって（１つまたは複数の）応答を生成することを可能にするために、すべての関連のある情報が取得されるまで、さらなる情報を尋ねられ得る。１つまたは複数の外部サービス３１８から１つまたは複数の自然言語問合せに対する応答するために情報を取得する必要がある場合、１つまたは複数の外部サービス３１８に綿密な情報を通信するために外部ＡＰＩが呼び出され得る。
【００６２】
図７を参照すると、提案される開示が、ＩＡＤフレームワーク３０８において必要とされるダイアログのためのＦＳＡを指定するためにスプレッドシート・フォーマットでセルフサービス・コンソール・ポータルを提供することに留意されたい。「条件（Condition）」列（図示せず）において、ＦＳＡの状態のための適格条件（qualifying condition）が指定され得る。同様に、「次の応答」（図示せず）において、１人または複数のユーザに尋ねられるべき次の質問が指定され得る。同様に、「抽出器列（Extractors Column）」では、適切な情報抽出器ＡＰＩ、すなわち、ＩＥ−ＡＰＩが指定され得る。ＩＥ−ＡＰＩは、「私は臨時休暇を申請することを希望します」からの休暇タイプ＝「臨時休暇」など、１人または複数のユーザから取得された応答から適切な情報を抽出するために使用される。一実施形態では、すべてのＩＥ−ＡＰＩは２つの追加のタイプの情報「ヘルプ」および「新しい問合せ」を抽出することを可能にする。ＩＡＤフレームワーク３０８は、（エンティティ名の指定されたリストに基づいて）日付抽出器、数抽出器、パターン抽出器など、情報抽出器のライブラリを提供する。上記のものが十分でない場合、他の要件のためにカスタム抽出器（Custom extractors）も書かれ得る。
【００６３】
本開示の一実施形態によれば、１つまたは複数の自然言語問合せが、「クラウド・ロボティクス（cloud robotics）の深層学習論文を見せてください」、「何人の人がディープ・ゲノミクス（Ｄｅｅｐ  Ｇｅｎｏｍｉｃｓ）の会社Ｘで働いていますか」、および「我々の論文がＫＤＤに受け入れられました」を含む場合。予測されたあり得るユーザ意図は、以下のようである：「クラウド・ロボティクスの深層学習論文を見せてください」は、疑似事実の質問（ｆａｃｔｏｉｄ  ｑｕｅｓｔｉｏｎ）に対応し、「何人の人がディープ・ゲノミクスの会社Ｘで働いていますか」は、集約質問（ａｇｇｒｅｇａｔｅ  ｑｕｅｓｔｉｏｎ）に対応し、「我々の論文がＫＤＤに受け入れられました」は、１つまたは複数の知識グラフ３２２を更新することに対応する。さらに、識別された多目的会話型エージェントはＱＵＥフレームワーク３１４に対応し、１つまたは複数のハードウェア・プロセッサ１０４は、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために問合せを分類する。上記で説明されたように、自然言語問合せのセットは、ＤＳＭ３０２のマルチレベル意図識別構成要素３０３を介してＱＵＥフレームワーク３１４に達する。
【００６４】
ＱＵＥフレームワーク３１４は、（１つまたは複数の）発話に基づいて、すなわち、それが、１つまたは複数の知識グラフ３２２を更新するためのユーザ主導型会話（ＵＤＣ）であるのか、それが集約質問、たとえば、「何人の人がディープ・ゲノミクスの会社Ｘで働いていますか」であるのか、あるいは、それが、１つまたは複数の知識グラフ３２２からの疑似事実の取出し要求または疑似事実の質問、たとえば、「組織Ｘの研究には、高度センサー・データ分析の再利用可能なアセットがありますか」または「クラウド・ロボティクスの深層学習論文を見せてください」であるかどうかに基づいて、問合せを分類する。一実施形態では、分類は、問合せ−更新−関与（ＱＵＥ）意図識別器８０１を実装することによって、上記で説明されたＢｉＬＳＴＭ分類を実装することによって実施され得る。図８を参照すると、ＱＵＥ意図識別器８０１のアーキテクチャが参照され得る。
【００６５】
上記で説明されたように、１つまたは複数のハードウェア・プロセッサ１０４は、識別された多目的会話型エージェントがＱＵＥフレームワーク３１４に対応していると決定すると、リカレント・ニューラル・ネットワーク技法を実装することによって会話の１つまたは複数のカテゴリーを識別するために問合せを分類する。分類された問合せに基づいて、１つまたは複数のハードウェア・プロセッサ１０４は、ステップ２０５（ｉｉｉ）（ａ）または２０５（ｉｉｉ）（ｂ）のうちのいずれかを実施する。次に、これが詳細に考慮され得る。
【００６６】
分類された問合せに基づいて、１つまたは複数のハードウェア・プロセッサ１０４は、１つまたは複数の知識グラフ３２２に問い合わせて、自然言語問合せのセットに対応する応答の第１のセットを生成する。応答の第１のセットを生成するステップは、転置インデックス・ベースの探索技法によって、１つまたは複数の知識グラフ３２２に対応する１つまたは複数のエンティティを自然言語問合せの分類されたセットに対応する１つまたは複数のフレーズとマッピングすることと、マッピングに基づいて、応答の第１のセットを生成するために１つまたは複数の知識グラフ３２２をトラバースすることとを含む。次に、問い合わせることと、応答の第１のセットの生成とのプロセスが詳細に説明され得る。
【００６７】
一実施形態では、疑似事実の質問に返答するために、１つまたは複数のハードウェア・プロセッサ１０４は、最初に、ＫＧＱＡエージェント３１５を実装することによって、１つまたは複数の知識グラフ３２２に対応する１つまたは複数のエンティティ（たとえば、自然言語問合せ「クラウド・ロボティクスの深層学習論文を見せてください」におけるクラウド・ロボティクス）を、自然言語問合せの分類されたセットに対応する１つまたは複数のフレーズとマッピングする。例示的なシナリオを考慮すると、自然言語問合せ「クラウド・ロボティクスの深層学習論文を見せてください」および「何人の人がディープ・ゲノミクスの会社Ｘで働いていますか」の分類されたセットに対応する１つまたは複数のフレーズは、それぞれ、「クラウド・ロボティクス」および「ディープ・ゲノミクス」であり得る。これは、転置インデックス・ベースの探索技法を実装することによって実施される。
【００６８】
転置インデックス・ベースの探索技法を使用することによって、１つまたは複数の知識グラフ３２２に対応する１つまたは複数のノードが識別され、１つまたは複数の知識グラフ３２２のトラバーサルの開始点になる。次いで、ＫＧＱＡエージェント３１５は、分類された自然言語問合せに対応するターゲット・エンティティ・タイプが何であるかを決定するために、深層学習ベースの分類モデルを実行し得る。例示的なシナリオを考慮すると、分類された自然言語問合せ「組織Ｘの研究には、高度センサー・データ分析の再利用可能なアセットがありますか」および「クラウド・ロボティクスの深層学習論文を見せてください」について、ターゲット・エンティティ・タイプは、それぞれ、「再利用可能なアセット」および「研究出版物」として決定され得る。これは、知識グラフ・データベース中の（１つまたは複数の）スキーマにおけるターゲット・エンティティ・タイプの数に対応する数のクラスにあらゆる問合せを分類するように深層学習ベースの分類モデルをトレーニングすることによって、実施される。例示的な一実装形態では、図９を参照すると、「データ分析グループ（Ｄａｔａ  Ａｎａｌｙｔｉｃｓ  Ｇｒｏｕｐ）」、「ソーシャル・ワークプレイス（Ｓｏｃｉａｌ  Ｗｏｒｋｐｌａｃｅ）」および「ディープＮＬＰ」などのようなサンプル・データを含み、（図３で参照される）技術的アーキテクチャと統合された１つまたは複数の知識グラフ３２２が参照され得る。
【００６９】
本開示の一実施形態によれば、１人または複数のユーザが、１つまたは複数の知識グラフ３２２から取り出される必要がある疑似事実の質問の種類について述べない場合（たとえば、「エネルギー管理の領域において我々が何を行っているか？」）。そのような場合、ターゲット・エンティティ・タイプ分類器において「ターゲットなし」と称されるもう１つのクラスが追加され得る。次いで、そのターゲット・エンティティ・タイプは、知識グラフ・トラバーサル（traversal）の終了点になる。１つまたは複数の知識グラフ３２２中に開始ノードとターゲット・エンティティ・タイプのノードとの間の複数の異なる経路がある場合、正しい経路は、別の深層学習ベースの分類モデルを使用して識別され得、１つまたは複数の知識グラフ３２２中に存在しなければならない少なくとも１つの関係タイプが分類される（提案される開示を介して説明されない）。経路が識別されると、対応する返答は、経路をトラバースすることによって取り出され得る。
【００７０】
本開示の一実施形態によれば、集約質問の場合、疑似事実の質問の場合に使用されるのと同じ技法が実装され得るが、疑似事実の最終リストを表示する代わりに、疑似事実は、表示の前に集約され得る。一実施形態では、（１つまたは複数の）スキーマについてメタスキーマが作成され得、メタスキーマは、２つのタイプのエンティティ、すなわち、有形エンティティ（たとえば、研究論文、研究者、再利用可能なアセット、研究プロジェクトなど）および無形エンティティ（たとえば、技術キーワード、ビジネス・キーワードなど）からなり得る。一実施形態では、ターゲットが与えられないとき、ＫＧＱＡエージェント３１５が、自然言語問合せにおいて与えられた開始ノードに関係するすべての有形エンティティ・タイプのカウントを返し得る。
【００７１】
ステップ２０５（ｉｉｉ）（ａ）の例示的な一実装形態では、応答の第１のセットは、「エネルギー管理に関するｎ１人の研究者、ｎ１個の再利用可能なアセット、ｎ３個の出版物、ｎ４個の研究プロジェクトがあります」として生成され得る。
【００７２】
本開示の一実施形態によれば、ステップ２０５（ｉｉｉ）（ｂ）において、識別された多目的会話型エージェントがＱＵＥフレームワーク３１４に対応していると決定すると、１つまたは複数のハードウェア・プロセッサ１０４は、分類された問合せに基づいて、自然言語問合せのセットに対応する応答の第２のセットを生成するためにＫＧＵ−ＮＬエージェント３１６を実装することによって、１つまたは複数の知識グラフ３２２を更新する。１つまたは複数の知識グラフ３２２は、知識グラフ関与エージェント３１７によって１人または複数のユーザから取得された情報のセットに基づいて、知識グラフ更新エージェント３２１によって更新され、情報のセットは、自然言語問合せの処理に対応する。さらに、情報のセットは、積極的ユーザ関与によって、または知識グラフ関与エージェント３１７による１つまたは複数の知識グラフ３２２に対応する情報の分析によってのいずれかで、１人または複数のユーザから取得される。
【００７３】
一実施形態では、１つまたは複数の知識グラフ３２２を更新するために、複数の補助エージェント３１９が１つまたは複数のＡＰＩを公開する（expose）。ＫＧＵ−ＮＬエージェント３１６は、（上記で説明されたように）ＩＡＤフレームワーク３０８を介して複数の補助ボット（Auxiliary bots）と対話する。ＱＵＥ意図識別器８０１は、（１つまたは複数の）ユーザ発話（たとえば、「我々の論文がＫＤＤに受け入れられました」）をＫＧＵ−ＮＬエージェント３１６に通信する。（１つまたは複数の）ユーザ発話を受信すると、ＫＧＵ−ＮＬエージェント３１６は、より多くの情報、たとえば「論文のタイトルは何ですか」および「どのプロジェクトにおいてこの論文を書いたのですか」を取得するために、１人または複数のユーザとのダイアログを開始する。したがって、自然言語問合せのセットに対応する綿密な情報は、ＫＧＵ−ＮＬエージェント３１６によって抽出され得る。
【００７４】
一実施形態では、コマンド・ベースのインターフェース知識グラフ更新−コマンドが、コマンドのセット、たとえば、「ｘ  ｐｉｋ  ＫＮＡＤＩＡ」を実行し、次いで、それにより、ＫＮＡＤＩＡに関連するリテラルのリスト（再利用可能なアセット）を表示する。同様に、１人または複数のユーザは、コマンドのセット、たとえば、「会話型エージェントを構築するためのｘ  ｍｏｄ  ３プラットフォーム」を実行して、１つまたは複数の知識グラフ３２２を更新し得る。
【００７５】
ステップ２０５（ｉｉｉ）（ｂ）の例示的な一実装形態では、応答の第２のセットは、「ロボティクス応用で更新されたプロジェクトＸＹＺにおいて発表された研究論文Ｘ」として生成され得る。
【００７６】
本開示の一実施形態によれば、提案される開示の技術的利点のうちのいくつかが詳細に考慮され得る。自然言語問合せに返答するために対話型ボイス応答を使用する旧来のシステムおよび方法と比較して、提案される開示は、（上記で説明された）多目的会話型エージェントを識別するための高レベル意図識別技法を提供する。さらに、提案される開示は、知識グラフ関与エージェント３１７を使用することによって１つまたは複数の知識グラフ３２２中の情報／データのセットの整合性、精度および真正性を維持することを提供する。１つまたは複数の知識グラフ３２２を更新すると、１つまたは複数の知識グラフ３２２にロードされたデータは、不整合があり得るか、または、何らかの関連のある情報が消失していることがあり、たとえば、論文に関する情報が、組織におけるプロジェクトへの好適な関連付けなしに利用可能であり得る。提案される開示は、スキーマに対して１つまたは複数の知識グラフ３２２中の消失した情報のリストを取得することを可能にする。
【００７７】
一実施形態では、消失した情報のリストに基づいて、１つまたは複数のハードウェア・プロセッサ１０４は、エンティティおよび対応する消失したプロパティに従って、テンプレートのセットから自然言語での１つまたは複数の質問を生成する。さらに、１つまたは複数の知識グラフ３２２中の情報／データは、真正である必要があり、許可されたユーザのみによって更新されなければならない。たとえば、プロジェクトに関する質問は、プロジェクト・リードのみによって返答されなければならない。ターゲット・エンティティ、すなわち、ターゲット・ユーザ名は、ターゲット・ユーザが１つまたは複数の知識グラフ３２２中で消失している場合、または、プロジェクト・リードがいない場合、決定されることが困難であり得る。そのような場合、（１人または複数の）何らかの他の許可されたユーザがその質問に返答しなければならない。提案される開示は、１つまたは複数の知識グラフ３２２の（１つまたは複数の）スキーマにおけるあらゆるエンティティおよびプロパティの注釈（annotation）を可能にする。
【００７８】
一実施形態では、質問およびそれらに返答すべき（１人または複数の）ターゲット・ユーザのリストを取得すると、知識グラフ関与エージェント３１７は、１人または複数のユーザを関与させ、会話中の適切な時間において（１つまたは複数の）質問をする。たとえば、１人または複数のユーザは、「私は、ＫＤＤでのあなたの最近の論文を知っています。どのプロジェクトのためにこの作業が行われたのですか」と尋ねられ得る。したがって、その会話は、１人または複数のユーザが（１つまたは複数の）質問をいつでも無視し、別の質問、たとえば、「組織Ｘでは誰か深層学習に取り組んでいますか？」を尋ね得るので、リアルタイムの会話である。１人または複数のユーザによって尋ねられた質問が、最初に返答される。提案される開示は、情報が１つまたは複数の知識グラフ３２２中で利用可能でない場合、ｗｏｒｄ２ｖｅｃ技法を使用することによって、誰が自然言語問合せのセットに返答し得るかについて推測することをも可能にする。推測が行われると、１つまたは複数の知識グラフ３２２が更新され得、更新に基づく１つまたは複数の知識グラフ３２２からの（１つまたは複数の）好適な返答が、１人または複数のユーザに通信され得る。したがって、知識シンセシスが達成される。
【００７９】
提案される方法論は、マルチテナント・アーキテクチャ（multi-tenant architecture）を提供し、すなわち、（図３で提供される）アーキテクチャの同じインスタンスが、テナントと呼ばれる、並列の複数の異なるデジタルペルソナのために使用され得る。さらに、すべての多目的会話型エージェントは、自然言語問合せを受信するとテナントｉｄを検証し、次いで、適切な機械学習／深層学習モデルをアップロードして、自然言語問合せを処理する。また、メモリ・キャッシュがラウンド・ロビン様式でクリアされ、それにより、効率のためにｋ個の最も最近使用されたモデルを保持し得る。提案される開示は、１つまたは複数のトレーニング・データセットに基づいて新しい多目的会話型エージェントを作成することをも可能にする。
【００８０】
一実施形態では、メモリ１０２は、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントに関連する任意のデータを記憶するように構成され得る。一実施形態では、定義され、論理的に統合された複数の構成要素に関係する情報、受信された自然言語問合せのセット、識別された多目的会話型エージェント、予測されたあり得るユーザ意図、問合せの分類、ならびに、生成された応答の第１のセットおよび生成された応答の第２のセットなどが、メモリ１０２に記憶される。さらに、自然言語問合せを処理するための深層学習技法ベースの多目的会話型エージェントに関係するすべての情報（入力、出力など）も、参照の目的で、履歴データとして、データベースに記憶され得る。
【００８１】
本明細書は、当業者が実施形態を製作および使用することを可能にするために、本明細書の主題について説明する。主題の実施形態の範囲は、特許請求の範囲によって定義され、当業者が思い付く他の変更形態を含み得る。そのような他の変更形態は、それらが特許請求の範囲の文字通りの文言と異ならない類似の要素を有する場合、または、それらが特許請求の範囲の文字通りの文言とのわずかな差をもつ等価要素を含む場合、特許請求の範囲内に入ることが意図される。
【００８２】
保護の範囲は、そのようなプログラムに、および追加として、その中にメッセージを有するコンピュータ可読手段に拡張されることを理解されたい。そのようなコンピュータ可読記憶手段は、プログラムがサーバまたはモバイル・デバイスあるいは任意の好適なプログラマブル・デバイス上で動作するとき、方法の１つまたは複数のステップの実装のためのプログラムコード手段を含んでいる。ハードウェア・デバイスは、たとえば、サーバまたはパーソナル・コンピュータなど、あるいはそれらの任意の組合せのような任意の種類のコンピュータを含む、プログラムされ得る任意の種類のデバイスであり得る。デバイスは、たとえば、たとえば特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ）のようなハードウェア手段、あるいは、ハードウェア手段とソフトウェア手段の組合せ、たとえばＡＳＩＣおよびＦＰＧＡ、またはソフトウェア・モジュールがその中にある少なくとも１つのマイクロプロセッサおよび少なくとも１つのメモリであり得る、手段をも含み得る。したがって、手段は、ハードウェア手段とソフトウェア手段の両方を含むことができる。本明細書で説明された方法実施形態は、ハードウェアおよびソフトウェアで実装され得る。デバイスはソフトウェア手段をも含み得る。代替的に、実施形態は、たとえば複数のＣＰＵを使用して、異なるハードウェア・デバイス上で実装され得る。
【００８３】
本明細書の実施形態は、ハードウェア要素とソフトウェア要素とを含み得る。ソフトウェアで実装される実施形態は、限定はしないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む。本明細書で説明された様々なモジュールによって実施される機能は、他のモジュールまたは他のモジュールの組合せにおいて実装され得る。この説明では、コンピュータ使用可能またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによる使用のための、あるいはそれらに関するプログラムを含むか、記憶するか、通信するか、伝搬するか、トランスポートすることができる任意の装置であり得る。
【００８４】
示されたステップは図示の例示的な実施形態について説明するために提示され、進行中の技術発展が、特定の機能が実施される様式を変更することが予期されるべきである。これらの例は、限定ではなく例示の目的で本明細書で提示される。さらに、機能的ビルディング・ブロックの境界は、説明の便宜のために、任意に、本明細書で定義された。指定された機能およびその関係が適宜に実施される限り、代替境界が定義され得る。（本明細書で説明されたものの等価物、拡張、変形、逸脱などを含む）代替は、本明細書に含まれている教示に基づいて当業者に明らかになろう。そのような代替は、開示された実施形態の範囲および趣旨内に入る。また、「備える、含む（ｃｏｍｐｒｉｓｉｎｇ）」、「有する（ｈａｖｉｎｇ）」、「含んでいる（ｃｏｎｔａｉｎｉｎｇ）」、および「含む（ｉｎｃｌｕｄｉｎｇ）」という単語、ならびに他の類似の形式は、意味において等価であり、これらの単語のいずれか１つの後にくる１つまたは複数の項目が、そのような１つまたは複数の項目の網羅的なリスティングであるように意図されていないか、または、１つまたは複数のリストされた項目のみに限定されるように意図されていないという点で、オープンエンドであることが意図される。本明細書でおよび添付の特許請求の範囲において使用される単数形「ａ」、「ａｎ」、および「ｔｈｅ」が、文脈が別段に明確に規定するのでなければ、複数形の言及を含むことにも留意されたい。
【００８５】
さらに、１つまたは複数のコンピュータ可読記憶媒体が、本開示に従う実施形態を実装する際に利用され得る。コンピュータ可読記憶媒体は、プロセッサによって可読な情報またはデータが記憶され得る任意のタイプの物理的メモリを指す。したがって、コンピュータ可読記憶媒体は、（１つまたは複数の）プロセッサに本明細書で説明された実施形態に従うステップまたは段階を実施させるための命令を含む、１つまたは複数のプロセッサが実行するための命令を記憶し得る。「コンピュータ可読媒体」という用語は、有形の品物を含み、搬送波および過渡信号を除外し、すなわち、非一時的であることを理解されよう。例は、ランダム・アクセス・メモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、揮発性メモリ、不揮発性メモリ、ハード・ドライブ、ＣＤ  ＲＯＭ、ＤＶＤ、フラッシュ・ドライブ、ディスク、および任意の他の知られている物理的記憶媒体を含む。
【００８６】
本開示および例は例示にすぎないと見なされ、開示された実施形態の真の範囲および趣旨は以下の特許請求の範囲によって示されることが意図される。
【図１】
2019215857.tif 000009
【図２Ａ】
2019215857.tif 000010
【図２Ｂ】
2019215857.tif 000011
【図２Ｃ】
2019215857.tif 000012
【図３】
2019215857.tif 000013
【図４】
2019215857.tif 000014
【図５】
2019215857.tif 000015
【図６】
2019215857.tif 000016
【図７】
2019215857.tif 000017
【図８】
2019215857.tif 000018
【図９】
2019215857.tif 000019
【外国語明細書】
2019215857000001.pdf