(57)【要約】  コンピュータ実施方法が、コンピューティング・デバイスにより、所定のカテゴリー分類にマッピングされるクエリのサンプルを生成することと、サンプルを第１の自然言語処理で処理することであって、処理は、サンプルのカテゴリー分類を含む出力を生成する、処理することと、出力のカテゴリー分類が所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、格納されたデータに基づいて、そのカテゴリー分類が所定の特徴付けに合致するクエリの複数のサンプルの割合を示すレポートを生成することと、レポートを出力することと、レポートに基づいて、第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、更新は、複数のサンプルが第１の自然言語処理で処理されたときと比べて、第２の自然言語処理で処理されたとき、所定のカテゴリー分類に合致する複数のサンプルの割合を増大させる、受け取ることと、を含む。
2021516812.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実施方法であって、
コンピューティング・デバイスにより、所定のカテゴリー分類にマッピングされるクエリのサンプルを生成することと、
前記コンピューティング・デバイスにより、前記サンプルを第１の自然言語処理で処理することであって、前記処理は、前記サンプルのカテゴリー分類を含む出力を生成する、処理することと、
前記コンピューティング・デバイスにより、前記出力のカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、
前記コンピューティング・デバイスにより、前記格納されたデータに基づいて、そのカテゴリー分類が前記所定の特徴付けに合致する前記クエリの複数のサンプルの割合を示すレポートを生成することと、
前記コンピューティング・デバイスにより、前記レポートを出力することと、
前記コンピューティング・デバイスにより、前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、前記更新は、前記複数のサンプルが前記第１の自然言語処理で処理されたときと比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のサンプルの前記割合を増大させる、受け取ることと、
を含む、方法。
【請求項２】
前記サンプルを生成することは、前記クエリを変更することを含む、請求項１に記載の方法。
【請求項３】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項２に記載の方法。
【請求項４】
前記カテゴリー分類と関連付けられた用語のデータベースから、前記用語を選択することをさらに含む、請求項３に記載の方法。
【請求項５】
前記所定のカテゴリー分類は、第１の所定のカテゴリー分類であり、前記方法は、
第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを前記自然言語処理で処理し、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成することをさらに含む、請求項１に記載の方法。
【請求項６】
前記レポートは、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの前記それぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致する割合を示す、請求項５に記載の方法。
【請求項７】
前記レポートは、前記第１の所定のカテゴリー分類の変動及び前記第２の所定のカテゴリー分類の変動を示し、前記変動は昇順又は降順でソートされる、請求項６に記載の方法。
【請求項８】
前記レポートは、グラフ又はチャートの形態である、請求項１に記載の方法。
【請求項９】
前記クエリは、仮想エージェント・システムにより受け取られたユーザ・クエリに関連し、前記仮想エージェント・システムは、前記レポートに基づいて生成される前記第２の自然言語処理を適用する、請求項１に記載の方法。
【請求項１０】
サービス・プロバイダは、前記コンピューティング・デバイスを作成すること、維持すること、デプロイすること及びサポートすることのうちの少なくとも１つを行う、請求項１に記載の方法。
【請求項１１】
前記第１のクエリ・サンプルを生成すること、前記第１のクエリ・サンプルを処理すること、前記第１の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納すること、前記第２のクエリ・サンプルを生成すること、前記第２のクエリ・サンプルを処理すること、前記第２の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納すること、前記レポートを生成すること、前記レポートを出力すること、及び前記更新を受け取ることは、サブスクリプション・ベース、広告ベースもしくは料金ベース又はそれらの組み合わせで、サービス・プロバイダにより提供される、請求項１に記載の方法。
【請求項１２】
前記コンピューティング・デバイスは、クラウド環境におけるサービスとして提供されるソフトウェアを含む、請求項１に記載の方法。
【請求項１３】
前記第１のクエリ・サンプルを生成することと、前記第１のクエリ・サンプルを処理することと、前記第１の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納することと、前記第２のクエリ・サンプルを生成することと、前記第２のクエリ・サンプルを処理することと、前記第２の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納することと、前記レポートを生成することと、前記レポートを出力することと、前記更新を受け取ることとを実行するように動作可能なコンピュータ・インフラストラクチャを提供することを含む、仮想エージェント・システムにおいてユーザ・クエリのレジリエンシを判断するためのシステムをデプロイすること
をさらに含む、請求項１に記載の方法。
【請求項１４】
ユーザ・クエリのレジリエンシに基づいて、仮想エージェント・システムと関連付けられた自然言語処理を更新するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、プログラム命令がそこに具体化されたコンピュータ可読ストレージ媒体を含み、コンピューティング・デバイスにより実行可能な前記プログラム命令は、前記コンピューティング・デバイスに、
所定のカテゴリー分類にマッピングされるクエリに基づいて、複数のクエリ・サンプルを生成することと、
前記複数のクエリ・サンプルの各々を第１の自然言語処理で処理することであって、前記処理は、前記複数のクエリ・サンプルの各々についてのそれぞれのカテゴリー分類を含むそれぞれの出力を生成する、処理することと、
前記複数のクエリ・サンプルの各々についての前記それぞれのカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、
前記格納されたデータに基づいて、前記所定の特徴付けに合致するカテゴリー分類を有する前記複数のクエリ・サンプルの割合を示すレポートを生成することと、
前記レポートを出力することと、
前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、前記更新は、前記第１の自然言語処理と比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のクエリ・サンプルの割合を増大させる、受け取ることと、
を行わせる、コンピュータ・プログラム製品。
【請求項１５】
前記複数のクエリ・サンプルの各々を生成することは、前記クエリを変更することを含む、請求項１４に記載のコンピュータ・プログラム製品。
【請求項１６】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項１５に記載のコンピュータ・プログラム製品。
【請求項１７】
前記所定のカテゴリー分類は、第１の所定のカテゴリー分類であり、前記プログラム命令はさらに、前記コンピューティング・デバイスに、
第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを前記自然言語処理で処理し、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成すること、
を行わせる、請求項１４に記載のコンピュータ・プログラム製品。
【請求項１８】
前記レポートは、前記第１の所定のカテゴリー分類の変動及び前記第２の所定のカテゴリー分類の変動を示し、前記変動は昇順又は降順でソートされる、請求項１７に記載のコンピュータ・プログラム製品。
【請求項１９】
ＣＰＵ、コンピュータ可読メモリ、及びコンピューティング・デバイスと関連付けられたコンピュータ可読ストレージ媒体と、
所定のカテゴリー分類を選択してレジリエンシについて分析するためのプログラム命令と、
前記所定のカテゴリー分類と関連付けられたクエリを選択するためのプログラム命令と、
前記クエリを変更してクエリ・サンプルを生成するためのプログラム命令と、
第１の自然言語処理を適用して前記クエリ・サンプルを処理するためのプログラム命令と、
前記処理されたクエリ・サンプルの出力を格納するためのプログラム命令であって、前記出力は、前記処理されたクエリ・サンプルのカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかを示す、プログラム命令と、
前記格納されたデータに基づいて、前記処理されたクエリ・サンプルの前記出力に基づいた前記所定のカテゴリー分類についての変動と、前記所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成するためのプログラム命令と、
前記レポートを出力するためのプログラム命令と、
前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取るためのプログラム命令であって、前記更新は、前記第１の自然言語処理と比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のクエリ・サンプルの前記割合を増大させる、プログラム命令と、
を含み、
前記プログラム命令は、前記コンピュータ可読メモリを介して、前記ＣＰＵにより実行するために、前記コンピュータ可読ストレージ媒体上に格納される、
システム。
【請求項２０】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項１９に記載のシステム。
【請求項２１】
前記カテゴリー分類と関連付けられた用語のデータベースから前記用語を選択するためのプログラム命令をさらに含む、請求項２０に記載のシステム。
【請求項２２】
前記所定のカテゴリー分類は、第１の所定のカテゴリー分類であり、前記システムは、
第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを前記自然言語処理で処理し、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成するためのプログラム命令をさらに含む、請求項１９に記載のシステム。
【請求項２３】
前記レポートは、前記第１の所定のカテゴリー分類の変動及び前記第２の所定のカテゴリー分類の変動を示し、前記変動は昇順又は降順でソートされる、請求項２２に記載のシステム。
【請求項２４】
コンピュータ実施方法であって、
コンピューティング・デバイスにより、所定のカテゴリー分類と関連付けられたクエリを変更して、クエリ・サンプルを生成することと、
前記コンピューティング・デバイスにより、第１の自然言語処理を適用して、前記クエリ・サンプルを処理することと、
前記コンピューティング・デバイスにより、前記処理されたクエリ・サンプルの出力を格納することであって、前記出力は、前記処理されたクエリ・サンプルのカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかを示す、格納することと、
前記コンピューティング・デバイスにより、前記格納されたデータに基づいて、前記処理されたクエリ・サンプルの前記出力に基づく前記所定のカテゴリー分類についての変動と、前記所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成することと、
前記コンピューティング・デバイスにより、前記レポートを出力することと、
前記コンピューティング・デバイスにより、前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、前記更新は、前記複数のサンプルが前記第１の自然言語処理で処理されたときと比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のサンプルの前記割合を増大させる、受け取ることと、
を含む、方法。
【請求項２５】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項２４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、クエリ認識レジリエンシ（resiliency）を判断することに関し、より具体的には、仮想エージェント・システムにおいてクエリ認識レジリエンシを判断することに関する。
【背景技術】
【０００２】
ユーザは、ユーザ・コンピュータ・デバイスを使用して、仮想サポート・エージェント（例えば、チャットボット、自動サポート・エージェント等）と対話し、技術的問題（例えば、パスワードをリセットする、サービス・アカウントに変更を加える等）についての情報又は支援を得ることができる。仮想サポート・エージェント・システム（「エージェント」又は「エージェント・システム」と呼ばれる）及びユーザは、エージェントが質問をしてユーザの問題を判断し、ユーザに解決法を与える対話（dialogue）に関与することができる。ユーザがクエリをエージェントに提供すると、エージェントは、クエリに適切に応答しなければならない。エージェント・システムは、クエリの意図を判断し、判断した意図を用いて、対応する活動又は補足質問を見つけ、会話の一部として提示することにより、応答する。
【０００３】
エージェントの質問に対する応答を提供するときに、ユーザ・クエリの自然言語処理（ＮＬＰ：Natural Language Processing）を用いて、ユーザの意図を判断することができる。自然言語は、無限であり、曖昧でもある。仮想エージェント・システムがどれほど賢く、又は学習がどれほど深くても、あらゆるシステムは失敗することがある。仮想エージェント・システムが、基礎的又は基本的クエリさえも正しく解釈できない可能性がある。例えば、クエリを正しく認識し、正しく分類する（classify）ことができても、クエリに対する僅かな変更が、仮想エージェント・システムによって正しく分類されないことがある。一例として、変更は、前置詞、冠詞及び一般的に内容に寄与しない他の品詞など、構造語を付加するような単純なものである場合がある。それに加えて、又はその代わりに、変更は、意味論的意味付けには寄与するがクエリを解釈すべき方法にほとんど寄与しない動詞、名詞、及び他の内容語を含む場合がある。
【発明の概要】
【０００４】
本発明の態様において、コンピュータ実施方法が、コンピューティング・デバイスにより、所定のカテゴリー分類（categorization）にマッピングされるクエリのサンプルを生成することと、コンピューティング・デバイスにより、サンプルを第１の自然言語処理で処理することであって、処理は、サンプルのカテゴリー分類を含む出力を生成する、処理することと、コンピューティング・デバイスにより、出力のカテゴリー分類が所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、コンピューティング・デバイスにより、格納されたデータに基づいて、そのカテゴリー分類が所定の特徴付けに合致する複数のクエリのサンプルの割合を示すレポートを生成することと、コンピューティング・デバイスにより、レポートを出力することと、コンピューティング・デバイスにより、レポートに基づいて、第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、更新は、複数のサンプルが第１の自然言語処理で処理されたときと比べて、第２の自然言語処理で処理されたときに、所定のカテゴリー分類に合致する複数のサンプルの割合を増大させる、受け取ることと、を含む。さらに別の態様において、所定のカテゴリー分類は第１の所定のカテゴリー分類であり、方法は、自然言語処理で第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを処理し、第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が、第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成することをさらに含む。
【０００５】
本発明の態様において、ユーザ・クエリのレジリエンシに基づいて、仮想エージェント・システムと関連付けられた自然言語処理を更新するための、プログラム命令がそこに具体化されたコンピュータ可読ストレージ媒体を含むコンピュータ・プログラム製品がある。プログラム命令は、コンピューティング・デバイスにより実行可能であり、コンピューティング・デバイスに、所定のカテゴリー分類にマッピングされるクエリに基づいて複数のクエリ・サンプルを生成することと、複数のクエリ・サンプルの各々を、第１の自然言語処理で処理することであって、処理は、複数のクエリ・サンプルの各々についてのそれぞれのカテゴリー分類を含むそれぞれの出力を生成する、処理することと、複数のクエリ・サンプルの各々についてのそれぞれのカテゴリー分類が所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、格納されたデータに基づいて、所定の特徴付けに合致するカテゴリー分類を有する複数のクエリ・サンプルの割合を示すレポートを生成することと、レポートを出力することと、レポートに基づいて、第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、更新は、第１の自然言語処理と比べて、第２の自然言語処理で処理されたときに、所定のカテゴリー分類に合致する複数のクエリ・サンプルの割合を増大させる、受け取ることと、を行わせる。さらに別の態様において、所定のカテゴリー分類は、第１の所定のカテゴリー分類であり、プログラム命令はさらに、コンピューティング・デバイスに、自然言語処理で第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを処理し、第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が、第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成すること、を行わせる。
【０００６】
本発明の態様において、システムは、ＣＰＵ、コンピュータ可読メモリ、及びコンピューティング・デバイスと関連付けられたコンピュータ可読ストレージ媒体と、所定のカテゴリー分類を選択してレジリエンシについて分析するためのプログラム命令と、所定のカテゴリー分類と関連付けられたクエリを選択するためのプログラム命令と、クエリを変更してクエリ・サンプルを生成するためのプログラム命令と、第１の自然言語処理を適用してクエリ・サンプルを処理するためのプログラム命令と、処理されたクエリ・サンプルの出力を格納するためのプログラム命令であって、出力は処理されたクエリ・サンプルのカテゴリー分類が所定のカテゴリー分類に合致するかどうかを示す、プログラム命令と、格納されたデータに基づいて、処理されたクエリ・サンプルの出力に基づいた所定のカテゴリー分類についての変動と、所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成するためのプログラム命令と、レポートを出力するためのプログラム命令と、レポートに基づいて、第１の自然言語処理の更新を含む第２の自然言語処理を受け取るためのプログラム命令であって、更新は第１の自然言語処理と比べて、第２の自然言語処理で処理されたときに、所定のカテゴリー分類に合致する複数のクエリ・サンプルの前記割合を増大させる、プログラム命令と、を含む。プログラム命令は、コンピュータ可読メモリを介してＣＰＵによる実行のために、コンピュータ可読ストレージ媒体上に格納される。更に別の態様において、クエリを変更することは、用語をクエリに追加することを含む。更に別の態様において、システムは、カテゴリー分類と関連付けられた用語のデータベースから用語を選択するためのプログラム命令を含む。
【０００７】
本発明の態様において、コンピュータ実施方法が、コンピューティング・デバイスにより、所定のカテゴリー分類と関連付けられたクエリを変更して、クエリ・サンプルを生成することと、コンピューティング・デバイスにより、第１の自然言語処理を適用して、クエリ・サンプルを処理することと、コンピューティング・デバイスにより、処理されたクエリ・サンプルの出力を格納することであって、出力は、処理されたクエリ・サンプルのカテゴリー分類が所定のカテゴリー分類に合致するかどうかを示す、格納することと、コンピューティング・デバイスにより、格納されたデータに基づいて、処理されたクエリ・サンプルの出力に基づく所定のカテゴリー分類についての変動と、所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成することと、コンピューティング・デバイスにより、レポートを出力することと、コンピューティング・デバイスにより、レポートに基づいて、第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、更新は複数のサンプルが第１の自然言語処理で処理されたときと比べて、第２の自然言語処理で処理されたときに、所定のカテゴリー分類に合致する複数のサンプルの割合を増大させる、受け取ることと、を含む。更に別の態様において、クエリを変更することは、クエリに用語を追加することを含む。
【図面の簡単な説明】
【０００８】
本発明は、本発明の例示的な実施形態の非限定的な例として記載される複数の図を参照し、次の詳細な説明において説明される。
【０００９】
【図１】本発明の実施形態による、クラウド・コンピューティング・ノードを示す。
【図２】本発明の実施形態による、クラウド・コンピューティング環境を示す。
【図３】本発明の実施形態による、抽象化モデル層を示す。
【図４】本発明の態様による、例示的実施の概要を示す。
【図５】本発明の実施形態による、例示的環境を示す。
【図６】本発明の実施形態による、クエリ・レジリエンシ分析システムの例示的コンポーネントのブロック図を示す。
【図７】本発明の実施形態による、特定のカテゴリーについてのレジリエンシ・データを格納する例示的データ構造を示す。
【図８】本発明の実施形態による、例示的レジリエンシ分析レポートを表すグラフの例を示す。
【図９】本発明の実施形態による、高変動及び低レジリエンシのカテゴリー分類への自然言語処理技術への訂正がなされた後の、例示的レジリエンシ分析レポートを表すグラフの例を示す。
【図１０Ａ】本発明の実施形態による、高変動及び低レジリエンシのカテゴリー分類への改善を目的とする、クエリ・レジリエンシ分析レポートの出力を生成するためのプロセスの例示的フローチャートを示す。
【図１０Ｂ】本発明の実施形態による、高変動及び低レジリエンシのカテゴリー分類への改善を目的とする、クエリ・レジリエンシ分析レポートの出力を生成するためのプロセスの例示的フローチャートを示す。
【発明を実施するための形態】
【００１０】
本発明は、一般に、クエリ認識レジリエンシ（resiliency）を判断することに関し、より具体的には、仮想エージェント・システムにおいてクエリ認識レジリエンシを判断することに関する。仮想エージェント・システムにおいては、ユーザ・クエリを正しく認識し、正しく分類できるが、クエリへの僅かな変更（例えば、構造語、動詞、名詞及び／又は他の内容語）を、仮想エージェント・システム（本明細書では「エージェント」とも呼ばれる）によって、正しく認識し、分類できないことがある。従って、本発明の態様は、仮想サポート・エージェント・システムを用いるときに、ユーザにより提示される異なるユーザ・クエリ又はユーザ問題文についての認識レジリエンシを判断することができる。より具体的には、本発明の態様は、ユーザ・クエリが変更されたときに、ユーザ・クエリが間違って（incorrectly）認識され、分類される回数の割合を求めることによって、ユーザ・クエリの「レジリエンシ」を判断することができる。
【００１１】
説明に役立つ例として、ユーザ・クエリ「私は、自分のパスワードを再設定する必要がある」が、エージェントにより正しく認識され得るが、クエリ「私は、自分のシステム・パスワードの再設定の助けを必要とする」が正しく認識されないことがある。本発明の態様は、ユーザ・クエリを分析し、各ユーザ・クエリのレジリエンシを判断することができる。さらに、本発明の態様は、各ユーザ・クエリのレジリエンシを識別する情報を提供することができる。このように、システム管理者もしくは自然言語処理開発者又はその両方は、比較的低レジリエンシを有する（例えば、クエリが変更されたときのエラー率が高い）ユーザ・クエリを識別することができる。レジリエンシ情報に基づいて、限定されたコンピューティング・リソース及び開発者リソースは、低レジリエンシを有するクエリの認識の改善に焦点を置くことができる。従って、コンピューティング・リソース及び開発者リソースは、より効率的に割り当てられ、高レジリエンシを有するクエリの認識を改善するために浪費されることがない。
【００１２】
本明細書で説明されるように、本発明の態様は、所定の正しい認識又は分類によりユーザ・クエリのレジリエンシを判断し、構造語、動詞、名詞もしくは他の内容語又はそれらの組み合わせをユーザ・クエリに付加することにより、ユーザ・クエリを繰り返し変更することができる。ユーザ・クエリが変更されるたびに、本発明の態様は、変更されたユーザ・クエリが正しく認識されているかどうかを判断することができる。特定のユーザ・クエリについて、ユーザ・クエリを任意の回数（例えば、何十回、何百回、場合によっては何千回と）変更すること（又はサンプリングすること）ができる。ユーザ・クエリが変更されるたびに、本発明の態様は、変更されたクエリが正しくカテゴリー分類されたかどうかを追跡することができ、変更された後、カテゴリーに対して、そのカテゴリーに関連するユーザ・クエリが、どのくらいの頻度で正しくカテゴリー分類されたかを意味する変動率又はレジリエンシを示す判定基準が求められる。
【００１３】
説明に役立つ実例として、エージェント・システムが、ユーザ・クエリ「モバイル・トークン」を「モバイル・トークン生成」としてカテゴリー分類するように予め構成され、その結果、エージェントがクエリ「モバイル・トークン」を受け取ると、エージェントは、モバイル・トークンを生成し、判断されたカテゴリーに従って応答するように予め構成されると仮定する。本発明の態様は、予め構成された又所定のユーザ・クエリ「モバイル・トークン」を「モバイル・トークンの４分の１」に「サンプリングする」又は変更することができ、この変更されたユーザ・クエリが「モバイル・トークン生成」として正しくカテゴリー分類され、認識されたかどうかを判断することができる。本発明の態様は、ユーザ・クエリに、様々な構造語、動詞、名詞もしくは他の内容語又はそれらの組み合わせを追加すること又は修正することによって、ユーザ・クエリをサンプリングし続けることができる。追加される語は、完全にランダムな、すなわち「無意味な」語ではなく、ユーザがユーザ・クエリの一部として含むことができる実際の語を反映させる内容語データベースから選択される。ユーザ・クエリが変更されると、本発明の態様は、変更されたクエリが認識され、カテゴリー分類される回数を追跡することができる。各カテゴリーについて、正しくカテゴリー分類されるユーザ・クエリのレジリエンシを示す判定基準が計算される。より具体的には、判定基準は、変動率、すなわちそのカテゴリーに関連するユーザ・クエリが不正確に（incorrectly）分類される割合を示すことができる。このようにして、開発者による改善のために、低レジリエンシを有するクエリを正しくカテゴリー分類する自然言語処理に焦点をおいて、それらのカテゴリーに関連するユーザ・クエリの認識を改善することができる。より具体的には、本発明の態様は、自然言語処理の更新をもたらし、クエリ認識を改善し、ユーザ・クエリをより正確にカテゴリー分類する。つまり、更新された自然言語処理によって正しくカテゴリー分類されるクエリ・サンプルの割合は、それらのサンプルが更新前に自然言語処理によって処理されたときに比べて、増大する。
【００１４】
実施形態において、自然言語処理の更新は、低レジリエンシのカテゴリーを改善することを目的にすることができる。本発明の態様は、低レジリエンシのカテゴリーを識別することができ、その結果、開発者は、自然言語処理を改善して低レジリエンシと関連付けられたクエリの認識を改善することに焦点を置くことができる。それに加えて、又はそれに代えて、本発明の態様は、低レジリエンシ・カテゴリーと関連付けられたクエリの認識を改善するために、自然言語処理を自動的に更新することができる。例えば、レジシエンシ閾値を下回るクエリの場合、本発明の態様は、よく認識されるクエリについてそのクエリ内の主要語句を見つけ、それらのキーワードを用いて（例えば、任意の適切な検索ツールを用いて）一般的なコーポラ検索を行い、検索の結果により言語モデルを作成することができる。適切なｔｅｒｍ  ｆｒｅｑｕｅｎｃｙ−ｉｎｖｅｒｓｅ  ｄｏｃｕｍｅｎｔ  ｆｒｅｑｕｅｎｃｙ（ＴＦ−ＩＤＦ）を用いるｎ−ｇｒａｍの場合、本発明の態様は、オリジナルの主要語句の類似性に関してベクトル空間分析を実行することができる。ポリシー閾値を超えて類似性が一致した場合には、本発明の態様は、これらのクエリをグラウンド・トゥルース（ground truth）に組み込むことができる。更新されたグラウンド・トゥルースを用いて、本発明の態様は、フロー・マッピングへのオリジナル・クエリの自動更新を実行することができる。
【００１５】
本発明の態様は、仮想エージェント・システムにおけるユーザ・クエリ認識を改善する技術的問題への技術的解決法を提供することができる。特に、本発明の態様は、所定のカテゴリー分類でユーザ・クエリを繰り返しサンプリングし、自然言語処理システムにより、サンプリングされた又変更されたユーザ・クエリを処理し、変更されたユーザ・クエリの出力を追跡して、ユーザ・クエリのレジリエンシを求めることができる。本発明の態様は、ユーザ・クエリを、何十回、何百回、場合によっては何千回とサンプリングし、変更されたユーザ・クエリを、自然言語処理システムへの入力として提供することができる。従って、本発明の態様は、必然的にコンピュータ・ベースでのものであり、紙とペンにより実行されるものではない。さらに、本発明の態様は、コンピューティング・リソースの消費を低減させることにより、仮想エージェント・システムをホストするコンピューティング・システムの性能を改善する。具体的には、本発明の態様は、低レジリエンシを有するユーザ・クエリ及びカテゴリー分類を識別することにより、コンピューティング・リソースの消費を減らすので、コンピューティング・リソースは、必ずしも、高レジリエンシ又は精度を有するユーザ・クエリに対する自然言語処理の分析又は修正に浪費されない。つまり、本発明の態様は、コンピューティング・リソースの使用をより効率的に割り当てる。
【００１６】
本発明は、システム、方法もしくはコンピュータ・プログラム製品又はそれらの組み合わせを、いずれかの可能な技術的詳細レベルで統合したものとすることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体（単数又は複数）を含むことができる。
【００１７】
コンピュータ可読ストレージ媒体は、命令実行デバイスにより使用される命令を保持及び格納できる有形デバイスとすることができる。コンピュータ可読ストレージ媒体は、例えば、これらに限定されるものではないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、又は上記のいずれかの適切な組み合わせとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストとして、以下のもの、すなわち、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ又はフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、パンチカード若しくは命令がそこに記録された溝内の隆起構造のような機械的にエンコードされたデバイス、及び上記のいずれかの適切な組み合わせが挙げられる。本明細書で使用される場合、コンピュータ可読ストレージ媒体は、電波、又は他の自由に伝搬する電磁波、導波管若しくは他の伝送媒体を通じて伝搬する電磁波（例えば、光ファイバ・ケーブルを通る光パルス）、又はワイヤを通って送られる電気信号などの、一時的信号自体として解釈されない。
【００１８】
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング／処理デバイスに、又は、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワークもしくは無線ネットワーク又はその組み合わせなどのネットワークを介して外部コンピュータ又は外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジ・サーバ又はその組み合わせを含むことができる。各コンピューティング／処理デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、コンピュータ可読プログラム命令を転送して、それぞれのコンピューティング／処理デバイス内のコンピュータ可読ストレージ媒体に格納する。
【００１９】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、及び、「Ｃ」プログラミング言語若しくは類似のプログラミング言語などの従来の手続き型プログラミング言語を含む１つ又は複数のプログラミング言語の任意の組み合わせで記述されるソース・コード又はオブジェクト・コードとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータ若しくはサーバ上で実行される場合もある。最後のシナリオにおいて、遠隔コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）若しくは広域ネットワーク（ＷＡＮ）を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部コンピュータへの接続がなされる場合もある（例えば、インターネットサービスプロバイダを用いたインターネットを通じて）。幾つかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、又はプログラム可能論理アレイ（ＰＬＡ）を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行して、電子回路を個別化することができる。
【００２０】
本発明の態様は、本発明の実施形態による方法、装置（システム）及びコンピュータ・プログラム製品のフローチャート図もしくはブロック図又はその両方を参照して説明される。フローチャート図もしくはブロック図又はその両方の各ブロック、並びにフローチャート図もしくはブロック図又はその両方におけるブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されるであろう。
【００２１】
これらのコンピュータ可読プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャートもしくはブロック図又はその両方の１つ又は複数のブロック内で指定された機能／動作を実施するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、もしくは他のデバイス又はそれらの組み合わせを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納し、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャートもしくはブロック図又はその両方の１つ又は複数のブロックにおいて指定された機能／動作の態様を実施する命令を含む製品を含むようにすることもできる。
【００２２】
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生産し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャートもしくはブロック図又はその両方の１つ又は複数のブロックにおいて指定された機能／動作を実行するためのプロセスを提供するようにすることもできる。
【００２３】
図面内のフローチャート及びブロック図は、本発明の様々な実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及び動作を示す。この点に関して、フローチャート内の各ブロックは、指定された論理機能を実装するための１つ又は複数の実行可能命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に示される順序とは異なる順序で生じることがある。例えば、連続して示される２つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図もしくはフローチャート図又はその両方の各ブロック、及びブロック図もしくはフローチャート図又はその両方におけるブロックの組み合わせは、指定された機能又は動作を実行する、又は専用のハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェア・ベースのシステムによって実装できることにも留意されたい。
【００２４】
本開示はクラウド・コンピューティングについての詳細な説明を含むが、本明細書に記載される教示の実装は、クラウド・コンピューティング環境に限定されないことを理解されたい。むしろ、本発明の実施形態は、現在既知の又は後で開発される他のいずれかのタイプのコンピューティング環境と共に実施することができる。
【００２５】
クラウド・コンピューティングは、最小限の管理労力又はサービス・プロバイダとの対話で迅速にプロビジョニング及び解放することができる構成可能なコンピューティング・リソース（例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス）の共有プールへの、便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも５つの特徴、少なくとも３つのサービス・モデル、及び少なくとも４つのデプロイメント・モデルを含むことができる。
【００２６】
特徴は、以下の通りである。
【００２７】
オンデマンド・セルフサービス：クラウド・コンシューマは、必要に応じて、サーバ時間及びネットワーク・ストレージ等のコンピューティング機能を、人間がサービスのプロバイダと対話する必要なく自動的に、一方的にプロビジョニングすることができる。
【００２８】
広範なネットワーク・アクセス：機能は、ネットワーク上で利用可能であり、異種のシン又はシック・クライアント・プラットフォーム（例えば、携帯電話、ラップトップ、及びＰＤＡ）による使用を促進する標準的な機構を通じてアクセスされる。
【００２９】
リソース・プール化：プロバイダのコンピューティング・リソースは、マルチ・テナント・モデルを用いて、異なる物理及び仮想リソースを要求に応じて動的に割り当て及び再割り当てすることにより、複数のコンシューマにサービスを提供するためにプールされる。コンシューマは、一般に、提供されるリソースの正確な位置についての制御又は知識を持たないという点で、位置とは独立しているといえるが、より抽象化レベルの高い位置（例えば、国、州、又はデータセンタ）を特定できる場合がある。
【００３０】
迅速な弾力性：機能は、迅速かつ弾力的に、場合によっては自動的に、プロビジョニングして素早くスケール・アウトし、迅速にリリースして素早くスケール・インさせることができる。コンシューマにとって、プロビジョニングに利用可能なこれらの機能は、多くの場合、無制限であり、いつでもどんな量でも購入できるように見える。
【００３１】
計測されるサービス：クラウド・システムは、サービスのタイプ（例えば、ストレージ、処理、帯域幅、及びアクティブなユーザ・アカウント）に適した何らかの抽象化レベルでの計量機能を用いることによって、リソースの使用を自動的に制御及び最適化する。リソース使用を監視し、制御し、報告し、利用されるサービスのプロバイダとコンシューマの両方に対して透明性をもたらすことができる。
【００３２】
サービス・モデルは以下の通りである。
【００３３】
Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＳａａＳ）：クラウド・インフラストラクチャ上で動作しているプロバイダのアプリケーションを使用するために、コンシューマに提供される機能である。これらのアプリケーションは、ウェブ・ブラウザ（例えば、ウェブ・ベースの電子メール）などのシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。コンシューマは、限定されたユーザ固有のアプリケーション構成設定の考え得る例外として、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーション機能をも含めて、基礎をなすクラウド・インフラストラクチャを管理又は制御しない。
【００３４】
Ｐｌａｔｆｏｒｍ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＰａａＳ）：プロバイダによってサポートされるプログラミング言語及びツールを用いて生成された、コンシューマが生成した又は取得したアプリケーションを、クラウド・インフラストラクチャ上にデプロイするために、コンシューマに提供される機能である。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージなどの基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、配備されたアプリケーション、及び場合によってはアプリケーション・ホスティング環境構成に対して制御を有する。
【００３５】
Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＩａａＳ）：コンシューマが、オペレーティング・システム及びアプリケーションを含み得る任意のソフトウェアを配備及び動作させることができる、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティング・リソースをプロビジョニンングするために、コンシューマに提供される機能である。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、オペレーティング・システム、ストレージ、配備されたアプリケーションに対する制御、及び場合によってはネットワーク・コンポーネント（例えば、ホストのファイアウォール）選択の限定された制御を有する。
【００３６】
デプロイメント・モデルは以下の通りである。
【００３７】
プライベート・クラウド：クラウド・インフラストラクチャは、ある組織のためだけに運営される。このクラウド・インフラストラクチャは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
【００３８】
コミュニティ・クラウド：クラウド・インフラストラクチャは、幾つかの組織によって共有され、共通の関心事項（例えば、任務、セキュリティ要件、ポリシー、及びコンプライアンス上の考慮事項）を有する特定のコミュニティをサポートする。クラウド・インフラストラクチャは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
【００３９】
パブリック・クラウド：クラウド・インフラストラクチャは、一般公衆又は大規模な業界グループに利用可能であり、クラウド・サービスを販売する組織によって所有される。
【００４０】
ハイブリッド・クラウド：クラウド・インフラストラクチャは、固有のエンティティのままであるが、データ及びアプリケーションの移行性を可能にする標準化された又は専用の技術（例えば、クラウド間の負荷分散のためのクラウド・バースティング）によって結び付けられる２つ以上のクラウド（プライベート、コミュニティ、又はパブリック）の混成物である。
【００４１】
クラウド・コンピューティング環境は、ステートレス性、低結合性、モジュール性、及びセマンティック相互運用性に焦点を置くことを指向するサービスである。クラウド・コンピューティングの中心は、相互接続されたノードのネットワークを含むインフラストラクチャである。
【００４２】
ここで図１を参照して、クラウド・コンピューティング・ノードの例の概略が示される。クラウド・コンピューティング・ノード１０は、好適なクラウド・コンピューティング・ノードの一例に過ぎず、本明細書に説明される本発明の実施形態の使用範囲又は機能に関するいずれかの制限を示唆することを意図しない。それにも関わらず、クラウド・コンピューティング・ノード１０は、上に述べられる機能のいずれも実装もしくは実行又はその両方を行うことができる。
【００４３】
クラウド・コンピューティング・ノード１０において、多数の他の汎用又は専用コンピューティング・システム環境又は構成で動作されるコンピュータ・システム／サーバ１２がある。コンピュータ・システム／サーバ１２で用いるのに好適であり得る周知のコンピューティング・システム、環境、及び／又は構成の例は、これらに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式又はラップトップ型デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースのシステム、セットトップボックス、プログラム可能民生電子機器、ネットワークＰＣ、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、及び、上述のシステム若しくはデバイスのいずれかを含む分散型クラウド・コンピューティング環境等が含まれる。
【００４４】
コンピュータ・システム／サーバ１２は、コンピュータ・システムによって実行される、プログラム・モジュールなどのコンピュータ・システム実行可能命令の一般的な文脈で説明することができる。一般に、プログラム・モジュールは、特定のタスクを実行する又は特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造等を含むことができる。コンピュータ・システム／サーバ１２は、通信ネットワークを通じてリンクされた遠隔処理デバイスによってタスクが実行される分散型クラウド・コンピューティング環境で実施され得る。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含む、ローカル及び遠隔両方のコンピュータ・システム・ストレージ媒体内に配置することができる。
【００４５】
図１に示されるように、クラウド・コンピューティング・ノード１０におけるコンピュータ・システム／サーバ１２は、汎用コンピューティング・デバイスの形で示される。コンピュータ・システム／サーバ１２のコンポーネントは、これらに限定されるものではないが、１つ又は複数のプロセッサ若しくは処理ユニット１６、システム・メモリ２８、及びシステム・メモリ２８を含む種々のシステム・コンポーネントをプロセッサ１６に結合するバス１８を含むことができる。
【００４６】
バス１８は、メモリ・バス又はメモリ・コントローラ、周辺バス、アクセラレーテッド・グラフィックス・ポート、及び種々のバス・アーキテクチャのいずれかを用いるプロセッサ又はローカル・バスを含む、幾つかのタイプのバス構造のうちのいずれかの１つ又は複数を表す。限定ではなく例としては、このようなアーキテクチャは、業界標準アーキテクチャ（Industry Standard Architecture、ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（Micro Channel Architecture、ＭＣＡ）バス、Ｅｎｈａｎｃｅｄ  ＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカル・バス、及びＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）バスを含む。
【００４７】
コンピュータ・システム／サーバ１２は、典型的には、種々のコンピュータ・システム可読媒体を含む。このような媒体は、コンピュータ・システム／サーバ１２によりアクセス可能ないずれかの利用可能媒体とすることができ、揮発性媒体及び不揮発性媒体の両方と、取り外し可能媒体及び取り外し不能媒体の両方とを含む。
【００４８】
システム・メモリ２８は、ランダム・アクセス・メモリ（ＲＡＭ）３０及び／又はキャッシュ・メモリ３２など、揮発性メモリの形のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム／サーバ１２は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、取り外し不能の不揮発性磁気媒体（図示されておらず、典型的には「ハード・ドライブ」と呼ばれる）との間の読み出し及び書き込みのために、ストレージ・システム３４を設けることができる。図示されていないが、取り外し可能な不揮発性磁気ディスク（例えば、「フロッピー・ディスク」）との間の読み出し及び書き込みのための磁気ディスク・ドライブと、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ又は他の光媒体などの取り外し可能な不揮発性光ディスクとの間の読み出し及び書き込みのための光ディスク・ドライブとを設けることができる。このような例においては、それぞれを、１つ又は複数のデータ媒体インターフェースによってバス１８に接続することができる。以下でさらに示され説明されるように、メモリ２８は、本発明の実施形態の機能を実行するように構成されたプログラム・モジュールのセット（例えば、少なくとも１つ）を有する少なくとも１つのプログラム製品を含むことができる。
【００４９】
限定ではなく例として、メモリ２８内に、プログラム・モジュール４２のセット（少なくとも１つ）を有するプログラム／ユーティリティ４０、並びにオペレーティング・システム、１つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データを格納することができる。オペレーティング・システム、１つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データ、又はそれらの何らかの組み合わせの各々は、ネットワーキング環境の実装を含むことができる。プログラム・モジュール４２は、一般に、本明細書で説明される本発明の実施形態の機能もしくは方法又はその両方を実行する。
【００５０】
コンピュータ・システム／サーバ１２は、キーボード、ポインティング・デバイス、ディスプレイ２４等のような１つ又は複数の外部デバイス１４、ユーザがコンピュータ・システム／サーバ１２と対話することを可能にする１つ又は複数のデバイス、及び／又はコンピュータ・システム／サーバ１２が１つ又は複数の他のコンピューティング・デバイスと通信することを可能にするいずれかのデバイス（例えば、ネットワーク・カード、モデムなど）と通信することもできる。このような通信は、入力／出力（Ｉ／Ｏ）インターフェース２２を経由して行うことができる。さらにまた、コンピュータ・システム／サーバ１２は、ネットワーク・アダプタ２０を介して、ローカル・エリア・ネットワーク（ＬＡＮ）、汎用広域ネットワーク（ＷＡＮ）、及び／又はパブリック・ネットワーク（例えば、インターネット）などの１つ又は複数のネットワークと通信することもできる。示されるように、ネットワーク・アダプタ２０は、バス１８を介して、コンピュータ・システム／サーバ１２の他のコンポーネントと通信する。図示されていないが、コンピュータ・システム／サーバ１２と共に他のハードウェア及び／又はソフトウェア・コンポーネントを使用できることを理解されたい。例としては、これらに限定されるものではないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、及びデータ・アーカイブ・ストレージ・システムなどが含まれる。
【００５１】
ここで図２を参照すると、例示的なクラウド・コンピューティング環境５０が示される。示されるように、クラウド・コンピューティング環境５０は、例えば携帯情報端末（ＰＤＡ）又は携帯電話５４Ａ、デスクトップ・コンピュータ５４Ｂ、ラップトップ・コンピュータ５４Ｃ、もしくは自動車コンピュータ・システム５４Ｎ又はそれらの組み合わせなどといった、クラウド・コンシューマによって用いられるローカル・コンピューティング・デバイスと通信することができる、１つ又は複数のクラウド・コンピューティング・ノード１０を含む。ノード１０は、互いに通信することができる。これらのノードは、上述のようなプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、もしくはハイブリッド・クラウド、又はこれらの組み合わせなど、１つ又は複数のネットワークにおいて物理的又は仮想的にグループ化することができる（図示せず）。このことは、クラウド・コンピューティング環境５０が、クラウド・コンシューマがローカル・コンピューティング・デバイス上にリソースを保持する必要のない、ｉｎｆｒａｓｔｒｃｔｕｒｅ  ａｓ  ｓｅｒｖｉｃｅ、ｐｌａｔｆｏｒｍ  ａｓ  ｓｅｒｖｉｃｅ、もしくはｓｏｆｔｗａｒｅ  ａｓ  ｓｅｒｖｉｃｅ又はそれらの組み合わせを提供することを可能にする。図２に示されるコンピューティング・デバイス５４Ａ〜Ｎのタイプは単に例示であることを意図し、コンピューティング・ノード１０及びクラウド・コンピューティング環境５０は、いずれのタイプのネットワークもしくはネットワーク・アドレス指定可能な接続又はその両方上でも（例えば、ウェブブラウザを用いて）、いずれのタイプのコンピュータ化された装置とも通信できることを理解されたい。
【００５２】
ここで図３を参照すると、クラウド・コンピューティング環境５０（図２）によって提供される機能抽象化層のセットが示される。図３に示されるコンポーネント、層、及び機能は単に例示であることを意図し、本発明の実施形態はそれらに限定されないことを予め理解されたい。図示されるように、以下の層及び対応する機能が提供される。
【００５３】
ハードウェア及びソフトウェア層６０は、ハードウェア及びソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例として、メインフレーム６１と、ＲＩＳＣ（Reduced Instruction Set Computer（縮小命令セット・コンピュータ））アーキテクチャ・ベースのサーバ６２と、サーバ６３と、ブレード・サーバ６４と、ストレージ・デバイス６５と、ネットワーク及びネットワーク・コンポーネント６６と、が含まれる。幾つかの実施形態において、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア６７、データベース・ソフトウェア６８と、を含む。
【００５４】
仮想化層７０は、抽象化層を提供し、この層により、仮想エンティティの以下の例、すなわち、仮想サーバ７１、仮想ストレージ７２、仮想プライベート・ネットワークを含む仮想ネットワーク７３、仮想アプリケーション及びオペレーティング・システム７４、並びに仮想クライアント７５を提供することができる。
【００５５】
一例においては、管理層８０は、以下で説明される機能を提供することができる。リソース・プロビジョニング８１は、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング・リソース及び他のリソースの動的な調達を提供する。計量及び価格決定８２は、クラウド・コンピューティング環境内でリソースが利用される際のコスト追跡と、これらのリソースの消費に対する課金又は請求とを提供する。一例において、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウド・コンシューマ及びタスクに対する識別情報の検証と、データ及び他のリソースに対する保護とを提供する。ユーザ・ポータル８３は、コンシューマ及びシステム管理者のために、クラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理８４は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの割り当て及び管理を提供する。サービス・レベル・アグリーメント（Service Level Agreement、ＳＬＡ）の計画及び履行８５は、ＳＬＡに従って将来の要件が予測されるクラウド・コンピューティング・リソースの事前配置及び調達を提供する。
【００５６】
ワークロード層９０は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロード及び機能の例として、マッピング及びナビゲーション９１、ソフトウェア開発及びライフサイクル管理９２、仮想教室教育配信９３、データ分析処理９４、トランザクション処理９５、及びクエリ・レジリエンシ分析９６が挙げられる。
【００５７】
ここで再び図１を参照すると、プログラム／ユーティリティ４０は、一般に、本明細書で説明される本発明の実施形態の機能もしくは方法又はその両方（例えば、クエリ・レジリエンシ分析９６により提供される機能など）を実行する１つ又は複数のプログラム・モジュール４２を含むことができる。具体的には、プログラム・モジュール４２は、クエリをサンプリングし、サンプリングされたクエリを処理し、処理済みのサンプリングされたクエリのカテゴリー分類とサンプリングされていないクエリのカテゴリー分類の比較に基づいてクエリのレジリエンシを判断することができる。プログラム・モジュール４２の他の機能が、本明細書でさらに説明されるが、プログラム・モジュール４２は、上述された機能に限定されない。さらに、モジュール４２の幾つかは、図１〜図３に示されるインフラストラクチャ内に実装され得ることに留意されたい。例えば、モジュール４２は、図４に示されるようなクエリ・レジリエンシ分析システム２２０を表すことができる。
【００５８】
図４は、本発明の態様による、例示的実施の概要を示す。図４に示されるように、クエリ・レジリエンシ分析システム２２０は、クエリ・レジリエンシ分析レポートを生成し、管理デバイス２３０に出力することができる。実施形態において、クエリ・レジリエンシ分析システム２２０は、所定の自然言語処理（ＮＬＰ）出力を有するクエリをサンプリングすることにより（ステップ４．１）、レポートを生成することができる。例えば、クエリ・レジリエンシ分析システム２２０は、クエリを変更し、変更されたクエリを、自然言語処理を用いて処理することによって、クエリをサンプリングすることができる。クエリ・レジリエンシ分析システム２２０は、クエリを変更し、異なる構造語、動詞、名詞、もしくは他の内容語又はそれらの組み合わせをクエリに追加することにより、任意の数の方法で任意の回数だけクエリをサンプリングすることができる。サンプリングされたクエリの出力は、サンプリングされたクエリのカテゴリー分類を含むことができる。
【００５９】
ステップ４．２において、各々のサンプリングされたクエリについて、クエリ・レジリエンシ分析システム２２０は、サンプリングされていないクエリ又は変更されていないクエリ（例えば、所定の正しいカテゴリー分類）の以前に判断された又は所定のＮＬＰ出力に対して、サンプリングされたクエリ（例えば、判断されたカテゴリー分類）のＮＬＰ出力の（例えば、データ構造における）精度に関するデータを追跡し、格納することができる。本明細書でより詳細に説明されるように、データ構造は、クエリ、クエリがサンプリングされた回数、及び各々のサンプリングされたクエリの判断されたカテゴリー分類（例えば、ＮＬＰ出力）を識別することができる。各々の所定のカテゴリー分類について、異なるクエリをサンプリングすること（例えば、変更し、ＮＬＰ技術で処理する）ことができる。データ構造は、各々のサンプリングされたクエリについてのＮＬＰ出力を識別するデータ、及び所与のカテゴリー分類に対して正しく分類されたクエリの割合を格納することができる。このように、処理済みのサンプリングされたクエリが所与の正しいカテゴリー分類に正しく一致する精度に基づいて、各カテゴリー分類のレジリエンシを判断することができる。
【００６０】
ステップ４．３において、クエリ・レジリエンシ分析システム２２０は、（ステップ４．２において生成された）データ構造内に格納されたデータに基づいて、各クエリのレジリエンシ及びカテゴリー分類を識別するレポートを生成することができる。実施形態において、レポートは、各カテゴリー分類の変動又はレジリエンシを昇順又は降順で表示するグラフの形態とすることができる。このようにして、高変動／低レジリエンシのカテゴリー分類を識別し、高変動／低レジリエンシのカテゴリー分類と関連付けられたクエリの認識の改善のために、コンピューティング・リソース／開発リソースを割り当てることができる。例えば、図４に示されるように、管理デバイス２３０は、レポートを受け取ることができる。管理者又は管理者のチームは、レポートを見て、レポートから高変動／低レジリエンシのカテゴリー分類を識別し、エージェント・システムが高変動／低レジリエンシのカテゴリー分類と関連付けられたクエリをより良く認識することができるように、高変動／低レジリエンシのカテゴリー分類を自然言語処理の更新の対象とする。
【００６１】
図４に示されるように、（ステップ４．４において）管理デバイス２３０は、クエリ・レジリエンシ分析レポートからの情報に基づくものである更新を、クエリ・レジリエンシ分析システム２２０に提供することができる。より具体的には、更新は、ユーザ・クエリを認識するために用いられる自然言語処理の更新を含むことができ、更新された自然言語処理は、ユーザ・クエリをよって正確にカテゴリー分類する。言い換えれば、更新された自然言語処理によって正しくカテゴリー分類されたクエリ・サンプルの割合は、サンプルが更新前に自然言語処理によって処理されるときと比べて、増大している。このように、低レジリエンシを有するユーザ・クエリのエージェント認識を改善するために、クエリ・レジリエンシ分析レポートからの情報が用いられる。すなわち、ユーザ・クエリ及びカテゴリー分類のレジリエンシを改善するために、クエリ・レジリエンシ分析レポートからの情報が用いられる。
【００６２】
図５は、本発明の態様による、例示的環境を示す。図５に示されるように、環境５００は、ユーザ・デバイス２１０、クエリ・レジリエンシ分析システム２２０、管理デバイス２３０、及びネットワーク２４０を含むことができる。実施形態において、環境５００内の１つ又は複数のコンポーネントは、図２のクラウド・コンピューティング環境内の１つ又は複数のコンポーネントに対応する場合がある。実施形態において、環境５００内の１つ又は複数のコンポーネントは、図１のコンピュータ・システム／サーバ１２のコンポーネントを含むことができる。
【００６３】
ユーザ・デバイス２１０は、ネットワーク２４０などのネットワークを介して通信することができるデバイスを含むことができる。例えば、ユーザ・デバイス２１０は、モバイル通信デバイス（例えば、スマートフォン、又は携帯情報端末（ＰＤＡ））、携帯型コンピュータ・デバイス（例えば、ラップトップ又はタブレット・コンピュータ）、デスクトップ・コンピュータ、サーバ・コンピュータ、又は別のタイプのコンピューティング・デバイスに対応することができる。幾つかの実施形態において、ユーザ・デバイス２１０は、仮想サポート・エージェント・システム（例えば、クエリ・レジリエンシ分析システム２２０もしくは他の外部デバイス又はその両方によりホストされる）にアクセスするために用いることができる。ユーザ・デバイス２１０は、仮想サポート・エージェントにより受け取られ、解釈され、動作されるユーザ・クエリを入力することができるユーザ・インターフェースを含むことができる。
【００６４】
クエリ・レジリエンシ分析システム２２０は、レジリエンシ分析レポートを生成することができる（例えば、本明細書で説明される処理を用いて）１つ又は複数のコンピューティング・デバイス（例えば、図１のコンピュータ・システム／サーバ１２など）を含むことができる。実施形態において、クエリ・レジリエンシ分析システム２２０は、レジリエンシ分析レポートを管理デバイス２３０に出力することができる。
【００６５】
管理デバイス２３０は、クエリ・レジリエンシ分析システム２２０から、レジリエンシ・レポートを受け取ることができる１つ又は複数のコンピューティング・デバイス（例えば、図１のコンピュータ・システム／サーバ１２など）を含むことができる。管理デバイス２３０を用いて、仮想サポート・エージェント・システムによって受け取られるユーザ・デバイス２１０からのユーザ・クエリを認識してカテゴリー分類するために用いられる自然言語処理アルゴリズムの修正、開発、もしくは更新又はそれらの組み合わせを行うことができる。実施形態において、自然言語処理アルゴリズムの開発及び／又は修正は、クエリ・レジリエンシ分析システム２２０により生成されるレジリエンシ分析レポートによって識別されるような、低レジリエンシを有するクエリの認識の改善に焦点を置くことができる。
【００６６】
ネットワーク２４０は、図２のネットワーク・ノード１０などのネットワーク・ノードを含むことができる。付加的に又は代替的に、ネットワーク２４０は、１つ又は複数の有線ネットワークもしくは無線ネットワーク又はその両方を含むことができる。例えば、ネットワーク２４０は、セルラー・ネットワーク（例えば、第２世代（２Ｇ）ネットワーク、第３世代（３Ｇ）ネットワーク、第４世代（４Ｇ）ネットワーク、第５世代（５Ｇ）ネットワーク、ｌｏｎｇ−ｔｅｒｍ  ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）ネットワーク、ｇｌｏｂａｌ  ｓｙｓｔｅｍ  ｆｏｒ  ｍｏｂｉｌｅ（ＧＳＭ）ネットワーク、ｃｏｄｅ  ｄｉｖｉｓｉｏｎ  ｍｕｌｔｉｐｌｅ  ａｃｃｅｓｓ（ＣＤＭＡ）ネットワーク、ｅｖｏｌｕｔｉｏｎ−ｄａｔａ  ｏｐｔｉｍｉｚｅｄ（ＥＶＤＯ）ネットワーク等）、ｐｕｂｌｉｃ  ｌａｎｄ  ｍｏｂｉｌｅネットワーク（ＰＬＭＮ）、もしくは別のネットワーク又はそれらの組み合わせを含むことができる。付加的に又は代替的に、ネットワーク２４０は、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、公衆交換電話網（ＰＳＴＮ：Public Switched Telephone Network）、アドホック（ad hoc）ネットワーク、管理インターネット・プロトコル（ＩＰ）網（managed Internet protocol (IP) network）、仮想プライベート・ネットワーク（ＶＰＮ）、イントラネット、インターネット、光ファイバ・ベースのネットワーク、及び／又はこれら又は他のタイプのネットワークの組み合わせを含むことができる。
【００６７】
環境５００内のデバイスもしくはネットワーク又はその両方の量は、図５に示されるものに限定されない。実際には、環境５００は、付加的なデバイスもしくはネットワーク又はその両方、異なるデバイスもしくはネットワーク又はその両方、又は図５に示されるものとは異なるように配置されたデバイスもしくはネットワーク又はその両方を含むことができる。また、幾つかの実施において、環境５００のデバイスの１つ又は複数は、環境５００のデバイスの別の１つ又は複数により実行されるものとして説明される１つ又は複数の機能を実行することができる。環境５００のデバイスは、有線接続、無線接続、又は有線接続と無線接続の組み合わせを介して相互接続することができる。
【００６８】
図６は、本発明の態様による、クエリ・レジリエンシ分析システム２２０の例示的コンポーネントのブロック図を示す。図６に示されるように、クエリ・レジリエンシ分析システム２２０は、カテゴリー分類及びクエリ・リポジトリ６１０、追加用語配布（appended term distribution）リポジトリ６２０、クエリ変更モジュール６３０、クエリ・サンプル処理モジュール６４０、クエリ・レジリエンシ・データ・リポジトリ６５０、及びクエリ・レジリエンシ・レポート生成モジュール６６０を含むことができる。実施形態において、クエリ・レジリエンシ分析システム２２０は、図６に示されるものと比べて、付加的な又はより少ないコンポーネントを含むこともできる。実施形態において、別個のコンポーネントを統合して単一のコンピューティング・コンポーネント又はモジュールにすることもできる。付加的に又は代替的に、単一のコンポーネントを複数のコンピューティング・コンポーネント又はモジュールとして実装することもできる。
【００６９】
カテゴリー分類及びクエリ・リポジトリ６１０は、レジリエンシが分析されることになるカテゴリー分類及びクエリを格納するデータ・ストレージ・デバイス（例えば、図１のストレージ・システム３４）を含むことができる。実施形態において、カテゴリー分類は、ユーザのクエリと関連付けられた主題又はクエリ意図を含むことができる。カテゴリー分類及びクエリ・リポジトリ６１０により格納されるクエリは、ユーザ・デバイス２１０から仮想サポート・エージェントによって頻繁に受け取られるクエリとすることができる。クエリは、自然言語処理で処理されるとき、所定の出力又はカテゴリー分類と関連付けることができる。
【００７０】
追加用語配布リポジトリ６２０は、クエリのレジリエンシを分析するとき、クエリ（例えば、カテゴリー分類及びクエリ・リポジトリ６１０により格納されるクエリ）に追加することができる用語を格納するデータ・ストレージ・デバイス（例えば、図１のストレージ・デバイス３４）を含むことができる。例えば、用語追加配布リポジトリ６２０は、クエリをサンプリングするときにクエリに追加することができる構造語、動詞、名詞、もしくは他の内容語又はそれらの組み合わせを格納することができる。実施形態において、追加用語配布リポジトリ６２０は、ユーザが、ユーザ・サポート・エージェントに提供されるユーザ・クエリの一部として実際に含み得る内容語を含むことができる。例えば、追加用語配布リポジトリ６２０は、特定のカテゴリー分類を有するユーザ・クエリ内に頻繁に含まれる内容語を含むことができる。
【００７１】
クエリ変更モジュール６３０は、追加用語配布リポジトリ６２０により格納される用語を追加することによってクエリを変更するプログラム・モジュール（例えば、図１のプログラム・モジュール４２）を含むことができる。実施形態において、クエリ変更モジュール６３０は、追加用語配布リポジトリ６２０により格納されているどの用語をクエリに追加するかを、（例えば、クエリの内容、ユーザがクエリを受け取ったときに過去に含まれていた用語等に基づいて）選択することができる。
【００７２】
クエリ・サンプル処理モジュール６４０は、（例えば、クエリ変更モジュール６３０により）追加用語で変更された後の所定の分類を有するクエリであるクエリ・サンプルの各々を処理するプログラム・モジュール（例えば、図１のプログラム・モジュール４２）でる。実施形態において、クエリ・サンプル処理モジュール６４０は、クエリ・サンプルに対して自然言語処理を実行し、クエリ・サンプルについての認識されたカテゴリー分類である出力を生成することによって、クエリ・サンプルを処理することができる。クエリ・サンプル処理モジュール６４０は、変更されたクエリの複数のサンプルを、それらがクエリ変更モジュール６３０により受け取られたとき、処理することができる。クエリ・サンプル処理モジュール６４０は、クエリ・レジリエンシ・データ・リポジトリ６５０内に格納するために、サンプリングされたクエリの出力（例えば、サンプリングされたクエリについての判断されたカテゴリー分類）を提供することができる。本明細書で説明されるように、処理されたクエリ・サンプルは、そのクエリが変更されたときに、クエリの認識のレジリエンシ又は精度を示すことができる。
【００７３】
クエリ・レジリエンシ・データ・リポジトリ６５０は、データ構造内のサンプリングされたクエリ（例えば、クエリ・サンプル処理モジュール６４０によりサンプリングされ、処理されたクエリ）の出力を格納するデータ・ストレージ・デバイス（例えば、図１のストレージ・システム３４）を含むことができる。クエリ・レジリエンシ・データ・リポジトリ６５０は、単一の所定のカテゴリー分類と関連付けられたサンプリングされたクエリの出力を各々が含む複数の異なるデータ構造を格納することができる。このように、サンプリングされたクエリの総数に対して正しくカテゴリー分類されたサンプリングされたクエリの数に基づいて、各々の所定のカテゴリー分類について変動率を計算することができる。
【００７４】
クエリ・レジリエンシ・レポート生成モジュール６６０は、クエリ・レジリエンシ・データ・リポジトリ６５０により格納されたデータに基づいて、クエリ・レジリエンシ・レポートを生成するプログラム・モジュール（例えば、図１のプログラム・モジュール４２）を含むことができる。実施形態において、クエリ・レジリエンシ・レポートは、各々のカテゴリー分類の変動又はレジリエンシを識別することができる。レポートは、カテゴリー分類を（例えば、テーブル又はグラフにおける）変動の昇順又は降順でソートすることができるので、高変動／低レジリエンシのカテゴリー分類を容易に識別することができる。このように、コンピューティング・リソースを、自然言語処理の改善に向けて、高変動／低レジリエンシのカテゴリー分類と関連付けられたクエリをより良く認識することができる。
【００７５】
図７は、特定のカテゴリーについてのレジリエンシ・データを格納する例示的データ構造７００を示す。データ構造７００において、一番上の行は、サンプリングされたクエリが分類され得る異なるカテゴリー分類を特定する。陰影付きカテゴリー分類は、データ構造７００全体についての所定の正しいカテゴリー分類を特定する。「クエリ」と表記された各行は、所定のカテゴリー分類を有するクエリを示す。各クエリは、特定の回数（例えば、クエリ・レジリエンシ分析システム２２０によって）サンプリングされ、処理される。限定的ではない例示として、クエリを１５３回（又は任意の他の数の回数）サンプリングすることができる。示されるように、各々のサンプリングされたクエリの結果又は出力は、集計され、データ構造７００に格納される。特定の例として、第１の行のクエリは、１５３の異なる方法でサンプリングされる（例えば、変更される）。それらの１５３個のサンプルのうちの１４２は正しくカテゴリー分類され（“ＵＣ２＿ＳＣ３＿ＢＬＡＣＫＢＥＲＲＹ”として）、残りの１１回は、異なるカテゴリー分類に間違って分類される。第２の行のクエリは、１５３の異なる方法でサンプリングされ、１３８回正しくカテゴリー分類される。示されるように、変動率は、データ構造７００内のデータに基づいて求められる。示される例において、“ＵＣ２＿ＳＣ３＿ＢＬＡＣＫＢＥＲＲＹ”カテゴリー分類は、サンプル総数（３，０６０）のうち２，７８４が正しくカテゴリー分類されたので、９．０２％の変動（又は９０．９８％のレジリエンシ）を有する。本明細書で説明されるように、クエリ・レジリエンシ分析システム２２０は、各々カテゴリー分類についてのデータ構造を生成し、各々の所定のカテゴリー分類についての変動もしくはレジリエンシ又はその両方を計算することができる。
【００７６】
図８は、例示的レジリエンシ分析レポートを表すグラフの例を示す。実施形態において、クエリ・レジリエンシ分析システム２２０は、本明細書で説明されるようなクエリのサンプルを処理することにより、かつ、クエリ・レジリエンシ・データ・リポジトリ６５０により格納されるデータに基づいて、レジリエンシ分析レポートを生成することができる。実施形態において、クエリ・レジリエンシ分析システム２２０は、グラフ８００に類似したグラフを含むレジリエンシ・レポートを管理デバイス２３０に出力することができる。図８に示されるように、グラフ８００のｘ軸は、異なるカテゴリー分類を表し、ｙ軸は、各カテゴリー分類についての変動率を表す。グラフ内のデータ・ポイントは、所与のカテゴリーの変動率である。本明細書で説明されるように、各カテゴリーの変動は、図７の例に説明されるのと類似した方法でレジリエンシ・データ構造内のデータに基づいて求めることができる。図８に示されるように、カテゴリー分類は、変動の昇順で格納することができる。このように、高変動及び低レジリエンシを有するカテゴリー分類を容易に識別することができ、コンピューティング・リソースを、高変動及び低レジリエンシのカテゴリー分類と関連付けられたクエリについてのクエリ認識の改善に向けることができる。
【００７７】
図９は、高変動及び低レジリエンシのカテゴリー分類に対して自然言語処理技術の訂正が行われた後の例示的レジリエンシ分析レポートを表すグラフの例である。図９に示されるように、レジリエンシ分析レポートの生成の一部として本明細書で説明されるプロセスを用いるカテゴリーについて、初期変動率が求められる。高変動及び低レジリエンシのカテゴリー分類を識別することに基づいて、高変動及び低レジリエンシのカテゴリーのクエリの認識と関連付けられた自然言語処理技術への訂正、調整、修正もしくはさらなる開発又はそれらの組み合わせをもたらすように、コンピューティング・リソースを割り当てることができる。つまり、自然言語処理を更新して、低レジリエンシ・クエリをより良く認識することができる。このようにして、更新された自然言語処理によって正しくカテゴリー分類されたクエリ・サンプルの割合は、更新する前にサンプルが自然言語処理によって処理されるときと比べて、増大する。図９のグラフ９００は、連続する２回の訂正及び修正が行われた後のそれらの改善の結果を示す。コンピューティング・リソースは、高変動及び低レジリエンシのカテゴリー分類の訂正に向けられるので、全てのカテゴリー分類のレジリエンシは比較的高いものとなり、従って、仮想サポート・エージェント・システムにより受け取られるクエリの認識全体を改善することができる。
【００７８】
図１０Ａ及び図１０Ｂは、高変動及び低レジリエンシのカテゴリー分類の改善を目的として、クエリ・レジリエンシ分析レポートを生成し、出力するためのプロセスの例示的フローチャートを示す。図１０Ａ及び図１０Ｂのステップは、例えば、図４〜図６の環境において実施することができ、図４〜図６に示される要素の参照番号を用いて説明される。上述のように、フローチャートは、本発明の種々の実施形態によるシステム、方法、及びコンピュータ・プログラム製品の可能な実施のアーキテクチャ、機能及び動作を示す。
【００７９】
図１０Ａに示されるように、プロセス１０００は、レジリエンシを分析するために、カテゴリー分類を選択することを含むことができる（ステップ１００５）。例えば、クエリ・レジリエンシ分析システム２２０は、レジリエンシを分析するために、カテゴリー分類及びクエリ・リポジトリ６１０から、カテゴリー分類を選択することができる。本明細書で説明されるように、カテゴリー分類は、ユーザ・クエリの意図マッピングに関連する。
【００８０】
プロセス１０００はまた、選択されたカテゴリー分類と関連付けられたクエリ・リポジトリから、クエリを選択することを含むこともできる（ステップ１０１０）。例えば、クエリ・レジリエンシ分析システム２２０は、カテゴリー分類及びクエリ・リポジトリ６１０から、カテゴリー分類と関連付けられたクエリを選択することができる。選択されたクエリは、ステップ１００５において選択されたカテゴリー分類と関連付けられた意図にマッピングすることができる。
【００８１】
プロセス１０００は、追加用語を用いてクエリを変更することをさらに含むことができる（ステップ１０１５）。例えば、クエリ変更モジュール６３０に関して上述されるように、クエリ・レジリエンシ分析システム２２０及びクエリ変更モジュール６３０は、（例えば、クエリの内容、ユーザがクエリを受け取ったときに過去に含まれていた用語等に基づいて）追加用語配布リポジトリ６２０により格納される用語を選択して、クエリに追加することができる。実施形態において、クエリ・レジリエンシ分析システム２２０は、クエリに関連した内容ベースの用語を選択することができる。
【００８２】
プロセス１０００は、自然言語処理をクエリ・サンプルに適用することを含むこともできる（ステップ１０２０）。例えば、クエリ・サンプル処理モジュール６４０に関して上述されるように、クエリ・レジリエンシ分析システム２２０は、クエリ・サンプル（例えば、ステップ１０１５からの追加用語を有するクエリ）に対して自然言語処理を実行し、クエリ・サンプルについての認識されたカテゴリー分類である出力を生成することにより、クエリ・サンプルを処理することができる。
【００８３】
プロセス１０００は、処理されたクエリ・サンプルの出力を、カテゴリー分類と関連付けられたデータ構造に格納することをさらに含むことができる（ステップ１０２５）。例えば、クエリ・レジリエンシ・データ・リポジトリ６５０に関して上述されるように、クエリ・レジリエンシ分析システム２２０は、処理されたクエリ・サンプルをデータ構造に（例えば、クエリ・レジリエンシ・データ・リポジトリ６５０に）格納することができる。本明細書に説明されるように、出力が、クエリ・サンプルがどのようにカテゴリー分類されるか、及びクエリ・サンプルが正しくカテゴリー分類されるか又は間違ってカテゴリー分類されるかを示す。データ構造は、クエリ・サンプルが正しくカテゴリー分類されるか又は間違ってカテゴリー分類されるかを示すデータを格納することができる。
【００８４】
本明細書で説明されるように、全てのカテゴリー分類についての全てのクエリ・サンプルが自然言語処理で処理されるまで、ステップ１００５〜１０２５を繰り返すことができ、各クエリ・サンプルが正しくカテゴリー分類されるか又は間違ってカテゴリー分類されるかを示すデータが格納される。例えば、プロセス１０００は、クエリについて付加的なサンプルが存在する場合（ステップ１０３０−はい（ＹＥＳ））にはステップ１０１５に戻り、カテゴリー分類について付加的なクエリが存在する場合（ステップ１０３５−はい）には、ステップ１０１０に戻り、レジリエンシを分析するために付加的なカテゴリー分類が存在する場合（ステップ１０４０−はい）には、ステップ１００５に戻る。
【００８５】
各カテゴリー分類内の各カテゴリー分類及びクエリ・サンプルについて全てのデータが集められると（例えば、クエリ・サンプルがそれ以上存在しなくなった後（ステップ１０３０−いいえ（ＮＯ））、各カテゴリー分類について付加的なクエリが存在しなくなった後（ステップ１０３５−いいえ）、及びカテゴリー分類がそれ以上存在しなくなった後（ステップ１０４０−いいえ））、プロセス１０００は、各カテゴリー分類について変動を求める（図１０Ｂの）ステップ１０４５に進むことができる。例えば、クエリ・レジリエンシ分析システム２２０は、各カテゴリー分類についての各データ構造に格納されたデータに基づいて（例えば、クエリ・レジリエンシ・レポート生成モジュール６６０を用いて）各カテゴリー分類についての変動を判断することができる。より具体的には、クエリ・レジリエンシ分析システム２２０は、正しくカテゴリー分類された又は間違ってカテゴリー分類されたクエリ（例えば、図７に示される例に類似した）の割合を求めることができる。
【００８６】
プロセス１０００は、クエリ・レジリエンシ・レポートを生成すること（ステップ１０５０）、クエリ・レジリエンシ・レポートを出力すること（ステップ１０５５）をさらに含むことができる。例えば、クエリ・レジリエンシ・レポート生成モジュール６６０に関して上述されるように、クエリ・レジリエンシ分析システム２２０は、各カテゴリーについて判断された変動（例えば、ステップ１０４５において判断されたような）に基づいて、クエリ・レジリエンシ・レポートを生成することができる。さらに、クエリ・レジリエンシ分析システム２２０は、クエリ・レジリエンシ・レポートを、（例えば、管理デバイス２３０もしくは他のデバイス又はその両方に）出力することができる。クエリ・レジリエンシ・レポートは、各カテゴリー分類の変動又はレジリエンシを識別することができる。レポートは、カテゴリー分類を（例えば、テーブル内又はグラフ内の）変動の昇順又は降順でソートするので、高変動／低レジリエンシのカテゴリー分類を容易に識別することができる。このように、コンピューティング・リソースを自然言語処理の改善に向けて、高変動／低レジリエンシのカテゴリー分類と関連付けられたクエリをより良く認識することができる。
【００８７】
プロセス１０００は、クエリ・レジリエンシ・レポートからの情報に基づいて、自然言語処理の更新を受け取ること（ステップ１０６０）をさらに含むことができる。例えば、クエリ・レジリエンシ分析システム２２０は、（例えば、管理者から）更新を受け取り、自然言語処理を更新することができる。更新は、高変動／低レジリエンシを有するカテゴリー分類を目的とすることができるので、これらのカテゴリー分類と関連付けられたクエリの認識が改善される。このように、（ステップ１０５５において生成された）クエリ・レジリエンシ・レポートは、高変動／低レジリエンシの改善をもたらす。
【００８８】
実施形態において、サービス・プロバイダは、本明細書で説明されるプロセスを実行することを提案することができる。この場合、サービス・プロバイダは、１又は複数の顧客のために本発明のプロセス・ステップを実行するコンピュータ・インフラストラクチャの作成、維持、デプロイ、サポート等を行うことができる。これらの顧客は、例えば、技術を用いる任意の企業とすることもできる。代わりに、サービス・プロバイダは、サブスクリプションもしくは料金契約又はその両方の下で顧客から支払いを受けることができ、及び／又はサービス・プロバイダは、１又は複数のサード・パーティに対する広告内容の販売から支払いを受けることができる。
【００８９】
さらに付加的な実施形態において、本発明は、ネットワークを介したコンピュータ実施方法を提供する。この場合、コンピュータ・システム／サーバ１２（図１）などのコンピュータ・インフラストラクチャを提供し、本発明のプロセスを実行するための１つ又は複数のシステムの取得（例えば、作成、購入、使用、修正等）を行い、コンピュータ・インフラストラクチャにデプロイすることができる。この点で、システムのデプロイは、（１）コンピュータ可読媒体から、コンピュータ・システム／サーバ１２（図１に示されるような）などのコンピューティング・デバイス上にプログラム・コードをインストールすること、（２）１つ又は複数のコンピューティング・デバイスをコンピュータ・インフラストラクチャに付加すること、及び（３）コンピュータ・インフラストラクチャの１つ又は複数の既存のシステムを組み込み及び／又は修正し、コンピュータ・インフラストラクチャが本発明のプロセスを実行することを可能にすること、のうちの１つ又は複数を含むことができる。
【００９０】
本発明の種々の実施形態の説明は、例証の目的で提示したものであるが、網羅的であることも、又は開示された実施形態に限定することも意図しない。説明される実施形態の範囲から逸脱することなく、当業者には、多くの修正及び変形が明らかであろう。本明細書で用いられる用語は、実施形態の原理、実際的な用途、若しくは市場において見出される技術に優る技術的改善を最も良く説明するように、又は当業者が本明細書に含まれる実施形態を理解することを可能にするように、選択されたものである。
【図１】
2021516812.tif 000003
【図２】
2021516812.tif 000004
【図３】
2021516812.tif 000005
【図４】
2021516812.tif 000006
【図５】
2021516812.tif 000007
【図６】
2021516812.tif 000008
【図７】
2021516812.tif 000009
【図８】
2021516812.tif 000010
【図９】
2021516812.tif 000011
【図１０Ａ】
2021516812.tif 000012
【図１０Ｂ】
2021516812.tif 000013
【手続補正書】
【提出日】令和2年9月24日(2020.9.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータの情報処理によって、クエリのレジリエンシに基づいて自然言語処理を更新するための方法であって、
コンピューティング・デバイスにより、所定のカテゴリー分類にマッピングされるクエリのサンプルを生成することと、
前記コンピューティング・デバイスにより、前記サンプルを第１の自然言語処理で処理することであって、前記処理は、前記サンプルのカテゴリー分類を含む出力を生成する、処理することと、
前記コンピューティング・デバイスにより、前記出力のカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関するデータを格納することと、
前記コンピューティング・デバイスにより、前記格納されたデータに基づいて、そのカテゴリー分類が前記所定のカテゴリー分類に合致する前記クエリの複数のサンプルの割合を示すレポートを生成することと、
前記コンピューティング・デバイスにより、前記レポートを出力することと、
前記コンピューティング・デバイスにより、前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、前記更新は、前記複数のサンプルが前記第１の自然言語処理で処理されたときと比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のサンプルの前記割合を増大させる、受け取ることと、
を含む、方法。
【請求項２】
前記サンプルを生成することは、前記クエリを変更することを含む、請求項１に記載の方法。
【請求項３】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項２に記載の方法。
【請求項４】
前記カテゴリー分類と関連付けられた用語のデータベースから、前記用語を選択することをさらに含む、請求項３に記載の方法。
【請求項５】
前記所定のカテゴリー分類は、第１の所定のカテゴリー分類であり、前記方法は、
第２の所定のカテゴリー分類と関連付けられた複数のクエリ・サンプルを前記第２の自然言語処理で処理し、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの各々のそれぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致するかどうかを示すそれぞれの出力を生成することをさらに含む、請求項１に記載の方法。
【請求項６】
前記レポートは、前記第２の所定のカテゴリー分類と関連付けられた前記複数のクエリ・サンプルの前記それぞれのカテゴリー分類が前記第２の所定のカテゴリー分類に合致する割合を示す、請求項５に記載の方法。
【請求項７】
前記レポートは、前記第１の所定のカテゴリー分類の変動及び前記第２の所定のカテゴリー分類の変動を示し、前記変動は昇順又は降順でソートされる、請求項６に記載の方法。
【請求項８】
前記レポートは、グラフ又はチャートの形態である、請求項１に記載の方法。
【請求項９】
前記クエリは、仮想エージェント・システムにより受け取られたユーザ・クエリに関連し、前記仮想エージェント・システムは、前記レポートに基づいて生成される前記第２の自然言語処理を適用する、請求項１に記載の方法。
【請求項１０】
サービス・プロバイダは、前記コンピューティング・デバイスを作成すること、維持すること、デプロイすること及びサポートすることのうちの少なくとも１つを行う、請求項１に記載の方法。
【請求項１１】
前記第１のクエリ・サンプルを生成すること、前記第１のクエリ・サンプルを処理すること、前記第１の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納すること、前記第２のクエリ・サンプルを生成すること、前記第２のクエリ・サンプルを処理すること、前記第２の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納すること、前記レポートを生成すること、前記レポートを出力すること、及び前記更新を受け取ることは、サブスクリプション・ベース、広告ベースもしくは料金ベース又はそれらの組み合わせで、サービス・プロバイダにより提供される、請求項１に記載の方法。
【請求項１２】
前記コンピューティング・デバイスは、クラウド環境におけるサービスとして提供されるソフトウェアを含む、請求項１に記載の方法。
【請求項１３】
前記第１のクエリ・サンプルを生成することと、前記第１のクエリ・サンプルを処理することと、前記第１の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納することと、前記第２のクエリ・サンプルを生成することと、前記第２のクエリ・サンプルを処理することと、前記第２の出力の前記カテゴリー分類が前記所定のカテゴリー分類に合致するかどうかに関する前記データを格納することと、前記レポートを生成することと、前記レポートを出力することと、前記更新を受け取ることとを実行するように動作可能なコンピュータ・インフラストラクチャを提供することを含む、仮想エージェント・システムにおいてユーザ・クエリのレジリエンシを判断するためのシステムをデプロイすること
をさらに含む、請求項１に記載の方法。
【請求項１４】
請求項１から請求項１３までのいずれか１項に記載の前記方法をコンピュータに実行させる、コンピュータ・プログラム。
【請求項１５】
請求項１４に記載のコンピュータ・プログラムを格納したコンピュータ可読ストレージ媒体。
【請求項１６】
ＣＰＵ、コンピュータ可読メモリ、及びコンピューティング・デバイスと関連付けられたコンピュータ可読ストレージ媒体と、
所定のカテゴリー分類を選択してレジリエンシについて分析するためのプログラム命令と、
前記所定のカテゴリー分類と関連付けられたクエリを選択するためのプログラム命令と、
前記クエリを変更してクエリ・サンプルを生成するためのプログラム命令と、
第１の自然言語処理を適用して前記クエリ・サンプルを処理するためのプログラム命令と、
前記処理されたクエリ・サンプルの出力を格納するためのプログラム命令であって、前記出力は、前記処理されたクエリ・サンプルのカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかを示す、プログラム命令と、
前記格納されたデータに基づいて、前記処理されたクエリ・サンプルの前記出力に基づいた前記所定のカテゴリー分類についての変動と、前記所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成するためのプログラム命令と、
前記レポートを出力するためのプログラム命令と、
前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取るためのプログラム命令であって、前記更新は、前記第１の自然言語処理と比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のクエリ・サンプルの前記割合を増大させる、プログラム命令と、
を含み、
前記プログラム命令は、前記コンピュータ可読メモリを介して前記ＣＰＵにより実行するために、前記コンピュータ可読ストレージ媒体上に格納される、
システム。
【請求項１７】
コンピュータの情報処理によって、クエリのレジリエンシに基づいて自然言語処理を更新するための方法であって、
コンピューティング・デバイスにより、所定のカテゴリー分類と関連付けられたクエリを変更して、クエリ・サンプルを生成することと、
前記コンピューティング・デバイスにより、第１の自然言語処理を適用して、前記クエリ・サンプルを処理することと、
前記コンピューティング・デバイスにより、前記処理されたクエリ・サンプルの出力を格納することであって、前記出力は、前記処理されたクエリ・サンプルのカテゴリー分類が前記所定のカテゴリー分類に合致するかどうかを示す、格納することと、
前記コンピューティング・デバイスにより、前記格納されたデータに基づいて、前記処理されたクエリ・サンプルの前記出力に基づく前記所定のカテゴリー分類についての変動と、前記所定のカテゴリー分類と関連付けられた複数の他のクエリ・サンプルのそれぞれの出力とを示すレポートを生成することと、
前記コンピューティング・デバイスにより、前記レポートを出力することと、
前記コンピューティング・デバイスにより、前記レポートに基づいて、前記第１の自然言語処理の更新を含む第２の自然言語処理を受け取ることであって、前記更新は、前記複数のサンプルが前記第１の自然言語処理で処理されたときと比べて、前記第２の自然言語処理で処理されたときに、前記所定のカテゴリー分類に合致する前記複数のサンプルの前記割合を増大させる、受け取ることと、
を含む、方法。
【請求項１８】
前記クエリを変更することは、用語を前記クエリに追加することを含む、請求項１７に記載の方法。
【国際調査報告】
2021516812.tif 000014
2021516812.tif 000015