(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-14
(54)【発明の名称】意図分類のコンテキスト内の信頼度分類器
(51)【国際特許分類】
G06F 16/35 20190101AFI20240206BHJP
G06F 3/16 20060101ALI20240206BHJP
【FI】
G06F16/35
G06F3/16 650
G06F3/16 630
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023538021
(86)(22)【出願日】2021-10-11
(85)【翻訳文提出日】2023-07-20
(86)【国際出願番号】 US2021054380
(87)【国際公開番号】W WO2022146524
(87)【国際公開日】2022-07-07
(32)【優先日】2020-12-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】523074490
【氏名又は名称】ジェネシス クラウド サービシーズ インコーポレイテッド
(74)【代理人】
【識別番号】110002848
【氏名又は名称】弁理士法人NIP&SBPJ国際特許事務所
(72)【発明者】
【氏名】サンダラム, ラマスブラマニアン
(72)【発明者】
【氏名】ブドゥグッパ, パヴァン
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175FA03
(57)【要約】
一実施形態による、自動チャットボットに関連する意図分類のために信頼度分類器を適用する方法は、コンピューティングシステムによって、意図分類器を用いて発話を処理して、発話に関連付けられた可能な意図の確率分布を判定することと、コンピューティングシステムによって、確率分布の尖度の複数の測度を生成することと、コンピューティングシステムによって、訓練された信頼度分類器を適用して、確率分布の尖度の複数の測度に基づいて、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定することと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
自動チャットボットに関連する意図分類のために信頼度分類器を適用する方法であって、前記方法が、
コンピューティングシステムによって、意図分類器を用いて発話を処理して、前記発話に関連付けられた可能な意図の確率分布を判定することと、
前記コンピューティングシステムによって、前記確率分布の尖度の複数の測度を生成することと、
前記コンピューティングシステムによって、訓練された信頼度分類器を適用して、前記確率分布の前記尖度の複数の測度に基づいて、前記発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定することと、を含む、方法。
【請求項2】
前記コンピューティングシステムによって、前記発話に関連付けられた前記最も可能性の高い意図の前記正規化された確率を信頼度閾値と比較することを更に含む、請求項1に記載の方法。
【請求項3】
前記コンピューティングシステムによって、前記発話に関連付けられた前記最も可能性の高い意図の前記正規化された確率が前記信頼度閾値を満たすと判定したことに応答して、前記最も可能性の高い意図を前記発話に関連付けられた意図として選択することと、
前記コンピューティングシステムによって、前記最も可能性の高い意図を前記発話に関連付けられた前記意図として選択したことに応答して、前記自動チャットボットと通信しているユーザデバイスにメッセージを送信することであって、前記メッセージが前記発話に対する応答である、送信することと、を更に含む、請求項2に記載の方法。
【請求項4】
前記確率分布の前記尖度の複数の測度を生成することが、
前記確率分布の確率スコアを降順にソートすることと、
ソートされた前記確率スコアの最大確率のサブセットを確率セットとして選択することと、
前記確率セット内の連続的にランク付けされた確率の複数の比を判定することと、
前記確率セット内の前記確率のカートシススコアを判定することと、
前記確率分布のエントロピーを判定することと、
前記確率分布の前記エントロピーを前記確率分布の最大可能エントロピーで除算することによって前記エントロピーを正規化して、正規化されたエントロピーを生成することと、を含む、請求項1に記載の方法。
【請求項5】
前記確率分布の前記尖度の複数の測度を生成することが、前記複数の比、前記カートシススコア、及び前記正規化されたエントロピーの各々にシグモイド関数を適用することを含む、請求項4に記載の方法。
【請求項6】
ソートされた前記確率スコアの前記最大確率の前記サブセットを前記確率セットとして選択することが、ソートされた前記確率スコアの5つの最大確率を前記確率セットとして選択することを含む、請求項4に記載の方法。
【請求項7】
前記確率分布の前記尖度の複数の測度を生成することが、前記確率分布のカートシススコアを判定することを含む、請求項1に記載の方法。
【請求項8】
前記確率分布の前記尖度の複数の測度を生成することが、前記確率分布のエントロピーを判定することを含む、請求項1に記載の方法。
【請求項9】
前記確率分布の前記尖度の複数の測度を生成することが、
前記確率分布の確率を最大確率によってランク付けすることと、
前記確率分布の前記確率をランク付けしたことに応答して、連続的にランク付けされた確率の複数の比を判定することと、を含む、請求項1に記載の方法。
【請求項10】
前記コンピューティングシステムによって、確率的勾配降下最適化を使用してパラメータを調整することによって前記信頼度分類器を訓練することを更に含む、請求項1に記載の方法。
【請求項11】
自動チャットボットに関連する意図分類のために信頼度分類器を適用するためのシステムであって、前記システムが、
少なくとも1つのプロセッサと、
少なくとも1つのメモリと、を備え、前記少なくとも1つのメモリが、そこに記憶されている複数の命令を含み、前記命令が、前記少なくとも1つのプロセッサによる実行に応答して、前記システムに、
意図分類器を用いて発話を処理して、前記発話に関連付けられた可能な意図の確率分布を判定することと、
前記確率分布の尖度の複数の測度を生成することと、
訓練された信頼度分類器を適用して、前記確率分布の前記尖度の複数の測度に基づいて、前記発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定することと、を行わせる、システム。
【請求項12】
前記複数の命令が、前記システムに、前記発話に関連付けられた前記最も可能性の高い意図の前記正規化された確率を信頼度閾値と比較することを更に行わせる、請求項11に記載のシステム。
【請求項13】
前記複数の命令が、前記システムに、
前記発話に関連付けられた前記最も可能性の高い意図の前記正規化された確率が前記信頼度閾値を満たすと判定したことに応答して、前記最も可能性の高い意図を前記発話に関連付けられた意図として選択することと、
前記最も可能性の高い意図を前記発話に関連付けられた前記意図として選択したことに応答して、前記自動チャットボットと通信しているユーザデバイスにメッセージを送信することであって、前記メッセージが前記発話に対する応答である、送信することと、を更に行わせる、請求項12に記載のシステム。
【請求項14】
前記確率分布の前記尖度の複数の測度を生成することが、
前記確率分布の確率スコアを降順にソートすることと、
ソートされた前記確率スコアの最大確率のサブセットを確率セットとして選択することと、
前記確率セット内の連続的にランク付けされた確率の複数の比を判定することと、
前記確率セット内の前記確率のカートシススコアを判定することと、
前記確率分布のエントロピーを判定することと、
前記確率分布の前記エントロピーを前記確率分布の最大可能エントロピーで除算することによって前記エントロピーを正規化して、正規化されたエントロピーを生成することと、を含む、請求項11に記載のシステム。
【請求項15】
前記確率分布の前記尖度の複数の測度を生成することが、前記複数の比、前記カートシススコア、及び前記正規化されたエントロピーの各々にシグモイド関数を適用することを含む、請求項14に記載のシステム。
【請求項16】
ソートされた前記確率スコアの前記最大確率の前記サブセットを前記確率セットとして選択することが、ソートされた前記確率スコアの5つの最大確率を前記確率セットとして選択することを含む、請求項14に記載のシステム。
【請求項17】
前記確率分布の前記尖度の複数の測度を生成することが、前記確率分布のカートシススコアを判定することを含む、請求項11に記載のシステム。
【請求項18】
前記確率分布の前記尖度の複数の測度を生成することが、前記確率分布のエントロピーを判定することを含む、請求項11に記載のシステム。
【請求項19】
前記確率分布の前記尖度の複数の測度を生成することが、
前記確率分布の確率を最大確率によってランク付けすることと、
前記確率分布の前記確率をランク付けしたことに応答して、連続的にランク付けされた確率の複数の比を判定することと、を含む、請求項11に記載のシステム。
【請求項20】
前記複数の命令が、前記システムに、確率的勾配降下最適化を使用してパラメータを調整することによって前記信頼度分類器を訓練することを更に行わせる、請求項11に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本出願は、2020年12月28日に出願された米国特許非仮出願第17/135,114号に対する優先権を主張し、その全体が参照により本明細書に組み込まれる。
【背景技術】
【0002】
意図分類は、典型的な自然言語理解(natural language understanding、NLU)システムの重要な機能である。意図分類器は、一般に、ユーザの音声を転記されたフォーマット(又はテキスト入力)で受け取り、ユーザの発話が特定の事前定義された意図に関連付けられる確率を出力する。例えば、航空会社に関連付けられたユーザインターフェースは、4つのオプション、すなわち、チケットを予約すること、チケットをキャンセルすること、フライト情報を取得すること、及び航空会社の手荷物ポリシーを取得することを可能にし得る。そのようなインターフェースのための意図分類器は、ユーザのテキスト/音声入力を受信し、その入力を分析して、4つのオプションのうちのどれをユーザが選択することを意図した可能性が最も高いかを判定し得る。オプションの数が増加するにつれて、真のユーザ意図の確認は更に複雑になることが多い。
【発明の概要】
【0003】
一実施形態は、自動チャットボットに関連する意図分類のために信頼度分類器を適用するための独自のシステム、構成要素、及び方法を対象とする。他の実施形態は、自動チャットボットに関連する意図分類のために信頼度分類器を適用するための装置、システム、デバイス、ハードウェア、方法、及びそれらの組み合わせを対象とする。
【0004】
一実施形態によれば、自動チャットボットに関連する意図分類のために信頼度分類器を適用する方法は、コンピューティングシステムによって、意図分類器を用いて発話を処理して、発話に関連付けられた可能な意図の確率分布を判定することと、コンピューティングシステムによって、確率分布の尖度の複数の測度を生成することと、コンピューティングシステムによって、訓練された信頼度分類器を適用して、確率分布の尖度の複数の測度に基づいて、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定することと、を含み得る。
【0005】
いくつかの実施形態では、方法は、コンピューティングシステムによって、発話に関連付けられた最も可能性の高い意図の正規化された確率を信頼度閾値と比較することを更に含み得る。
【0006】
いくつかの実施形態では、方法は、コンピューティングシステムによって、発話に関連付けられた最も可能性の高い意図の正規化された確率が信頼度閾値を満たすと判定したことに応答して、最も可能性の高い意図を発話に関連付けられた意図として選択することと、コンピューティングシステムによって、最も可能性の高い意図を発話に関連付けられた意図として選択したことに応答して、自動チャットボットと通信しているユーザデバイスにメッセージを送信することであって、メッセージが発話に対する応答である、送信することと、を更に含み得る。
【0007】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布の確率スコアを降順にソートすることと、ソートされた確率スコアの最大確率のサブセットを確率セットとして選択することと、確率セット内の連続的にランク付けされた確率の複数の比を判定することと、確率セット内の確率のカートシススコアを判定することと、確率分布のエントロピーを判定することと、確率分布のエントロピーを確率分布の最大可能エントロピーで除算してエントロピーを正規化することによって、正規化されたエントロピーを生成することと、を含み得る。
【0008】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、複数の比、カートシススコア、及び正規化されたエントロピーの各々にシグモイド関数を適用することを含み得る。
【0009】
いくつかの実施形態では、ソートされた確率スコアの最大確率のサブセットを確率セットとして選択することは、ソートされた確率スコアの5つの最大確率を確率セットとして選択することを含み得る。
【0010】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布のカートシススコアを判定することを含み得る。
【0011】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布のエントロピーを判定することを含み得る。
【0012】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布の確率を最大確率によってランク付けすることと、確率分布の確率をランク付けしたことに応答して、連続的にランク付けされた確率の複数の比を判定することと、を含み得る。
【0013】
いくつかの実施形態では、方法は、コンピューティングシステムによって、確率的勾配降下最適化を使用してパラメータを調整することによって信頼度分類器を訓練することを更に含み得る。
【0014】
別の実施形態によれば、自動チャットボットに関連する意図分類のために信頼度分類器を適用するためのシステムは、少なくとも1つのプロセッサと、少なくとも1つのメモリとを含み得、少なくとも1つのメモリは、そこに記憶されている複数の命令を含み、命令は、少なくとも1つのプロセッサによる実行に応答して、システムに、意図分類器を用いて発話を処理して、発話に関連付けられた可能な意図の確率分布を判定することと、確率分布の尖度の複数の測度を生成することと、訓練された信頼度分類器を適用して、確率分布の尖度の複数の測度に基づいて、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定することと、を行わせる。
【0015】
いくつかの実施形態では、複数の命令は、システムに、発話に関連付けられた最も可能性の高い意図の正規化された確率を信頼度閾値と比較することを更に行わせ得る。
【0016】
いくつかの実施形態では、複数の命令は、システムに、発話に関連付けられた最も可能性の高い意図の正規化された確率が信頼度閾値を満たすと判定したことに応答して、最も可能性の高い意図を発話に関連付けられた意図として選択することと、最も可能性の高い意図を発話に関連付けられた意図として選択したことに応答して、自動チャットボットと通信しているユーザデバイスにメッセージを送信することであって、メッセージが発話に対する応答である、送信することと、を更に行わせ得る。
【0017】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布の確率スコアを降順にソートすることと、ソートされた確率スコアの最大確率のサブセットを確率セットとして選択することと、確率セット内の連続的にランク付けされた確率の複数の比を判定することと、確率セット内の確率のカートシススコアを判定することと、確率分布のエントロピーを判定することと、確率分布のエントロピーを確率分布の最大可能エントロピーで除算することによってエントロピーを正規化して、正規化されたエントロピーを生成することと、を含み得る。
【0018】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、複数の比、カートシススコア、及び正規化されたエントロピーの各々にシグモイド関数を適用することを含み得る。
【0019】
いくつかの実施形態では、ソートされた確率スコアの最大確率のサブセットを確率セットとして選択することは、ソートされた確率スコアの5つの最大確率を確率セットとして選択することを含み得る。
【0020】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布のカートシススコアを判定することを含み得る。
【0021】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布のエントロピーを判定することを含み得る。
【0022】
いくつかの実施形態では、確率分布の尖度の複数の測度を生成することは、確率分布の確率を最大確率によってランク付けすることと、確率分布の確率をランク付けしたことに応答して、連続的にランク付けされた確率の複数の比を判定することと、を含み得る。
【0023】
いくつかの実施形態では、複数の命令は、システムに、確率的勾配降下最適化を使用してパラメータを調整することによって信頼度分類器を訓練することを更に行わせ得る。
【0024】
この概要は、特許請求される主題の重要な又は本質的な特徴を識別することを意図するものではなく、特許請求される主題の範囲を限定する助けとして使用されることも意図されていない。本出願の更なる実施形態、形態、特徴、及び態様は、本明細書と共に提供される説明及び図から明らかになるであろう。
【図面の簡単な説明】
【0025】
本明細書に説明される概念は、例として例解的なものであり、添付の図面における限定としてではない。例解を単純かつ明確にするために、図に例解される要素は、必ずしも縮尺通りに描画されていない。適切であると考えられる場合、参照ラベルは、対応する又は類似の要素を示すために図面間で繰り返されている。
【
図1】意図分類のために信頼度分類器を適用するためのシステムの少なくとも1つの実施形態の簡略ブロック図である。
【
図2】クラウドベースのシステムの少なくとも1つの実施形態の簡略ブロック図である。
【
図3】コンピューティングシステムの少なくとも1つの実施形態の簡略ブロック図である。
【
図4】信頼度分類器を訓練するための方法の少なくとも1つの実施形態の簡略フロー図である。
【
図5】確率分布の尖度の測度を生成するための方法の少なくとも1つの実施形態の簡略フロー図である。
【
図6】訓練された信頼度分類器を使用して意図を判定するための方法の少なくとも1つの実施形態の簡略フロー図である。
【発明を実施するための形態】
【0026】
本開示の概念は、様々な修正及び代替形態の余地があるが、具体的な実施形態が図面に例として示されており、本明細書で詳細に説明される。しかしながら、本開示の概念を開示された特定の形態に限定する意図はなく、逆に、その意図は、本開示及び添付の特許請求の範囲と一致する全ての修正、等価物、及び代替物を網羅することであることを理解されたい。
【0027】
「一実施形態(one embodiment)」、「一実施形態(an embodiment)」、「例示的な実施形態」などの本明細書における言及は、説明される実施形態が特定の特徴、構造、又は特性を含み得るが、全ての実施形態が特定の特徴、構造、又は特性を必ず含む場合があるか、又は含まない場合があることを示す。更に、かかる句は、必ずしも同じ実施形態を指しているわけではない。「好ましい」構成要素又は特徴への言及は、一実施形態に関する特定の構成要素又は特徴の望ましいことを示すことができるが、本開示は、そのような構成要素又は特徴を省略し得る他の実施形態に関してそのように限定するものではないことを更に理解されたい。更に、特定の特徴、構造、又は特性が実施形態に関連して説明される場合、明確に説明されているかどうかに関わりなく、他の実施形態に関連するこのような特徴、構造、又は特性への実装は、当業者の知見内であるものとする。更に、「A、B、及びCのうちの少なくとも1つ」の形態のリストに含まれる項目は、(A)、(B)、(C)、(A及びB)、(B及びC)、(A及びC)、又は(A、B、及びC)を意味することができることを理解されたい。同様に、「A、B、又はCのうちの少なくとも1つ」の形態で列挙された項目は、(A)(B)、(C)、(A及びB)、(B及びC)、(A及びC)、又は(A、B、及びC)を意味することができることを理解されたい。更に、特許請求の範囲に関して、「(a)」、「(an)」、「少なくとも1つの(at least one)」、及び/又は「少なくとも1つの部分(at least one portion)」などの語及び句の使用は、具体的に反対のことが述べられていない限り、そのような要素の1つのみに限定されるように解釈されるべきではなく、「少なくとも一部の(at least a portion)」及び/又は「一部の(a portion)」などの句の使用は、具体的なに反対のことが述べられていない限り、そのような要素の一部のみを含む実施形態及びそのような要素の全体を含む実施形態の両方を包含するように解釈されるべきである。
【0028】
開示された実施形態は、場合によっては、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせで実装され得る。開示された実施形態はまた、1つ以上のプロセッサによって読み取られ実行され得る1つ以上の一時的又は非一時的機械可読(例えば、コンピュータ可読)記憶媒体によって実行されるか又は記憶される命令として実装され得る。機械可読記憶媒体は、機械(例えば、揮発性若しくは不揮発性メモリ、メディアディスク、又は他のメディアデバイス)によって読み取り可能な形態で情報を記憶又は伝送するための任意の記憶デバイス、機構、又は他の物理的構造として具現化され得る。
【0029】
図面では、いくつかの構造的又は方法的特徴は、具体的な配置及び/又は順序付けで示され得る。しかしながら、そのような具体的な配置及び/又は順序付けは必要とされない場合があることを理解されたい。むしろ、いくつかの実施形態において、そのような特徴は、反対のことが示されていない限り、例解的な図面に示されているものとは異なる方法及び/又は順序で配置され得る。更に、特定の図に構造的又は方法的特徴を含めることは、そのような特徴が全ての実施形態で必要とされることを意味するものではなく、いくつかの実施形態において、含まれない場合があるか、又は他の特徴と組み合わされる場合がある。
【0030】
ここで
図1を参照すると、例示的な実施形態では、意図分類のために信頼度分類器を適用するためのシステム100は、クラウドベースのシステム102、ネットワーク104、コンタクトセンターシステム106、及びユーザデバイス108を含む。加えて、例示的なクラウドベースのシステム102は、意図分類器110及び信頼度分類器112を含む。
図1の例示的な実施形態には、1つのクラウドベースのシステム102、1つのネットワーク104、1つのコンタクトセンターシステム106、1つのユーザデバイス108、1つの意図分類器110、及び1つの信頼度分類器112のみが示されているが、他の実施形態では、システム100は、複数のクラウドベースのシステム102、ネットワーク104、コンタクトセンターシステム106、ユーザデバイス108、意図分類器110、及び/又は信頼度分類器112を含み得る。例えば、いくつかの実施形態では、複数のクラウドベースのシステム102(例えば、関連する又は無関係のシステム)を使用して、本明細書に記載の様々な機能を実行することができる。更に、いくつかの実施形態では、本明細書に説明されるシステムのうちの1つ以上は、システム100から除外され得、独立しているものとして説明されているシステムのうちの1つ以上は、別のシステムの一部分を形成し得、かつ/又は別のシステムの一部分を形成するものとして説明されているシステムのうちの1つ以上は、独立し得る。
【0031】
いくつかのシステムでは、NLU作成者/管理者は、意図ラベルにマッピングされた発話の訓練セットを意図分類器に供給することによって、教師あり学習手法を用いて意図分類器を訓練することができる。これらの発話は、(例えば、訓練プロセスを介して)意図分類器のパラメータについて最適化する前に処理されることが可能な密ベクトル(例えば、浮動小数点数のアレイ)に変換され得る。完了すると、訓練されたモデルは、ユーザが入力テキスト発話を提供するときに活用され得、入力テキスト発話は、意図分類器が可能な意図に対する確率のセットを予測することを可能にするために、分類器の訓練プロセス中に使用されたのと同じ特徴生成器を使用して処理される。入力は、例えば、対話管理システム、チャットボット、パーソナルボット、又は他のシステムから来てもよく、分類器は、それが応答して最良の行動方針を判定し得るように、確率をシステムに提供してもよい。
【0032】
0.0~1.0の範囲内の出力確率の範囲は、意図分類器の出力に依存するシステムに対してかなりの曖昧さを引き起こす可能性がある。例えば、意図分類器が3つの意図を認識するように訓練されており、下流の消費システムは、最も高い確率が0.7(例えば、信頼度閾値)である場合に特定の応答を較正したと仮定する。可能な意図の各々が等確率である場合、各意図の確率は約0.33になるはずである。しかしながら、可能な意図の数が4に増加する場合、各等確率ケースの確率は0.33ではなく0.25になるはずである。可能な意図の数が増加するにつれて、個々の意図の確率は減少し続ける。これは、個々の確率を著しく減衰させ、したがって、最高確率は、典型的にはより低い。更に、異なる数の意図は、信頼度閾値を設定/定義することを移動ターゲットにし得る。
【0033】
本明細書に説明されるシステム100及び技術は、(例えば、チャットボット又はパーソナルボットとのユーザ通信に基づく)意図分類のコンテキストにおいて改善された信頼度分類を可能にし、これは、より多数の可能な意図に関連付けられたより低い確率の問題に対処する。本明細書に説明されるように、出力確率分布は、本質的に、確率分布の尖度の測定値に基づいて入力発話から意図へのマッピングを予測する際の意図分類器の信頼度を測定するために使用することができる。信頼度分類器は、訓練され、次いで、リアルタイムで使用されて、意図分類器からの出力確率を0.0~1.0の範囲内の正規化された出力値に変換し、この正規化された出力値は、意図分類器の可能な限り最良の意図確率の出力確率のプロキシとして働く。したがって、信頼度閾値はまた、0.0~1.0の範囲内で設定及び維持されてもよく、その結果、可能な意図オプションの数に基づいて閾値を変更する必要はもはやない。
【0034】
クラウドベースのシステム102、ネットワーク104、コンタクトセンターシステム106、ユーザデバイス108、意図分類器110、及び信頼度分類器112の各々は、本明細書に説明される機能を実行するのに適した任意のタイプのデバイス/システム、デバイス/システムの集合、又はそれらの部分として具現化され得ることを理解されたい。
【0035】
クラウドベースのシステム102は、本明細書に説明される機能を実行することができる任意の1つ以上のタイプのデバイス/システムとして具現化され得る。例えば、例示的な実施形態では、クラウドベースのシステム102は、ユーザの発話を示すユーザ入力データを受信し、(例えば、意図分類器110及び信頼度分類器112を使用して)ユーザ入力データを処理して、その発話に関連付けられた最も可能性の高いユーザ意図、及びシステムの予測における対応する信頼度を判定するように構成され、これらは、(例えば、他のシステムによって)決定を行うために使用され得る。本明細書に説明されるように、クラウドベースのシステム102の意図分類器110は、ユーザの発話に関連付けられたユーザ入力データを処理し、ユーザの発話が意図分類器110によって分析された可能な事前定義された意図の各々に対応するという、対応する確率を出力するように構成される。信頼度分類器112は更に、意図分類器110によって出力された確率分布を分析して、確率分布の尖度の複数の測度(例えば、比、カートシススコア、エントロピーなど)を生成し、それらの尖度の測度に基づいて、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定する。
【0036】
クラウドベースのシステム102は、本明細書では単数形で説明されるが、クラウドベースのシステム102は、いくつかの実施形態では、複数のサーバ/システムとして具現化されてもよく、又は複数のサーバ/システムを含んでもよいことを理解されたい。更に、クラウドベースのシステム102は、本明細書ではクラウドベースのシステムとして説明されるが、システム102は、他の実施形態では、クラウドコンピューティング環境の外部に存在する1つ以上のサーバ/システムとして具現化されてもよいことを理解されたい。いくつかの実施形態では、クラウドベースのシステム102は、
図2を参照して説明されるクラウドベースのシステム200として、又はそれに類似して具現化されてもよい。
【0037】
クラウドベースの実施形態において、クラウドベースのシステム102は、例えば、複数の命令をオンデマンドで実行し、特定のアクティビティ/トリガによってプロンプトされたときにのみ命令を実行し、使用されないときにはコンピューティングリソースを消費しないサーバアンビギュアス(server-ambiguous)コンピューティングソリューションとして具現化され得る。すなわち、システム102は、様々な仮想関数(例えば、ラムダ関数、Azure関数、Googleクラウド関数、及び/又は他の好適な仮想関数)が、本明細書に説明されるシステム102の機能に対応して実行され得るコンピューティングシステム(例えば、デバイスの分散ネットワーク)「上に」存在する仮想コンピューティング環境として具現化され得る。例えば、イベントが発生する(例えば、データが処理のためにシステム102に転送される)と、仮想コンピューティング環境が、(例えば、仮想コンピューティング環境のAPIへの要求を介して)通信され得、それにより、APIは、一連のルールに基づいて、正しい仮想機能(例えば、特定のサーバアンビギュアスコンピューティングリソース)に要求をルーティングし得る。したがって、データの伝送の要求が(例えば、システム102への適切なユーザインターフェースを介して)ユーザによってなされる場合、適切な仮想関数は、仮想関数のインスタンスを削除する前にアクションを実施するように実行され得る。
【0038】
ネットワーク104は、ネットワーク104を介して通信可能に接続された様々なデバイス間の通信を容易にすることができる任意の1つ以上のタイプの通信ネットワークとして具現化され得る。したがって、ネットワーク104は、1つ以上のネットワーク、ルータ、スイッチ、アクセスポイント、ハブ、コンピュータ、及び/又は他の介在ネットワークデバイスを含み得る。例えば、ネットワーク104は、1つ以上のセルラネットワーク、電話ネットワーク、ローカル若しくはワイドエリアネットワーク、一般的に利用可能なグローバルネットワーク(例えば、インターネット)、アドホックネットワーク、近距離通信リンク、又はそれらの組み合わせとして具現化され得るか、あるいはそれらを含み得る。いくつかの実施形態では、ネットワーク104は、回路交換音声若しくはデータネットワーク、パケット交換音声若しくはデータネットワーク、並びに/又は音声及び/若しくはデータを送信することができる任意の他のネットワークを含み得る。特に、いくつかの実施形態では、ネットワーク104は、インターネットプロトコル(Internet Protocol、IP)ベース及び/又は非同期転送モード(asynchronous transfer mode、ATM)ベースのネットワークを含み得る。いくつかの実施形態では、ネットワーク104は、音声トラフィック(例えば、ボイスオーバーIP(Voice over IP、VOIP)ネットワークを介して)、ウェブトラフィック(例えば、ハイパーテキストトランスファープロトコル(hypertext transfer protocol、HTTP)トラフィック及びハイパーテキストマークアップ言語(HTML)トラフィック)、及び/又は他のネットワークトラフィックを、特定の実施形態及び/又は互いに通信するシステム100のデバイスに応じて処理することができる。様々な実施形態では、ネットワーク104は、アナログ又はデジタルの有線及び無線ネットワーク(例えば、IEEE802.11ネットワーク、公衆交換電話網(Public Switched Telephone Network、PSTN)、統合サービスデジタル網(Integrated Services Digital Network、ISDN)、並びにデジタル加入者回線(Digital Subscriber Line、xDSL))、第3世代(3G)移動体通信網、第4世代(4G)移動体通信網、第5世代(5G)移動体通信網、有線Ethernetネットワーク、プライベートネットワーク(例えば、イントラネットなど)、ラジオ、テレビ、ケーブル、衛星、及び/又はデータを搬送するための任意の他の送達若しくはトンネリング機構、又はそのようなネットワークの任意の適切な組み合わせを含み得る。ネットワーク104は、システム100の様々なデバイス/システム102、106、108、110、112間の接続を可能にし得る。様々なデバイス/システム102、106、108、110、112は、送信元デバイス及び/又は宛先デバイス/システム102、106、108、110、112に応じて、異なるネットワーク104を介して互いに通信し得ることを理解されたい。
【0039】
いくつかの実施形態では、クラウドベースのシステム102は、コンタクトセンターシステム106に通信可能に結合されてもよく、コンタクトセンターシステム106の一部分を形成してもよく、及び/又は他の方法でコンタクトセンターシステム106と併せて使用されてもよいことを理解されたい。例えば、コンタクトセンターシステム106は、(例えば、ユーザデバイス108を介して)ユーザと通信するように構成された(例えば、
図2のチャットボット218と同様の)チャットボットを含んでもよい。更に、いくつかの実施形態では、ユーザデバイス108は、クラウドベースのシステム102と直接通信してもよい。
【0040】
コンタクトセンターシステム106は、コンタクトセンターサービス(例えば、呼センターサービス)をエンドユーザに提供し、そうでなければ本明細書に記載の機能を実行することができる任意のシステムとして具現化され得る。特定の実施形態に応じて、コンタクトセンターシステム106は、コンタクトセンターシステム106を利用する組織の構内/キャンパスに配置されてもよく、及び/又は組織に対して遠隔に配置されてもよい(例えば、クラウドベースのコンピューティング環境において)ことを理解されたい。いくつかの実施形態では、コンタクトセンターシステム106の一部分は、組織の構内/キャンパスに配置されてもよく、一方、コンタクトセンターシステム106の他の部分は、組織の構内/キャンパスに対して遠隔に配置される。このように、コンタクトセンターシステム106は、組織又はそのサードパーティサービスプロバイダ専用の機器内に配備されてもよく、かつ/又は、例えば、複数の企業向けの複数のコンタクトセンターをサポートするためのインフラストラクチャを備えたプライベート又はパブリッククラウド環境などのリモートコンピューティング環境に配備されてもよいことを理解されたい。いくつかの実施形態では、コンタクトセンターシステム106は、電話及び/又は他の通信機構を介したサービスの提供を可能にするためのリソース(例えば、作業者、コンピュータ、及び電気通信機器)を含む。そのようなサービスは、例えば、特定のタイプのコンタクトセンターに応じて、技術サポート、ヘルプデスクサポート、緊急応答、及び/又は他のコンタクトセンターサービスを含むことができる。
【0041】
ユーザデバイス108は、アプリケーションを実行し、そうでなければ本明細書に説明される機能を実行することができる任意のタイプのデバイスとして具現化され得る。例えば、いくつかの実施形態では、ユーザデバイス108は、パーソナルボット、自動エージェント、チャットボット、又は他の自動システムとの会話に参加するためのアプリケーションを実行するように構成される。したがって、ユーザデバイス108は、ユーザが対話してオーディオ、テキスト、ビデオ、及び/又は他の形式のデータを提供し、受信することができる様々な入出力デバイスを有し得る。アプリケーションは、本明細書に説明される機能を実行するのに好適な任意のタイプのアプリケーションとして具現化され得ることを理解されたい。特に、いくつかの実施形態では、アプリケーションは、モバイルアプリケーション(例えば、スマートフォンアプリケーション)、クラウドベースのアプリケーション、ウェブアプリケーション、シンクライアントアプリケーション、及び/又は別のタイプのアプリケーションとして具現化され得る。例えば、いくつかの実施形態では、アプリケーションは、ウェブベースのアプリケーション又はサービスのためのクライアント側インターフェースとして(例えば、ウェブブラウザを介して)機能し得る。
【0042】
クラウドベースのシステム102、ネットワーク104、コンタクトセンターシステム106、及び/又はユーザデバイス108の各々は、
図3を参照して以下に説明されるコンピューティングデバイス300と同様の1つ以上のコンピューティングデバイスとして具現化され得る(かつ/又は含み得る)ことを理解されたい。例えば、例示的な実施形態では、クラウドベースのシステム102、ネットワーク104、コンタクトセンターシステム106、及び/又はユーザデバイス108の各々は、処理デバイス302と、対応するデバイスの動作のために処理デバイス302に実行させる動作ロジック308(例えば、複数の命令)を記憶するメモリ306と、を含み得る。
【0043】
ここで
図2を参照すると、少なくとも1つの実施形態クラウドベースのシステム200の簡略ブロック図が示されている。例示的なクラウドベースのシステム200は、ボーダー通信デバイス202と、SIPサーバ204と、リソースマネージャ206と、メディア制御プラットフォーム208と、スピーチ/テキスト分析システム210と、音声生成器212と、音声ゲートウェイ214と、メディアオーグメンテーションシステム216と、チャットボット218と、音声データストレージ220とを含む。
図2の例示的な実施形態には、1つのボーダー通信デバイス202と、1つのSIPサーバ204と、1つのリソースマネージャ206と、1つのメディア制御プラットフォーム208と、1つのスピーチ/テキスト分析システム210と、1つの音声生成器212と、1つの音声ゲートウェイ214と、1つのメディアオーグメンテーションシステム216と、1つのチャットボット218と、1つの音声データストレージ220とのみが示されているが、他の実施形態では、クラウドベースのシステム200は、複数のボーダー通信デバイス202、SIPサーバ204、リソースマネージャ206、メディア制御プラットフォーム208、スピーチ/テキスト分析システム210、音声生成器212、音声ゲートウェイ214、メディアオーグメンテーションシステム216、チャットボット218、及び/又は音声データストレージ220を含んでもよい。例えば、いくつかの実施形態では、複数のチャットボット218を使用して、同じクラウドベースのシステム200によって処理される異なる主題に関して通信することができる。更に、いくつかの実施形態では、本明細書に説明される構成要素のうちの1つ以上は、システム200から除外され得、独立しているものとして説明されている構成要素のうちの1つ以上は、別の構成要素の一部分を形成し得、かつ/又は別の構成要素の一部分を形成するものとして説明されている構成要素のうちの1つ以上は、独立し得る。
【0044】
ボーダー通信デバイス202は、本明細書に説明される機能を実行することができる任意の1つ以上のタイプのデバイス/システムとして具現化され得る。例えば、いくつかの実施形態では、ボーダー通信デバイス202は、例えば、エンドユーザとコンタクトセンターシステムとの間の音声会話及び他のメディア通信のセットアップ、実行、及びテアダウンに関与するシグナリング及びメディアストリームを制御するように構成されてもよい。いくつかの実施形態では、ボーダー通信デバイス202は、エンドユーザとコンタクトセンターシステムとの間のメディアセッション(「呼」、「電話呼」、又は「通信セッション」とも呼ばれる)中に交換されるシグナリング及びメディアを制御するセッションボーダーコントローラ(session border controller、SBC)であり得る。いくつかの実施形態では、メディアセッション中に交換されるシグナリングは、SIP、H.323、メディアゲートウェイ制御プロトコル(Media Gateway Control Protocol、MGCP)、及び/又は任意の他のボイスオーバーIP(voice-over IP、VoIP)呼シグナリングプロトコルを含み得る。メディアセッション中に交換されるメディアは、呼のオーディオ、ビデオ、又は他のデータを呼の統計値及び品質の情報と共に搬送するメディアストリームを含み得る。
【0045】
いくつかの実施形態では、ボーダー通信デバイス202は、標準SIPバックツーバックユーザエージェント(back-to-back user agent、B2BUA)構成に従って動作し得る。この点に関して、ボーダー通信デバイス202は、VoIP呼における発呼者と被呼者との間に確立されたシグナリング経路及びメディア経路に挿入され得る。いくつかの実施形態では、他の中間ソフトウェア及び/又はハードウェアデバイスが、発呼者と被呼者との間のシグナリング及び/又はメディア経路を確立する際に呼び出されてもよいことを理解されたい。
【0046】
いくつかの実施形態では、ボーダー通信デバイス202は、ネットワーク(例えば、ネットワーク104)を横断する、エンドユーザデバイス(例えば、ユーザデバイス108)及びコンタクトセンターシステム(例えば、コンタクトセンターシステム106)との間でルーティングされるシグナリング(例えば、SIPメッセージ)及びメディアストリーム(例えば、RTPデータ)に対する制御を行使し得る。この点に関して、ボーダー通信デバイス202は、ネットワークを介してユーザデバイスとの間で呼のための信号及びメディアを搬送するトランクと、ネットワークを介してコンタクトセンターシステムとの間で信号及びメディアを搬送するトランクとに結合され得る。
【0047】
SIPサーバ204は、本明細書に説明される機能を実行することができる任意の1つ以上のタイプのデバイス/システムとして具現化され得る。例えば、いくつかの実施形態では、SIPサーバ204は、SIP B2UBAとして動作してもよく、SIPエンドポイント間のSIP要求及び応答のフローを制御し得る。他の実施形態では、SIPサーバ204に加えて、又はその代わりに、VoIP通信セッションをセットアップ及びテアダウンするように構成された任意の他のコントローラが企図されてもよい。SIPサーバ204は、別個の論理構成要素であってもよく、又はリソースマネージャ206と組み合わされてもよい。いくつかの実施形態では、SIPサーバ204は、コンタクトセンターシステム(例えば、コンタクトセンターシステム106)においてホストされ得る。例示的な実施形態ではSIPサーバ204が使用されるが、他の実施形態では、例えば、H.232プロトコル、メディアゲートウェイ制御プロトコル、スカイププロトコル、及び/又は他の適切な技術など、別のVoIPプロトコルで構成された別の呼サーバが、SIPに加えて、又はSIPの代わりに使用されてもよい。
【0048】
リソースマネージャ206は、本明細書に説明される機能を実行することができる任意の1つ以上のタイプのデバイス/システムとして具現化され得る。例示的な実施形態では、リソースマネージャ206は、各リソースタイプに対して負荷分散及び高い可用性を提供するために、メディア制御プラットフォームのプールを割り当て、監視するように構成することができる。いくつかの実施形態では、リソースマネージャ206は、利用可能なプラットフォームのクラスタからメディア制御プラットフォーム208を監視し、選択することができる。メディア制御プラットフォーム208の選択は、例えば、発呼側エンドユーザのロケーションの識別、レンダリングされるべきメディアサービスのタイプ、現在のメディアサービスの検出された品質、及び/又は他の要因に基づいて、動的であり得る。
【0049】
いくつかの実施形態では、リソースマネージャ206は、メディアサービスに対する要求を処理し、例えば、構成データベースを有する構成サーバと対話して、対話型音声応答(interactive voice response、IVR)プロファイル、音声アプリケーション(例えば、音声拡張マークアップ言語(Voice Extensible Markup Language、Voice XML)アプリケーション)、アナウンスメント、及び会議アプリケーション、リソース、並びに、例えばメディア制御プラットフォームなどのサービスを配信することができるサービスプロファイルを判定するように構成され得る。いくつかの実施形態によれば、リソースマネージャは、サービスプロバイダに階層マルチテナント構成を提供することができ、サービスプロバイダが各テナントに選択された数のリソースを配分することを可能にする。
【0050】
いくつかの実施形態では、リソースマネージャ206は、SIPプロキシ、SIPレジストラ、及び/又はSIPノーティファイアとして動作するように構成され得る。この点に関して、リソースマネージャ206は、2つのSIP構成要素間のSIPトラフィックのプロキシとして動作することができる。SIPレジストラとして、リソースマネージャ206は、例えば、SIP REGISTERメッセージを介して様々なリソースの登録を受け入れることができる。このようにして、クラウドベースのシステム200は、呼処理構成要素のトランスペアレントな再配置をサポートすることができる。いくつかの実施形態では、メディア制御プラットフォーム208などの構成要素は、起動時にリソースマネージャ206に登録しない。リソースマネージャ206は、構成データベースから取り出された構成情報を通じてメディア制御プラットフォーム208のインスタンスを検出することができる。メディア制御プラットフォーム208が監視のために構成されている場合、リソースマネージャ206は、例えば、SIP OPTIONSメッセージを使用することによってリソース健全性を監視することができる。いくつかの実施形態では、グループ内のリソースが生きているかどうかを判定するために、リソースマネージャ206は、SIP OPTIONSメッセージをグループ内の各メディア制御プラットフォーム208リソースに周期的に送信し得る。リソースマネージャ206がOK応答を受信した場合、リソースは生きていると見なされる。リソースマネージャ206は、説明を簡潔にするために省略されている他の様々な機能を実行するように構成され得ることを理解されたい。リソースマネージャ206及びメディア制御プラットフォーム208は、まとめてメディアコントローラと呼ばれることがある。
【0051】
いくつかの実施形態では、リソースマネージャ206は、例えば、SIPサーバ204からSIP SUBSCRIBE要求を受け入れ、同じ又は異なるSIPデバイスのために複数の独立したサブスクリプションを維持することによって、SIPノーティファイアとして動作し得る。サブスクリプション通知は、リソースマネージャ206によって管理されるテナントを目標とされる。この役割では、リソースマネージャ206は、ポート使用及び利用可能なポートの数について、サブスクライバ(又はテナント)へのSIP NOTIFY要求を周期的に生成し得る。リソースマネージャ206は、テナント名、及びテナントに関連付けられたメディア制御プラットフォーム208の現在のステータス(イン又はアウトオブサービス)、並びにテナントの現在の容量を含む通知を送信することによって、マルチテナントをサポートすることができる。
【0052】
メディア制御プラットフォーム208は、メディアサービスを提供し、そうでなければ、本明細書に説明される機能を実行することができる任意のサービス又はシステムとして具現化され得る。例えば、いくつかの実施形態では、メディア制御プラットフォーム208は、サービスユーザからの要求に応じて、呼及びメディアサービスを提供するように構成され得る。そのようなサービスとしては、限定はしないが、アウトバウンド呼を開始すること、呼が保留にされている間に音楽を再生すること又は他のメディアを提供すること、呼記録、会議、呼進行検出、顧客セルフサービスセッション中にオーディオ/ビデオプロンプトを再生すること、並びに/あるいは他の呼及びメディアサービスが挙げられ得る。サービスのうちの1つ以上は、メディア制御プラットフォーム208とエンドユーザとの間のメディアセッションを確立するプロセスの一部として実行される音声アプリケーション(例えば、VoiceXMLアプリケーション)によって定義されてもよい。
【0053】
スピーチ/テキスト分析システム(speech/text analytics system、STAS)210は、当業者によって理解されるように、様々なスピーチ分析及びテキスト処理機能(例えば、テキストツースピーチ)を提供し、そうでなければ、本明細書に説明される機能を実行することができる任意のサービス又はシステムとして具現化され得る。スピーチ/テキスト分析システム210は、クラウドベースのシステム200によって処理されるエンドユーザ通信セッションのために、自動スピーチ及び/又はテキスト認識並びに文法マッチングを実行し得る。スピーチ/テキスト分析システム210は、1つ以上のプロセッサと、様々な動作を実行するためにプロセッサによって実行される機械可読媒体に記憶された命令とを含み得る。いくつかの実施形態では、機械可読媒体は、ハードディスク及びハードウェアメモリシステムなどの非一時的記憶媒体を含み得る。
【0054】
音声生成器212は、音声通信を生成し、そうでなければ、本明細書に説明される機能を実行することができる任意のサービス又はシステムとして具現化され得る。いくつかの実施形態では、音声生成器212は、特定の音声シグネチャに基づいて音声通信を生成することができる。
【0055】
音声ゲートウェイ214は、本明細書に説明される機能を実行することができる任意のサービス又はシステムとして具現化され得る。例示的な実施形態では、音声ゲートウェイ214は、エンドユーザデバイスなどの音声通信デバイスからエンドユーザ呼を受信するか又は音声通信デバイスに呼を発信し、コンタクトセンターシステムの通信ルーティング構成に対応する音声プログラムに従って呼に応答する。いくつかの実施形態では、音声プログラムは音声アバターを含んでもよい。音声プログラムは、音声ゲートウェイ214内のローカルメモリから、又はクラウドベースのシステム200内の他の記憶媒体からアクセスされ得る。いくつかの実施形態では、音声ゲートウェイ214は、スクリプトベースの音声アプリケーションである音声プログラムを処理することができる。したがって、音声プログラムは、音声拡張マークアップ言語(VoiceXML)又は音声アプリケーション言語タグ(speech application language tag、SALT)などのスクリプト言語で書かれたスクリプトであってもよい。クラウドベースのシステム200はまた、音声データストレージ220と通信して、共有メモリ空間内のユーザ対話データ(例えば、データ通信セッションのための状態変数)を読み取る及び/又は書き込むことができる。
【0056】
メディアオーグメンテーションシステム216は、クラウドベースのシステム200の部分(例えば、ボーダー通信デバイス202、SIPサーバ204、リソースマネージャ206、メディア制御プラットフォーム208、スピーチ/テキスト分析システム210、音声生成器212、音声ゲートウェイ214、メディアオーグメンテーションシステム216、チャットボット218、音声データストレージ220、及び/又はそれらの1つ以上の部分のうちの1つ以上)が互いにどのように対話するかを指定し、そうでなければ、本明細書に説明される機能を実行することができる任意のサービス又はシステムとして具現化され得る。いくつかの実施形態では、メディアオーグメンテーションシステム216は、アプリケーションプログラムインターフェース(application program interface、API)として具現化されてもよく、又はそれを含んでもよい。いくつかの実施形態では、メディアオーグメンテーションシステム216は、クラウドベースのシステム200内で利用される様々な計画されたアプリケーション及びメディアタイプと共に使用される異なるパラメータ及び/又はプロトコルの統合を可能にする。
【0057】
チャットボット218は、自動化を使用して、エンドユーザと関わり、そうでなければ本明細書に説明される機能を実行することができる任意の自動サービス又はシステムとして具現化され得る。例えば、いくつかの実施形態では、チャットボット218は、例えば、特定のチャットボットに対する要求に従って起動され得る実行可能プログラムとして動作し得る。いくつかの実施形態では、チャットボット218は、人間の(書かれた又は話された)会話をシミュレート及び処理し、人間が別の人間と通信しているかのように人間がデジタルデバイスと対話することを可能にする。いくつかの実施形態では、チャットボット218は、1行応答(single-line response)で単純なクエリに回答する初歩的なプログラムのように単純であるか、又は情報を収集し処理するにつれ増加する個人化レベルを送達するために学習し進化するデジタルアシスタントのように洗練されていてもよい。いくつかの実施形態では、チャットボット218は、人工知能、適応学習、ボット、認知コンピューティング、及び/又は他の自動化技術を含むかつ/又は活用する。チャットボット218はまた、本明細書では1つ以上のチャットロボット、AIチャットボット、自動チャットロボット、チャターボット、ダイアログシステム、対話型エージェント、自動チャットリソース、及び/又はボットと称され得る。
【0058】
エンドユーザとのチャット会話に関与するための自動チャットロボットを利用する利点は、エンドユーザ満足度を維持しながら、人的資源のような有用かつ費用のかかるリソースをコンタクトセンターがより効率的に使用するのに役立つことであり得る。例えば、チャットロボットは、人間のエンドユーザがロボットと会話していることを知ることなく、最初にチャット会話を処理するために呼び出され得る。チャット会話は、適切である場合は、人的資源にエスカレートされ得る。したがって、人的資源は、単純な要求の処理に無用に縛り付けられる必要はなく、代わりに、より複雑な要求を処理するために、又は多くの異なる自動通信の進捗を同時に監視するためにより効果的に使用され得る。
【0059】
音声データストレージ220は、クラウドベースのシステム200にデータを記憶するか、又はそうでなければクラウドベースのシステム200のためのそのようなデータの記憶を容易にすることができる1つ以上のデータベース、データ構造、及び/又はデータストレージデバイスとして具現化され得る。例えば、いくつかの実施形態では、音声データストレージ220は、1つ以上のクラウドストレージバケットを含んでもよい。他の実施形態では、音声データストレージ220は、追加的又は代替的に、クラウドベースのシステム200が利用可能なデータストレージの量の動的スケーリングを可能にする他のタイプの音声データストレージ機構を含むことができることを理解されたい。いくつかの実施形態では、音声データストレージ220は、スクリプト(例えば、予めプログラムされたスクリプトなど)を記憶することができる。音声データストレージ220は、本明細書ではデータストレージ及びデータベースとして説明されるが、音声データストレージ220は、データベース(又はデータ及び構造の他のタイプの組織化された集合)と、基礎データの実際の記憶のためのデータストレージとの両方を含み得ることを理解されたい。音声データストレージ220は、本明細書に説明される機能を実行するのに有用な様々なデータを記憶することができる。
【0060】
ここで
図3を参照すると、コンピューティングデバイス300の少なくとも1つの実施形態の簡略ブロック図が示されている。例示的なコンピューティングデバイス300は、
図1に示されるクラウドベースのシステム102、コンタクトセンターシステム106、及び/又はユーザデバイス108(並びに/あるいはそれらの一部分)に関連して利用され得るクラウドベースのシステム、コンタクトセンターシステム、及び/又はユーザデバイスの少なくとも1つの実施形態を示す。更に、いくつかの実施形態では、ボーダー通信デバイス202、SIPサーバ204、リソースマネージャ206、メディア制御プラットフォーム208、スピーチ/テキスト分析システム210、音声生成器212、音声ゲートウェイ214、メディアオーグメンテーションシステム216、チャットボット218、及び/又は音声データストレージ220(並びに/あるいはそれらの一部分)のうちの1つ以上は、コンピューティングデバイス300と同様のコンピューティングデバイスとして具現化されるか、又はそれによって実行されてもよい。特定の実施形態に応じて、コンピューティングデバイス300は、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ノートブック、ネットブック、Ultrabook(商標)、携帯電話、モバイルコンピューティングデバイス、スマートフォン、ウェアラブルコンピューティングデバイス、携帯情報端末、モノのインターネット(Internet of Thing、IoT)デバイス、処理システム、ワイヤレスアクセスポイント、ルータ、ゲートウェイ、並びに/又は本明細書に記載の機能を実行することができる任意の他のコンピューティング、処理、及び/若しくは通信デバイスとして具現化することができる。
【0061】
コンピューティングデバイス300は、動作ロジック308に従ってアルゴリズムを実行し、かつ/又はデータを処理する処理デバイス302と、コンピューティングデバイス300と1つ以上の外部デバイス310との間の通信を可能にする入出力デバイス304と、例えば、入出力デバイス304を介して外部デバイス310から受信したデータを記憶するメモリ306と、を含む。
【0062】
入出力デバイス304は、コンピューティングデバイス300が外部デバイス310と通信することを可能にする。例えば、入力/出力デバイス304は、送受信機、ネットワークアダプタ、ネットワークカード、インターフェース、1つ以上の通信ポート(例えば、USBポート、シリアルポート、パラレルポート、アナログポート、デジタルポート、VGA、DVI、HDMI、FireWire、CAT5、又は任意の他のタイプの通信ポート若しくはインターフェース)、及び/又は他の通信回路を含み得る。コンピューティングデバイス300の通信回路は、任意の1つ以上の通信技術(例えば、ワイヤレス又は有線通信)及び関連プロトコル(例えば、Ethernet、Bluetooth(登録商標)、Wi-Fi(登録商標)、WiMAXなど)を使用して、特定のコンピューティングデバイス300に応じてそのような通信を行うように構成され得る。入力/出力デバイス304は、本明細書に説明される技術を実行するために好適なハードウェア、ソフトウェア、及び/又はファームウェアを含み得る。
【0063】
外部デバイス310は、データがコンピューティングデバイス300から入力又は出力されることを可能にする任意のタイプのデバイスであり得る。例えば、様々な実施形態では、外部デバイス310は、クラウドベースのシステム102、コンタクトセンターシステム106、ユーザデバイス108、及び/又はそれらの一部分として具現化され得る。更に、いくつかの実施形態では、外部デバイス310は、別のコンピューティングデバイス、スイッチ、診断ツール、コントローラ、プリンタ、ディスプレイ、アラーム、周辺デバイス(例えば、キーボード、マウス、タッチスクリーンディスプレイなど)、及び/又は本明細書に説明される機能を実行することができる任意の他のコンピューティング、処理、及び/又は通信デバイスとして具現化され得る。更に、いくつかの実施形態では、外部デバイス310は、コンピューティングデバイス300に統合され得ることを理解されたい。
【0064】
処理デバイス302は、本明細書に説明される機能を実行することができる任意のタイプのプロセッサとして具現化され得る。特に、処理デバイス302は、1つ以上のシングルコア若しくはマルチコアプロセッサ、マイクロコントローラ、又は他のプロセッサ若しくは処理/制御回路として具現化され得る。例えば、いくつかの実施形態では、処理デバイス302は、算術ロジックユニット(arithmetic logic unit、ALU)、中央処理ユニット(central processing unit、CPU)、デジタル信号プロセッサ(digital signal processor、DSP)、及び/又は別の適切なプロセッサを含むか、又はそれらとして具現化され得る。処理デバイス302は、プログラム可能なタイプ、専用のハードワイヤードステートマシン、又はそれらの組み合わせであり得る。複数の処理ユニットを有する処理デバイス302は、様々な実施形態では、分散処理、パイプライン処理、及び/又は並列処理を利用し得る。更に、処理デバイス302は、本明細書に説明される動作のみの実行専用であり得るか、又は1つ以上の追加の適用例において利用され得る。例示的な実施形態では、処理デバイス302はプログラム可能であり、メモリ306に記憶されたプログラミング命令(ソフトウェア又はファームウェアなど)によって定義された動作ロジック308に従ってアルゴリズムを実行し、かつ/又はデータを処理する。追加的又は代替的に、処理デバイス302の動作ロジック308は、ハードワイヤードロジック又は他のハードウェアによって少なくとも部分的に定義され得る。更に、処理デバイス302は、入出力デバイス304から、又は他の構成要素若しくはデバイスから受信した信号を処理し、所望の出力信号を提供するために好適な任意のタイプの1つ以上の構成要素を含み得る。そのような構成要素は、デジタル回路、アナログ回路、又はそれらの組み合わせを含み得る。
【0065】
メモリ306は、ソリッドステートメモリ、電磁メモリ、光メモリ、又はそれらの組み合わせなどの、1つ以上のタイプの非一時的コンピュータ可読媒体であり得る。更に、メモリ306は、揮発性及び/又は不揮発性であり得、いくつかの実施形態では、メモリ306の一部又は全部は、ディスク、テープ、メモリスティック、カートリッジ、及び/又は他の好適な可搬型メモリなどの可搬型タイプのものであり得る。動作中、メモリ306は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ、及びドライバなどのコンピューティングデバイス300の動作中に使用される様々なデータ及びソフトウェアを記憶し得る。メモリ306は、動作ロジック308を定義するプログラミング命令を記憶することに加えて、又はその代わりに、例えば、入力/出力デバイス304から受信される信号、及び/又は入力/出力デバイスに送信される信号を表すデータなどの、処理デバイス302の動作ロジック308によって操作されるデータを記憶し得ることを理解されたい。
図3に示すように、メモリ306は、特定の実施形態に応じて、処理デバイス302に含まれる、及び/又は処理デバイス302に結合され得る。例えば、いくつかの実施形態では、処理デバイス302、メモリ306、及び/又はコンピューティングデバイス300の他の構成要素は、システムオンチップ(system-on-a-chip、SoC)の一部分を形成し、単一の集積回路チップに組み込まれ得る。
【0066】
いくつかの実施形態では、コンピューティングデバイス300の様々な構成要素(例えば、処理デバイス302及びメモリ306)は、入力/出力サブシステムを介して通信可能に結合され得、入力/出力サブシステムは、処理デバイス302、メモリ306、並びにコンピューティングデバイス300の他の構成要素との入力/出力動作を容易にするための回路及び/又は構成要素として具現化され得る。例えば、入出力サブシステムは、メモリコントローラハブ、入出力制御ハブ、ファームウェアデバイス、通信リンク(すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレースなど)、並びに/若しくは入出力動作を容易にするための他の構成要素及びサブシステムとして具現化され得るか、又は別様にそれらを含み得る。
【0067】
コンピューティングデバイス300は、他の実施形態において、典型的なコンピューティングデバイス(例えば、様々な入力/出力デバイス及び/又は他の構成要素)に一般的に見られるものなど、他の又は追加の構成要素を含み得る。本明細書に説明されるコンピューティングデバイス300の構成要素のうちの1つ以上は、複数のコンピューティングデバイスにわたって分散され得ることを更に理解されたい。言い換えれば、本明細書に説明される技術は、1つ以上のコンピューティングデバイスを含むコンピューティングシステムによって採用され得る。加えて、単一の処理デバイス302、I/Oデバイス304、及びメモリ306のみが
図3に例解的に示されているが、特定のコンピューティングデバイス300は、他の実施形態において、複数の処理デバイス302、I/Oデバイス304、及び/又はメモリ306を含み得ることを理解されたい。更に、いくつかの実施形態では、2つ以上の外部デバイス310がコンピューティングデバイス300と通信し得る。
【0068】
ここで
図4を参照すると、使用中、システム100(例えば、クラウドベースのシステム102)は、信頼度分類器を訓練するための方法400を実行することができる。方法400の特定のブロックは、例として示されており、そのようなブロックは、反対のことが述べられていない限り、特定の実施形態に応じて、全体的又は部分的に組み合わされ、又は分割され、追加され、又は除去され、及び/又は並べ替えられ得ることを理解されたい。いくつかの実施形態では、方法400は、自動チャットボット、パーソナルボット、及び/又は他のタイプの自動会話システムとのユーザ会話に関連付けられる。
【0069】
例示的な方法400はブロック402から始まり、システム100(又は、より具体的には、信頼度分類器112)が、発話に関連付けられた可能な意図の確率分布を受信する。言い換えれば、確率分布は、ユーザの発話が、本明細書に説明されるように意図分類器110によって処理される可能な意図の各々に対応するという、対応する確率を含む。いくつかの実施形態では、システム100は、確率分布に到達するために、(例えば、意図分類器110を介して)上述のように発話に対応してユーザの入力を処理することもできるが、他の実施形態では、システム100は、別のシステムから確率分布を(例えば、対応する確率として)受信することを理解されたい。
【0070】
ブロック404において、システム100は、確率分布の尖度の複数の測度を生成する。いくつかの実施形態では、そうするために、システム100は、以下で詳細に説明される
図5の方法500を実行することができ、これは、確率分布の尖度の3つの異なる測度を活用する。しかしながら、他の実施形態では、確率分布の異なる数の尖度の測度及び/又は異なる特定の尖度の測度が使用されてもよいことを理解されたい。
【0071】
ブロック406において、システム100は、尖度の複数の測度を分類のための特徴として使用して信頼度分類器112を訓練する。例示的な実施形態では、信頼度分類器112は、確率分布の尖度の複数の測度に基づいて、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を出力する。信頼度分類器112を訓練するために、意図分類器110には、発話Uiと意図ラベルLiとの正しいペアリングを表す正例が供給されてもよく、特徴のセット(例えば、尖度の複数の測度)が抽出され、信頼度分類器112が学習するために1.0を目標として信頼度分類器112に供給されてもよい。同様に、意図分類器110には、発話と別のクラス/ラベルからランダムに選択された発話との誤ったペアリングを表す負例が供給されてもよく、特徴のセット(例えば、尖度の複数の測度)が抽出され、信頼度分類器112が学習するために0.0を目標として信頼度分類器112に供給されてもよい。このプロセスは、信頼度分類器112を訓練するために、複数の反復にわたって(例えば、全ての又は複数の可能性が枯渇するまで)繰り返され得る。
【0072】
いくつかの実施形態では、ブロック408において、システム100は、確率的勾配降下最適化を使用して信頼度分類器112のパラメータを調整することができる。他の実施形態では、システム100は、分類のための特徴として尖度の複数の測度を使用して信頼度分類器112を訓練するための1つ以上の他のアルゴリズムを利用することができる。
【0073】
訓練された後、信頼度分類器112によって出力された単一の数(例えば、0.0~1.0の範囲内)は、単一の信頼度閾値(例えば、0.0~1.0の範囲内)を使用して(ユーザの発話に関連付けられた)リアルタイム意図データを分類するために、システム100(又は別のシステム)によって使用され得ることを理解されたい。したがって、例示的な実施形態では、信頼度閾値は、多くの他の分類システムのように移動ターゲットではない。
【0074】
ブロック402~408は、比較的直列的に説明されているが、方法400の様々なブロックは、いくつかの実施形態では、並列に実行され得ることを理解されたい。
【0075】
ここで
図5を参照すると、使用中、システム100は、確率分布の尖度の測度を生成するための方法500を実行することができる。方法500の特定のブロックは、例として示されており、そのようなブロックは、反対のことが述べられていない限り、特定の実施形態に応じて、全体的又は部分的に組み合わされ、又は分割され、追加され、又は除去され、及び/又は並べ替えられ得ることを理解されたい。
【0076】
例示的な方法500はブロック502から始まり、システム100が確率分布の確率スコアを降順にソートする。ブロック504において、システム100は、5つの最大確率(例えば、確率スコアのソートされたリスト内の最初の5つの確率)を確率セットとして選択する。(本明細書に説明される方法に対する対応する修正を伴う)様々な他の実施形態では、異なる数の確率が選択され得ることを理解されたい。確率分布内に5つ未満の確率スコア(又は確率セット内の他の定義された数の要素)が存在する場合、システム100は、1つ以上の小さい数(例えば、10の-6乗に等しいイプシロン)で確率セットをパディングして、各欠落スコアをなくす。
【0077】
ブロック506において、システム100は、確率セット内の連続的にランク付けされた確率(適用可能な場合、パディング値を含む)の比を判定する。例えば、5つの確率スコアのセット(xi)について、システム100は、
【0078】
【数1】
を計算し、ここで、全てのiについて1~4であり、iはインデックスを表す。ブロック508において、システム100は、確率セット内の確率のカートシススコアを判定する。特に、カートシススコアは、
【0079】
【0080】
に従って計算され得、ここで、iはインデックスを表し、n=5(確率セット内の要素の他の定義された数)である。
【0081】
ブロック510において、システム100は、確率分布のエントロピー(例えば、シャノンのエントロピー)を判定する。特に、エントロピーは、
【0082】
【0083】
に従って計算され得、ここで、iはインデックスを表し、nは確率分布内の確率/要素の数を表し、piは対応する確率を表す。
【0084】
ブロック512において、システム100は、確率分布のエントロピーを確率分布の最大可能エントロピーで除算することによってエントロピーを正規化する(すなわち、正規化されたエントロピーを生成する)。確率分布の最大可能エントロピーは、要素自体の値ではなく確率分布内の要素の数に基づくことを理解されたい。
【0085】
ブロック514において、システム100は、(ブロック506からの)比、(ブロック508からの)カートシススコア、及び(ブロック512からの)正規化されたエントロピーにシグモイド関数を適用する。シグモイド関数は以下に従って計算され得る。
【0086】
【0087】
したがって、システム100は、シグモイド関数の適用後に、6つの出力値(例えば、浮動小数点数)を取得する。ブロック516において、システム100は、(例えば、信頼度分類器112によって)6つの出力値を特徴として使用する。
【0088】
ブロック502~516は、比較的直列的に説明されているが、方法500の様々なブロックは、いくつかの実施形態では、並列に実行され得ることを理解されたい。
【0089】
次に
図6を参照すると、使用中、システム100(例えば、クラウドベースのシステム102)は、訓練された信頼度分類器を使用して意図を(例えば、リアルタイムで)判定するための方法600を実行することができる。方法600の特定のブロックは、例として示されており、そのようなブロックは、反対のことが述べられていない限り、特定の実施形態に応じて、全体的又は部分的に組み合わされ、又は分割され、追加され、又は除去され、及び/又は並べ替えられ得ることを理解されたい。いくつかの実施形態では、方法600は、自動チャットボット、パーソナルボット、及び/又は他のタイプの自動会話システムとのユーザ会話に関連付けられる。
【0090】
例示的な方法600はブロック602から始まり、システム100が、意図分類器110を用いて発話を処理して、可能な意図の確率分布を判定し、ブロック604において、システム100は、(例えば、信頼度分類器112を訓練するために使用されたのと同じ尖度の測度を使用して)確率分布の尖度の複数の測度を生成する。
【0091】
ブロック606において、システム100は、訓練された信頼度分類器112を適用して、発話に関連付けられた最も可能性の高い意図の単一の正規化された確率を判定する。例えば、信頼度分類器112は、上述したものと同様の方法で、確率分布の尖度の複数の測度を特徴として使用することができる。ブロック608において、システム100は、最も可能性の高い意図の正規化された確率を信頼度閾値と比較する。例示的な実施形態では、信頼度閾値は、システムによって事前定義される。いくつかの実施形態では、信頼度閾値は、システム管理者又は他の認可された当事者によって修正され得る。上述したように、例示的な実施形態では、信頼度分類器112と、分類器112によって出力される単一の正規化された確率とを使用することにより、システム100は、多くの他のシステムに固有の移動ターゲットではなく、単一の信頼度閾値(例えば、50%、60%など)に依拠することができる。
【0092】
ブロック610において、システム100は、信頼度閾値が満たされているかどうかを判定する。そうである場合、ブロック612において、システム100は、システム100によって識別された最も可能性の高い意図を、発話に関連付けられた正しい意図として選択する。そうでない場合、ブロック614において、システム100は、システム100によって識別された最も可能性の高い意図が正しくない意図であると判定するか、又は予測において許容可能に信頼できる情報が不十分であると判定する。したがって、いくつかの実施形態では、システム100は、更なる情報を要求し、追加の明確化情報についてユーザを促し、及び/又は他の方法でシステム100がユーザの発話を適切に分類できないことに対処してもよい。
【0093】
(例えば、信頼度閾値が満たされていることに応答して)システム100によって識別された最も可能性の高い意図が正しい意図であるとシステム100が判定した場合、システム100は、その判定に応答して1つ以上のアクションを実行し得ることを更に理解されたい。例えば、システム100が自動チャットボットと共に使用される実施形態では、システム100は、推測された意図に関連付けられた1つ以上のプロセスを実行してもよく、自動チャットボットは、それらのプロセスの結果及び/又はそれに関連付けられた他の情報を(例えば、プロンプト発話に対する自動「応答」として)ユーザデバイス108に送信してもよい。言い換えれば、いくつかの実施形態では、分類器110、112によって処理される可能な意図の各々は、ユーザの発話がその意図に対応するという判定に応答して実行されるべき1つ以上のプロセスにマッピングされ得るか、又は他の方法で対応し得る。
【0094】
ブロック602~612は、比較的直列的に説明されているが、方法600の様々なブロックは、いくつかの実施形態では、並列に実行され得ることを理解されたい。
【国際調査報告】