(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-13
(45)【発行日】2024-12-23
(54)【発明の名称】有意味自動接続スコアを使用した会話型ボットの評価および強化
(51)【国際特許分類】
G06F 40/44 20200101AFI20241216BHJP
G06F 40/56 20200101ALI20241216BHJP
【FI】
G06F40/44
G06F40/56
(21)【出願番号】P 2023537985
(86)(22)【出願日】2021-12-21
(86)【国際出願番号】 US2021064565
(87)【国際公開番号】W WO2022140357
(87)【国際公開日】2022-06-30
【審査請求日】2023-07-18
(32)【優先日】2020-12-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】511094772
【氏名又は名称】ライブパーソン, インコーポレイテッド
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ヒギンス、マイケル
(72)【発明者】
【氏名】ハザレ、アクシャイ
(72)【発明者】
【氏名】マウラー、アンドリュー
(72)【発明者】
【氏名】ダン、マシュー
(72)【発明者】
【氏名】ボネフ、ジョージ
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】特表2019-530105(JP,A)
【文献】米国特許出願公開第2018/0329878(US,A1)
【文献】米国特許出願公開第2018/0181558(US,A1)
【文献】米国特許出願公開第2017/0206095(US,A1)
【文献】米国特許出願公開第2020/0234181(US,A1)
【文献】米国特許出願公開第2017/0069340(US,A1)
【文献】米国特許出願公開第2020/0342032(US,A1)
【文献】米国特許第10037768(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-40/58
(57)【特許請求の範囲】
【請求項1】
コンピュータ実装方法であって、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を備える、コンピュータ実装方法。
【請求項2】
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに備える、請求項1に記載のコンピュータ実装方法。
【請求項3】
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、
前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに備える、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに備える、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、
前記更新されたMACSを提供することと
をさらに備える、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、請求項1に記載のコンピュータ実装方法。
【請求項8】
システムであって、
1つまたは複数のプロセッサと、
命令を記憶するメモリと
を備え、前記命令は、前記1つまたは複数のプロセッサによって実行されたことの結果として、前記システムに、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を行わせる、システム。
【請求項9】
ボット状態の前記セットを検出することを前記システムに行わせる前記命令は、前記システムに、
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに行わせる、請求項8に記載のシステム。
【請求項10】
ボット状態の前記セットを検出することを前記システムに行わせる前記命令は、前記システムに、
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、
前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに行わせる、請求項8に記載のシステム。
【請求項11】
前記命令は、前記システムに、
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに行わせる、請求項8に記載のシステム。
【請求項12】
前記命令は、前記システムに、
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、
前記更新されたMACSを提供することと
をさらに行わせる、請求項8に記載のシステム。
【請求項13】
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、請求項8に記載のシステム。
【請求項14】
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、請求項8に記載のシステム。
【請求項15】
実行可能な命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記実行可能な命令は、コンピュータシステムの1つまたは複数のプロセッサによって実行された結果として、前記コンピュータシステムに、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を行わせる、非一時的コンピュータ可読記憶媒体。
【請求項16】
前記コンピュータシステムにボット状態の前記セットを検出することを行わせる前記実行可能な命令は、前記コンピュータシステムに、
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに行わせる、請求項15に記載の非一時的コンピュータ可読
記憶媒体。
【請求項17】
前記コンピュータシステムにボット状態の前記セットを検出することを行わせる前記実行可能
な命令は、前記コンピュータシステムに、
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、
前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに行わせる、請求項15に記載の非一時的コンピュータ可読
記憶媒体。
【請求項18】
前記実行可能な命令は、前記コンピュータシステムに、
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに行わせる、請求項15に記載の非一時的コンピュータ可読
記憶媒体。
【請求項19】
前記実行可能な命令は、前記コンピュータシステムに、
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、
前記更新されたMACSを提供することと
をさらに行わせる、請求項15に記載の非一時的コンピュータ可読
記憶媒体。
【請求項20】
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、請求項15に記載の非一時的コンピュータ可読
記憶媒体。
【請求項21】
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
[0001]本特許出願は、2020年12月22日に出願された米国仮特許出願第63/128,992号の優先権の利益を主張し、その開示が参照により本明細書に組み込まれる。
【0002】
[0002]本開示は、概して、有意味自動接続スコア(MACS:Meaningful Automated Connection Score)を使用して会話型ボットの評価を容易にするためのシステムおよび方法に関する。より詳細には、ボット会話問題のリアルタイム識別を可能にするためにボットとカスタマーとの間の特定の摩擦点を識別する際にボットマネージャとビルダーとを支援し、会話フローを改善するようにボットをトレーニングするためのフレームワークを展開するための技法が提供される。
【発明の概要】
【0003】
[0003]開示される実施形態は、ボット会話問題のリアルタイム識別を可能にするためにボットとカスタマーとの間の特定の摩擦点を識別する際にボットマネージャとビルダーとを支援し、会話フローを改善するようにボットをトレーニングするためのフレームワークを提供する。いくつかの実施形態によれば、コンピュータ実装方法が提供される。コンピュータ実装方法は、会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することを備える。会話データは、会話型ボットエージェントとカスタマーとの間で交換されるメッセージを含む。コンピュータ実装方法は、会話データから特徴量のセットを計算することをさらに備える。コンピュータ実装方法は、会話における会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することをさらに備える。ボット状態のセットは、特徴量のセットおよび会話データに基づいて検出される。コンピュータ実装方法は、サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることをさらに備える。トレーニングは、会話についての有意味自動接続スコア(MACS)を決定することを含む。コンピュータ実装方法は、会話とボット状態のセットとについてのMACSを提供することをさらに備える。コンピュータ実装方法は、会話型ボットエージェントに対する更新を受信することと、会話型ボットエージェントに対する更新を実装することとをさらに備える。更新は、機械学習モデルをトレーニングするために使用される。
【0004】
[0004]一例では、システムは、1つまたは複数のプロセッサと、命令を含むメモリとを備え、命令は、1つまたは複数のプロセッサによって実行された結果として、本明細書で説明されるプロセスをシステムに実施させる。別の例では、非一時的コンピュータ可読記憶媒体は、その上に実行可能な命令を記憶し、実行可能な命令は、コンピュータシステムの1つまたは複数のプロセッサによって実行された結果として、本明細書で説明されるプロセスをコンピュータシステムに実施させる。
【0005】
[0005]この概要は、特許請求される主題の重要なまたは本質的な特徴を識別することを意図されておらず、特許請求される主題の範囲を決定するために分離して使用されることも意図されていない。主題は、本特許出願の明細書全体の適切な部分、いずれかまたはすべての図面、および各請求項を参照することによって理解されるべきである。
【0006】
[0006]上記について、他の特徴および例とともに、以下の明細書、特許請求の範囲、および添付の図面において以下でより詳細に説明される。
【0007】
[0007]本開示の様々な実施形態が以下で詳細に論じられる。特定の実装形態が論じられるが、これは、例示のみの目的で行われることを理解されたい。当業者であれば、他の構成要素および構成が、本開示の趣旨および範囲から離れることなしに使用され得ることを認識されよう。したがって、以下の説明および図面は、例示的であって、限定的なものとして解釈されるべきではない。本開示の完全な理解を提供するために、多数の具体的な詳細について説明される。しかしながら、いくつかの事例では、説明を不明瞭にすることを回避するために、よく知られているまたは従来の詳細について説明されない。本開示における一実施形態または実施形態への言及は、同じ実施形態または任意の実施形態への言及であり得、そのような言及は、実施形態のうちの少なくとも1つを意味する。
【0008】
[0008]「一実施形態」または「実施形態」への言及は、実施形態に関連して説明される特有の特徴、構造、または特性が、本開示の少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な場所における「一実施形態」という句の出現は、必ずしもすべてが同じ実施形態を指しているとは限らず、他の実施形態を相互に含まない別個のまたは代替の実施形態を指しているとも限らない。その上、他の実施形態によってではなく、いくつかの実施形態によって示され得る、様々な特徴について説明される。
【0009】
[0009]本明細書で使用される用語は、概して、本開示のコンテキスト内で、および各用語が使用される特定のコンテキストにおいて、当技術分野におけるそれらの通常の意味を有する。代替的な文言および類義語は、本明細書で説明される用語のうちのいずれか1つまたは複数のために使用され得、用語が本明細書で詳述または説明されるか否かに特別な重要性が置かれるべきでない。いくつかの場合には、いくつかの用語のための類義語が提供される。1つまたは複数の類義語の詳述が他の類義語の使用を除外しない。本明細書で説明されるあらゆる用語の例を含む本明細書の任意の場所での例の使用は、例示的なものにすぎず、本開示またはあらゆる例示的な用語の範囲および意味をさらに限定することは意図されていない。同様に、本開示は、本明細書で与えられる様々な実施形態に限定されない。
【0010】
[0010]本開示の範囲を限定する意図なしに、本開示の実施形態による機器、装置、方法およびそれらの関係する結果の例が以下で与えられる。タイトルまたはサブタイトルが読者の便宜のために例において使用され得、いかなる場合も、これは、本開示の範囲を限定するべきでないことに留意されたい。別段に定義されていない限り、本明細書で使用される技術的なおよび科学的な用語は、本開示が関係する当業者によって一般に理解されるものとしての意味を有する。矛盾する場合、定義を含めて、本開示が優先することにする。
【0011】
[0011]本開示の追加の特徴および利点は、以下の説明に記載され、部分的には説明から明らかになるか、または本明細書に開示される原理の実践によって知られ得る。本開示の特徴および利点は、特に添付の特許請求の範囲において指摘される機器および組合せによって実現および取得され得る。本開示のこれらおよび他の特徴は、以下の説明および添付の特許請求の範囲からより完全に明らかになるか、または本明細書に記載される原理の実践によって知られ得る。
【0012】
[0012]本開示は、添付の図に関して説明される。
【図面の簡単な説明】
【0013】
【
図1】[0013]様々な実施形態による、会話型ボットエージェントのパフォーマンスを改善するために、ボット更新の生成を可能にするように、会話型ボットエージェントについてのMACSが決定され、ボットビルダーに提供される、環境の例示的な例を示す図。
【
図2】[0014]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、ボット状態およびMACSアノテーションを使用してボット状態予測モデルおよびMACS予測モデルの並行トレーニングを実行する、環境の例示的な例を示す図。
【
図3】[0015]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、ボット状態およびMACSアノテーションと特徴量とを使用してボット状態予測モデルおよびMACS予測モデルの並行トレーニングを実行する、環境の例示的な例を示す図。
【
図4】[0016]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、ボット状態予測モデルによって生成された予測を使用してMACS予測モデルのトレーニングを実行する、環境の例示的な例を示す図。
【
図5】[0017]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、ボット状態予測モデルによって生成された予測と特徴量とを使用してMACS予測モデルのトレーニングを実行する、環境の例示的な例を示す図。
【
図6】[0018]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、ボット状態およびMACSアノテーションと特徴量とを使用して、ジョイントボット状態およびMACS予測モデルのトレーニングを実行する、環境の例示的な例を示す図。
【
図7】[0019]少なくとも1つの実施形態による、MACS予測モデルが、1つまたは複数のボットエージェントについての会話データと識別されたボット状態とに基づいて、1つまたは複数のボットエージェントについてのMACSを提供する、環境の例示的な例を示す図。
【
図8】[0020]少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジンが、会話型ボットエージェントについてのボット状態およびMACSを動的に決定するために、アクティブな通信セッションのメッセージのリアルタイム分析を実行する、環境の例示的な例を示す図。
【
図9】[0021]少なくとも1つの実施形態による、以前に分析されたボット会話に対応するボット状態についての会話データおよび計算された確率を使用してボット状態予測モデルをトレーニングするためのプロセスの例示的な例を示す図。
【
図10】[0022]少なくとも1つの実施形態による、アノテーション付き会話データと識別されたボット状態とに基づいてMACS予測モデルをトレーニングするためのプロセスの例示的な例を示す図。
【
図11】[0023]少なくとも1つの実施形態による、ボットエージェントとカスタマーとの間の会話についてのMACSおよび任意のボット状態を生成し、それらを提供するためのプロセスの例示的な例を示す図。
【
図12】[0024]様々な実施形態が実装され得る環境の例示的な例を示す図。
【発明を実施するための形態】
【0014】
[0025]添付の図では、同様の構成要素および/または特徴は、同じ参照ラベルを有することができる。さらに、同じタイプの様々な構成要素は、参照ラベルの後に、ダッシュと、それらの同様の構成要素同士を区別する第2のラベルとを続けることによって区別され得る。第1の参照ラベルのみが本明細書において使用される場合、説明は、第2の参照ラベルにかかわらず、同じ第1の参照ラベルを有する同様の構成要素のうちのいずれにも適用可能である。
【0015】
[0026]以下の説明は、実施形態の好ましい例を提供するにすぎず、本開示の範囲、適用可能性または構成を限定することを意図されていない。そうではなく、実施形態の好ましい例についての以下の説明は、実施形態の好ましい例を実装するための使用可能な説明を当業者に提供する。添付の特許請求の範囲に記載された趣旨および範囲から逸脱することなく、要素の機能および構成において様々な変更が行われ得ることを理解されたい。
【0016】
[0027]
図1は、様々な実施形態による、会話型ボットエージェント104のパフォーマンスを改善するために、ボット更新の生成を可能にするように、会話型ボットエージェント104についてのMACSが決定され、ボットビルダー116に提供される、環境の例示的な例を示す。環境100において、カスタマー112は、コンピューティングデバイス114を介して、カスタマーサービスコールセンター102の会話型ボットエージェント104との通信セッションに関与し得る。会話型ボットエージェント104は、コンピューティングデバイス114などのネットワークデバイスと自律的に通信するように構成され得る。さらに、会話型ボットエージェント104は、特定の能力のために構成され得る。能力の例は、データベース記録を更新することと、カスタマーに更新を提供することと、カスタマー112に関する追加のデータをヒューマンエージェントまたは他の会話型ボットエージェントに提供することと、カスタマーの意図を決定し、意図に基づいて宛先システムにカスタマー112をルーティングすることと、カスタマーと通信するヒューマンエージェントへの応答を予測または示唆すること、1つまたは複数の追加のボットまたはヒューマンエージェントを含むように通信セッションを拡大することと、他の好適な能力とを含むことができる。いくつかの実装形態では、会話型ボットエージェント104が(たとえば、チャット対応インターフェースを使用して)通信セッション中にカスタマー112と通信している間、通信サーバ(図示せず)は、会話型ボットエージェント104をヒューマンエージェントによって利用される端末デバイスと切り替えることを自動的および動的に決定することができる。たとえば、会話型ボットエージェント104は、いくつかのタスク(たとえば、カスタマー112に関連するデータベースレコードを更新すること)についてカスタマーと通信することができるが、ヒューマンエージェントは、より困難なタスク(たとえば、技術的問題を解決するために通信チャネルを使用して通信すること)についてカスタマーと通信することができる。
【0017】
[0028]会話型ボットエージェント104は、実行されたとき、コンピューティングデバイス114を介してカスタマー112などのカスタマーと自律的に通信するように構成されたコードとすることができる。たとえば、会話型ボットエージェント104は、コンピューティングデバイス114に関連するカスタマー112との会話を開始する、および/またはコンピューティングデバイス114からのメッセージに自動的に応答するためのメッセージを自動的に生成するボットとすることができる。一実施形態では、カスタマーサービスコールセンター102は、クライアント(たとえば、カスタマーサービスコールセンター102のプラットフォームに対する外部システム)が、カスタマーサービスコールセンター102を介して、それらの内部通信システム内に会話型ボットエージェント104を配備することを可能にすることができる。いくつかの例では、クライアントは、クライアントが本明細書で説明される方法および技法をそれらの内部通信システム内に実装することを可能にする、カスタマーサービスコールセンターのプラットフォーム内でそれら自体のボットを使用することができる。
【0018】
[0001]いくつかの実装形態では、会話型ボットエージェント104は、1つまたは複数のソースによって定義され得る。たとえば、カスタマーサービスコールセンター102のデータストアは、カスタマーサービスコールセンター102のクライアントによって定義された(たとえば、作成またはコーディングされた)会話型ボットエージェント104を表すコードを記憶することができる。たとえば、それ自体の会話型ボットエージェント104を定義したクライアントは、会話型ボットエージェント104をカスタマーサービスコールセンター102にロードすることができる。クライアントによって定義された会話型ボットエージェント104は、クライアントボットデータストア中に記憶され得る。いくつかの例では、カスタマーサービスコールセンター102は、サードパーティシステムによって定義される会話型ボットエージェント104を表すコードを記憶するために使用され得るデータストアを含むことができる。たとえば、第三者システムは、独立したソフトウェアベンダーを含み得る。別のデータストアは、カスタマーサービスコールセンター102に関連するエンティティによって定義される会話型ボットエージェント104を表すコードを記憶することができる。たとえば、エンティティによってコーディングされる会話型ボットエージェント104は、会話型ボットエージェント104が実行され、カスタマーと自律的に通信することができるように、カスタマーサービスコールセンター102によってロードされるか、またはアクセス可能とすることができる。いくつかの実装形態では、カスタマーサービスコールセンター102は、クラウドネットワークを使用して、これらのデータストア中に記憶されたボットにアクセスすることができる。クラウドネットワークは、任意のネットワークであってよく、インターネット、パーソナルエリアネットワーク、ローカルエリアネットワーク(LAN)、キャンパスエリアネットワーク(CAN)、メトロポリタンエリアネットワーク(MAN)、広域ネットワーク(WAN)、ワイヤレスローカルエリアネットワーク(WLAN)などのオープンネットワーク、イントラネット、エクストラネットなどのプライベートネットワーク、または他のバックボーンを含むことができる。
【0019】
[0029]いくつかの実施形態では、カスタマーサービスコールセンター102は、会話型ボットエージェント104とコンピューティングデバイス114との間の特定の通信セッション中に会話型ボットエージェント104とカスタマー112との間で会話を動的に切り替えさせるための自動化を推奨することができる。たとえば、カスタマーサービスコールセンター102は、コンピューティングデバイス114と会話型ボットエージェント104との間の通信セッションを容易にすることができる。会話型ボットエージェント104は、通信セッション中に1つまたは複数のメッセージをコンピューティングデバイス114と交換することによって、コンピューティングデバイス114と自律的に通信するように構成され得る。カスタマーサービスコールセンター102は、ライブヒューマンエージェントが会話型ボットエージェント104ではなくコンピューティングデバイス114と通信することができるように、会話型ボットエージェント104をヒューマンエージェントと切り替えるべき(または、場合によっては、その逆)かどうかを動的に決定することができる。いくつかの実装形態では、切替えは、カスタマー112またはヒューマンエージェントからのプロンプトなしに実行され得る。たとえば、切替えは、コンピューティングデバイスにヒューマンエージェントへの転送を要求するように促すことなく、コンピューティングデバイス114と会話型ボットエージェント104との間で交換されるメッセージのメッセージパラメータ(たとえば、メッセージまたは一連のメッセージの感情を表すスコア)に基づくことができる。
【0020】
[0030]一実施形態では、カスタマーサービスコールセンター102は、これらの会話中に遭遇した任意のボット状態を識別するように、評価のためにカスタマーと会話型ボットエージェント104との間の会話を記録する。これらのボット状態は、任意の障害状態(たとえば、古い情報を求めること、任意の誤解、カスタマーを支援する能力がないこと、カスタマーをライブエージェントに転送する能力がないこと、いくつかの再プロンプトなど)、情報収集状態(たとえば、カスタマー識別、新しい情報のプロンプト、確認の要求など)、転送状態(たとえば、ライブエージェントに転送するための申出、カスタマーに対するライブエージェントへの転送のプロンプト、転送の成功など)、支援状態(たとえば、カスタマーへの有用な情報の提供、カスタマーの問題への対処、クエリに対する正確な応答の提供など)などを含み得る。たとえば、カスタマー112が会話型ボットエージェント104との会話に関与するとき、カスタマーサービスコールセンター102は、各メッセージを、任意の関連するボットメタデータとともに会話データストア106中に記録し得る。会話データストア106内で、カスタマーサービスコールセンター102は、各メッセージを、カスタマー112と会話型ボットエージェント104との間の特定の会話に対応する一意の識別子に関連付け得る。カスタマーサービスコールセンター102は、カスタマー112と会話型ボットエージェント104との間の会話が終わったかどうかを決定するために、この会話を監視し得る。たとえば、カスタマーサービスコールセンター102は、会話が会話型ボットエージェント104からヒューマンエージェントに転送された結果として、特定の会話が終わったと決定し得る。代替的に、カスタマーサービスコールセンター102は、カスタマー112が、特定の問題が解決されたことを示すメッセージ、または会話の終結の他の確認応答を提出した結果として、会話が終わったと決定し得る。いくつかの事例では、カスタマーサービスコールセンター102は、会話型ボットエージェント104とカスタマー112によって利用されるコンピューティングデバイス114との間の通信セッションが終了したとき、会話が終わったと決定し得る。
【0021】
[0031]一実施形態では、会話データストア106に記憶された会話のサンプルセットが、手動評価のためにアノテータ110のセットに提供される。たとえば、いくつかの事例では、特定の会話中に発生する任意のボット状態を識別するために、特定の会話がアノテータ110のセットに提供され得る。これらのボット状態は、ボットがカスタマーのメッセージ(たとえば、意図、問題など)を理解できないこと、ボットがカスタマーを無視すること、ボットがメッセージループ内で立ち往生していること、ボットによるカスタマーフラストレーションの検出、ボットによるヒューマンエージェントへの誤った転送などを含み得る。加えて、これらのボット状態は、ライブエージェントへの会話の転送の成功、会話中にカスタマーによって表現された問題の解決の成功などをもたらす、ボットによって実行される任意の動作を含み得る。ボット状態は、識別情報を提供するようにカスタマーに促すこと、問題に対処するために使用され得る新しい情報のための任意のプロンプト、ボットによって実行されることになる動作に関する確認を求める任意の要求などの、任意の情報収集アクティビティをさらに含み得る。一実施形態では、各アノテータ110は、特定の会話の各メッセージを評価し、メッセージに対応して検出された任意の特定の状態を示すことがある。たとえば、アノテータ110は、メッセージが特定の障害状態を示すか、特定の転送状態を示すか、特定の情報収集状態を示すかなどを示すために、特定の会話の各メッセージにアノテーションを付けることがある。
【0022】
[0032]一実施形態では、カスタマーと会話型ボットエージェント104との間のメッセージを動的およびリアルタイムに評価して会話レベルでボット状態を予測するために使用され得るボット状態予測モデルを生成し、それをトレーニングするために、アノテーション付きデータならびにカスタマーと会話型ボットエージェント104との間の会話に対応する元の会話データが、ボット状態機械学習モデリングエンジン108に提供される。ボット状態機械学習モデリングエンジン108は、カスタマーサービスコールセンター102のコンピュータシステムまたは他のシステム(たとえば、サーバ、仮想マシンインスタンスなど)上に実装され得る。代替的に、ボット状態機械学習モデリングエンジン108は、カスタマーサービスコールセンター102のコンピューティングシステム上で実行されるアプリケーションまたは他のプロセスとして実装され得る。
【0023】
[0033]一実施形態では、ボット状態機械学習モデリングエンジン108は、会話内の何らかのメッセージが特定の状態を有する確率を決定するために集合ストラテジを実装する。たとえば、ボット状態機械学習モデリングエンジン108は、会話内の各メッセージについて特定の状態が存在する確率を計算し得る。例示的な例として、特定のメッセージが3つのアノテータ110によって評価され、これらのアノテータ110のうちの1つが、特定のメッセージについて特定の状態が存在すると決定した場合、ボット状態機械学習モデリングエンジン108は、特定の状態がメッセージ中に存在する確率が、特定の状態を示すアノテーションの数をアノテーションの総数で除算したもの、すなわち、この場合、1/3であると決定し得る。ボット状態機械学習モデリングエンジン108は、変換の特定のメッセージがこの特定の状態を含まない確率を取得するために、この確率を1から減算し得る。ボット状態機械学習モデリングエンジン108は、特定の状態が特定の会話にない確率を取得するために、特定の会話中の各メッセージについて取得された確率を乗算し得る。ボット状態機械学習モデリングエンジン108は、特定の状態が特定の会話内に存在する確率を取得するために、この確率を1から減算し得る。
【0024】
[0034]会話内の特定の状態の存在の得られた確率は単調減少であり、それによって、より多くのメッセージの存在は、特定の状態が存在する確率を減少させないことがある。たとえば、すべてのアノテータ110が、特定の状態が特定のメッセージ内に存在することに合意する場合、特定の状態が特定の会話内に存在する確率は、特定の会話内のメッセージの数にかかわらず1である。得られたアノテーション付き会話および対応する状態確率は、リアルタイムで会話から状態を動的に検出するために使用可能な分類モデルのトレーニングのための「グランドトゥルース」またはサンプルデータセットとして使用され得る。したがって、サンプルデータセット内の各メッセージは、各分類の存在に対応する、以前に計算された確率に従って、特定の分類(たとえば、カスタマーフラストレーション、ボットがカスタマーを無視したこと、ボットがメッセージループ内で立ち往生したこと、ボットが問題を解決するために新しい情報をカスタマーに求めたこと、ボットが会話をライブエージェントに正常に転送したこと、ボットが問題にうまく対処したことなど)に対応することが知られ得る。特定の障害状態について特定の会話からのメッセージを分類するために使用され得る分類モデルは、ロジスティック回帰アルゴリズム、ランダムフォレストモデル、単純ベイズモデル、線形回帰モデル、決定木モデル、k-meansクラスタリングモデル、k近傍法(kNN)モデル、サポートベクターマシン(SVM)モデル、勾配ブースティングマシンモデルなどを含み得る。
【0025】
[0035]一実施形態では、ボット状態予測モデルは、出力として、ボット状態予測モデルによって処理される各会話に対して、各可能なボット状態についての信頼度スコアを提供する。信頼度スコアは、特定のボット状態が会話内に存在する確率に対応し得る。いくつかの事例では、信頼性スコアは、分類モデルが正確な結果を生成しているかどうかを決定するために、対応する状態が特定の会話中に存在する前述の確率と比較され得る。たとえば、特定の会話についての各可能な状態に関する信頼度スコアを計算するために使用される分類モデルは、特定の会話のアノテータ評価に対応するボット状態確率に基づいて、分類モデルが特定の会話中に存在し得る任意のボット状態を正しく識別しているかどうかを決定するために評価され得る。この評価に基づいて、分類モデルは、分類モデルが所望の結果を生成する尤度を増加させるように修正され得る。
【0026】
[0036]一実施形態では、ボット状態機械学習モデリングエンジン108は、ボット状態予測モデル(たとえば、分類モデル)によって生成された信頼度スコアを、特定の会話についてのMACSに変換することができる。たとえば、ボット状態機械学習モデリングエンジン108は、特定の会話についてのMACSを取得するために、特定の会話についてのボット状態予測モデルを使用して取得された各ボット状態についての信頼度スコアを、MACS予測モデルへの入力として使用し得る。代替的に、ボット状態機械学習モデリングエンジン108は、各ボット状態についての信頼度スコアがしきい値を満たすかどうかを決定し得る。特定のボット状態についての信頼度スコアがしきい値を上回る場合、ボット状態機械学習モデリングエンジン108は、対応するボット状態が会話内に存在すると決定し得る。会話内のボット状態の存在は、会話についてのMACSを計算するために、しきい値に従って、MACS予測モデルへの入力として使用され得る。
【0027】
[0037]MACS予測モデルは、様々な技法を通してトレーニングされ得る。一実施形態では、MACS予測モデルは、1つまたは複数のサンプル会話の各々についてMACSを生成するための入力として、1つまたは複数のサンプル会話についてアノテータ110によって生成されたボット状態およびMACSアノテーションを使用することによって、ボット状態予測モデルと並行してトレーニングされ得る。特定の会話のアノテータ評価に対応するボット状態確率と会話についてのMACSアノテーションとに基づいて、MACS予測モデルが特定の会話についてのMACSを正しく計算しているかどうかを決定するために、得られたMACSが評価され得る。この評価に基づいて、MACS予測モデルは、MACS予測モデルが所望の結果を生成する尤度を増加させるように修正され得る。
【0028】
[0038]一実施形態では、MACS予測モデルは、1つまたは複数のサンプル会話と1つまたは複数のサンプル会話の特徴量のセットとについてアノテータ110によって生成されたボット状態およびMACSアノテーションを使用してトレーニングされ得る。たとえば、ボット状態機械学習モデリングエンジン108は、特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器を利用し得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいてアノテータ110によって決定されたMACSスコアと、MACS予測モデルによって予測されたMACSスコアとの間の相関を高め得る。したがって、MACS予測モデルのトレーニングをさらに改善するために、このバイナリ特徴量が使用され得る。
【0029】
[0039]いくつかの実施形態では、MACS予測モデルは、上述のボット状態予測モデルによって生成される予測されたボット状態信頼度スコアを使用してトレーニングされ得る。たとえば、ボット状態機械学習モデリングエンジン108は、サンプル会話についての予測されたMACSを生成するために、ボット状態予測モデルによって生成された信頼度スコアと、サンプル会話についてアノテータ110によって決定されたアノテーション付きMACSとを、MACS予測モデルへの入力として使用し得る。この予測されたMACSは、MACS予測モデルが正確な結果を生成しているかどうかを決定するために、アノテータ110によって決定されたアノテーション付きMACSと比較され得る。この評価に基づいて、MACS予測モデルは、MACS予測モデルがサンプル会話についての所望のMACSを生成する尤度を増加させるように修正され得る。いくつかの事例では、MACS予測モデルは、予測されたボット状態信頼度スコアと1つまたは複数のサンプル会話の特徴量のセットとの組合せを使用してトレーニングされ得る。特徴量のセットは、会話長が会話長のいずれかの極値にあるかどうかを示すバイナリ特徴量を含む、上述のものと同様であり得る。
【0030】
[0040]一実施形態では、異なるサンプル会話についてのMACSに対する各ボット状態の影響をさらに決定するために、異なるサンプル会話についての予測されたMACSと、アノテータ110によって決定されたこれらの異なるサンプル会話についてのアノテーション付きMACSとに基づくMACS予測モデルの評価が使用され得る。たとえば、予測されたMACSとアノテータ110によって決定されたアノテーション付きMACSとの間の差に基づいて、MACSに対するボット状態の相対的な影響が決定され得る。この決定された影響は、ボット状態予測モデルによって、またはアノテータ110によって決定される特定のボット状態の存在のボット状態信頼度スコアまたは他のインジケータに基づいて決定される、異なるボット状態の存在(または不在)に基づいて、所与の会話についてのMACSをより良く予測するようにMACS予測モデルをトレーニングするために使用され得る。
【0031】
[0041]得られたMACSは、会話の品質と、特定の会話に関する会話型ボットエージェント104のパフォーマンスとに対応し得る。たとえば、MACS「1」は、会話型ボットエージェント104がカスタマーの特定の問題に対処する際に役立たなかった悪い会話に対応し得る。代替的に、MACS「5」は、会話型ボットエージェント104が有用であった(たとえば、カスタマーの意図に関係する関連のアクションまたは情報を提供する)ことと、会話が問題なかったことを示し、肯定的なカスタマー体験をもたらし得る。可能なMACS値の範囲は、カスタマーとの特定の会話に関して会話型ボットエージェント104についての可能なパフォーマンスメトリックを示すためにカスタマーサービスコールセンター102によって決定され得ることに留意されたい。したがって、前述の「1~5」の範囲に加えて、またはその代替として、他のMACS範囲が使用され得る。
【0032】
[0042]一実施形態では、ボット状態予測モデルおよびMACS予測モデルが、会話型ボットエージェント104とカスタマーとの間の新しい会話を処理するようにトレーニングされると、カスタマーサービスコールセンター102は、アクティブな会話内のボット状態を検出し、リアルタイムで会話についてのMACSを計算するために、これらの予測モデルを実装することができる。たとえば、カスタマー112が、会話型ボットエージェント104とコンピューティングデバイス114との間の通信セッションを介して会話型ボットエージェント104との会話に関与するとき、ボット状態機械学習モデリングエンジン108は、会話型ボットエージェント104についての任意のボット状態を検出し、これらのボット状態に基づいて、会話についてのMACSを決定するために、カスタマー112と会話型ボットエージェント104との間のメッセージを処理し得る。より多くのボット状態が検出されるにつれて、ボット状態機械モデリングエンジン108は、会話型ボットエージェント104のパフォーマンスの悪化を表すために、(MACS予測モデルを介して)会話についてのMACSを減分し続け得る。会話型ボットエージェント104との会話が終了した(たとえば、会話がヒューマンエージェントに転送される、カスタマー112が通信セッションから切断したなど)場合、ボット状態機械学習モデリングエンジン108は、ボット状態予測モデルによって検出されたボット状態(もしあれば)に基づいて、会話についての最終的なMACSを計算し得る。
【0033】
[0043]一実施形態では、ボット状態機械学習モデリングエンジン108は、これらのボットビルダー116が会話型ボットエージェント104を更新することを可能にするために、各会話についてのMACSをボットビルダー116に提供する。会話についてのMACSは、カスタマーサービスコールセンター102によって提供され、ボットビルダー116によって利用されるコンピューティングデバイス118を介してアクセス可能なインターフェースまたはポータルを介して提供され得る。いくつかの事例では、ボット状態機械学習モデリングエンジン108は、会話型ボットエージェント104がボットビルダー116によって構成される会話についてのMACSに加えて、検出されたボット状態と、会話型ボットエージェント104を更新するためにボットビルダー116にとって有用であり得る他の洞察とを提供し得る。たとえば、あまり好ましくないボット状態の特定のセットに遭遇した結果として、特定のクラスの会話型ボットエージェント104についてのMACSが一貫してしきい値未満である(たとえば、会話型ボットエージェント104が不十分に実行している)場合、ボットビルダー116は、これらのあまり好ましくないボット状態が発生する可能性を低減し、これらの会話型ボットエージェント104についてのMACSを改善するために、会話型ボットエージェント104に対する更新を生成し得る。
【0034】
[0044]上述のように、ボット状態機械学習モデリングエンジン108は、ボット状態を検出し、特定の会話について、または特定の会話中の各メッセージについて、MACSをリアルタイムで計算することができる。一実施形態では、特定の会話は、ライブエージェント(たとえば、人間)によって監視され得、それによって、ライブエージェントは、会話についてのリアルタイムMACSおよび任意の検出されたボット状態に関する情報を供給され得る。会話についてのMACSがしきい値を下回るか、またはいくつかのボット状態(たとえば、特定の障害状態など)が検出された場合、ライブエージェントは、会話型ボットエージェント104からライブエージェントに会話を転送し得る。この転送は、いくつかの事例では、障害状態として働き得、会話についての最終的なMACSを計算するために使用され得る。会話についての最終的なMACSは、上記で説明されたようにボットビルダー116に提供され得る。
【0035】
[0045]
図2は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン202がボット状態およびMACSアノテーションを使用してボット状態予測モデル210およびMACS予測モデル222の並行トレーニングを実行する環境200の例示的な例を示す。環境200において、ボット状態機械学習モデリングエンジン202は、アノテーション付きデータ214を生成するために、会話型ボットエージェントとカスタマーまたは他のエンティティとの間のサンプル会話に基づいてアノテータによって生成されたアノテーション付きデータ214と、アノテータによって評価されたサンプル会話に対応する会話データとを使用して、ボット状態予測モデル210のトレーニング204を実行する。たとえば、アノテータは、サンプル会話に関与する会話型ボットエージェントの異なるボット状態を識別するために、これらのサンプル会話を評価し得る。さらに、これらのボット状態に基づいて、アノテータは、各サンプル会話についてのMACSを計算し得る。サンプル会話についての異なるボット状態および対応するMACSは、アノテーション付きデータ214として記憶され得る。アノテーション付きデータ214は、ボット状態アノテーションデータ216(たとえば、サンプル会話内で検出されたボット状態を示す、各アノテータによって生成されたデータ)と、ボット状態およびMACSアノテーションデータ218(たとえば、サンプル会話内で検出されたボット状態とサンプル会話についての対応するMACSとを示す、各アノテータによって生成されたデータ)とを含み得る。
【0036】
[0046]一実施形態では、ボット状態予測モデル210のトレーニング204を実行するために、ボット状態機械学習モデリングエンジン202は、ボット状態アノテーションデータ216を処理し、ボット状態がサンプル会話内に存在する尤度に対応する確率を決定するために、ソフトスコアしきい値処理エンジン212を使用する。上述のように、ボット状態機械学習モデリングエンジン202は、会話内の何らかのメッセージが特定の状態を有する確率を決定するために集合ストラテジを実装し得る。たとえば、ボット状態機械学習モデリングエンジン202は、ソフトスコアしきい値処理エンジン212を介して、会話内の各メッセージについて特定の状態が存在する確率を計算し得る。ソフトスコアしきい値処理エンジン212は、特定の状態が特定の会話にない確率を取得するために、特定の会話中の各メッセージについて取得された確率を乗算し得る。ソフトスコアしきい値処理エンジン212は、この確率を1から減算して、状態が特定の会話内に存在する確率を取得し得る。これらの確率は、ボット状態予測モデル210をトレーニングするために、ボット状態予測モデル210への入力として使用され得る。
【0037】
[0047]一実施形態では、ボット状態予測モデル210のトレーニング204は、特徴量抽出器208を使用してサンプル会話の特徴量を計算することをさらに含み得る。上述のように、ボット状態機械学習モデリングエンジン202は、会話データストア228から特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器208を利用し得る。会話長に対応するバイナリ特徴量は、サンプル会話においてボット状態が検出される確率と会話長との間の相関を提供し得る。したがって、このバイナリ特徴量は、ボット状態を検出し、特定の状態が所与の会話中に存在する尤度に対応する信頼度スコアをより正確に計算するように、ボット状態予測モデル210をさらにトレーニングするために使用され得る。
【0038】
[0048]特徴量抽出器208を使用して、様々な特徴量が抽出され得る。たとえば、特徴量抽出器208は、再プロンプト特徴量を計算することがあり、再プロンプト特徴量は、会話型ボットエージェントがカスタマーの意図を理解できなかった結果として、会話型ボットエージェントが前のメッセージを繰り返したときに計算され得る。特徴量抽出器208によって抽出され得る別の特徴量は、エスカレーションカウント特徴量を含み得、エスカレーションカウント特徴量は、カスタマーと会話型ボットエージェントとの間の会話中にカスタマー問題がエスカレートした回数に対応し得る。これらのエスカレーションは、会話型ボットエージェントによる不適切なルーティングがあったという信号として働き得る。別の例として、特徴量抽出器208は、予定外エスカレーション特徴量を計算することがあり、この予定外エスカレーション特徴量は、ヒューマンエージェントに転送されることになる、会話型ボットエージェントとの会話中の任意のカスタマー要求に対応し得る。これは、会話型ボットエージェントがカスタマーの問題に対処することができず、フラストレーションのあるカスタマー体験をもたらすことの表示として働き得る。特徴量抽出器208は、フォールバック特徴量の数をさらに計算することができ、フォールバック特徴量の数は、会話型ボットエージェントがメッセージを言い換えるようにカスタマーに求めた回数に対応し得る。これは、会話型ボットエージェントがカスタマーメッセージを理解する際に困難を体験しており、否定的なカスタマー体験をもたらすことの表示として働き得る。特徴量抽出器208によって計算され得る他の特徴量は、一意の意図検出特徴量(たとえば、会話型ボットエージェントが意図のうちの1つを誤解する確率に相関し得る、会話中の意図の数)、繰り返される意図特徴量(たとえば、意図が繰り返されている場合、それは、カスタマーが会話型ボットエージェントとのループ内で立ち往生していること、または、会話型ボットエージェントが意図を理解することができなかったこと、もしくは適切な応答を提供することができなかったことの表示として働くことができる)などを含み得る。
【0039】
[0049]ボット障害を示さない他の特徴量も、特徴量抽出器208を使用して抽出され得る。たとえば、カスタマーを識別するために使用され得る情報についてボットによってカスタマーに提供されるプロンプトに対応するカスタマー識別特徴量が計算され得る。別の例示的な例として、情報収集特徴量は、特定の問題または意図を解決するために使用され得る任意の新しい情報について、ボットによってカスタマーに提供されるプロンプトに基づいて計算され得る。特徴量抽出器208は、チェック理解特徴量をさらに計算することがあり、チェック理解特徴量は、カスタマーおよび/または対処されるべき問題に関連してボットがアクセスした情報を確認するためにボットによって提供されるプロンプトと、カスタマーによって提供される任意の応答とに対応し得る。たとえば、提供された情報が正しいかどうかを示すようにボットがカスタマーに促した場合、カスタマーは、「はい」、「実際にはいいえ」などの応答を提供し得る。ボットプロンプトとカスタマー応答とのこのペアリングは、チェック理解特徴量を計算するために、特徴量抽出器208によって使用され得る。特徴量抽出器208によって計算され得る特徴量の別の例は、支援提供特徴量を含み得る。支援提供特徴量は、ボットが有用な情報をカスタマーに提供すること、またはさもなければ、カスタマーの問題、意図、もしくは他のクエリに対処もしくは回答することに基づいて計算され得る。ボットによって提供された情報は、情報がカスタマーに関連するかどうか、および/または情報がカスタマーにとってすぐに使用可能であるかどうかを決定するために評価され得る。
【0040】
[0050]いくつかの事例では、カスタマーと会話型ボットエージェントとの間の会話が終わると、いくつかの特徴量が適用可能であり得る(たとえば、計算がリアルタイムでは実行されない)。たとえば、特徴量抽出器208は、会話型ボットエージェントとの会話が所定の時間期間内に終わった後にカスタマーサービスコールセンターに関連する特定のブランドにカスタマーが再び関与した回数に対応する繰返しコンタクト特徴量を計算し得る。この特徴量は、異なる障害モードが会話内に存在する表示として働き得る。別の例として、特徴量抽出器208は、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示す前述のバイナリ特徴量を計算し得る。
【0041】
[0051]ボット状態予測モデル210によって生成された出力(たとえば、信頼度スコア)は、ボット状態予測モデル210が正確な結果または正しい結果を生成しているかどうかを決定するために、アノテータまたはカスタマーサービスコールセンターに関連する他のエンティティによって評価され得る。いくつかの事例では、ボット状態予測モデル210によって生成された信頼度スコアは、ボット状態予測モデル210が正確な結果を生成しているかどうかを決定するために、対応するボット状態が特定の会話内に存在する確率と比較され得る。たとえば、特定の会話についての各可能なボット状態に関する信頼度スコアを計算するために使用されるボット状態予測モデル210は、ボット状態アノテーションデータ216からの特定の会話のアノテータ評価に対応するボット状態確率に基づいて、ボット状態予測モデル210が特定の会話中に存在し得る任意のボット状態を正しく識別しているかどうかを決定するために評価され得る。この評価に基づいて、ボット状態予測モデル210は、ボット状態予測モデル210が所望の結果を生成する尤度を高めるように修正され得る。
【0042】
[0052]ボット状態予測モデル210のトレーニング204と並行して、ボット状態機械学習モデルエンジン202は、各サンプル会話についてのMACSの計算についてMACS予測モデル222のトレーニング206を実行し得る。たとえば、
図2に示されているように、ボット状態機械学習モデリングエンジン202は、アノテータによって生成されたボット状態およびMACSアノテーションデータ218から各サンプル会話についてのMACSを取得するために、アノテーション付きスコア抽出器226を使用し得る。各サンプル会話についてのMACSは、アノテータによって検出されたボット状態とともに、ボット状態ソフトスコアしきい値処理エンジン224に提供され得、ボット状態ソフトスコアしきい値処理エンジン224は、ボット状態とMACSとの間の任意の相関を識別するために、各サンプル会話についてのMACSと、サンプル会話において検出された対応するボット状態とを処理し得る。これらの相関、ならびにアノテータによって提供されるアノテーション付きMACSおよび検出されたボット状態は、MACS予測モデル222のトレーニングのためのMACS予測モデル222への入力として使用され得る。
【0043】
[0053]一実施形態では、MACS予測モデル222のトレーニング206は、特定のサンプル会話についての会話長とMACSとの間の任意の相関を識別するために各サンプル会話長を使用することをさらに含み得る。たとえば、MACS予測モデル222は、会話の会話長に従って、会話についてのMACSに対する異なるボット状態の影響を決定するために、入力として特定の会話についての会話長を使用するようにトレーニングされ得る。たとえば、ボット状態の影響は、会話長が増加するにつれて変化し得る。したがって、ボット状態機械学習モデリングエンジン202は、会話データストア228から各サンプル会話についての会話長を取得するために、会話長抽出器220を利用し、MACS予測モデル222をトレーニングするために、サンプル会話についてのアノテーション付きMACSおよび検出されたボット状態に加えて、この会話長をMACS予測モデル222への入力として利用し得る。
【0044】
[0054]MACS予測モデル222の出力は、各サンプル会話についてのMACSを含み得る。得られたMACSは、アノテーション付きデータ214から取得される、サンプル会話のアノテータ評価に対応するボット状態確率とサンプル会話についてのMACSアノテーションとに基づいて、MACS予測モデル222が特定の会話についてのMACSを正しく計算しているかどうかを決定するために評価され得る。この評価に基づいて、MACS予測モデル222は、MACS予測モデル222が所望の結果を生成する尤度を増加させるように修正され得る。
【0045】
[0055]
図3は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン302がボット状態およびMACSアノテーションと特徴量を使用してボット状態予測モデル310およびMACS予測モデル322の並行トレーニングを実行する環境300の例示的な例を示す。環境300は、
図2に示された上述の環境200と同様であり得る。たとえば、ボット状態予測モデル310のトレーニング304は、会話型ボットエージェントとカスタマーまたは他のエンティティとの間のサンプル会話に基づいてアノテータによって生成されたアノテーション付きデータ314と、アノテーション付きデータ314を生成するためにアノテータによって評価されたサンプル会話に対応する会話データとを使用して実行され得る。アノテーション付きデータ214は、上記で説明されたように、ボット状態アノテーションデータ316(たとえば、サンプル会話内で検出されたボット状態を示す、各アノテータによって生成されたデータ)と、ボット状態およびMACSアノテーションデータ318(たとえば、サンプル会話内で検出されたボット状態とサンプル会話についての対応するMACSとを示す、各アノテータによって生成されたデータ)とを含み得る。
【0046】
[0056]上述のように、ボット状態予測モデル310のトレーニング304は、特徴量抽出器308を使用してサンプル会話の特徴量を計算することをさらに含み得る。特徴量抽出器308は、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定し得る。会話長に対応するバイナリ特徴量は、サンプル会話においてボット状態が検出される確率と会話長との間の相関を識別するために使用され得る。ボット状態予測モデル310によって生成された出力(たとえば、信頼度スコア)は、ボット状態予測モデル310が正確な結果または正しい結果を生成しているかどうかを決定するために、アノテータまたはカスタマーサービスコールセンターに関連する他のエンティティによって評価され得る。たとえば、特定の会話についての各可能なボット状態に関する信頼度スコアを計算するために使用されるボット状態予測モデル310は、ボット状態アノテーションデータ316からの特定の会話のアノテータ評価に対応するボット状態確率に基づいて、ボット状態予測モデル310が特定の会話中に存在し得る任意のボット状態を正しく識別しているかどうかを決定するために評価され得る。この評価に基づいて、ボット状態予測モデル310が修正され得る。
【0047】
[0057]一実施形態では、
図2に関して上記で説明されたように、会話データストア328から各サンプル会話長を決定するために会話長抽出器に依拠するのではなく、MACS予測モデル322のトレーニング306は、会話データストア328に記憶されたサンプル会話から特徴量抽出器308によって抽出された特徴量を使用して実行され得る。たとえば、ボット状態機械学習モデリングエンジン302は、特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器308を利用し得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいて(ボット状態およびMACSアノテーションデータ318において提供される)アノテータによって決定されたMACSスコアと、MACS予測モデル322によって予測されたMACSスコアとの間の相関を高め得る。したがって、MACS予測モデル322のトレーニングを改善するために、このバイナリ特徴量が使用され得る。
【0048】
[0058]MACS予測モデル222について
図2に関して上記で説明されたトレーニング206と同様に、MACS予測モデル322のトレーニング306は、アノテーション付きスコア抽出器326とボット状態ソフトスコアしきい値処理エンジン324とを使用して実行され得る。たとえば、ボット状態機械学習モデリングエンジン302は、アノテータによって生成されたボット状態およびMACSアノテーションデータ318から各サンプル会話についてのMACSを取得するために、アノテーション付きスコア抽出器326を使用し得る。各サンプル会話についてのMACSは、アノテータによって検出されたボット状態とともに、ボット状態ソフトスコアしきい値処理エンジン324に提供され得、ボット状態ソフトスコアしきい値処理エンジン324は、ボット状態とMACSとの間の任意の相関を識別するために、各サンプル会話についてのMACSと、サンプル会話において検出された対応するボット状態とを処理し得る。これらの相関、ならびにアノテータによって提供されるアノテーション付きMACSおよび検出されたボット状態は、MACS予測モデル322のトレーニングのためのMACS予測モデル322への入力として使用され得る。
【0049】
[0059]
図4は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン402が、ボット状態予測モデル410によって生成された予測を使用してMACS予測モデル422のトレーニングを実行する、環境400の例示的な例を示す。環境400において、ボット状態予測モデル410のトレーニング404は、
図2および
図3に関して上記で説明されたものと同様のプロセスに従って実行される。たとえば、ボット状態予測モデル410は、ボット状態がサンプル会話内に存在する尤度に対応する確率を決定するために、アノテーション付きデータ414からのボット状態アノテーションデータ416を処理し得る、ソフトスコアしきい値処理エンジン412を使用してトレーニングされ得る。ソフトスコアしきい値処理エンジン412は、会話内の各メッセージについてボット状態が存在する確率と、特定の会話内にボット状態が存在する確率とを計算し得る。これらの確率は、ボット状態予測モデル410をトレーニングするために、ボット状態予測モデル410への入力として使用され得る。
【0050】
[0060]ボット状態予測モデル410のトレーニング404は、特徴量抽出器408を使用してサンプル会話の特徴量を計算することをさらに含み得る。上述のように、特徴量抽出器408は、会話データストア428から特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために使用され得る。会話長に対応するバイナリ特徴量は、サンプル会話においてボット状態が検出される確率と会話長との間の相関を提供し得る。したがって、このバイナリ特徴量は、ボット状態を検出し、ボット状態が所与の会話中に存在する尤度に対応する信頼度スコアをより正確に計算するように、ボット状態予測モデル410をさらにトレーニングするために使用され得る。
【0051】
[0061]ボット状態予測モデル410の出力は、ボット状態予測モデル410が正確な結果(たとえば、所与の会話に関する異なるボット状態についての信頼度スコア)を生成しているかどうかを決定するために評価され得る。上記で説明されたトレーニング204および304と同様に、特定の会話についての各可能なボット状態に関する信頼度スコアを計算するために使用されるボット状態予測モデル410は、ボット状態アノテーションデータ416からの特定の会話のアノテータ評価に対応するボット状態確率に基づいて、ボット状態予測モデル410が特定の会話中に存在し得る任意のボット状態を正しく識別しているかどうかを決定するために評価され得る。この評価に基づいて、ボット状態予測モデル410は、ボット状態予測モデル410が所望の結果を生成する尤度を高めるように修正され得る。
【0052】
[0062]一実施形態では、ボット状態予測モデル410の出力は、MACS予測モデル422のトレーニング406を実行するためにさらに使用される。たとえば、ボット状態予測モデル410によって生成される得られた信頼度スコアは、各サンプル会話についてのMACSを生成するために、MACS予測モデル422への入力として使用され得る。これは、ボット状態予測モデル410のトレーニング404と並行して信頼度スコアを計算するために、
図2および
図3に関して上記で説明されたボット状態ソフトスコアしきい値処理エンジンを利用する必要性をなくし得る。したがって、信頼度スコアを生成するためにボット状態ソフトスコアしきい値処理エンジンによって使用されるアノテーション付きスコア抽出器426の出力を有するのではなく、アノテーション付きスコア抽出器426の出力は、MACS予測モデル422のトレーニングのためにMACS予測モデル422に直接提供され得る。
【0053】
[0063]上述のように、ボット状態機械学習モデリングエンジン402は、アノテータによって生成されたボット状態およびMACSアノテーションデータ418から各サンプル会話についてのMACSを取得するために、アノテーション付きスコア抽出器426を使用し得る。各サンプル会話についてのMACSは、アノテータによって検出されたボット状態とともに、MACS予測モデル422に提供されることがあり、MACS予測モデル422のパフォーマンスを評価するために使用され得る。たとえば、MACS予測モデル422によって生成される予測されたMACSは、MACS予測モデル422が正確な結果を生成しているかどうかを決定するために、アノテータによって決定されボット状態およびMACSアノテーションデータ418から抽出されたアノテーション付きMACSと比較され得る。この評価に基づいて、MACS予測モデル422は、MACS予測モデル422がサンプル会話についての所望のMACSを生成する尤度を増加させるように修正され得る。
【0054】
[0064]
図2に関して上記で説明されたトレーニング206と同様に、トレーニング406はまた、MACS予測モデル422を使用してMACSが決定されることになる各サンプル会話についての会話長を取得するために、会話長抽出器420に依拠し得る。上述のように、MACS予測モデル422のトレーニング406は、特定のサンプル会話についての会話長とMACSとの間の任意の相関を識別するために各サンプル会話長を使用することをさらに含み得る。たとえば、MACS予測モデル422は、会話の会話長に従って、会話についてのMACSに対する異なるボット状態の影響を決定するために、入力として特定の会話についての会話長を使用するようにトレーニングされ得る。したがって、ボット状態機械学習モデリングエンジン402は、会話データストア428から各サンプル会話についての会話長を取得するために、会話長抽出器420を利用し、MACS予測モデル422をトレーニングするために、サンプル会話についてのアノテーション付きMACSおよびボット状態信頼度スコアに加えて、この会話長をMACS予測モデル422への入力として利用し得る。
【0055】
[0065]
図5は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン502が、ボット状態予測モデル510によって生成された予測と特徴量とを使用してMACS予測モデル522のトレーニング506を実行する、環境500の例示的な例を示す。環境500において、ボット状態予測モデル510のトレーニング504は、
図2~
図4に関して上記で説明されたものと同様のプロセスに従って実行される。たとえば、ボット状態予測モデル510は、ボット状態がサンプル会話内に存在する尤度に対応する確率を決定するために、アノテーション付きデータ514からのボット状態アノテーションデータ516を処理し得る、ソフトスコアしきい値処理エンジン512を使用してトレーニングされ得る。ソフトスコアしきい値処理エンジン512は、会話内の各メッセージについてボット状態が存在する確率と、特定の会話内にボット状態が存在する確率とを計算し得る。これらの確率は、ボット状態予測モデル510をトレーニングするために、ボット状態予測モデル510への入力として使用され得る。
【0056】
[0066]
図3に関して上記で説明されたMACS予測モデル322のトレーニング306と同様に、MACS予測モデル522のトレーニング506は、会話データストア528に記憶されたサンプル会話から特徴量抽出器508によって抽出された特徴量を使用して実行され得る。たとえば、ボット状態機械学習モデリングエンジン502は、特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器508を利用し得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいて(ボット状態およびMACSアノテーションデータ518において提供される)アノテータによって決定されたMACSと、MACS予測モデル522によって予測されたMACSとの間の相関を高め得る。したがって、MACS予測モデル522のトレーニングを改善するために、このバイナリ特徴量が使用され得る。
【0057】
[0067]さらに、
図4に関して上記で説明されたトレーニング406と同様に、ボット状態予測モデル510の出力は、MACS予測モデル522のトレーニング506を実行するために使用され得る。ボット状態予測モデル510によって生成される得られた信頼度スコアは、各サンプル会話についてのMACSを生成するためMACS予測モデル522への入力として使用され得る。さらに、ボット状態機械学習モデリングエンジン502は、ボット状態およびMACSアノテーションデータ518から各サンプル会話についてのMACSを取得し、これらのMACSをMACS予測モデル522に提供するために、アノテーション付きスコア抽出器526を使用し得る。これらのMACSは、MACS予測モデル522のパフォーマンスを評価し、この評価に基づいて、MACS予測モデル522がサンプル会話についての所望のMACSを生成する尤度を高めるようにMACS予測モデル502を修正するために使用され得る。
【0058】
[0068]
図6は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン602が、ボット状態およびMACSアノテーションと特徴量とを使用して、ジョイントボット状態およびMACS予測モデル630のトレーニングを実行する、環境600の例示的な例を示す。環境600において、ボット状態機械学習モデリングエンジン602は、会話内のボット状態を識別することと、(会話が終わった後に、またはリアルタイムで)カスタマーとの会話に関与する会話型ボットエージェントについてのMACSを提供することとの両方のために使用され得るジョイントボット状態およびMACS予測モデル630をトレーニングする。したがって、
図2~
図5に示されているように、別個のボット状態およびMACS予測モデルのための並行トレーニングプロセスを実行するのではなく、ジョイントボット状態およびMACS予測モデル630は、本明細書で説明される単一のプロセスを通してトレーニングされ得る。
【0059】
[0069]ボット状態およびMACS予測モデル630のトレーニングは、
図2~
図5に関して上記で説明されたものと同様の特徴量を組み込み得る。たとえば、ボット状態およびMACS予測モデル630は、ボット状態がサンプル会話内に存在する尤度に対応する確率を決定するために、MACSアノテーション付きデータ614からのボット状態およびMACSアノテーションデータ618を処理し得る、ソフトスコアしきい値処理エンジン612を使用してトレーニングされ得る。ソフトスコアしきい値処理エンジン612は、会話内の各メッセージについてボット状態が存在する確率と、特定の会話内にボット状態が存在する確率とを計算し得る。これらの確率は、カスタマーとの会話中の会話型ボットエージェントのボット状態を予測するように、ボット状態およびMACS予測モデル630をトレーニングするために、ボット状態およびMACS予測モデル630への入力として使用され得る。
【0060】
[0070]ボット状態およびMACS予測モデル630のトレーニングのための入力を生成するために、アノテーション付きデータ614からのボット状態およびMACSアノテーションデータ618を処理することに加えて、ボット状態機械学習モデリングエンジン602は、ボット状態およびMACS予測モデル630をさらにトレーニングするために使用され得る会話データストア628に記憶された会話データから特徴量のセットを計算するために、特徴量抽出器608を利用し得る。上述のように、特徴量抽出器608は、会話データストア628から特定の会話の属性を抽出し、サンプル会話においてボット状態が検出される確率と会話の属性との間の相関を提供し得る特徴量を決定するために使用され得る。したがって、これらの特徴量は、ボット状態を検出し、ボット状態が所与の会話中に存在する尤度に対応する信頼度スコアをより正確に計算するように、ボット状態およびMACS予測モデル630をさらにトレーニングするために使用され得る。
【0061】
[0071]加えて、特徴量は、特定の会話についての会話型ボットエージェントについてのMACSを予測するように、ボット状態およびMACS予測モデル630をトレーニングするために使用され得る。たとえば、ボット状態およびMACS予測モデル630は、会話についてのMACSを予測するために、特徴量抽出器508によって計算された特徴量と、ボット状態およびMACS予測モデル630によって生成されたボット状態信頼度スコアとを利用し得る。特徴量は、会話の手動評価に基づいて(ボット状態およびMACSアノテーションデータ618において提供される)アノテータによって決定されたMACSと、ボット状態およびMACS予測モデル630によって予測されたMACSとの間の相関を高め得る。したがって、これらの特徴量は、ボット状態およびMACS予測モデル630のトレーニングを改善するために使用され得る。
【0062】
[0072]
図7は、少なくとも1つの実施形態による、MACS予測モデル710が、1つまたは複数のボットエージェント714についての会話データと識別されたボット状態とに基づいて、1つまたは複数のボットエージェント714についてのMACSを提供する、環境700の例示的な例を示す。環境700において、会話型ボットエージェント714とカスタマーサービスコールセンターのカスタマーおよび他のユーザとの間の会話は、会話データストア712に記録され得る。会話データストア712内に記憶された会話は、会話型ボットエージェント714とカスタマーまたは他のエンティティのコンピューティングデバイスとの間に確立された通信セッションを介して、特定の会話型ボットエージェント714とカスタマーまたは他のエンティティとの間で通信される任意のメッセージを含み得る。たとえば、カスタマーまたは他のユーザは、問題の解決に関する会話型ボットエージェント714との会話を開始するために、コンピューティングデバイスを使用し得る。会話型ボットエージェント714は、カスタマーまたは他のユーザの意図と、意図に対処するために使用され得る重要なユーザ情報(たとえば、注文番号、アカウント番号など)とを自動的に識別し得る。上述のように、会話型ボットエージェント714は、カスタマーおよび他のユーザと自律的に通信するように、ならびに特定の能力のために構成され得る。
【0063】
[0073]一実施形態では、通信セッションを介した会話型ボットエージェント714とカスタマーまたは他のユーザとの間の特定の会話についての会話データが、ボット状態機械学習モデリングエンジン702の特徴量抽出器704への入力として使用される。たとえば、会話データストア712からの会話データは、会話型ボットエージェント714とカスタマーまたは他のユーザとの間の会話に対応する特徴量のセットを計算するために、特徴量抽出器704に自動的にストリーミングされ得る。上述のように、ボット状態機械学習モデリングエンジン702は、特定の会話の会話長を計算し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器704を利用し得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいてアノテータによって決定された会話についてのMACSと、MACS予測モデル710のトレーニング中にMACS予測モデル710によって予測されたMACSとの間の相関を高め得る。いくつかの実装形態では、特徴量抽出器704はまた、会話内で検出され得る異なる可能なボット状態についての信頼度スコアをより正確に計算するためにボット状態予測モデル706によって使用され得る特徴量を抽出するために使用され得る。
【0064】
[0074]一実施形態では、特徴量抽出器704によって計算された特徴量ならびに特定の計算に対応する会話データは、会話内に存在し得る異なるボット状態についての信頼度スコアを生成するために、ボット状態予測モデル706への入力として使用され得る。信頼度スコアは、特定のボット状態が会話内に存在する確率に対応し得る。いくつかの事例では、ボット状態予測モデル706は、特定のボット状態についての信頼度スコアがしきい値を上回る場合、その特定のボット状態が会話内に存在するものとして示されるように、信頼度スコアにしきい値を適用する。代替的に、特定のボット状態についての信頼度スコアがしきい値以下である場合、特定のボット状態は、会話にないものとして示される。したがって、ボット状態予測モデル706は、会話内のボット状態の可能な存在に対応する信頼度スコア、またはこれらのボット状態の存在に対応するバイナリ表示のいずれかをMACS予測モデル710に提供し得る。
【0065】
[0075]一実施形態では、ボット状態機械学習モデリングエンジン702は、会話内のボット状態の可能な存在に対応する信頼度スコア、またはこれらのボット状態の存在に対応するバイナリ表示を、MACS予測モデル710を通してこれらのスコアまたはバイナリ表示を処理することなく、ボットビルダー718に提供することができる。たとえば、ボット状態機械学習モデリングエンジン702は、カスタマーサービスコールセンターによって提供されボットビルダー718によって利用されるコンピューティングデバイス716を介してアクセス可能なインターフェースまたはポータルを介して、ボットビルダー718によって実装される会話型ボットエージェント714が関与する会話内の異なるボット状態の存在に対応する信頼度スコアまたはバイナリ表示を提供し得る。信頼度スコアまたはバイナリ表示に基づいて、ボットビルダー718は、会話型ボットエージェント714のパフォーマンスを潜在的に改善する(たとえば、特定のボット状態が存在する尤度を低減するなど)ために、会話型ボットエージェント714の構成を更新し得る。たとえば、会話型ボットエージェント714の特定のクラスについて特定のボット状態が存在し(たとえば、しきい値を上回る信頼度スコアを有する、バイナリ表示を通して提示されているものとして示されるなど)、特定のボット状態が望ましくない(たとえば、ボットが古い情報を求める、ボットがカスタマーを誤解する、ボットがカスタマーを支援することができない、ボットが会話をライブエージェントに転送することができないなど)場合、ボットビルダー718は、これらの会話型ボットエージェント714についてこれらのボット状態が発生する尤度を低減するために、会話型ボットエージェント714に対する更新を生成し得る。
【0066】
[0076]一実施形態では、特定の会話についての信頼度スコアまたはバイナリボット状態表示をボットビルダー718に提供することに加えて、MACS予測モデル710は、会話についてのMACSを生成するために、ボット状態予測モデル706の出力(たとえば、信頼度スコアまたはバイナリボット状態表示)と、会話長に対応するメトリックとを処理することができる。いくつかの事例では、MACS予測モデル710が、会話についてのMACSを計算するために特徴量をさらに利用するように構成される場合、MACS予測モデル710は、特徴量抽出器704またはボット状態予測モデル706から、これらの特徴量をさらに取得し得る。これらの特徴量は、会話長、会話型ボットエージェント714による前のメッセージ反復のインスタンス、会話が終わった後にカスタマーがブランドに再び関与した回数、カスタマーの問題がエスカレートした回数、ヒューマンエージェントに会話を転送するカスタマー要求の数などの、会話の異なる特性に対応し得る。
【0067】
[0077]MACS予測モデル710の出力は、特定の会話についての全体的なMACSと、会話内の各メッセージについてのMACSとを含み得る。上述のように、MACSは、会話の品質と、特定の会話に関する会話型ボットエージェント714のパフォーマンスとに対応し得る。たとえば、MACS「1」は、会話型ボットエージェント714がカスタマーの特定の問題に対処する際に役立たなかった悪い会話に対応し得る。代替的に、MACS「5」は、会話型ボットエージェント714が有用であった(たとえば、カスタマーの意図に関係する関連のアクションまたは情報を提供する)ことと、会話が問題なかったことを示し、肯定的なカスタマー体験をもたらし得る。可能なMACS値の範囲は、カスタマーとの特定の会話に関して会話型ボットエージェント714についての可能なパフォーマンスメトリックを示すためにカスタマーサービスコールセンターによって決定され得ることに留意されたい。したがって、前述の「1~5」の範囲に加えて、またはその代替として、他のMACS範囲が使用され得る。
【0068】
[0078]一実施形態では、特定の会話および対応するメッセージについてのMACS、ならびに任意の識別されたボット状態および対応する信頼度スコア/バイナリ表示は、会話型ボットエージェント714のパフォーマンスの表示を提供するために、ボットビルダー718に提供され得る。たとえば、ボット状態機械学習モデリングエンジン702は、カスタマーサービスコールセンターによって提供されボットビルダー718によって利用されるコンピューティングデバイス716を介してアクセス可能なインターフェースまたはポータルを介して、ボットビルダー718によって実装される会話型ボットエージェント714が関与する異なる会話についてのMACSおよびボット状態を(対応する信頼度スコアおよび/またはバイナリ表示とともに)提供し得る。得られたMACS、識別されたボット状態、ならびにこれらの識別されたボット状態についての対応する信頼度スコアおよび/またはバイナリ表示に基づいて、ボットビルダー718は、会話型ボットエージェント714のパフォーマンス(たとえば、MACS、好ましくないボット状態の尤度の低減など)を潜在的に改善するために、会話型ボットエージェント714の構成を更新し得る。たとえば、ボット状態の特定のセットに遭遇した結果として、特定のクラスの会話型ボットエージェント714についてのMACSが一貫してしきい値未満である(たとえば、会話型ボットエージェント714が不十分に実行している)場合、ボットビルダー718は、これらのボット状態が発生する可能性を低減し、これらの会話型ボットエージェント714についてのMACSを改善するために、会話型ボットエージェント714に対する更新を生成し得る。
【0069】
[0079]一実施形態では、会話からの新しいメッセージがボット状態予測モデル706およびMACS予測モデル710によって処理されるとき、特定の会話についてのMACS、ならびに異なるボット状態についての信頼度スコアおよび/またはバイナリ表示は、リアルタイムで動的に更新され得る。たとえば、完了または終了した会話に対応する会話データストア712からの会話データを処理するのではなく、ボット状態機械学習モデリングエンジン702は、進行中の会話を処理し得る。例示的な例として、ボット状態機械学習モデリングエンジン702は、進行中の会話に追加された任意の新しいメッセージを検出するために、会話データストア712からの進行中の会話を監視し得る。ボット状態機械学習モデリングエンジン702が進行中の会話内の1つまたは複数の新しいメッセージを検出した場合、ボット状態機械学習モデリングエンジン702は、進行中の会話についての任意の新しいボット状態(もしあれば)および新しいMACSを識別するために、ボット状態予測モデル706およびMACS予測モデル710を使用して、1つまたは複数の新しいメッセージを含む進行中の会話を処理し得る。新しいボット状態および更新されたMACSスコアは、ボットビルダー718がオンザフライで会話型ボットエージェント714に対して修正を行うかまたは更新を実施することを可能にするために、リアルタイムでボットビルダー718に提供され得、それによって、会話中の会話型ボットエージェント714の強化を可能にする。
【0070】
[0080]一実施形態では、会話型ボットエージェント714がカスタマーまたは他のユーザに関与した会話についての提供されたボット状態およびMACSに関するボットビルダー718からのフィードバックは、ボット状態予測モデル706およびMACS予測モデル710をさらにトレーニングするために使用され得る。たとえば、ボットビルダー718は、示されたボット状態およびMACSが正確であるかどうかを決定するために、特定の会話と、その会話について示されたボット状態およびMACSとを評価し得る。たとえば、ボットビルダー718が、ボット状態が会話内で誤って識別されたと決定した場合、ボットビルダー718は、ボット状態が会話についてボット状態予測モデル706によって誤って識別されたという表示をボット状態機械学習モデリングエンジン702に提供し得る。それに応じて、ボット状態機械学習モデリングエンジン702は、それぞれ異なる会話についてボット状態を識別し、MACSを計算する際にこれらのモデルの精度を改善するように、ボット状態予測モデル706およびMACS予測モデル710をさらにトレーニングするために、このフィードバックを使用し得る。
【0071】
[0081]
図8は、少なくとも1つの実施形態による、ボット状態機械学習モデリングエンジン802が、会話型ボットエージェント814についてのボット状態およびMACSを動的に決定するために、アクティブな通信セッション804のメッセージ806-1~806-Nのリアルタイム分析を実行する、環境800の例示的な例を示す。環境800において、カスタマー808は、コンピューティングデバイス810を介して、カスタマーサービスコールセンターの会話型ボットエージェント814との通信セッションに関与し得る。通信セッション804を通して、カスタマー808および会話型ボットエージェント814は、経時的に様々なメッセージ806-1~806-Nを交換し得る。
【0072】
[0082]一実施形態では、カスタマーと自律的に通信するために会話型ボットエージェント814および他の会話型ボットエージェントを実装するカスタマーサービスコールセンターは、通信セッション804のための任意の新たに受信されたメッセージをバスまたはキャッシュ中に追加する。カスタマーサービスコールセンターは、通信セッション804に対応する任意の新しいメッセージについてバスまたはキャッシュを監視するように構成された1つまたは複数のサービスを実装することがあり、処理するためにこれらの新しいメッセージを取得する。
図8に示されるように、メッセージ806-1および806-2は、上記で説明されたように、新たに受信され、特徴量抽出のためにこれらの1つまたは複数のサービスによって取り出される。これらのメッセージ806-1および806-2、ならびに抽出された特徴量は、処理するためにボット状態機械学習モデリングエンジン802に提供される。上述のように、ボット状態機械学習モデリングエンジン802は、
図6に示されているように、別個のモデルの使用を介して、またはジョイントボット状態およびMACS予測モデルの使用を通して共同で、所与の会話についてのボット状態およびMACSを予測するように構成され得る。
【0073】
[0083]一実施形態では、新たに受信されたメッセージ806-1および806-2ならびにこれらのメッセージ806-1および806-2から抽出された特徴量を使用することに加えて、ボット状態機械学習モデリングエンジン802は、通信セッション804に対応する会話データを会話データストア812から取得する。この会話データは、新たに受信されたメッセージ806-1および806-2をそれらの適切なコンテキストにおいて評価するためにボット状態機械学習モデリングエンジン802によって使用され得る通信セッション804に関するコンテキストを含み得る。たとえば、ボット状態機械学習モデリングエンジン802は、通信セッション804の期間にわたってカスタマー808と会話型ボットエージェント814との間で以前に交換された任意のメッセージを、会話データストア812から取り出すことがある。代替的に、ボット状態機械学習モデリングエンジン802は、通信セッション804のコンテキストを決定するために使用され得る通信セッション804の属性を指定し得る、通信セッション804についてのメタデータを取得し得る。たとえば、メタデータは、通信セッション804についてのタイトルまたはラベル(たとえば、「カスタマー課金問題」、「カスタマーの払戻し要求」など)と、会話型ボットエージェント814の現在のパフォーマンスに対応する任意のデータとを指定し得る。この追加のデータは、以前に交換されたメッセージに基づいて通信セッション804についての任意の以前に決定されたボット状態および/またはMACSを含み得る。
【0074】
[0084]ボット状態機械学習モデリングエンジン802は、ボット状態およびMACS予測モデルを使用して、新たに受信されたメッセージ806-1および806-2と、これらのメッセージから抽出された特徴量および会話データストア812からの通信セッション804のコンテキストとを処理し得る。上述のように、ボット状態およびMACS予測モデルは、会話から1つまたは複数のボット状態を検出し、検出された1つまたは複数のボット状態に基づいて、会話についてのMACSを計算するようにトレーニングされる。ボット状態およびMACS予測モデルは、サンプル会話から特徴量抽出器によって抽出された特徴量を使用してトレーニングされ得る。たとえば、ボット状態機械学習モデリングエンジン802は、特定の会話の特徴量を抽出するために、特徴量抽出器を利用し得る。これらの特徴量は、会話の手動評価に基づいてアノテータによって決定されたMACS(ボット状態およびアノテータによって提供されるMACSアノテーションデータにおいて提供される)と、ボット状態およびMACS予測モデルによって予測されたMACSとの間の相関を高め得る。さらに、ボット状態およびMACS予測モデルは、ソフトスコアしきい値処理エンジンを使用してトレーニングされ得、ソフトスコアしきい値処理エンジンは、ボット状態がサンプル会話内に存在する尤度に対応する確率を決定するために、サンプル会話についてのボット状態およびMACSアノテーションデータを処理し得る。ソフトスコアしきい値処理エンジンは、会話内の各メッセージについてボット状態が存在する確率と、特定の会話内にボット状態が存在する確率とを計算し得る。これらの確率は、ボット状態およびMACS予測モデルをトレーニングするために、モデルへの入力として使用され得る。
【0075】
[0085]一実施形態では、ボット状態機械学習モデリングエンジン802は、処理されたメッセージ806-1および806-2と、通信セッション804の以前に処理された任意のメッセージおよび通信セッション804についての決定されたボット状態およびMACSとをボット状態およびMACSデータストア816に記憶する。このデータストア816は、メッセージバスとして実装されることがあり、それによって、メッセージバスへの加入者(たとえば、ボットビルダーなど)は、会話型ボットエージェント814のパフォーマンスをリアルタイムで評価し得る。たとえば、新たに受信されたメッセージ806-1および806-2が、任意の新たなボット状態を識別し、通信セッション804についてのMACSを更新するために処理されるとき、ボット状態およびMACSデータストア816への加入者は、通信セッション804についての更新されたボット状態およびMACSをリアルタイムで提示され得る。このデータはまた、新しいメッセージ(たとえば、メッセージ806-1および806-2の後に受信されたメッセージ806-3~806-Nなど)を処理するときに通信セッション804に追加のコンテキストを提供するために、会話データストア812に記憶され得る。したがって、通信セッション804の間に新しいメッセージが交換されるとき、ボット状態機械学習モデリングエンジン802は、通信セッション804についてのMACSを動的に更新し、任意の新しいボット状態をリアルタイムで識別し得る。たとえば、新しいメッセージ(たとえば、メッセージ806-3~806-Nなど)が受信されるとき、ボット状態機械学習モデリング802は、これらの新しいメッセージを動的に、およびリアルタイムで処理し得る。ボット状態機械学習モデリングエンジン802は、会話データストア812から、通信セッション804について以前に計算されたMACSおよび以前に識別されたボット状態を取り出し得る。いくつかの事例では、通信セッション804についての以前に計算されたMACSおよび以前に識別されたボット状態は、新しいメッセージが通信セッション804を介して交換されるとき、ボット状態機械学習モデリングエンジン802が、これらの新しいメッセージをリアルタイムで取得し、通信セッション804についてのボット状態およびMACSの予備的識別を実行するためにこれらの新しいメッセージを処理し得るように、メモリ内に保持され得る。ボット状態機械学習モデリングエンジン802は、通信セッション804についてのMACSを動的に更新し、任意の新しいボット状態を識別するために、以前に取得されたボット状態およびMACSとともに、ボット状態およびMACSのこの予備的識別を使用し得る。
【0076】
[0086]
図9は、少なくとも1つの実施形態による、以前に分析されたボット会話に対応するボット状態についての会話データおよび計算された確率を使用してボット状態予測モデルをトレーニングするためのプロセス900の例示的な例を示す。プロセス900は、上述のボット状態機械学習モデリングエンジンによって実行され得る。たとえば、ボット状態機械学習モデリングエンジンは、ボット状態予測モデルをトレーニングするために、サンプル会話とこれらのサンプル会話に対して作成されたアノテーションとを処理するように、特徴量抽出器と、ソフトスコアしきい値処理エンジンとを利用し得る。
【0077】
[0087]ステップ902おいて、ボット状態機械学習モデリングエンジンは、ボット状態予測モデルのトレーニングのために、会話型ボットエージェントによって実行された以前に分析された会話(たとえば、会話型ボットエージェントが通信セッションを介してカスタマーまたは他のエンティティと関与した会話)を識別し得る。たとえば、ボット状態機械学習モデリングエンジンは、ボット状態予測モデルおよびMACS予測モデルのトレーニングのためのアノテータのセットによってアノテーションが付けられたサンプル会話のセットを識別し得る。上述のように、特定の会話中に発生する任意のボット状態を識別するために、特定の会話が、アノテータのセットに提供され得る。これらのボット状態は、ボットがカスタマーのメッセージ(たとえば、意図、問題など)を理解できないこと、ボットがカスタマーを無視すること、ボットがメッセージループ内で立ち往生していること、ボットによるカスタマーのフラストレーションの検出、ボットによるヒューマンエージェントへの誤った転送、ボットが意図を解決するために情報収集を実行すること、ボットがカスタマーに支援をうまく提供すること、ボットがライブエージェントまたは意図を処理することがより可能な他のボットに会話を転送すること、ボットがカスタマー応答の理解をチェックすることなどを含み得る。一実施形態では、各アノテータは、特定の会話の各メッセージを評価し、そのメッセージについてボット状態が検出されたかどうかを示すことがある。たとえば、アノテータは、メッセージが特定のボット状態を示すかどうかを示すために、特定の会話の各メッセージにアノテーションを付け得る。
【0078】
[0088]ボット状態予測モデルのトレーニングのために以前に分析された任意の会話を識別することに加えて、ボット状態機械学習モデリングエンジンは、ステップ904において、これらの以前に分析された会話の特徴量のセットを計算し得る。たとえば、ボット状態機械学習モデリングエンジンは、以前に分析された会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器を利用し得る。会話長に対応するバイナリ特徴量は、サンプル会話においてボット状態が検出される確率と会話長との間の相関を提供し得る。したがって、このバイナリ特徴量は、ボット状態を検出し、ボット状態が所与の会話中に存在する尤度に対応する信頼度スコアをより正確に計算するように、ボット状態予測モデルをさらにトレーニングするために使用され得る。
【0079】
[0089]ステップ906において、ボット状態機械学習モデリングエンジンは、会話型ボットエージェントによって実行された以前に分析された会話についてのボット状態アノテーションを取得し得る。上述のように、ボット状態予測モデルをトレーニングするために使用されることになる各サンプル会話は、サンプル会話内の特定のボット状態の存在(または不在)を示すために、アノテータのセットによってアノテーションを付けられ得る。たとえば、アノテータは、会話の各メッセージを評価し、ボット状態がアノテータによって検出されたかどうかを示すとともに、どのボット状態が検出されたかを指定し得る。したがって、ボット状態予測モデルをトレーニングするために使用されることになる以前に分析された会話から、ボット状態機械学習モデリングエンジンは、特定の会話についてアノテータのセットによって提供されたアノテーションを識別し、これらのアノテーションに基づいて、アノテータの各々によって検出されたボット状態を識別し得る。
【0080】
[0090]ステップ908において、以前に分析された会話についてアノテータのセットによって提供されたアノテーションに基づいて、ボット状態機械学習モデリングエンジンは、以前に分析された会話内の異なるボット状態の存在に対応する確率を計算し得る。たとえば、ボット状態機械学習モデリングエンジンは、会話内の何らかのメッセージが特定のボット状態を有する確率を決定するために集合ストラテジを実装し得る。たとえば、ボット状態機械学習モデリングエンジンは、会話内の各メッセージについてボット状態が存在する確率を計算し得る。例示的な例として、特定のメッセージが3つのアノテータによって評価され、これらのアノテータのうちの1つが、特定のメッセージについて特定のボット状態が存在すると決定した場合、ボット状態機械学習モデリングエンジンは、ボット状態がメッセージ中に存在する確率が、ボット状態を示すアノテーションの数をアノテーションの総数で除算したもの、すなわち、この場合、1/3であると決定し得る。ボット状態機械学習モデリングエンジンは、この確率を1から減算して、変換の特定のメッセージがこのボット状態を含まない確率を取得し得る。ボット状態機械学習モデリングエンジンは、特定のボット状態が特定の会話にない確率を取得するために、特定の会話中の各メッセージについて取得された確率を乗算し得る。ボット状態機械学習モデリングエンジンは、この確率を1から減算して、ボット状態が特定の会話内に存在する確率を取得し得る。得られたアノテーション付き会話および対応するボット状態確率は、リアルタイムで会話からボット状態を動的に検出するために使用可能な分類モデルのトレーニングのための「グランドトゥルース」またはサンプルデータセットとして使用され得る。
【0081】
[0091]ステップ910において、ボット状態機械学習モデリングエンジンは、前述の確率と、以前に分析された会話に対応する会話データ(たとえば、メッセージ、会話長、特徴量など)とを使用して、ボット状態予測モデルをトレーニングし得る。たとえば、ボット状態機械学習モデリングエンジンは、前述の確率と、以前に分析された会話に対応する会話データとを、ボット状態予測モデルへの入力として使用し得る。ボット状態予測モデルは、出力として、異なるボット状態がサンプル会話内に存在する尤度に対応する信頼度スコアを生成し得る。
【0082】
[0092]ボット状態予測モデルによって生成された出力(たとえば、信頼度スコア)は、ボット状態予測モデルが正確な結果または正しい結果を生成しているかどうかを決定するために、アノテータまたは他のエンティティによって評価され得る。いくつかの事例では、ボット状態予測モデルによって生成された信頼度スコアは、ボット状態予測モデルが正確な結果を生成しているかどうかを決定するために、対応するボット状態が特定の会話内に存在する確率と比較され得る。たとえば、特定の会話についての各可能なボット状態に関する信頼度スコアを計算するために使用されるボット状態予測モデルは、会話データからの特定の会話のアノテータ評価に対応するボット状態確率に基づいて、ボット状態予測モデルが特定の会話中に存在し得る任意のボット状態を正しく識別しているかどうかを決定するために評価され得る。この評価に基づいて、ボット状態予測モデルは、ボット状態予測モデルが所望の結果を生成する尤度を高めるように修正され得る。
【0083】
[0093]ボット状態予測モデルがトレーニングされ評価されると、ボット状態機械学習モデリングエンジンは、新たに取得された任意の会話と、これらの会話の彼らの評価に基づくボットビルダーおよび他のエンティティからのフィードバックとを使用して、プロセス900を繰り返し得る。これは、ボット状態予測モデルがリアルタイムで各会話について正確な結果を生成していることを確実にするために、ボット状態予測モデルの継続的なトレーニングを可能にする。
【0084】
[0094]
図10は、少なくとも1つの実施形態による、アノテーション付き会話データと識別されたボット状態とに基づいてMACS予測モデルをトレーニングするためのプロセス1000の例示的な例を示す。プロセス1000は、ボット状態およびMACSアノテーションデータ(たとえば、サンプル会話内で検出されたボット状態およびサンプル会話についての対応するMACSを示す各アノテータによって生成されたデータ)と、MACS予測モデルのトレーニングのためのサンプル会話の属性(たとえば、会話長など)とを使用し得るボット状態機械学習モデリングエンジンによって実行され得る。本明細書でより詳細に説明されるように、ボット状態機械学習モデリングエンジンはまた、MACS予測モデルのトレーニングのために、サンプル会話から計算された特徴量のセットと、ボット状態予測モデルによって生成されたボット状態信頼度スコアとを利用し得る。
【0085】
[0095]ステップ1002において、ボット状態機械学習モデリングエンジンは、ボット状態予測モデルのトレーニングのために、会話型ボットエージェントによって実行された以前に分析された会話(たとえば、会話型ボットエージェントが通信セッションを介してカスタマーまたは他のエンティティと関与した会話)を識別し得る。たとえば、ボット状態機械学習モデリングエンジンは、ボット状態予測モデルおよびMACS予測モデルのトレーニングのためのアノテータのセットによってアノテーションが付けられたサンプル会話のセットを識別し得る。上述のように、特定の会話中に発生する任意のボット状態と、特定の会話についてのMACSとを識別するために、特定の会話がアノテータのセットに提供され得る。さらに、ボット状態が検出されるとき、アノテータは、特定の会話についての最終的なMACSが決定されるまで、特定の会話についてのMACSを減分し得る。したがって、特定のサンプル会話は、ボット状態が特定の会話のフロー内で検出されたときに更新される漸進的なMACSと、完全な会話のための最終的なMACSとによってアノテーションを付けられ得る。
【0086】
[0096]ステップ1004において、ボット状態機械学習モデリングエンジンは、MACS予測モデルのトレーニングのために、以前に分析された会話についての特徴量のセットを計算すべきかどうかを決定し得る。上述のように、ボット状態機械学習モデリングエンジンは、特定の会話の会話長を抽出し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器を利用し得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいてアノテータによって決定されたMACSスコアと、MACS予測モデルによって予測されたMACSスコアとの間の相関を高め得る。したがって、MACS予測モデルのトレーニングをさらに改善するために、このバイナリ特徴量が使用され得る。しかしながら、いくつかの事例では、MACS予測モデルは、特徴量なしでトレーニングされることがあり、それによって、特定の会話の特性が、抽出され、MACS予測モデルをトレーニングするために直接使用され得る。
【0087】
[0097]ボット状態機械学習モデリングエンジンが、MACS予測のトレーニングにおいて使用するための特徴量を計算するように構成される場合、ボット状態機械学習モデリングエンジンは、ステップ1006において、1つまたは複数のサンプル会話の特徴量を計算するために、特徴量抽出器を利用し得る。代替的に、ボット状態機械学習モデリングエンジンが、サンプル会話の特徴量の計算なしにMACS予測エンジンをトレーニングするように構成される場合、ボット状態機械学習モデリングエンジンは、ステップ1008において、会話長抽出器を使用して、サンプル会話の会話長を抽出し得る。ボット状態機械学習モデリングエンジンは、本明細書で説明されるように、MACS予測モデルをトレーニングするために、サンプル会話についてのアノテーション付きMACSおよび検出されたボット状態に加えて、これらの会話長をMACS予測モデルへの入力として使用し得る。
【0088】
[0098]ステップ1010において、ボット状態機械学習モデリングエンジンは、1つまたは複数の以前に分析された会話についてのアノテーション付き会話データからアノテーション付きスコア(たとえば、MACS)を抽出し得る。上述のように、ボット状態機械学習モデリングエンジンは、サンプル会話のセットについて1つまたは複数のアノテータによって生成されたアノテーション付きデータから、ボット状態およびMACSアノテーションデータ(たとえば、サンプル会話内で検出されたボット状態とサンプル会話についての対応するMACSとを示す、各アノテータによって生成されたデータ)を取得し得る。ボット状態機械学習モデリングエンジンは、アノテータによって生成されたボット状態およびMACSアノテーションデータから各サンプル会話についてのMACSを取得するために、アノテーション付きスコア抽出器を利用し得る。
【0089】
[0099]ステップ1012において、ボット状態機械学習モデリングエンジンは、MACS予測モデルのトレーニングについてのMACS予測モデルへの入力として、ボット状態予測モデルによって生成されたボット状態信頼度スコアを使用すべきかどうかを決定し得る。上述のように、MACS予測モデルおよびボット状態予測モデルのトレーニングは、並行して実行されることがあり、それによって、MACS予測モデルは、トレーニングするためにボット状態予測モデルからの出力に依拠しない。しかしながら、いくつかの事例では、ボット状態予測モデルのトレーニングと並行してMACS予測モデルのトレーニングを実行するのではなく、MACS予測モデルは、入力として信頼度スコア(または信頼度スコアに基づいて検出されたボット状態)を使用してトレーニングされ得る。
【0090】
[0100]ボット状態機械学習モデリングエンジンが、ボット状態予測モデルのトレーニングと並行してMACS予測モデルのトレーニングを実行するように構成される場合、ボット状態機械学習モデリングエンジンは、ステップ1014において、以前に分析された会話におけるアノテーション付きボット状態についてソフトスコアしきい値処理を実行し得る。たとえば、各サンプル会話についてのMACSは、アノテータによって検出されたボット状態とともに、ボット状態ソフトスコアしきい値処理エンジンに提供され得、ボット状態ソフトスコアしきい値処理エンジンは、ボット状態とMACSとの間の任意の相関を識別するために、各サンプル会話についてのMACSと、サンプル会話において検出された対応するボット状態とを処理し得る。これらの相関、ならびにアノテータによって提供されるアノテーション付きMACSおよび検出されたボット状態は、MACS予測モデルのトレーニングのためのMACS予測モデルへの入力として使用され得る。
【0091】
[0101]ボット状態機械学習モデリングエンジンが、MACS予測モデルのトレーニングのためにボット状態予測モデルからの信頼度スコアを利用するように構成される場合、ボット状態機械学習モデリングエンジンは、ステップ1016において、以前に分析された会話についてボット状態予測モデルから信頼度スコアを取得し得る。一実施形態では、ボット状態機械学習モデリングエンジンは、特定の会話についてのMACSを取得するために、特定の会話についてのボット状態予測モデルを使用して取得された各ボット状態についての信頼度スコアを、MACS予測モデルへの入力として使用することができる。代替的に、ボット状態機械学習モデリングエンジンは、各ボット状態についての信頼度スコアがしきい値を満たすかどうかを決定し得る。特定のボット状態についての信頼度スコアがしきい値を上回る場合、ボット状態機械学習モデリングエンジンは、対応するボット状態が会話内に存在すると決定し得る。会話内のボット状態の存在は、会話についてのMACSを計算するために、しきい値に従って、MACS予測モデルへの入力として使用され得る。
【0092】
[0102]ステップ1018において、ボット状態機械学習モデリングエンジンは、前述のデータ(たとえば、会話長、特徴量、アノテーション付きMACS、アノテーション付きボット状態、信頼度スコア、ソフトスコアしきい値処理を使用して生成された相関など)を入力として使用して、MACS予測モデルのパフォーマンスの評価のために、MACS予測モデルをトレーニングし得る。上述のように、MACS予測モデルの出力は、各サンプル会話についてのMACSを含み得る。得られたMACSは、アノテーション付きデータから取得される、サンプル会話のアノテータ評価に対応するボット状態確率とサンプル会話についてのMACSアノテーションとに基づいて、MACS予測モデルが特定の会話についてのMACSを正しく計算しているかどうかを決定するために評価され得る。この評価に基づいて、MACS予測モデルは、MACS予測モデルが所望の結果を生成する尤度を増加させるように修正され得る。
【0093】
[0103]
図9に関して上記で説明されたボット状態予測モデルの連続的なトレーニングと同様に、MACSのトレーニングは、MACS予測モデルの精度を改善するために連続的に実行され得る。たとえば、ボット状態機械学習モデリングエンジンは、新たに取得された任意の会話と、これらの会話の彼らの評価に基づくボットビルダーおよび他のエンティティからのフィードバックとを使用して、プロセス1000を繰り返し得る。これは、MACS予測モデルがリアルタイムで各会話について正確な結果を生成していることを確実にするために、MACS予測モデルの継続的なトレーニングを可能にする。
【0094】
[0104]
図11は、少なくとも1つの実施形態による、ボットエージェントとカスタマーとの間の会話についてのMACSおよび任意のボット状態を生成し、それらを提供するためのプロセス1100の例示的な例を示す。プロセス1100は、それぞれ、会話型ボットエージェントとカスタマーとの間の会話についてのボット状態の検出およびMACSの計算のためのボット状態予測モデルおよびMACS予測モデルを実装するカスタマーサービスコールセンターまたは他のエンティティによって実行され得る。ステップ1102において、カスタマーサービスコールセンターまたは他のエンティティは、カスタマーと会話型ボットエージェントとの間の特定の会話についての会話データを取得し得る。たとえば、会話型ボットエージェントとカスタマーサービスコールセンターのカスタマーおよび他のユーザとの間の会話が記録され得る。記録された会話は、会話型ボットエージェントとカスタマーまたは他のエンティティのコンピューティングデバイスとの間に確立された通信セッションを介して、特定の会話型ボットエージェントとカスタマーまたは他のエンティティとの間で通信される任意のメッセージを含み得る。
【0095】
[0105]ステップ1104において、カスタマーサービスコールセンターまたは他のエンティティは、会話データから会話の特徴量のセットを計算し得る。たとえば、通信セッションを介した会話型ボットエージェントとカスタマーまたは他のユーザとの間の特定の会話についての会話データは、特徴量抽出器への入力として使用され得る。上述のように、特定の会話の会話長を計算し、会話長が会話長のいずれかの極値(たとえば、短い対長い)にあるかどうかを示すバイナリ特徴量を決定するために、特徴量抽出器が使用され得る。会話長に対応するバイナリ特徴量は、会話の手動評価に基づいてアノテータによって決定された会話についてのMACSと、MACS予測モデルのトレーニング中にMACS予測モデルによって予測されたMACSとの間の相関を高め得る。いくつかの実装形態では、特徴量抽出器はまた、会話内で検出され得る異なる可能なボット状態についての信頼度スコアをより正確に計算するためにボット状態予測モデルによって使用され得る特徴量を抽出するために使用され得る。
【0096】
[0106]ステップ1106において、カスタマーサービスコールセンターまたは他のエンティティは、ボット状態予測モデルを使用して、特徴量のセットと特定の会話に対応する会話データとを処理し得る。上述のように、特徴量抽出器によって計算された特徴量ならびに特定の計算に対応する会話データは、会話内に存在し得る異なるボット状態についての信頼度スコアを生成するために、ボット状態予測モデルへの入力として使用され得る。いくつかの事例では、ボット状態予測モデルは、特定のボット状態についての信頼度スコアがしきい値を上回る場合、その特定のボット状態が会話内に存在するものとして示されるように、信頼度スコアにしきい値を適用し得る。代替的に、特定のボット状態についての信頼度スコアがしきい値以下である場合、特定のボット状態は、会話にないものとして示される。したがって、ボット状態予測モデルは、会話内のボット状態の可能な存在に対応する信頼度スコア、またはこれらのボット状態の存在に対応するバイナリ表示のいずれかをMACS予測モデルに提供し得る。
【0097】
[0107]ステップ1108において、カスタマーサービスコールセンターまたは他のエンティティは、会話データから会話長を抽出し得る。カスタマーサービスコールセンターまたは他のエンティティは、MACSが決定されている会話長を決定するために、会話長抽出器を使用し得る。会話長は、会話型ボットエージェントとカスタマーまたは他のユーザとの間の通信セッション中に、会話型ボットエージェントとカスタマーまたは他のユーザとの間で交換されるメッセージの数として決定され得る。代替的に、会話長は、カスタマーまたは他のユーザとの通信セッション中に会話型ボットエージェントによって送信されたメッセージの数として定義され得る。
【0098】
[0108]ステップ1110において、カスタマーサービスコールセンターまたは他のエンティティは、会話についてのMACSを取得するために、特徴量のセットをMACS予測モデルへの入力として使用すべきかどうかを決定し得る。上述のように、MACS予測モデルは、会話についてのMACSを生成するために、ボット状態予測モデルの出力(たとえば、信頼度スコアまたはバイナリボット状態表示)と、会話長に対応するメトリックとを処理するように構成され得る。いくつかの事例では、MACS予測モデルが会話についてのMACSを計算するために特徴量をさらに利用するように構成される場合、カスタマーサービスコールセンターまたは他のエンティティは、ステップ1114において、MACS予測モデルを使用して、これらの特徴量と、ボット状態予測モデルの出力、会話長、および会話データ自体とを処理し得る。代替的に、MACS予測モデルがボット状態予測モデルの出力と会話長とを入力として利用するように構成される場合、カスタマーサービスコールセンターまたは他のエンティティは、ステップ1112において、MACS予測モデルを使用してこれらを処理し得る。
【0099】
[0109]ステップ1116において、カスタマーサービスコールセンターまたは他のエンティティは、会話について、得られたMACSおよび検出されたボット状態を提供する。たとえば、カスタマーサービスコールセンターまたは他のエンティティは、カスタマーサービスコールセンターによって提供されボットビルダーによって利用されるコンピューティングデバイスを介してアクセス可能なインターフェースまたはポータルを介して、ボットビルダーによって実装される会話型ボットエージェントが関与する会話についてのMACSおよびボット状態を提供し得る。得られたMACSおよび識別されたボット状態に基づいて、ボットビルダーは、会話型ボットエージェントのパフォーマンス(たとえば、MACSなど)を潜在的に改善するために、会話型ボットエージェントの構成を更新し得る。たとえば、ボット状態の特定のセットに遭遇した結果として、特定のクラスの会話型ボットエージェントについてのMACSが一貫してしきい値未満である(たとえば、会話型ボットエージェントが不十分に実行している)場合、ボットビルダーは、これらのボット状態が発生する可能性を低減し、これらの会話型ボットエージェントについてのMACSを改善するために、会話型ボットエージェントに対する更新を生成し得る。
【0100】
[0110]
図12は、いくつかの実装形態による、バスなどの接続1206を使用して互いに電気通信している様々な構成要素を含むコンピューティングシステムアーキテクチャ1200を示す。例示的なシステムアーキテクチャ1200は、処理ユニット(CPUまたはプロセッサ)1204と、ROM1218およびRAM1216などのシステムメモリ1220を含む様々なシステム構成要素をプロセッサ1204に結合するシステム接続1206とを含む。システムアーキテクチャ1200は、プロセッサ1204と直接接続された、プロセッサ1204に極めて近接した、またはプロセッサ1204の一部として統合された、高速メモリのキャッシュ1202を含むことができる。システムアーキテクチャ1200は、プロセッサ1204による迅速なアクセスのために、メモリ1220および/または記憶デバイス1208からキャッシュ1202にデータをコピーすることができる。このようにして、キャッシュは、データを待っている間のプロセッサ1204の遅延を回避する性能の向上を提供することができる。これらおよび他のモジュールは、様々なアクションを実施するようにプロセッサ1204を制御することができ、またはプロセッサ1204を制御するように構成され得る。
【0101】
[0111]他のシステムメモリ1220も、使用のために利用可能であり得る。メモリ1220は、異なる性能特性を有する、複数の異なるタイプのメモリを含むことができる。プロセッサ1204は、任意の汎用プロセッサと、プロセッサ1204ならびに専用プロセッサを制御するように構成された、記憶デバイス1208に記憶されたサービス1 1210、サービス2 1212、およびサービス3 1214などの、ハードウェアまたはソフトウェアサービスとを含むことができ、ここで、ソフトウェア命令は、実際のプロセッサ設計に組み込まれる。プロセッサ1204は、複数のコアまたはプロセッサ、バス、メモリコントローラ、キャッシュなどを含む完全に独立型のコンピューティングシステムであり得る。マルチコアプロセッサは、対称または非対称であり得る。
【0102】
[0112]コンピューティングシステムアーキテクチャ1200とのユーザ対話を可能にするために、入力デバイス1222は、音声用のマイクロフォン、ジェスチャまたはグラフィック入力用のタッチセンシティブスクリーン、キーボード、マウス、モーション入力、音声など、任意の数の入力機構を表すことができる。出力デバイス1224も、当業者に知られているいくつかの出力機構のうちの1つまたは複数であり得る。いくつかの事例では、マルチモーダルシステムは、ユーザが、コンピューティングシステムアーキテクチャ1200と通信するために複数のタイプの入力を提供することを可能にすることができる。通信インターフェース1226は、概して、ユーザ入力とシステム出力とを統制および管理することができる。任意の特定のハードウェア構成上で動作することに対する制限はなく、したがって、ここでの基本的特徴は、改善されたハードウェア構成またはファームウェア構成が開発されるにつれて、それらで容易に代用され得る。
【0103】
[0113]記憶デバイス1208は、不揮発性メモリであり、磁気カセット、フラッシュメモリカード、固体メモリデバイス、デジタル多用途ディスク、カートリッジ、RAM1216、ROM1218、およびそれらのハイブリッドなど、コンピュータによってアクセス可能であるデータを記憶することができるハードディスクまたは他のタイプのコンピュータ可読媒体であり得る。
【0104】
[0114]記憶デバイス1208は、プロセッサ1204を制御するためのサービス1210、1212、1214を含むことができる。他のハードウェアモジュールまたはソフトウェアモジュールが企図される。記憶デバイス1208は、システム接続1206に接続され得る。一態様では、特定の機能を実施するハードウェアモジュールは、その機能を行うために、プロセッサ1204、接続1206、出力デバイス1224など、必要なハードウェア構成要素に関して、コンピュータ可読媒体に記憶されたソフトウェア構成要素を含むことができる。
【0105】
[0115]開示された方法は、コンピューティングシステムを使用して実行され得る。例示的なコンピューティングシステムは、プロセッサ(たとえば、中央処理ユニット)と、メモリと、不揮発性メモリと、インターフェースデバイスとを含むことができる。メモリは、データおよび/または1つもしくは複数のコードセット、ソフトウェア、スクリプトなどを記憶し得る。コンピュータシステムの構成要素は、バスを介して、または何らかの他の知られているもしくは便利なデバイスを通して互いに結合され得る。プロセッサは、たとえば、たとえばメモリに記憶されたコードを実行することによって本明細書で説明される方法の全部または一部を行うように構成され得る。ユーザデバイスまたはコンピュータ、プロバイダサーバまたはシステム、あるいは中断されたデータベース更新システムのうちの1つまたは複数は、コンピューティングシステムの構成要素またはそのようなシステムの変形形態を含み得る。
【0106】
[0116]本開示は、限定はしないが、ポイントオブセールシステム(「POS」)を含む任意の好適な物理的形態をとるコンピュータシステムを企図する。限定ではなく例として、コンピュータシステムは、埋込みコンピュータシステム、システムオンチップ(SOC)、(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)などの)シングルボードコンピュータシステム(SBC)、デスクトップコンピュータシステム、ラップトップもしくはノートブックコンピュータシステム、対話型キオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末(PDA)、サーバ、または2つ以上のこれらの組合せであり得る。適切な場合、コンピュータシステムは、ユニタリであるかもしくは分散された、複数のロケーションにわたる、複数の機械にわたる、および/または1つもしくは複数のネットワーク中の1つもしくは複数のクラウド構成要素を含み得るクラウド中に常駐する1つまたは複数のコンピュータシステムを含み得る。適切な場合、1つまたは複数のコンピュータシステムは、実質的な空間的または時間的制限なしに本明細書で説明または例示されている1つまたは複数の方法の1つまたは複数のステップを実行し得る。限定ではなく例として、1つまたは複数のコンピュータシステムは、リアルタイムでまたはバッチモードで本明細書で説明または例示されている1つまたは複数の方法の1つまたは複数のステップを実行し得る。1つまたは複数のコンピュータシステムは、適切な場合、異なる時間にまたは異なるロケーションで本明細書で説明または例示されている1つまたは複数の方法の1つまたは複数のステップを実行し得る。
【0107】
[0117]プロセッサは、たとえば、インテルペンティアム(登録商標)マイクロプロセッサまたはモトローラパワーPCマイクロプロセッサなどの従来のマイクロプロセッサであり得る。「機械可読(記憶)媒体」または「コンピュータ可読(記憶)媒体」という用語がプロセッサによってアクセス可能である任意のタイプのデバイスを含むことを、当業者は認識されよう。
【0108】
[0118]メモリは、たとえば、バスによってプロセッサに結合され得る。メモリは、限定ではなく例として、ダイナミックRAM(DRAM)およびスタティックRAM(SRAM)などの、ランダムアクセスメモリ(RAM)を含むことができる。メモリは、ローカルであるか、リモートであるか、または分散され得る。
【0109】
[0119]バスはまた、プロセッサを不揮発性メモリおよび駆動ユニットに結合することができる。不揮発性メモリは、磁気フロッピー(登録商標)ディスクもしくはハードディスク、光磁気ディスク、光ディスク、CD-ROM、EPROM、もしくはEEPROM(登録商標)などの読取り専用メモリ(ROM)、磁気カードもしくは光カード、または大量のデータ用の別の形態の記憶装置であることが多い。このデータの一部が、ダイレクトメモリアクセス処理によって、コンピュータ内でソフトウェアの実行中にメモリに書き込まれることが多い。不揮発性記憶装置は、ローカルであるか、リモートであるか、または分散され得る。システムが、メモリ中で利用可能なすべての適用可能なデータを用いて作成され得るので、不揮発性メモリは随意である。典型的なコンピュータシステムは、通常、少なくともプロセッサと、メモリと、メモリをプロセッサに結合するデバイス(たとえば、バス)とを含むことになる。
【0110】
[0120]ソフトウェアは、不揮発性メモリおよび/または駆動ユニットに記憶され得る。実際、大きいプログラムでは、メモリにプログラム全体を記憶することが可能でないことさえある。それにもかかわらず、ソフトウェアが稼働するために、必要な場合、処理に適したコンピュータ可読ロケーションに移動され、説明のために、そのロケーションは、本明細書ではメモリと呼ばれることを理解されたい。ソフトウェアが実行のためにメモリに移動されたときでも、プロセッサは、ソフトウェアに関連する値を記憶するためにハードウェアレジスタと、理想的には、実行を高速化するように働くローカルキャッシュとを利用することができる。本明細書で使用されるソフトウェアプログラムは、そのソフトウェアプログラムが「コンピュータ可読媒体において実装される」と呼ばれるとき、任意の知られているまたは好都合なロケーション(不揮発性記憶装置からハードウェアレジスタまで)に記憶されると仮定される。プログラムに関連する少なくとも1つの値がプロセッサによって読取り可能なレジスタに記憶されるとき、プロセッサは、「プログラムを実行するように構成される」と見なされる。
【0111】
[0121]バスはまた、ネットワークインターフェースデバイスにプロセッサを結合することができる。インターフェースは、モデムまたはネットワークインターフェースのうちの1つまたは複数を含むことができる。モデムまたはネットワークインターフェースがコンピュータシステムの一部であると見なされ得ることが諒解されよう。インターフェースは、アナログモデム、統合サービスデジタルネットワーク(ISDNモデム、ケーブルモデム、トークンリングインターフェース、衛星送信インターフェース(たとえば、「直接PC」)、またはコンピュータシステムを他のコンピュータシステムに結合するための他のインターフェースを含むことができる。インターフェースは、1つまたは複数の入力および/または出力(I/O)デバイスを含むことができる。I/Oデバイスは、限定ではなく例として、キーボードと、マウスまたは他のポインティングデバイスと、ディスクドライブと、プリンタと、スキャナと、ディスプレイデバイスを含む他の入力および/または出力デバイスとを含むことができる。ディスプレイデバイスは、限定ではなく例として、陰極線管(CRT)、液晶ディスプレイ(LCD)、あるいは何らかの他の適用可能な知られているまたは好都合なディスプレイデバイスを含むことができる。
【0112】
[0122]動作中、コンピュータシステムは、ディスクオペレーティングシステムなどのファイル管理システムを含むオペレーティングシステムソフトウェアによって制御され得る。関連するファイル管理システムソフトウェアをもつオペレーティングシステムソフトウェアの一例は、ワシントン州RedmondのMicrosoft CorporationからのWindows(登録商標)として知られるオペレーティングシステムのファミリおよびそれらの関連するファイル管理システムである。それの関連するファイル管理システムソフトウェアをもつオペレーティングシステムソフトウェアの別の例は、Linux(登録商標)オペレーティングシステムおよびそれの関連するファイル管理システムである。ファイル管理システムは、不揮発性メモリおよび/または駆動ユニット中に記憶され得、データを入力および出力することと、不揮発性メモリおよび/または駆動ユニット上にファイルを記憶することを含むメモリ中にデータを記憶することとをオペレーティングシステムが行うために必要とされる様々な行為を実行することをプロセッサに行わせることができる。
【0113】
[0123]詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対する演算のアルゴリズムおよび記号表現に関して提示され得る。これらのアルゴリズムの説明および表現は、データ処理分野の当業者によって、自身の仕事の本質を他の当業者に最も効果的に伝達するために使用される手段である。アルゴリズムは、本明細書では、および一般には、所望の結果をもたらす自己無撞着な一連の動作であると想到される。動作は、物理量の物理的操作を必要とするものである。通常、必ずしも必要とは限らないが、これらの量は、記憶、転送、結合、比較、および他の方法で操作されることが可能な電気信号または磁気信号の形態をとる。主に一般的な用法という理由で、これらの信号をビット、値、要素、記号、文字、項、数、などと呼ぶことが時々便利であることがわかっている。
【0114】
[0124]しかしながら、これらおよび同様の用語のすべては、適切な物理量に関連付けられるべきものであり、これらの量に適用される便利なラベルにすぎないことに留意されたい。別段に明記されていない限り、以下の説明から明らかなように、説明全体にわたって、「処理する」または「計算する」または「算出する」または「決定する」または「表示する」または「生成する」などの用語を利用する説明は、コンピュータシステムのレジスタおよびメモリ内の物理(電子)量として表されるデータを操作し、コンピュータシステムのメモリまたはレジスタまたは他のそのような情報記憶、送信もしくはディスプレイデバイス内の物理量として同様に表される他のデータに変換するコンピュータシステムまたは同様の電子コンピューティングデバイスの行為およびプロセスを指すことを諒解されたい。
【0115】
[0125]本明細書で提示されるアルゴリズムおよびディスプレイは、任意の特定のコンピュータまたは他の装置に本質的に関連しない。様々な汎用システムは、本明細書の教示に従ってプログラムとともに使用され得るか、またはいくつかの例の方法を実行するためにより特殊な装置を構築するのに便利であるとがわかり得る。様々なこれらのシステムのために必要とされる構造が以下の説明から明らかになるであろう。さらに、技法は、任意の特定のプログラミング言語を参照しながら説明されず、したがって、様々な例は、様々なプログラミング言語を使用して実装され得る。
【0116】
[0126]様々な実装形態では、システムは、スタンドアロンデバイスとして動作するか、または他のシステムに接続(たとえば、ネットワーク化)され得る。ネットワーク化された展開では、システムは、クライアントサーバネットワーク環境におけるサーバまたはクライアントシステムの容量で、あるいはピアツーピア(または分散)ネットワーク環境におけるピアシステムとして動作し得る。
【0117】
[0127]システムは、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットPC、ラップトップコンピュータ、セットトップボックス(STB)、携帯情報端末(PDA)、セルラー電話、iPhone(登録商標)、Blackberry、プロセッサ、電話、ウェブ機器、ネットワークルータ、スイッチまたはブリッジ、あるいはそのシステムによってとられるべきアクションを指定する命令のセット(連続またはそれ以外)を実行することが可能な任意のシステムであり得る。
【0118】
[0128]機械可読媒体または機械可読記憶媒体が、例として、単一の媒体であるものとして示されているが、「機械可読媒体」および「機械可読記憶媒体」という用語は、命令の1つまたは複数のセットを記憶する単一の媒体または複数の媒体(たとえば、集中もしくは分散データベースならびに/または関連するキャッシュおよびサーバ)を含むものと解釈されるべきである。「機械可読媒体」および「機械可読記憶媒体」という用語はまた、システムが実行するための命令のセットを記憶、符号化、または搬送することが可能であり、システムに本明細書で開示する方法またはモジュールのうちの任意の1つまたは複数を実行させる任意の媒体を含むものとする。
【0119】
[0129]概して、本開示の実装形態を実装するために実行されるルーチンは、オペレーティングシステムの部分または特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュールまたは「コンピュータプログラム」と呼ばれる一連の命令として実装され得る。コンピュータプログラムは一般に、コンピュータ中の1つまたは複数の処理ユニットまたはプロセッサによって読み取られ、実行されたときに、コンピュータに、本開示の様々な態様に関与する要素を実行するために動作を実行させる、コンピュータ中の様々なメモリおよび記憶デバイス中のいろいろな時点での1つまたは複数の命令セットを備える。
【0120】
[0130]さらに、完全に機能するコンピュータおよびコンピュータシステムのコンテキストで例を説明したが、様々な例が様々な形態のプログラムオブジェクトとして分散されることが可能であること、および分散に実際に影響を及ぼすために使用される特定のタイプの機械またはコンピュータ可読媒体にかかわらず本開示が等しく適用されることを、当業者は諒解されよう。
【0121】
[0131]機械可読記憶媒体、機械可読媒体、またはコンピュータ可読(記憶)媒体のさらなる例は、限定はしないが、特に、揮発性および不揮発性メモリデバイス、フロッピーディスクおよび他のリムーバブルディスク、ハードディスクドライブ、光ディスク(たとえば、読み出し専用コンパクトディスク(CD ROM)、デジタル多用途ディスク(DVD)など)などの記録可能型媒体と、デジタルおよびアナログ通信リンクなどの送信型媒体とを含む。
【0122】
[0132]いくつかの状況では、バイナリ1からバイナリ0への、またはその逆の状態の変化などの、メモリデバイスの動作は、たとえば、物理的変換などの変換を備え得る。特定のタイプのメモリデバイスでは、そのような物理的変換は、異なる状態または物への物品の物理的変換を備え得る。たとえば、限定はしないが、いくつかのタイプのメモリデバイスの場合、状態の変化は、電荷の累積および蓄積、あるいは蓄積された電荷の解放を伴い得る。同様に、他のメモリデバイスでは、状態の変化は、磁気方位の物理的変化もしくは変換または結晶状からアモルファスへのもしくはその逆の分子構造の物理的変化もしくは変換を備え得る。上記は、メモリデバイスにおけるバイナリ1のバイナリ0へのまたはその逆への状態の変化が物理的変換などの変換を備え得る、すべての例の網羅的なリストになるように意図されていない。むしろ、上記は説明のための例として意図されている。
【0123】
[0133]記憶媒体は、一般に、非一時的であるか、または非一時的デバイスを備え得る。このコンテキストでは、非一時的記憶媒体は、有形であるデバイスを含み得、これは、デバイスが具体的な物理的形態を有することを意味するが、デバイスはそれの物理的状態を変化し得る。したがって、たとえば、非一時的は、状態のこの変化にもかかわらず有形にとどまるデバイスを指す。
【0124】
[0134]上記の説明および図面は、例示的なものであり、主題を開示する形態そのものに限定するものと解釈すべきではない。上記の開示に照らして多くの修正形態および変形形態が可能であることを、当業者は諒解することができる。本開示の完全な理解を提供するために、多数の具体的な詳細について説明される。しかしながら、いくつかの事例では、説明を不明瞭にすることを回避するために、よく知られているまたは従来の詳細が説明されていない。
【0125】
[0135]本明細書で使用される「接続された」、「結合された」という用語またはそれの任意の変形態は、システムのモジュールに適用されるときに、2つまたはそれ以上の要素の間での直接的または間接的な任意の接続または結合を意味し、要素間の接続の結合は、物理的、論理的、またはそれらの任意の組合せであり得る。さらに、「本明細書で(herein)」、「上記で(above)」、「以下で(below)」という用語、および同様の意味の用語は、本明細書で使用されるとき、本明細書の任意の特定の部分ではなく、本明細書を全体として指すものとする。文脈が許せば、単数または複数を使用する、上記の発明を実施するための形態における用語は、それぞれ複数または単数をも含み得る。2つまたはそれ以上の項目のリストに関する「または(or)」という用語は、リスト中の項目のうちのいずれか、リスト中の項目のうちのすべて、またはリスト中の項目の任意の組合せという用語の解釈のうちのすべてをカバーする。
【0126】
[0136]開示される主題が、以下に示されていない他の形態および様式で具現され得ることを、当業者は諒解されよう。第1の(first)、第2の(second)、上部の(top)および下部の(bottom)などの関係を示す用語の使用は、もしあれば、1つのエンティティまたはアクションを、そのようなエンティティまたはアクションの間のいかなるそのような実際の関係または順序を必ずしも必要とするかまたは暗示することなしに、別のものと区別するためにのみ使用されることを理解されたい。
【0127】
[0137]プロセスまたはブロックが所与の順序で提示されているが、代替実装形態は、異なる順序で、ステップを有するルーチンを実施するか、またはブロックを有するシステムを採用し得、いくつかのプロセスまたはブロックは、代替または部分組合せを提供するために削除、移動、追加、再分割、置換、結合、および/または修正され得る。これらのプロセスまたはブロックの各々は、様々な異なる方法で実装され得る。また、プロセスまたはブロックは、時々連続して実施されているように示されているが、これらのプロセスまたはブロックは、代わりに並行して実施され得るか、または異なる時間に実施され得る。さらに、本明細書において言及された任意の特定の数は例にすぎず、代替実装形態は、異なる値または範囲を採用し得る。
【0128】
[0138]本明細書で提供される開示の教示は、必ずしも上記で説明されたシステムに限らず他のシステムに適用され得る。上記で説明された様々な例の要素および行為は、さらなる例を与えるために組み合わされ得る。
【0129】
[0139]添付の出願書類中にリストされ得るものを含む上記で言及された任意の特許および出願および他の参考文献は、参照により本明細書に組み込まれる。本開示の態様は、必要な場合、本開示のまたさらなる例を与えるために上記で説明された様々な参考文献のシステム、機能、および概念を採用するために修正され得る。
【0130】
[0140]これらおよび他の変更は、上記の発明を実施するための形態に照らして本開示に行われ得る。上記の説明がいくつかの例について説明し、企図される最良の態様について説明するが、文章中でいかに詳述されているように見えたとしても、教示は多くの方法で実施され得る。システムの詳細は、本明細書で開示される主題によって依然として包含されるが、それの実装詳細において大幅に変動し得る。上記のように、本開示のいくつかの特徴または態様について説明するときに使用される特定の用語は、その用語が関連付けられる開示の任意の特定の特性、特徴、または態様に制限されるように、その用語が本明細書で再定義されていることを暗示するものととられるべきではない。概して、以下の特許請求の範囲において使用される用語は、上記の発明を実施するための形態セクションがそのような用語を明示的に定義しない限り、本明細書において開示される特定の実装形態に本開示を制限するものと解釈されるべきではない。したがって、本開示の実際の範囲は、開示される実装形態だけでなく、特許請求の範囲の下で本開示を実施または実装するすべての等価な方法をも包含する。
【0131】
[0141]本開示のいくつかの態様がいくつかの請求項の形式で以下に提示されているが、発明者は、任意の数の請求項の形式で本開示の様々な態様を企図する。米国特許法112条(f)の下で扱われることが意図されるあらゆる請求項は、「ための手段(means for)」という語句で始まることになる。したがって、出願人は、本開示の他の態様のためのそのような追加の請求項の形式を遂行するために本出願を出願した後に追加の請求項を追加する権利を留保する。
【0132】
[0142]本明細書において使用される用語は、概して、本開示のコンテキスト内で各用語が使用される特定のコンテキストにおいて当技術分野におけるそれらの通常の意味を有する。本開示について説明するために使用されるいくつかの用語は、本開示の説明に関して弁護士に追加の案内を与えるために上記でまたは本明細書の他の場所で説明される。便宜上、いくつかの用語は、たとえば、大文字化、イタリック体、および/または引用符を使用して強調され得る。強調の使用は、用語の範囲および意味に対して影響を及ぼさず、用語の範囲および意味は、それが強調されているか否かにかかわらず、同じコンテキストにおいて同じである。同じ要素が2つ以上の方法で説明され得ることが諒解されよう。
【0133】
[0143]したがって、代替的な文言および同義語が本明細書で説明される用語のうちのいずれか1つまたは複数について使用され得、また、用語が本明細書で詳述または説明されるか否かにいかなる特別な重要性も置かれるべきではない。いくつかの用語のための類義語が与えられる。1つまたは複数の類義語の詳述が他の類義語の使用を除外しない。本明細書で説明されるあらゆる用語の例を含む本明細書の任意の場所での例の使用は、例示的なものにすぎず、本開示またはあらゆる例示された用語の範囲および意味をさらに限定することは意図されない。同様に、本開示は、本明細書で与えられる様々な例に限定されない。
【0134】
[0144]本開示の範囲をさらに限定する意図なしに、本開示の例による機器(instrument)、装置、方法およびそれらの関係する結果の例が以下で与えられる。タイトルまたはサブタイトルが読者の便宜のために例中で使用され得、いかなる場合も、これは、本開示の範囲を限定するべきでないことに留意されたい。別段に定義されていない限り、本明細書で使用されるすべての技術的なおよび科学的な用語は、本開示が関係する当業者によって一般に理解されるものと同じ意味を有する。矛盾する場合、定義を含めて、本開示が優先することにする。
【0135】
[0145]本明細書のいくつかの部分は、情報に対する動作のアルゴリズムおよび記号表現に関して例について説明する。これらのアルゴリズムの説明および表現は、データ処理分野の当業者によって、自身の仕事の本質を他の当業者に効果的に伝達するために一般的に使用される。これらの動作は、機能的に、計算量的に、または論理的に説明されているが、コンピュータプログラムまたは等価な電気回路、マイクロコードなどによって実装されると理解される。さらに、一般性を失うことなく、モジュールとして動作のこれらの構成に言及することが時々好都合であることもわかっている。説明された動作およびそれらの関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組合せで具現され得る。
【0136】
[0146]本明細書で説明されるステップ、動作、またはプロセスのいずれかは、単独でまたは他のデバイスと組み合わせて、1つまたは複数のハードウェアまたはソフトウェアモジュールを用いて実施または実装され得る。いくつかの例では、ソフトウェアモジュールは、コンピュータプログラムコードを含んでいるコンピュータ可読媒体を備えるコンピュータプログラムオブジェクトで実装され、これにより、説明されたステップ、動作、またはプロセスのうちのいずれかまたはすべてを実行するためのコンピュータプロセッサによって実行され得る。
【0137】
[0147]例はまた、本明細書における動作を実行するための装置に関し得る。この装置は、必要とされる目的のために特別に構築され得る、および/またはコンピュータ中に記憶されたコンピュータプラグラムにより選択的に起動もしくは再構成される汎用コンピューティングデバイスを備え得る。そのようなコンピュータプログラムは、コンピュータシステムバスに結合され得る、非一時的有形コンピュータ可読記憶媒体、または電子命令を記憶するために好適な任意のタイプの媒体に記憶され得る。さらに、本明細書で言及される任意のコンピューティングシステムは、単一のプロセッサを含むことがあるか、または計算能力を高めるために複数のプロセッサ設計を採用するアーキテクチャであり得る。
【0138】
[0148]例はまた、本明細書で説明されるコンピューティングプロセスによって生成されるオブジェクトに関係し得る。そのようなオブジェクトは、コンピューティングプロセスから生じる情報を備えてもよく、この情報は、非一時的有形コンピュータ可読記憶媒体上に記憶され、本明細書で説明されるコンピュータプログラムオブジェクトまたは他のデータの組合せの任意の実装形態を含んでもよい。
【0139】
[0149]本明細書において使用される言語は、読みやすさおよび指導上の目的で主に選択されてきており、主題を線引きしまたは制限するために選択されてきていない場合がある。したがって、本開示の範囲が、この詳細な説明によってではなく、本明細書に基づく出願上に公表された特許請求の範囲によって限定されることが意図される。したがって、例の開示は、以下の特許請求の範囲に記載されている主題の範囲の限定ではなく、説明のためのものであることが意図される。
【0140】
[0150]コンテキスト接続システムのためのシステムおよび構成要素の様々な実装形態の完全な理解を与えるために具体的な詳細が前の説明で与えられた。しかしながら、上記で説明された実装形態がこれらの具体的な詳細なしに実施され得ることを当業者は理解されよう。たとえば、回路、システム、ネットワーク、プロセス、および他の構成要素は、実施形態を不要な詳細で不明瞭にしないように、ブロック図の形式において構成要素として示され得る。他の事例では、実施形態を不明瞭にすることを回避するために、よく知られている回路、プロセス、アルゴリズム、構造、および技法が不要な詳細なしに示され得る。
【0141】
[0151]個別の実装形態は、フローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明される場合があることにも留意されたい。フローチャートは動作を連続プロセスとして説明することがあるが、動作の多くは並行してまたは同時に実施され得る。さらに、動作の順序は並べ替えられ得る。それの動作が完了されるとき、プロセスは終了されるが、図中に含まれない追加のステップを有し得る。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応するとき、それの終了は、呼出し関数またはメイン関数への関数の復帰に対応することができる。
【0142】
[0152]クライアントデバイス、ネットワークデバイス、および他のデバイスは、特に、1つまたは複数の集積回路、入力デバイス、出力デバイス、データ記憶デバイス、および/またはネットワークインターフェースを含むコンピューティングシステムであり得る。集積回路は、特に、たとえば、1つまたは複数のプロセッサ、揮発性メモリ、および/または不揮発性メモリを含むことができる。入力デバイスは、たとえば、キーボード、マウス、キーパッド、タッチインターフェース、マイクロフォン、カメラ、および/または他のタイプの入力デバイスを含むことができる。出力デバイスは、たとえば、ディスプレイスクリーン、スピーカー、触覚フィードバックシステム、プリンタ、および/または他のタイプの出力デバイスを含むことができる。ハードドライブまたはフラッシュメモリなどのデータ記憶デバイスは、コンピューティングデバイスが、一時的にまたは永続的にデータを記憶することを可能にすることができる。ワイヤレスまたはワイヤードインターフェースなどのネットワークインターフェースは、コンピューティングデバイスがネットワークと通信することを可能にすることができる。コンピューティングデバイスの例は、デスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、ハンドヘルドコンピュータ、タブレット、スマートフォン、携帯情報端末、デジタルホームアシスタント、ならびにコンピューティングデバイスが組み込まれた機械および装置を含む。
【0143】
[0153]「コンピュータ可読媒体」という用語は、限定はしないが、ポータブルまたは非ポータブル記憶デバイス、光記憶デバイス、ならびに(1つまたは複数の)命令および/またはデータを記憶、含有、または搬送することが可能な様々な他の媒体を含む。コンピュータ可読媒体は、データがそこに記憶され得る非一時的媒体を含み得、それは、ワイヤレスにまたはワイヤード接続を介して伝搬する搬送波および/または一時的電子信号を含まない。非一時的媒体の例は、限定はしないが、磁気ディスクまたはテープ、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD)などの光記憶媒体、フラッシュメモリ、メモリまたはメモリデバイスを含み得る。コンピュータ可読媒体は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、あるいは命令、データ構造、またはプログラムステートメントの任意の組合せを表し得る、コードおよび/または機械実行可能命令をその上に記憶していることがある。コードセグメントは、情報、データ、引数、パラメータ、またはメモリコンテンツをパスおよび/または受信することによって、別のコードセグメントまたはハードウェア回路に結合され得る。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む、任意の好適な手段を介してパス、フォワーディング、または送信され得る。
【0144】
[0154]上記で説明された様々な例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードで実装されるとき、必要なタスクを実施するためのプログラムコードまたはコードセグメント(たとえば、コンピュータプログラム製品)は、コンピュータ可読または機械可読記憶媒体(たとえば、プログラムコードまたはコードセグメントを記憶するための媒体)に記憶され得る。集積回路中に実装される(1つまたは複数の)プロセッサが、必要なタスクを実施し得る。
【0145】
[0155]構成要素が、ある動作を実施する「ように構成されて」いるものとして説明される場合、そのような構成は、たとえば、動作を実施するように電子回路または他のハードウェアを設計することによって、動作を実施するようにプログラマブル電子回路(たとえば、マイクロプロセッサ、または他の好適な電子回路)をプログラムすることによって、またはそれらの任意の組合せによって、達成され得る。
【0146】
[0156]本明細書で開示される実装形態に関連して説明される、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの組合せとして実装され得る。ハードウェアとソフトウェアとのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、概して、それらの機能に関して上記で説明された。そのような機能がハードウェアとして実装されるのか、ソフトウェアとして実装されるのかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明された機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の判断は、本開示の範囲からの逸脱を生じるものと解釈されるべきではない。
【0147】
[0157]本明細書において説明される技法は、電子ハードウェア、コンピュータソフトウェア、ファームウェア、または、これらの任意の組合せにおいても実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用を含む複数の用途を有する集積回路デバイスなど、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として説明された特徴は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別個に実装され得る。ソフトウェアで実装された場合、本技法は、実行されたとき、上記で説明された方法のうちの1つまたは複数を実施する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含み得るコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期型ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、FLASH(登録商標)メモリ、磁気もしくは光学データ記憶媒体など、メモリまたはデータ記憶媒体を備え得る。本技法は、追加または代替として、伝搬信号または電波など、命令またはデータ構造の形式でプログラムコードを搬送または通信し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体によって少なくとも部分的に実現され得る。
【0148】
[0158]プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価な集積回路またはディスクリート論理回路など、1つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示において説明される技法のうちのいずれかを実施するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。したがって、本明細書で使用される「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または、本明細書で説明される技法の実装に好適な任意の他の構造もしくは装置のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明される機能は、中断されたデータベース更新システムを実装するために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内に与えられ得る。
【0149】
[0159]本技術の上記の詳細な説明は、例示および説明のために提示された。それは、網羅的なものでも、開示された形態そのものに本技術を限定するものでもない。上記の教示に照らして、多くの修正形態および変形形態が可能である。本技術の原理およびそれの実際的適用例について最良に説明し、他の当業者が、様々な実施形態において、企図された特定の用途に好適であるような様々な修正を加えて本技術を最良に利用することを可能にするために、説明される実施形態が選定された。本技術の範囲が特許請求の範囲によって定義されることが意図される。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
コンピュータ実装方法であって、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を備える、コンピュータ実装方法。
[C2]
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに備える、C1に記載のコンピュータ実装方法。
[C3]
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、 前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに備える、C1に記載のコンピュータ実装方法。
[C4]
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに備える、C1に記載のコンピュータ実装方法。
[C5]
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、 前記更新されたMACSを提供することと
をさらに備える、C1に記載のコンピュータ実装方法。
[C6]
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、C1に記載のコンピュータ実装方法。
[C7]
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、C1に記載のコンピュータ実装方法。
[C8]
システムであって、
1つまたは複数のプロセッサと、
命令を記憶するメモリと
を備え、前記命令は、前記1つまたは複数のプロセッサによって実行されたことの結果として、前記システムに、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を行わせる、システム。
[C9]
ボット状態の前記セットを検出することを前記システムに行わせる前記命令は、前記システムに、
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに行わせる、C8に記載のシステム。
[C10]
ボット状態の前記セットを検出することを前記システムに行わせる前記命令は、前記システムに、
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、 前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに行わせる、C8に記載のシステム。
[C11]
前記命令は、前記システムに、
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに行わせる、C8に記載のシステム。
[C12]
前記命令は、前記システムに、
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、 前記更新されたMACSを提供することと
をさらに行わせる、C8に記載のシステム。
[C13]
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、C8に記載のシステム。
[C14]
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、C8に記載のシステム。
[C15]
実行可能な命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記実行可能な命令は、コンピュータシステムの1つまたは複数のプロセッサによって実行された結果として、前記コンピュータシステムに、
会話型ボットエージェントとカスタマーとの間の会話に対応する会話データを受信することと、ここにおいて、前記会話データは、前記会話型ボットエージェントと前記カスタマーとの間で交換されたメッセージを含む、
前記会話データから特徴量のセットを計算することと、
前記会話における前記会話型ボットエージェントのパフォーマンスに対応するボット状態のセットを検出することと、ここにおいて、ボット状態の前記セットは、特徴量の前記セットと前記会話データとに基づいて検出される、
サンプル会話データと対応するボット状態とを使用して機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についての有意味自動接続スコア(MACS)を決定することを含む、
前記会話とボット状態の前記セットとについてのMACSを提供することと、
前記会話型ボットエージェントに対する更新を受信することと、
前記会話型ボットエージェントに対する前記更新を実施することと、ここにおいて、前記更新は、前記機械学習モデルをトレーニングするために使用される、
を行わせる、非一時的コンピュータ可読記憶媒体。
[C16]
前記コンピュータシステムにボット状態の前記セットを検出することを行わせる前記実行可能な命令は、前記コンピュータシステムに、
前記サンプル会話データと前記サンプル会話データに対して作成されたアノテーションとを使用してボット状態機械学習モデルをトレーニングすることと、ここにおいて、トレーニングすることは、会話についてのボット状態を決定することを含む、
ボット状態の前記セットを検出するために、前記ボット状態機械学習モデルを使用することと
をさらに行わせる、C15に記載の非一時的コンピュータ可読媒体。
[C17]
前記コンピュータシステムにボット状態の前記セットを検出することを行わせる前記実行可能命令は、前記コンピュータシステムに、
可能なボット状態のセットに対応する信頼度スコアを計算することと、ここにおいて、前記信頼度スコアは、特徴量の前記セットと前記会話データとに基づいて計算される、 前記信頼度スコアにしきい値を適用することと、ここにおいて、ボット状態は、対応する信頼度スコアが前記しきい値よりも大きい結果として検出される、
をさらに行わせる、C15に記載の非一時的コンピュータ可読媒体。
[C18]
前記実行可能な命令は、前記コンピュータシステムに、
前記サンプル会話データに対応する会話長を抽出することと、
前記機械学習モデルをさらにトレーニングするために前記会話長を使用することと、ここにおいて、前記機械学習モデルは、会話長と前記会話についての前記MACSとの間の相関を識別するようにさらにトレーニングされる、
をさらに行わせる、C15に記載の非一時的コンピュータ可読媒体。
[C19]
前記実行可能な命令は、前記コンピュータシステムに、
前記会話に関連する新しいメッセージを受信することと、
新しいボット状態が前記新しいメッセージ内に存在するかどうかに関する決定を生成することと、
前記会話についての前記MACSを動的に更新することと、ここにおいて、前記MACSは、前記決定と、前記会話データと、前記新しいメッセージとに基づいて更新される、 前記更新されたMACSを提供することと
をさらに行わせる、C15に記載の非一時的コンピュータ可読媒体。
[C20]
前記機械学習モデルは、前記サンプル会話データ内のボット状態の存在に対応する信頼度スコアに基づいてさらにトレーニングされ、ここにおいて、前記信頼度スコアは、ボット状態機械学習モデルから取得される、C15に記載の非一時的コンピュータ可読媒体。
[C21]
前記機械学習モデルは、前記サンプル会話データから抽出された特徴量のセットを使用してさらにトレーニングされる、C15に記載の非一時的コンピュータ可読記憶媒体。