JP2024521041A - 自動感情分析を微調整するためのシステム及び方法 - Google Patents
自動感情分析を微調整するためのシステム及び方法 Download PDFInfo
- Publication number
- JP2024521041A JP2024521041A JP2023568669A JP2023568669A JP2024521041A JP 2024521041 A JP2024521041 A JP 2024521041A JP 2023568669 A JP2023568669 A JP 2023568669A JP 2023568669 A JP2023568669 A JP 2023568669A JP 2024521041 A JP2024521041 A JP 2024521041A
- Authority
- JP
- Japan
- Prior art keywords
- utterances
- model
- utterance
- annotated
- emotion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000008451 emotion Effects 0.000 claims abstract description 109
- 238000010801 machine learning Methods 0.000 claims abstract description 96
- 238000012549 training Methods 0.000 claims abstract description 54
- 238000010200 validation analysis Methods 0.000 claims description 21
- 230000002452 interceptive effect Effects 0.000 description 18
- 238000003860 storage Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 230000007935 neutral effect Effects 0.000 description 10
- 230000008520 organization Effects 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000011065 in-situ storage Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000001755 vocal effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002996 emotional effect Effects 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/40—Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
- Investigating Or Analysing Biological Materials (AREA)
Abstract
少なくとも1つのプロセッサによって自動感情分類を微調整するための方法及びシステムは、第1の注釈付きトレーニングデータセットに基づいて、発話の自動感情分類を実行するように事前トレーニングされた第1の機械学習(ML)モデルM0を受信することと、モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けることと、1つ以上の(例えば、各)MLモデルM0インスタンス及び/又はサイトについて、対応するサイトを介して少なくとも1つの発話を受信することと、少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得することと、MLモデルM0を再トレーニングして、第1の注釈付きトレーニングデータセットと少なくとも1つの注釈付きフィードバックデータ要素とを含み得る第2の注釈付きトレーニングデータセットに基づいて、第2のMLモデルM1を生成することと、第2のMLモデルM1を使用して、1つ以上の感情クラスに従って発話を分類することと、を含み得る。
Description
本発明は、概して、自動自然言語処理の分野に関する。より詳細には、本発明は、自動感情分類の微調整に関する。
(関連出願の相互参照及び優先権の主張)
本出願は、2021年5月12日に出願された「SYSTEM AND METHOD FOR FINETUNING AUTOMATED SENTIMENT ANALYSIS」と題された米国特許出願第17/318,467号の優先権を主張する。
本出願は、2021年5月12日に出願された「SYSTEM AND METHOD FOR FINETUNING AUTOMATED SENTIMENT ANALYSIS」と題された米国特許出願第17/318,467号の優先権を主張する。
感情分析は、例えば、喜び、怒り、驚き、及び悲しみなどの感情を含む、書かれたテキスト又は口頭の発話における感情を検出するタスクである。感情分析を実行するための現在利用可能な方法は、例えば、機械学習(machine learning、ML)モデルをトレーニングして、感情文を中立文から区別することを含み得る。入力文に対して、そのようなMLモデルは、感情クラス及び予測におけるその信頼レベルを反映し得るスコアを返し得る。
感情分析を採用する1つの商業的側面は、コンタクトセンターのドメインにおいて見出され得る。このドメインでは、感情分析は主に、顧客が会社のエージェントと対話する間に顧客によって表現される感情を検出するために使用される。そのような対話は、チャット、電子メール、ソーシャルメディア、音声通話などの形態をとることができる。後者の場合、感情分析という用語は、自動音声認識エンジンによって音声通話から生成されるテキストの分析を指すことがある。
当然、任意の感情分類モデルは、不正確な予測を生成する可能性があり、これは、コールセンターアナリストの知覚による全体的及び客観的、又は主観的のいずれかであり得る。感情分析モデル又はシステムの展開における固有の困難は、システムが、トレーニング資料に含まれなかった新しいドメインに遭遇し、新しいドメインにおいて特定の意味を有し得る新しい語彙又は単語に遭遇したときに生じ得る。
本発明の実施形態は、対話型プロセスを実装することによってこの課題に対処することができ、対話型プロセスによって、ユーザは、アプリケーションによって行われた予測に関するフィードバックを提供することができ、したがって、その将来の予測に影響を及ぼすことができる。本発明の実施形態は、このフィードバックを複数の方法で活用することができる。
例えば、訂正された出力感情を有する発話は、関連するドメイン及びビジネスにおける類似の発話にモデルを一般化する目的で、モデルを再トレーニング又は微調整するために使用され得る。「再トレーニング」及び「微調整」という用語は、本明細書で詳述されるように、モデルのトレーニングを改善するという意味で、本明細書で互換的に使用され得る。
別の例では、予測対真理値のランダムサンプルを分析することによって、本発明の実施形態は、本発明のインスタンス化又はインストールごとに、感情分類のための予測閾値を最適に調整するように学習することができる。
本発明の実施形態は、少なくとも1つのプロセッサによって自動感情分類を微調整する方法を含むことができる。本方法の実施形態は、第1の注釈付きトレーニングデータセットに基づいて、発話の自動感情分類を実行するように事前トレーニングされた第1の機械学習(ML)モデルM0を受信することと、モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けることとを含み得る。各MLモデルM0インスタンスについて、実施形態は、対応するサイトを介して少なくとも1つの発話を受信することと、少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得することと、MLモデルM0を再トレーニングして、第2の注釈付きトレーニングデータセットに基づいて第2のMLモデルM1を生成することであって、第2の注釈付きトレーニングデータセットは、第1の注釈付きトレーニングデータセット及び少なくとも1つの注釈付きフィードバックデータ要素を含むことができる、生成することと、第2のMLモデルM1を使用して、1つ以上の感情クラスに従って発話を分類することと、を更に含み得る。
本発明のいくつかの実施形態によれば、少なくとも1つのプロセッサは、対応するサイトに関連付けられたユーザインターフェース(user interface、UI)を介して、注釈付きフィードバックの少なくとも1つのデータ要素を対話的に取得することができる。注釈付きフィードバックは、例えば、0個以上の感情クラスによる少なくとも1つの発話の分類を含み得る。
本発明の実施形態は、複数の発話を含み得る注釈付き検証データセットを受信することと、対応する複数の信頼度スコアを計算することとを含み得る。例えば、各信頼度スコアは、感情クラスに対する発話の分類の確実性レベルを表すことができる。本発明の実施形態は、計算された信頼度スコアに従って、順序付けられたリストにおいて検証データセットの発話をソートすることができる。
本発明の実施形態は、順序付けられたリストの1つ以上のエントリについて、分類精度の値を計算することと、要求される分類精度値に対応する順序付けられたリストのインデックスを識別することと、識別されたインデックスの信頼度スコアを、発話を感情クラスに属するものとして分類するための予測閾値として決定することと、を含み得る。
本発明の実施形態は、少なくとも1つのプロセッサによって自動感情分類を微調整する方法を含むことができる。本方法の実施形態は、発話の自動感情分類を実行するように事前トレーニングされたMLモデルM0であって、少なくとも1つの予測閾値に関連付けられ得る、モデルM0を受信することと、モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けることと、を含み得る。
少なくとも1つの(例えば、各)MLモデルM0インスタンス及び/又はサイトについて、本発明の実施形態は、対応するサイトを介して少なくとも1つの発話を受信し、少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得し、要求される精度レベルに従って、少なくとも1つの注釈付きフィードバックデータ要素に基づいて、少なくとも1つの予測閾値を自動的に較正し、少なくとも1つの予測閾値を使用して、発話を1つ以上の感情クラスに属するものとして分類し得る。
本発明のいくつかの実施形態によれば、注釈付きフィードバックの少なくとも1つのデータ要素を取得することは、UIを介して1つ以上の発話をユーザに提示することと、UIを介してユーザから注釈付きフィードバックデータ要素を取得することとを含むことができ、注釈付きフィードバックは、0個以上の感情クラスに従って、提示された1つ以上の発話の分類を含むことができる。
本発明のいくつかの実施形態によれば、1つ以上の発話を提示することは、感情クラスに対する各発話の関連性に従って、対応する複数の発話に対する複数の信頼度スコアを計算することと、それぞれの信頼度スコアに基づいて、フィードバックのために複数の発話のうちの発話のサブセットを選択することと、UIを介して選択された発話のサブセットを提示することと、を含むことができる。
本発明のいくつかの実施形態によれば、フィードバックのための1つ以上の発話を選択することは、各感情クラスについて、複数の発話から選択閾値を超える発話の第1のサブセットを選択することと、第1のサブセットから発話の第2のサブセットをランダムに選択することと、UIを介して発話の第2のサブセットを提示することと、を含むことができる。
本発明のいくつかの実施形態によれば、予測閾値は、各感情クラスに固有であってもよい。
本発明のいくつかの実施形態によれば、発話の第2のサブセットのサイズは、各感情クラスに固有であり得る所定のサブセットサイズによって制限され得る。いくつかの実施形態では、発話の第2のサブセットは、300個以下の発話を含んでもよく、又はそれに限定されてもよい。
本発明のいくつかの実施形態によれば、少なくとも1つの予測閾値を較正することは、感情クラスに対する各発話の関連性に従って、第2のサブセットの1つ以上の発話に対応する1つ以上の信頼度スコアを計算することと、信頼度スコアに従って、降順リストにおいて第2のサブセットの複数の発話をソートすることと、順序付けられたリストの1つ以上のエントリについて、注釈付きフィードバックに基づいて分類精度の値を計算することと、要求される分類精度値に対応する順序付けられたリストのインデックスを識別することと、識別されたインデックスの信頼度スコアを予測閾値の値として決定することと、を含み得る。
いくつかの実施形態では、所定のサブセットサイズは、予測閾値が所定の誤差のマージン(例えば、0.05)内で所定の信頼値(例えば、少なくとも95%)を有するグラウンドトゥルース精度に対応することを保証するように選択され得る。
いくつかの実施形態によれば、感情クラスは、例えば、肯定的感情クラス、否定的感情クラス、及び中立的感情クラスを含むことができる。
本発明の実施形態は、自動感情分析を微調整するためのシステムを含むことができる。システムの実施形態は、特定のサイトに関連付けられてもよく、(a)命令コードを記憶する非一時的メモリデバイスと、(b)メモリデバイスに関連付けられた少なくとも1つのプロセッサとを含んでもよい。
いくつかの実施形態によれば、少なくとも1つのプロセッサは、命令コードを実行して、第1の注釈付きトレーニングデータセットに基づいて、発話の自動感情分類を実行するように事前トレーニングされた第1のMLモデルM0を受信することと、サイトを介して少なくとも1つの発話を受信することと、少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得することと、MLモデルM0を再トレーニングして、第2の注釈付きトレーニングデータセットに基づいて第2のMLモデルM1を生成することであって、第2の注釈付きトレーニングデータセットは、第1の注釈付きトレーニングデータセット及び少なくとも1つの注釈付きフィードバックデータ要素を含む、生成することと、第2のMLモデルM1を使用して、1つ以上の感情クラスに従って発話を分類することと、を行うように命令コードを実行するように構成され得る。
本発明と見なされる主題は、本明細書の結論部分において特に指摘され、明確に特許請求される。しかしながら、本発明は、組織及び動作方法の両方に関して、その目的、特徴、及び利点とともに、添付の図面とともに読まれるとき、以下の詳細な説明を参照することによって最もよく理解され得る。
いくつかの実施形態による、自動感情分類を微調整するためのシステムに含まれ得るコンピューティングデバイスを示すブロック図である。
いくつかの実施形態による、自動感情分類を微調整するためのシステムを描写するブロック図である。
いくつかの実施形態による、予測閾値を決定するために使用され得るデータの一例を示す表である。
いくつかの実施形態による、少なくとも1つのプロセッサによって自動感情分類を微調整する方法を示すフロー図である。
いくつかの実施形態による、少なくとも1つのプロセッサによって自動感情分類を微調整する別の方法を示すフロー図である。
例解を単純かつ明確にするために、図に例解される要素は、必ずしも縮尺通りに描画されていないことを理解されるであろう。例えば、いくつかの要素の寸法は、明確にするために他の要素に対して誇張されている場合がある。更に、適切であると考えられる場合、参照数字は、対応する又は類似の要素を示すために図面間で繰り返され得る。
本発明の詳細な説明
当業者は、本発明が、その趣旨又は本質的な特徴から逸脱することなく、他の特定の形態で実施され得ることを理解するであろう。したがって、前述の実施形態は、本明細書に記載される本発明を限定するのではなく、あらゆる点で例示的であると見なされるべきである。したがって、本発明の範囲は、前述の説明によってではなく、添付の特許請求の範囲によって示され、したがって、特許請求の範囲の均等物の意味及び範囲内に入る全ての変更は、その中に包含されることが意図される。
当業者は、本発明が、その趣旨又は本質的な特徴から逸脱することなく、他の特定の形態で実施され得ることを理解するであろう。したがって、前述の実施形態は、本明細書に記載される本発明を限定するのではなく、あらゆる点で例示的であると見なされるべきである。したがって、本発明の範囲は、前述の説明によってではなく、添付の特許請求の範囲によって示され、したがって、特許請求の範囲の均等物の意味及び範囲内に入る全ての変更は、その中に包含されることが意図される。
以下の詳細な説明では、本発明の完全な理解を提供するために、多数の特定の詳細が記載される。しかしながら、本発明がこれらの特定の詳細なしに実施され得ることは、当業者によって理解されるであろう。他の例では、本発明を不明瞭にすることを避けるために、周知の方法、手順、及び構成要素は、詳細には記載されていない。一実施形態に関して説明されるいくつかの特徴又は要素は、他の実施形態に関して説明される特徴又は要素と組み合わせられてもよい。明確にするために、同じ又は類似の特徴又は要素の説明は繰り返されない場合がある。
本発明の実施形態はこの点に限定されないが、例えば、「処理」、「コンピューティング」、「計算」、「決定」、「確立」、「分析」、「チェック」などの用語を利用する議論は、コンピュータのレジスタ及び/又はメモリ内の物理(例えば、電子)量として表されるデータを、コンピュータのレジスタ及び/又はメモリ内の物理量として同様に表される他のデータ、あるいは動作及び/又はプロセスを実行するための命令を記憶し得る他の情報非一時的記憶媒体に操作及び/又は変換する、コンピュータ、コンピューティングプラットフォーム、コンピューティングシステム、又は他の電子コンピューティングデバイスの動作及び/又はプロセスを指し得る。
本発明の実施形態はこの点で限定されないが、本明細書で使用される「複数(plurality)」及び「複数(a plurality)」という用語は、例えば、「複数」又は「2つ以上」を含み得る。「複数(plurality)」又は「複数(a plurality)」という用語は、本明細書を通して、2つ以上の構成要素、デバイス、要素、ユニット、パラメータなどを説明するために使用され得る。「セット」という用語は、本明細書で使用される場合、1つ以上のアイテムを含み得る。
明示的に述べられない限り、本明細書で説明される方法実施形態は、特定の順序又はシーケンスに制約されない。加えて、説明される方法実施形態又はその要素のうちのいくつかは、同時に、同じ時点で、又は並行して発生又は実行することができる。
ここで図1を参照すると、図1は、いくつかの実施形態による、自動感情分類を微調整するためのシステムの実施形態内に含まれ得るコンピューティングデバイスを示すブロック図である。
コンピューティングデバイス1は、例えば、中央処理ユニット(central processing unit、CPU)プロセッサ、チップ又は任意の適切なコンピューティングデバイス若しくは計算デバイスであり得るプロセッサ又はコントローラ2と、オペレーティングシステム3と、メモリ4と、実行可能コード5と、記憶システム6と、入力デバイス7と、出力デバイス8とを含み得る。プロセッサ2(又は、場合によっては複数のユニット又はデバイスにわたる1つ以上のコントローラ又はプロセッサ)は、本明細書に記載の方法を実行するように、及び/又は様々なモジュール、ユニットなどとして実行又は動作するように構成されてもよい。2つ以上のコンピューティングデバイス1が、本発明の実施形態によるシステムに含まれてもよく、1つ以上のコンピューティングデバイス1が、本発明の実施形態によるシステムの構成要素として機能してもよい。
オペレーティングシステム3は、コンピューティングデバイス1の動作の調整、スケジューリング、調停、監督、制御、又は管理すること、例えば、ソフトウェアプログラム若しくはタスクの実行をスケジューリングすること、又はソフトウェアプログラム若しくは他のモジュール若しくはユニットが通信することを可能にすることを伴うタスクを実行するように設計及び/又は構成された任意のコードセグメント(例えば、本明細書で説明される実行可能コード5と同様のもの)であってもよく、又はそれを含んでもよい。オペレーティングシステム3は、商用オペレーティングシステムであってもよい。オペレーティングシステム3は、任意の構成要素であってもよく、例えば、いくつかの実施形態では、システムは、オペレーティングシステム3を必要としない、又は含まないコンピューティングデバイスを含んでもよいことに留意されたい。
メモリ4は、例えば、ランダムアクセスメモリ(Random-Access Memory、RAM)、読み出し専用メモリ(read only memory、ROM)、ダイナミックRAM(Dynamic RAM、DRAM)、シンクロナスDRAM(Synchronous DRAM、SD-RAM)、ダブルデータレート(double data rate、DDR)メモリチップ、フラッシュメモリ、揮発性メモリ、不揮発性メモリ、キャッシュメモリ、バッファ、短期記憶ユニット、長期記憶ユニット、又は他の適切なメモリユニット若しくは記憶ユニットであってもよく、又はそれらを含んでもよい。メモリ4は、複数の可能な異なるメモリユニットであってもよく、又はそれらを含んでもよい。メモリ4は、コンピュータ若しくはプロセッサ非一時的可読媒体、又はコンピュータ非一時的記憶媒体、例えば、RAMであり得る。一実施形態では、メモリ4、ハードディスクドライブ、別の記憶デバイスなどの非一時的記憶媒体は、プロセッサによって実行されたときにプロセッサに本明細書で説明する方法を実行させ得る命令又はコードを記憶し得る。
実行可能コード5は、任意の実行可能コード、例えば、アプリケーション、プログラム、プロセス、タスク、又はスクリプトであってもよい。実行可能コード5は、おそらくオペレーティングシステム3の制御下でプロセッサ又はコントローラ2によって実行されてもよい。例えば、実行可能コード5は、本明細書で更に説明するように、自動感情分類を微調整することができるアプリケーションであってもよい。明確にするために、実行可能コード5の単一のアイテムが図1に示されているが、本発明のいくつかの実施形態によるシステムは、メモリ4にロードされ、プロセッサ2に本明細書に記載の方法を実行させることができる実行可能コード5と同様の複数の実行可能コードセグメントを含むことができる。
記憶システム6は、例えば、当技術分野で知られているようなフラッシュメモリ、当技術分野で知られているようなマイクロコントローラ若しくはチップの内部にあるか、又はそれらに埋め込まれたメモリ、ハードディスクドライブ、CD-Recordable(CD-R)ドライブ、ブルーレイディスク(Blu-ray disk、BD)、ユニバーサルシリアルバス(universal serial bus、USB)デバイス、又は他の適切なリムーバブル及び/若しくは固定記憶ユニットであってもよく、又はそれらを含んでもよい。口頭及び/又はテキスト発話に関するデータは、記憶システム6に記憶されてもよく、記憶システム6からメモリ4にロードされてもよく、そこでプロセッサ又はコントローラ2によって処理されてもよい。いくつかの実施形態では、図1に示される構成要素のいくつかは省略されてもよい。例えば、メモリ4は、記憶システム6の記憶容量を有する不揮発性メモリであってもよい。したがって、別個の構成要素として示されているが、記憶システム6は、メモリ4に埋め込まれるか又は含まれてもよい。
入力デバイス7は、任意の適切な入力デバイス、構成要素、又はシステム、例えば、取り外し可能なキーボード又はキーパッド、マウスなどであってもよく、又はそれらを含んでもよい。出力デバイス8は、1つ以上の(場合によっては取り外し可能な)ディスプレイ若しくはモニタ、スピーカ、及び/又は任意の他の適切な出力デバイスを含むことができる。任意の適用可能な入力/出力(input/output、I/O)デバイスが、ブロック7及び8によって示されるように、コンピューティングデバイス1に接続され得る。例えば、有線又は無線ネットワークインターフェースカード(network interface card、NIC)、ユニバーサルシリアルバス(USB)デバイス、又は外部ハードドライブが、入力デバイス7及び/又は出力デバイス8に含まれてもよい。ブロック7及び8によって示されるように、任意の適切な数の入力デバイス7及び出力デバイス8がコンピューティングデバイス1に動作可能に接続され得ることが認識されるであろう。
本発明のいくつかの実施形態によるシステムは、複数の中央処理ユニット(CPU)又は任意の他の適切な多目的若しくは特定のプロセッサ若しくはコントローラ(例えば、要素2に類似)、複数の入力ユニット、複数の出力ユニット、複数のメモリユニット、及び複数の記憶ユニットなどであるが、それらに限定されない、構成要素を含んでもよい。
機械学習(ML)又は人工知能(artificial intelligence、AI)機能を実装するニューラルネットワークなどのニューラルネットワーク(neural network、NN)又は人工ニューラルネットワーク(artificial neural network、ANN)は、ニューロン間のリンクを有する、層に編成されたニューロンと呼ばれるノードを含み得る情報処理パラダイムを指すことがある。リンクは、ニューロン間で信号を転送してもよく、重みに関連付けられてもよい。NNは、特定のタスク、例えば、パターン認識又は分類のために構成又はトレーニングされ得る。特定のタスクについてNNをトレーニングすることは、例に基づいてこれらの重みを調整することを伴い得る。中間又は最後の層の各ニューロンは、入力信号、例えば、他のニューロンからの出力信号の重み付けされた和を受信し得、線形又は非線形関数(例えば、活性化関数)を使用して入力信号を処理し得る。入力層及び中間層の結果は、他のニューロンに転送され得、出力層の結果は、NNの出力として提供され得る。典型的には、NN内のニューロン及びリンクは、活性化関数並びにデータ要素及び重みの行列などの数学的構造によって表される。プロセッサ、例えば、CPU若しくはグラフィックス処理ユニット(graphics processing unit、GPU)、又は専用ハードウェアデバイスが、関連する計算を実行してもよい。
ここで図2を参照すると、いくつかの実施形態による、自動感情分類を微調整するためのシステム100が示されている。
本発明のいくつかの実施形態によれば、システム100は、ソフトウェアモジュール、ハードウェアモジュール、又はそれらの任意の組み合わせとして実装されてもよい。例えば、システム100は、図1の要素1などのコンピューティングデバイスであってもよく、又はそれを含んでもよく、本明細書で更に説明されるように、自動感情分類を微調整するために、実行可能コードの1つ以上のモジュール(例えば、図1の要素5)を実行するように適合されてもよい。
いくつかの実施形態によれば、図2に示されるように、システム100は、機械学習(ML)ベースのモデル120(例えば、120A、120B)を含んでもよく、又はそれを受け取ってもよい。MLモデル120は、第1の注釈付きデータセットを使用して、発話の自動感情分類を実行するために、初期設定又は環境20において、最初にトレーニング又は事前トレーニングされ得る。「発話」という用語は、この文脈では、1つ以上の音節又は単語を含み得る口頭発話又は音声発話を指すために使用され得る。追加又は代替として、「発話」という用語は、この文脈では、1つ以上の発話された音節又は単語を表すことができ、当技術分野で知られているように音声テキスト変換を介して取得された可能性があるテキストデータ要素を指すために使用され得る。
図2に示されるように、初期又は事前トレーニングされたモデルは、本明細書では、「ベースモデル」、M0、及び/又はMLモデル120として示され得、これらの表記は、本明細書では互換的に使用され得る。
第1の注釈付きデータセットは、例えば、図2の要素23として示される、注釈付き又はラベル付けされたトレーニングデータセットであってもよく、又はそれを含んでもよい。追加又は代替として、第1の注釈付きデータセットは、図2の要素25として示される検証データセットであってもよく、又はそれを含んでもよい。
いくつかの実施形態によれば、初期設定又は環境20は、本明細書では、必ずしも特定のクライアント環境に関連付けられなくてもよい環境を指すことができる。例えば、初期設定又は環境20は、システム100のベンダ又はディストリビュータに関係してもよく、任意の特定のクライアント環境に関連して切断又はオフラインであってもよい。補足的に、クライアントサイト又はインスタンス化環境30という用語は、本明細書では、クライアントサイトに関連する1つ以上のコンピューティングデバイス(例えば、図1のコンピューティングデバイス10)上のシステム100の特定のインストール又はインスタンス化に関係し得るサイト又はコンピューティング環境を指すために使用され得る。
図2の太い矢印によって示されるように、初期設定又は環境20におけるシステム100の初期トレーニングの後、システム100は、例えば、組織コンピューティングネットワーク、特定のクライアント又は組織に関連付けられたウェブサイトをホストする1つ以上のコンピュータなどを含む、クライアントサイトに関連し得る1つ以上のコンピューティングデバイス10上にインストール又は展開され得る。したがって、モデルM0の1つ以上のそれぞれのインスタンスを含む、システム100の1つ以上のインストール又はインスタンス化は、1つ以上の対応するインスタンス化環境又はクライアントサイト30(例えば、ウェブサイト、コンピューティングネットワークなど)に関連付けられ得るということができる。
いくつかの実施形態によれば、MLモデルM0の1つ以上の(例えば、各)インスタンスに対して(例えば、各クライアントサイト30に関する)、システム100は、対応するクライアントサイト30を介して少なくとも1つの発話143を受信してもよい。
例えば、クライアントサイト30は、特定のクライアント又は組織のチャットルーム、クライアント又は組織に関連付けられたウェブサイト、クライアント又は組織のコンタクトセンターなどであってもよく、又はそれらを含んでもよい。したがって、受信された発話143は、クライアントサイト30で(例えば、電話、チャットなどを介して)受信された音声発話、口頭発話、口頭発話を表すテキスト要素などであってもよい。
1つの非限定的な例では、システム100は、コンタクトセンター分析アプリケーションとしてのクライアントサイトの一部としてクライアントサイト30にインストール又は展開され得る。本明細書に詳述されるように、システム100は、コンタクトセンター分析アプリケーションのユーザが、ユーザインターフェース140を通して、その予測に関する対話型フィードバックをアプリケーションに提供することによって、感情コンテンツ検出のプロセスに影響を及ぼすことを可能にするように適合されてもよい。対話型フィードバックは、特定のクライアントサイト30(例えば、特定のコンタクトセンターサイト又はクラウドテナント)に関連付けられ得るという意味で、MLモデル120のローカルな独立した微調整又は再トレーニングを容易にし得る。例えば、MLモデル120の微調整又は再トレーニングは、組織のドメイン及び/又はビジネスにおいて使用され得るジャーゴンに感情分析モデル120を適合させ得る。いくつかの実施形態によれば、ユーザは、MLモデル120の不満足な予測を修正し、及び/又は正確な予測を強化することが可能であり得る。
本明細書で詳述されるように、システム100は、発話の分類に対する対話型フィードバックを使用して、(a)MLモデル120を再トレーニング又は微調整し、(b)1つ以上の予測閾値を微調整して、所望の目標精度をもたらすことができる。
いくつかの実施形態によれば、システム100は、クライアントサイト30に対応する、又はクライアントサイト30へのインターフェースを容易にすることができるユーザインターフェース(UI)140を含むことができる。例えば、UI140は、クライアントウェブサイト30へのインターフェースを容易にし得るアプリケーション(例えば、ウェブページ)であってもよい。追加又は代替として、UI140は、クライアントサイトチャットルーム30を促進し得るチャットアプリケーションであってもよく、又はチャットアプリケーションを含んでもよい。追加又は代替として、UI140は、組織の代表者とその組織の顧客との間のコールセンターを容易にし得るアプリケーションであってもよく、又はそれを含んでもよい。
いくつかの実施形態によれば、システム100は、例えばUI140を介して、未知の発話143などの未知のデータを含む1つ以上のデータ要素を受信することができる。システム100は、未知の発話データ要素143に対して1つ以上の現場予測を実行することができる。言い換えれば、システム100は、事前トレーニングされたモデルM0のインスタンス化120Bを利用して、少なくとも1つの受信された発話143のクラスを(当技術分野で一般に呼ばれるように)分類又は予測することができる。
予測されたクラスは、例えば、顧客がクライアントサイトによって提供されるサービスを有するコンテンツを表現する発話(例えば、「ありがとうございました、ご親切に感謝します」)などの肯定的な発話の少なくとも1つの第1のクラスであってもよく、又はそれを含んでもよい。補足的に、予測されたクラスは、顧客がクライアントサイトによって提供されるサービスに不満を表明する発話(例えば、「非常に長い時間待っていた」)などの否定的な発話の少なくとも1つの第2のクラスを含むことができる。
いくつかの実施形態によれば、システム100は、例えば、UI140を介してユーザから、少なくとも1つのフィードバックデータ要素145を受信又は取得してもよい。フィードバックデータ要素145は、少なくとも1つの発話143及び/又は対応する現場予測に対応する注釈付きフィードバックデータ要素であってもよい。言い換えれば、注釈付きフィードバックの少なくとも1つのデータ要素は、本明細書で詳述されるように、対応するクライアントサイト30に関連付けられたユーザインターフェース(UI)を介して対話的に取得され得る。
例えば、UI140は、少なくとも1つの発話143と、モデル120によって行われた対応する現場予測320とを(例えば、スクリーンなどの図1の出力デバイス8を介して)ユーザに提示することができる。ユーザは、現場予測320に同意しない場合がある。例えば、ユーザは、システム100が誤って発話143を否定的感情として分類したが、実際には肯定的又は中立的であり、逆もまた同様であると判定する場合がある。ユーザは、その後、この誤差を訂正するために、対話型フィードバックデータ要素145を(例えば、図1の入力デバイス7を介して)入力することを選択することができる。例えば、ユーザは、注釈付きフィードバックに、0による少なくとも1つの発話の分類、「肯定的感情」クラス121、「否定的感情」クラス121、及び中立クラス121などの1つ以上の感情クラスを含めることができる。
「対話式」という用語は、本明細書では、システム100が、UI140を介して発話143に関して現場予測320の有効性を提示及び/又は照会することができ、その後、提示又は照会に応答して、UI140を介してユーザからフィードバックデータ要素145を受信することができるという意味で使用することができる。
いくつかの実施形態では、例えば、感情クラス121が「肯定的感情」クラス及び「否定的感情」クラスを含む場合、フィードバック145は、各クラス121(例えば、「肯定的感情」及び「否定的感情」)について、例えば、偽陽性(false positive、FP)フィードバックタイプ、偽陰性(false negative、FN)フィードバックタイプ、真陽性(true positive、TP)フィードバックタイプ、及び真陰性(true negative、TN)フィードバックタイプを含む1つ以上のフィードバックタイプを含むことができる。
例えば、偽陽性(FP)フィードバックタイプは、否定的又は肯定的のいずれかの感情クラスに関係し得、本明細書ではそれぞれFP/NEG及びFP/POSとして示され得る。例えば、「今日の天気はひどい」などの発話145が、モデル120によって否定的感情を伝えるものとして誤って分類121された場合、ユーザは、FP(例えば、FP/NEG)などの注釈付け対話型フィードバック145を提供することができる。代替的に、「ありがとう、さようなら」などの発話が、モデル120によって肯定的感情を伝えるものとして誤って分類121された場合、ユーザは、FP(例えば、FP/POS)などの注釈付け対話型フィードバック145を提供することができる。
別の例では、偽陰性(FN)フィードバックタイプは、否定的又は肯定的のいずれかの感情クラスに関係し得、本明細書ではそれぞれFN/NEG及びFN/POSとして示され得る。例えば、発話又は文143「私の問題を解決してくれなければ、Netflixに切り換えるつもりだ」は、モデル120によって否定的感情を伝えるものとして分類121されなかった場合、対話型フィードバック145によってFN(例えば、FN/NEG)として注釈を付けられてもよい。代替的に、「ありがとう、本当に感謝しています」という文などの発話143は、モデル120によって肯定的感情を伝えるものとして分類121されなかった場合、ユーザによってFN(FN/POS)としてマークされ得る。
別の例では、真陽性(TP)注釈及び真陰性(TN)注釈が、感情クラス(例えば、陰性、陽性、又は中性)のいずれか1つに対して、モデル120によって行われる予測をサポートするために、対話型フィードバック145として提供されてもよい。
いくつかの実施形態によれば、システム100は、第2のMLモデル又はMLモデル120の第2のバージョンを生成するために、MLモデル120(例えば、M0)を再トレーニング又は微調整するように適合されたトレーニングモジュール130を含み得る。この微調整されたモデルは、図2においてモデルM1又は要素120Bとして示される。
いくつかの実施形態によると、トレーニングモジュール130は、第1の注釈付きトレーニングデータセット(例えば、トレーニングデータセット23及び/又は検証データセット25)並びに少なくとも1つの対話型注釈付きフィードバックデータ要素145を含み得る、注釈付きトレーニングデータセットに基づいて、MLモデル120を再トレーニング又は微調整し得る。
いくつかの実施形態によれば、感情クラスは感情を表すことができ、例えば、肯定的感情クラス、否定的感情クラス、中立的感情クラスなどを含むことができる。システム100は、微調整又は再トレーニングされたMLモデルM1を利用して、1つ以上の感情クラス(例えば、肯定的感情、否定的感情、中立的感情など)に従って着信発話143を分類することができる。追加又は代替として、システム100は、トレーニングモジュール130を利用して、MLモデルM1 120Bを連続的にトレーニング又は微調整し得る。「連続的に」という用語は、このコンテキストでは、トレーニングモジュール130が、例えば1つ以上の対話型フィードバックデータ要素145などの入力に続いて、本明細書で詳述されるMLモデルM1を繰り返し又は周期的に再トレーニングすることができるという意味で使用され得る。
当業者であれば、微調整されたモデルM1は、3つの因子、すなわち、(a)対話型フィードバック145、(b)ベースモデルM0(例えば、120Aで示す)、及び(c)元のデータセット(例えば、トレーニングデータセット23及び/又は検証データセット25)の積であってもよいことを理解するであろう。いくつかの実施形態によれば、トレーニングモジュール130は、(a)並びに(b)及び(c)のうちの1つ以上に基づいて、MLモデル120を再トレーニング又は微調整することができる。
任意の微調整プロセスのための入力は、フィードバックデータを含み得ることが理解され得る。しかしながら、フィードバックのみに基づいて微調整されたモデルは、元のトレーニング素材の一部を忘れる傾向がある。したがって、元のトレーニングデータ又はその一部が、微調整トレーニングセットに追加されることが多い。
いくつかの実施形態によれば、トレーニングモジュール130は、元のトレーニングデータセット(例えば、トレーニングデータセット23及び/又は検証データセット25)の少なくとも一部(例えば、全て)を微調整プロセスのための入力として含んでもよい。例えば、トレーニングデータセット23及び/又は検証データセット25は、システム100のローカルな(例えば、クライアントサイト30に関連する)インスタンス化のトレーニングを容易にするために、クラウドベースのストレージサーバに記憶されてもよい。
いくつかの実施形態によれば、トレーニングに使用されるデータの部分は、任意の特定の部分に顕著性を割り当てるように、重み付けされ得る。例えば、対話型ユーザフィードバックデータ145は、ユーザフィードバック145に特別な重要性を与えるために、モデル120の再トレーニング又は微調整のプロセス中に重み付け又は複製されてもよい。実験結果は、再トレーニングモデル120に対するユーザフィードバック145の5~10倍の複製が、最適な性能を提供し得ることを示している。
いくつかの実施形態によれば、トレーニングモジュール130は、「最初から」(例えば、ランダム重みを使用して)ではなく、すでにトレーニングされたオンサイトモデル(例えば、M0又はM1)120からモデル120の微調整プロセスを開始してもよい。実験結果は、対話型フィードバックデータ145が連続的に入力されるので、このトレーニング方法が微調整プロセス全体を通じて安定した結果をもたらすことができることを示している。対照的に、最初からのモデル120のトレーニングは、異なる実行において異なる局所最適値に収束する傾向があり得、フィードバックデータ145に関係しない発話のスコアにおいてより多くの変動をもたらす。トレーニングモジュール130は、フィードバック145データインスタンスの数を更に数サンプルだけ増加させるたびに、後続の微調整呼出しにおけるF1の平均変化によってこの安定性を測定することができる。トレーニングモジュール130は、例えば、ベースモデルM0をトレーニングするために使用された学習レートよりも3~30倍小さいものであり得る、小さい学習レート(例えば、3e-5のオーダー)を使用し得る。
以下の表1は、(例えば、微調整されたモデルM1を生成するために)ベースモデルM0を微調整するために使用されたフィードバック発話の例、並びに微調整されたモデルM1は正確な予測を行うことに成功したが、ベースモデルM0は失敗したこれらの発話の変形を含む。表1の予測は、それぞれのモデル(例えば、M0及びM1)の検証セットに対して80%の精度を達成する予測閾値に関して、それらが正しいか又は正しくないかのいずれかであり得るという意味で、バイナリであると考えられる。表1の例では、微調整されたモデルM1は、元の発話と同様の意味を有するが厳密には同じではない発話143(例えば、文)の分類121をうまく一般化することができた。
任意のMLベースの分類プロセスにおける重要な決定は、分類器の生の出力ベクトルからクラスをどのように予測するか(例えば、クラス予測を生成するか)である。このプロセスは、一般に作業点と呼ばれる予測閾値のセットを計算することを必要とする場合がある。作業点は、検証データセット25にわたって、要求される精度値p_reqをもたらす予測閾値を見つけることによって決定され得る。精度は、以下の式1で詳しく説明されているように、各クラスに対して、正しい予測の数を正の予測の数で割ったものとして計算することができる。
式1:
精度=TP/(TP+FP)
式中、TPは関連クラスの真陽性率であり、
FPは、関連クラスの偽陽性率である。
式1:
精度=TP/(TP+FP)
式中、TPは関連クラスの真陽性率であり、
FPは、関連クラスの偽陽性率である。
例えば、各クラス(例えば、否定的感情クラス)について、予測閾値0.8における計算された精度値p_calcは、信頼性≧0.8を有する正しい予測(例えば、否定的感情の予測)の数を、信頼性≧0.8を有する予測(例えば、否定的感情の正しい予測及び正しくない予測)の総数で除算したものであり得る。
このアプローチに伴う問題は、検証セット25が、クライアントサイト30上のデータ(例えば、発話データ要素143)を必ずしも表さない場合があることであり得る。したがって、実際の計算された精度値p_calcは、要求される精度p_reqよりも低くなることも高くなることもある。
特定のクラスの実際の計算された精度p_calcがp_reqよりも低い(例えば、所定のマージン値を超える)場合には、本明細書で詳述されるように、システム100の不正確な予測の数を減少させ、システム100によってあまりに多くの誤った予測が高くランク付けされることを回避するように、p_calcを増加させることが望ましい場合がある。
補足的に、特定のクラスのp_calcがp_reqよりも高い(例えば、所定のマージン値を超える)場合には、クラスの再現率を増加させ、より高品質の分類を取得するために、関連するクラスの予測閾値を減少させることが望ましい場合がある。当技術分野で知られているように、クラスのリコール値は、以下の式2に従って計算することができる。
式2:
リコール=TP/(TP+FN)、
式中、TPは関連クラスの真陽性率であり、
FNは、関連クラスの偽陰性率である。
式2:
リコール=TP/(TP+FN)、
式中、TPは関連クラスの真陽性率であり、
FNは、関連クラスの偽陰性率である。
いくつかの実施形態によれば、MLモデル120は、入力発話143を受信し、感情クラス121及び対応する信頼度スコア122を生成する(又は、当技術分野で一般に呼ばれるように、予測する)ように構成され得る。信頼度スコア122は、感情クラスに対する関連発話の分類の信頼度又は確実性のレベルを表し得る。信頼度スコア122は、例えば、0~1の間の数値であってもよく、又はそれを含んでもよく、低い値(例えば、0.1)は、分類121の信頼度が低いことを表し、高い値(例えば、0.9)は、分類の信頼度が高いことを表す。
いくつかの実施形態では、例えば、感情クラス121が「肯定的感情」クラス及び「否定的感情」クラスを含む場合、予測の大部分は、例えば、肯定的感情にも否定的感情にも関係しない、中立であってもよい。したがって、そのような実施形態における実際的な課題は、極性(例えば、否定的又は肯定的)発話を検出することであり得る。
この目的のために、初期予測閾値モジュール150Aは、検証セット25上で要求される精度レベル(例えば、p_req=0.8)をもたらす2つの予測閾値151Aを見つけることによって初期作業点を設定することができ、1つは否定的クラスのためのものであり、1つは肯定的クラスのためのものである。しかしながら、本明細書で説明するように、この手法は、クライアントサイト30上の未知の発話データを考慮すると、要求される精度を保証しない場合がある。この問題に対処するために、システム100は、本明細書で詳述されるように、クライアントサイト30固有のデータ発話143及び対応する信頼度スコア122に基づいて予測閾値151Bを計算するように適合された閾値微調整モジュール150Bを含むことができる。
本発明のいくつかの実施形態によれば、システム100は、計算された精度p_calcが予測閾値151Bを超える発話143のみに依存し得るという洞察を利用し得る。したがって、閾値微調整モジュール150Bは、高い極信頼度スコア122を有する、着信発話143の総数から発話143の比較的小さいランダムサブセットをサンプリングするのに十分であり得る。このサブセットに対して、システム100は、ユーザにフィードバックを積極的に促すことができる(例えば、UI140を介して)。フィードバックは、例えば、関連する発話143の分類を確認又は拒否するために、正しい/正しくない選択の形態であってもよい。本明細書で詳述されるように、次いで、閾値微調整モジュール150Bは、このサンプルに対して要求される精度p_reqを生成する予測閾値151Bを(例えば、否定的/肯定的感情クラスについて)探してもよい。サンプリングはランダムに実行されるので、クライアントサイト30の発話データ143に対する実際の計算された精度値p_calcは、目標精度p_reqから任意の狭い信頼区間内にあることが保証され得る。サンプルサイズが大きいほど、誤差のマージンは小さくなり得る。
(各極クラスごとに)250サンプル程度の狭さであり得るサンプリングされた発話143のサブセットが、0.05未満であり得る誤差のマージンを伴う95%信頼区間を保証し得ることが、統計学の当業者によって理解され得、本発明の実施形態によって実験的に実証されている。言い換えれば、本発明の実施形態は、対話型フィードバック145のために発話データ143のサンプルの非常に狭いサブセットのインテリジェントな選択を実行することができ、したがって、小さい誤差のマージンで高い信頼区間を維持しながら、人間の入力の労力を最小限にすることができる。
本明細書で詳述されるように、閾値微調整モジュール150Bは、高い極性スコアを有する発話143のランダムサンプリングに基づいて、予測閾値151Bのクライアントサイト30固有の調整を実行することができる。異なる予測閾値151B(例えば、否定的感情閾値及び肯定的感情閾値)の計算は、同様に独立して実行され得る。
いくつかの実施形態によれば、閾値微調整モジュール150Bは、予測閾値TH(図2では要素151Bとして示される)を決定するように構成されていてもよく、これは、所定の誤差のマージンで、要求される目標精度値p_reqを含む可能性が高い所定の信頼区間を誘導することができる。例えば、閾値微調整モジュール150Bは、誤差e<0.05のマージンで、p_req=0.8付近の95%信頼区間を見つけることを目的としてもよい。統計学の当業者であれば理解することができ、対話型フィードバック145が信頼度スコア[TH,1]の範囲からとられた少なくとも250個のランダムサンプルを含む場合、そのような区間が保証され得ることが示されている。
しかしながら、正確な予測閾値TH151B値は前もって知られていない可能性があり、理論的には範囲[0.5,1]内にある可能性があるので、臨界範囲[TH,1]内の250個のサンプルを取得することは、範囲[0.5,TH]から多くの無関係なサンプルを引き出す必要があり得る。例えば、モデル120の予測の信頼度スコアが[0.5,1]の範囲内に一様に分布し、予測閾値TH=0.75が目標精度p_reqをもたらす場合、閾値微調整モジュール150Bは、予測閾値TH151Bの値を計算するために500個のサンプルを必要とする可能性があるが、それらのうちの250個のみが予測閾値TH151Bを上回る精度を推定する役割を果たす。全てのサンプルは、UI140を介して、ユーザからのフィードバック145を必要とし得るので、信頼区間を保証するために要求される250の最小値を超えて、要求されるサンプルの数を最小化することが望ましい場合がある。
本明細書で詳述されるように(例えば、図2に関連して)、システム100は、発話143の自動感情分類を実行するように事前トレーニングされたMLモデル120を含んでもよく、又はそれを受信してもよい。MLモデル120は、少なくとも1つの初期予測閾値151(例えば、151A)に関連付けられ得る。
いくつかの実施形態によれば、MLモデル120の1つ以上のインスタンスは、1つ以上の対応するクライアントサイト30にインスタンス化又は関連付けられてもよい。各MLモデル120インスタンス(及び対応する各クライアントサイト30)について、システム100は、対応するサイトを介して少なくとも1つの発話143を受信し、少なくとも1つの発話143に対応する対話型注釈付きフィードバック145の少なくとも1つのデータ要素を取得し得る。
本明細書で詳述されるように、各MLモデル120インスタンスについて、システム100は、その後、要求される精度レベルp_reqに従って、かつ少なくとも1つの注釈付きフィードバックデータ要素に基づいて、少なくとも1つの予測閾値151(例えば、151A)を自動的に較正して、較正された又は微調整された予測閾値151Bを取得することができる。
次いで、MLモデル120は、少なくとも1つの微調整された予測閾値151(例えば、151B)を利用して、発話143を1つ以上の感情クラス121に属するものとして分類することができる。
例えば、MLモデル120が特定の発話143の分類121(例えば、「肯定的感情」)を予測し、対応する信頼度スコア122がそのクラスの予測閾値151Bを超える場合、システム100は、関連する発話が実際にMLモデル120によって予測されるように分類される(例えば、「肯定的感情」)と判定してもよい。補足的に、対応する信頼度スコア122がそのクラスの予測閾値151Bを超えない場合、システム100は、関連する発話がMLモデル120によって予測されるように分類されない(例えば、「中立的感情」)と判定してもよい。
ここで図3を参照すると、図3は、本発明のいくつかの実施形態による、予測閾値151Bを決定するために使用され得るデータの一例を示す表である。図3に示されるデータは、少なくとも1つの予測閾値151Bの自動較正のための簡略化されたアルゴリズムを表し得ることが理解され得る。自動予測閾値アルゴリズムのより詳細なバージョンも本明細書で提供される。
(例えば、図2に関連して)本明細書で詳述されるように、システム100は、例えば、UI140を介して、1つ以上の発話143、及びモデル120(例えば、モデルM0又はM1)によって行われた対応する現場予測320をユーザに提示し得る。例えば、発話は、「私はサービスに満足していません」などの否定的な文の口頭又はテキスト発話であってもよく、モデル120によって行われる現場予測320は、「否定的感情」分類の指示を含んでもよい。
いくつかの実施形態によれば、モデル120は、感情クラスに対する各発話の関連性に従って、複数の発話143に対応する複数の信頼度スコア122を計算することができる。例えば、図3の例における最左列に示されるように、モデル120は、[0,1]の範囲内の浮動数として、否定的(例えば、否定的感情)クラス信頼度スコアを計算し得、ここで、高い値(例えば、0.9)は、高い信頼性を伴う否定的感情分類を表し、低い値(例えば、0.1)は、低い信頼性を伴う否定的感情分類を表す。
いくつかの実施形態によれば、プロセッサ110は、フィードバックのためにUI140上に提示されるべき複数の発話143のうちの発話143のサブセットを、それらのそれぞれの信頼度スコア122に基づいて選択し得る。UI140は、その後、発話143の選択されたサブセットを提示し、そこからフィードバックを取得することができる。例えば、図3の例の「人間注釈」列に示されるように、人間のユーザは、分類に同意する(例えば、「1」)か又は同意しない(例えば、「0」)かを示す、はい又はいいえ(0/1と表される)の注釈として、このフィードバックを提供してもよい。
いくつかの実施形態によれば、プロセッサ110は、(a)複数の発話から選択閾値(例えば、0.5)を超える信頼度スコア122を有する発話の第1のサブセットを選択し、(b)第1のサブセットから発話の第2のサブセットをランダムに選択することによって、フィードバックのための発話143のサブセットを選択することができる。
本明細書で説明するように、フィードバックのための発話の選択はランダムに実行されるので、クライアントサイト30の発話データ143の実際の精度値は、計算された精度p_calcから狭い信頼区間内にあることを保証することができる。本明細書で詳述されるように、本発明の実施形態は、分類予測の精度を微調整して、p_reqと示される要求される精度に収束させることができる。したがって、クライアントサイト30の発話データ143に対する実際の精度値は、要求された精度p_reqから狭い信頼区間内にあることが保証され得る。更に、サンプルサイズ(例えば、第2のサブセット内の発話数)が増加するにつれて、誤差のマージンが小さくなり得る。
いくつかの実施形態によれば、選択閾値は、クラスごとに異なる値又は特定の値に設定され得る。例えば、第1の(例えば、「否定的感情」)クラスに対して、第1の選択閾値が使用されてもよく、第2の(例えば、「肯定的感情」)クラスに対して、第2の異なる選択閾値が使用されてもよい。
図3に示されるように、閾値微調整モジュール150Bは、信頼度スコア122(例えば、最左列の「否定的クラス信頼度スコア」)に従って、降順リストにおいて第2のサブセットの複数の発話143をソートし得る。次いで、閾値微調整モジュール150Bは、順序付けられたリストの1つ以上(例えば、全て)のエントリについて、注釈付きフィードバックに基づいて分類精度の値を計算することができる。
例えば、一番上の信頼度スコア122から開始して、閾値微調整モジュール150Bは、(例えば、「正しいを集約する」列に示されるように)「正しい」(例えば、「1」)人間注釈の数を集約し、それらを(例えば、「プレフィックスサイズ」列に示されるように)発話のアドホック数で除算し得る。したがって、例えば、4回の発話後に計算された精度は4/4=1.0であり、5回の発話後に計算された精度は4/5=0.8である。
いくつかの実施形態によれば、閾値微調整モジュール150Bは、要求される分類精度値に対応する順序付けられたリストのインデックスを識別することができる。例えば、要求される分類精度値は0.8であり得、閾値微調整モジュール150Bは、計算された精度が要求される分類精度値を下回った発話の第1のインデックスを識別し得る。図3の例では、これは17番目の発話であり、計算された精度は0.76に低下し、例えば、所定の閾値である0.8を下回る。計算された精度が所定の閾値未満である発話は、図3の例では灰色でマークされている。
いくつかの実施形態によれば、閾値微調整モジュール150Bは、識別されたインデックスに従って予測閾値151Bを較正又は微調整することができる。
例えば、閾値微調整モジュール150Bは、識別されたインデックスに対応する信頼度スコア122に等しくなるように、較正された又は微調整された予測閾値151Bを決定することができる。図3の例では、この値は0.895903877である。代替的に、閾値微調整モジュール150Bは、識別されたインデックスのすぐ上のインデックスに対応する信頼度スコア122に等しくなるように、微調整された予測閾値151Bを決定することができる。図3の例では、この値は0.896371917である。代替的に、閾値微調整モジュール150Bは、微調整された予測閾値151Bを、2つ以上のクラス信頼度スコア122の間の関数(例えば、平均)であると決定し得る(例えば、AVG(0.896371917,0.895903877)=0.896137897)。ソートされたリストの信頼度スコア122に基づいて微調整された予測閾値151Bを決定する他の特定の方法も可能であり得る。
微調整された予測閾値151Bの較正又は微調整は、クラスごとに独立して実装又は実行され得ることを理解されよう。追加又は代替として、予測閾値151Bは、各感情クラスに固有であり得る。
例えば、第1の予測閾値151Bは、発話143を「肯定的感情」クラスに関連するものとして分類するために使用されてもよく、第2の異なる予測閾値151Bは、発話143を「否定的感情」クラスに関連するものとして分類するために使用されてもよい。
いくつかの実施形態によれば、第2のサブセットのサイズ、例えば、フィードバックのために提示される(例えば、人間注釈のために提示される)ように選択される発話の数は、予測閾値が、所定の誤差のマージン内で、所定の信頼値を有するグラウンドトゥルース精度に対応することを保証するように選択され得る。例えば、第2のサブセットのサイズは、予測精度がグラウンドトゥルース精度から0.05の誤差のマージン内で95%の信頼度になることを保証するように選択され得る。
本発明のいくつかの実施形態によれば、発話の第2のサブセットのサイズ(例えば、フィードバックのためにランダムに選択された発話)は、各感情クラスに固有であり得る所定のサブセット制限サイズ値によって制限され得る。言い換えれば、システム100は、第1の(例えば、「肯定的感情」)クラスに対するフィードバックのために第1の数の発話をランダムに選択し、第2の(例えば、「否定的感情」)クラスに対するフィードバックのために第2の異なる数の発話をランダムに選択し得る。
いくつかの実施形態によれば、発話の第2のサブセットは、300個以下の発話を含んでもよい。言い換えれば、1つ以上の(例えば、全ての)クラスについてのサブセット制限サイズ値は300以下であり得る。このような300個以下の少数の発話は、商用サイズの発話のデータセットに対して、p_req=0.8付近の95%信頼区間において、誤差e<0.05のマージンで、p_req=0.8の要求される精度値に対して適切であり得ることが実験的に実証されている。
追加又は代替として、本発明の実施形態は、注釈付き検証データセット25に基づいて、要求される精度レベルp_reqに従って、かつ少なくとも1つの予測閾値151(例えば、151A)を較正して、較正された又は微調整された予測閾値151Bを取得することができる。
そのような実施形態では、システム100は、複数の発話を含み得る注釈付き検証データセット25を受信し得る。注釈付き検証データセット25は、その中に含まれる1つ以上の(例えば、全ての)発話のグラウンドトゥルース分類又はラベリングを含み得るという意味で注釈付きであり得る。モデル120(例えば、M0又はM1)は、注釈付き検証データセット25の複数の発話に対応する複数の信頼度スコア122を計算することができ、各信頼度スコア122は、感情クラス(例えば、「否定的感情」クラス)への発話の分類の確実性レベルを表す。閾値微調整モジュール150Bは、その後、図3の例に示されるように、計算された信頼度スコア122に従って、順序付けられたリストにおいて注釈付き検証データセット25の発話をソートしてもよい。順序付けられたリストの1つ以上のエントリについて、閾値微調整モジュール150Bは、上で詳述されたのと同様の方法で、分類精度の値を計算し、要求される分類精度値に対応する順序付けられたリストのインデックスを識別することができる。閾値微調整モジュール150Bは、その後、上記で説明したのと同様の方法で、発話を関連する感情クラスに属するものとして分類するための予測閾値151Bとして、識別されたインデックスの信頼度スコア122を決定することができる。
追加又は代替として、閾値微調整モジュール150Bは、以下で詳述されるように、代替アルゴリズムに従って少なくとも1つのクラス(例えば、「否定的感情クラス」)の予測閾値151Bを較正し得る。
閾値微調整モジュール150Bは、入力として、(a)目標又は要求される精度値p_req(例えば、0.8)、(b)最小サンプルサイズMS(例えば、250)、(c)返された予測閾値151Bを下回ると精度が実際にp_reqを下回ることを検証するために使用され得る余分なサンプル数eps(例えば、30)、(d)信頼区間確率C(例えば、95%)、及び(e)誤差のマージンe(例えば、0.05)を受信し得る。
「サンプル」という用語は、本明細書で詳述されるように、分類(例えば、真陽性(TP)、真陰性(TN)、偽陽性(FP)、及び偽陰性(FN))に関する監視フィードバックを取得するために、ユーザに提示される本発明の実施形態によって選択され得る1つ以上の発話を指すために本明細書で使用され得る。
いくつかの実施形態によれば、閾値微調整モジュール150Bは、この入力に基づいて、予測閾値151Bを上回る少なくともMSサンプルのランダムサンプルに対してp_reqの精度(又は、p_reqに可能な限り近い制度)を達成し、本明細書で詳述されるように、母集団全体に対してp_req付近の誤差eのマージンを有するC信頼区間を保証する、少なくとも1つのクラス(例えば、「否定的感情」クラス又は「肯定的感情」クラス)に対する予測閾値151Bを決定、生成又は発信するために、3段階分析アルゴリズムを採用してもよい。
いくつかの実施形態によれば、閾値微調整モジュール150Bは、最初に、所定の選択閾値を超える信頼度スコア122を有する全ての発話を収集し、スコアを減少させることによってそれらをソートし(例えば、図3に提示されるように)、それらを、b1...,bn_binsと表される等しいサイズのビンの所定の数n_binsに分割することができ、ここで、b1は最高スコアのビンであり、bn_bins(例えば、b10)は最低スコアのビンである。例えば、所定の選択閾値(例えば、>0.5)を超える信頼度スコア122を有する全ての発話の数は、600,000であり得る。閾値微調整モジュール150Bは、これらの発話をそれぞれ60000個の発話の10個のビン(例えば、b1...,b10)に分割し得、ここで、b1は最高スコアビンであり、b10は最低スコアビンである。
本明細書において「フェーズ1」として示される第1のフェーズにおいて、閾値微調整モジュール150Bは、所望の予測閾値151Bが位置し得るビンインデックスの初期推定を実行し得る。このフェーズでは、「i」は現在のビンインデックスを示し得、「s」はビンごとの初期サンプルサイズ(例えば、各ビンごとに30個のサンプル)を示し得る。
フェーズ1の間、第1のビン(例えば、「i」が「1」に初期化されている)から開始して、閾値微調整モジュール150Bは、以下に詳述するように、停止条件が満たされるまで、各ビンに対して以下のステップ1a、1b及び1cを繰り返すことができる。
フェーズ1
{
1a.これまでに取得された(例えば、全てのビンからの)全てのサンプルの精度p_calcを計算する。
1b.p_calc>=p_reqである場合、次の「未使用」ビンbiからs個(例えば、30個)の発話をサンプリングし、iをインクリメントする(例えば、i=i+1)。
1c.そうでない場合(例えば、p_calc<p_req)、所定の数(例えば、10)の追加のサンプルを各「使用された」ビンに追加し、s=s+10(例えば、s=30+10=40)を設定し、追加サンプルに基づいてp_calcを更に計算する。
}
フェーズ1
{
1a.これまでに取得された(例えば、全てのビンからの)全てのサンプルの精度p_calcを計算する。
1b.p_calc>=p_reqである場合、次の「未使用」ビンbiからs個(例えば、30個)の発話をサンプリングし、iをインクリメントする(例えば、i=i+1)。
1c.そうでない場合(例えば、p_calc<p_req)、所定の数(例えば、10)の追加のサンプルを各「使用された」ビンに追加し、s=s+10(例えば、s=30+10=40)を設定し、追加サンプルに基づいてp_calcを更に計算する。
}
停止条件は、例えば、以下の式3に詳述されるように、(a)(例えば、図3の例に関連して説明されるように計算される)アドホック計算精度p_calcが要求される精度p_reqよりも小さいこと、及び、(b)サンプルの数n_sampが最小値を超えることであってもよい。
式3
p_calc<p_req;
size(n_samp)>=MS+eps;
式3
p_calc<p_req;
size(n_samp)>=MS+eps;
例えば、(p_calc<p_req)が6番目のビン(例えば、i=6)で発生し、s=30であると仮定すると、n_samp=6*30=180<MS=250である。各使用ビンについて10個のサンプルの第1のバッチを加えた後:n_samp=6*(30+10)=240<MS=250であり、停止条件はまだ満たされていない。各使用ビンについて10個のサンプルの第2のバッチを加えた後:n_samp=6*(30+10+10)=300>MS=250であり、停止条件が満たされる。
本明細書で「フェーズ2」と表される第2のフェーズでは、閾値微調整モジュール150Bは、計算された精度がp_reqを下回る正確な予測閾値151Bの値を見つけることができる。
このフェーズでは、閾値微調整モジュール150Bは、以下に詳述するように、ステップ2a~2dを繰り返すことができる。
フェーズ2
{
2a.閾値微調整モジュール150Bは、信頼度スコア122の降順でn_samp個(例えば、現在の例では300個)の取得されたサンプルをソートすることができる。
2b.順序付けられたセットの全てのプレフィックスについて、閾値微調整モジュール150Bは、本明細書で詳述されるように(例えば、図3に関連して)、その精度p_calcを計算することができる。
2c.閾値微調整モジュール150Bは、精度値p_calc>=p_reqに対応する最大インデックスであるインデックスjを決定することができる。閾値微調整モジュール150Bは、対応するプレフィックスの精度をp(j)によって示し得る。
2d.j<MS(例えば、精度値p_calc>=p_reqに対応する最大インデックス)が最小の所定数のサンプル未満である場合、アルゴリズムはステップ1cに戻ることができる(例えば、各「開いた」ビンに更に10個のサンプルを追加する)。
}
フェーズ2
{
2a.閾値微調整モジュール150Bは、信頼度スコア122の降順でn_samp個(例えば、現在の例では300個)の取得されたサンプルをソートすることができる。
2b.順序付けられたセットの全てのプレフィックスについて、閾値微調整モジュール150Bは、本明細書で詳述されるように(例えば、図3に関連して)、その精度p_calcを計算することができる。
2c.閾値微調整モジュール150Bは、精度値p_calc>=p_reqに対応する最大インデックスであるインデックスjを決定することができる。閾値微調整モジュール150Bは、対応するプレフィックスの精度をp(j)によって示し得る。
2d.j<MS(例えば、精度値p_calc>=p_reqに対応する最大インデックス)が最小の所定数のサンプル未満である場合、アルゴリズムはステップ1cに戻ることができる(例えば、各「開いた」ビンに更に10個のサンプルを追加する)。
}
本明細書において「フェーズ3」として示される第3のフェーズにおいて、閾値微調整モジュール150Bは、以下に詳述されるように、インデックスjを下回る精度の低下が、局所的な低下又は「グリッチ」ではなく、統計的に傾向を表す可能性が高いと判定するように構成された、本明細書において「テール分析」として示されるプロセスを実行してもよい。閾値微調整モジュール150Bは、ステップ3dで必要な閾値151Bが見つかるまで、ステップ3a~3dを繰り返すことができる。
フェーズ3
{
3a.サンプルの数(例えば、この例では300であるn_samp)と所定のサンプルの最小数(例えば、この例では250であるMS)との間の差として定義されるテールサイズが所定の数(例えば、20、この例では300-250=50>20)未満である場合、閾値微調整モジュール150Bは、ステップ1aに戻ってもよい(例えば、次の「未使用」ビンbiからs個の発話をサンプリングし、iをインクリメントする(i=i+1))。
3b.kをテールにおける真の予測の数とする(例えば、最後の300-250=50サンプル)。閾値微調整モジュール150Bは、成功確率p_reqを有する二項分布を仮定して、n_samp-j回の試行のうち最大でk回の成功についてp値を計算することができる。このp値は、テール領域における精度がp_req以上であるという帰無仮説を表すことができ、二項累積分布関数(cumulative distribution function、CDF)を使用して計算される。
3c.p値が0.05よりも大きい(帰無仮説を受け入れる)場合、閾値微調整モジュール150Bは、新しいビンbiからs個のサンプルを引き出し得、閾値微調整モジュール150Bは、ステップ2aに戻り得る。このステップの動機付けは、帰無仮説が受け入れられたので(例えば、計算された精度p_calcの低下が誤警報として検出されたので)、閾値微調整モジュール150Bが、新しいビンから最小の追加の数のサンプルを引き出し、p_calcがp_reqを下回る点を再計算し得ることであり得る。
3d.p値が≦0.05である(帰無仮説を棄却する)場合、閾値微調整モジュール150Bは、インデックスjにおけるサンプルのスコアとして予測閾値151Bを返すことができる。
}
フェーズ3
{
3a.サンプルの数(例えば、この例では300であるn_samp)と所定のサンプルの最小数(例えば、この例では250であるMS)との間の差として定義されるテールサイズが所定の数(例えば、20、この例では300-250=50>20)未満である場合、閾値微調整モジュール150Bは、ステップ1aに戻ってもよい(例えば、次の「未使用」ビンbiからs個の発話をサンプリングし、iをインクリメントする(i=i+1))。
3b.kをテールにおける真の予測の数とする(例えば、最後の300-250=50サンプル)。閾値微調整モジュール150Bは、成功確率p_reqを有する二項分布を仮定して、n_samp-j回の試行のうち最大でk回の成功についてp値を計算することができる。このp値は、テール領域における精度がp_req以上であるという帰無仮説を表すことができ、二項累積分布関数(cumulative distribution function、CDF)を使用して計算される。
3c.p値が0.05よりも大きい(帰無仮説を受け入れる)場合、閾値微調整モジュール150Bは、新しいビンbiからs個のサンプルを引き出し得、閾値微調整モジュール150Bは、ステップ2aに戻り得る。このステップの動機付けは、帰無仮説が受け入れられたので(例えば、計算された精度p_calcの低下が誤警報として検出されたので)、閾値微調整モジュール150Bが、新しいビンから最小の追加の数のサンプルを引き出し、p_calcがp_reqを下回る点を再計算し得ることであり得る。
3d.p値が≦0.05である(帰無仮説を棄却する)場合、閾値微調整モジュール150Bは、インデックスjにおけるサンプルのスコアとして予測閾値151Bを返すことができる。
}
終了すると、C=95%信頼区間は、[p_calc-e,p_calc+e]であり、式中、e(例えば、誤差のマージン)は、以下の式4に従って計算できることを理解されよう:
式4
式4
要求される精度レベルp_req=0.8を一例として取り上げると、p_calcはp_reqに非常に近いと予想されるので、式4は次式のようになり得、
ここで図4を参照すると、図4は、本発明のいくつかの実施形態による、少なくとも1つのプロセッサ(例えば、図1のプロセッサ2)によって自動感情分類を微調整する方法を示すフロー図である。
ステップS1005に示すように、少なくとも1つのプロセッサは、第1のMLモデルM0(例えば、図2のMLモデル120A)を受信することができる。第1のMLモデルM0は、第1の注釈付きトレーニングデータセット23及び/又は検証セット25に基づいて、発話の自動感情分類を実行するように最初にトレーニング又は事前トレーニングされてもよい。
ステップS1010に示されるように、少なくとも1つのプロセッサは、モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けるか、又はモデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに展開してもよい。これらの1つ以上のサイトは、例えば、ウェブサイト、コールセンター、オンラインチャットルームなどを含んでもよく、これらは、1つ以上の対応する組織、クライアント及び/又は企業に属してもよく、又は関連付けられてもよい。注釈付きトレーニングデータセット23及び/又は検証セット25に従って第1のMLモデルM0を事前トレーニングすることは、MLモデルM0のベンダのサイトにおいて実行されてもよく、1つ以上のサイトへのMLモデルM0の展開又は関連付けの前に行われてもよいことを理解されたい。
ステップS1015に示されるように、少なくとも1つの(例えば、各)MLモデルM0インスタンスについて、少なくとも1つのプロセッサは、対応するサイトを介して少なくとも1つの発話143を受信してもよい。例えば、少なくとも1つの発話は、コールセンターであるサイトとの電話呼を介して顧客から受信される音声又は口頭発話であってもよい。別の例では、少なくとも1つの発話はオンラインチャット又は組織ウェブページなどであるサイトを介して顧客から受信されたテキスト発話であってもよい。
ステップS1020に示すように、少なくとも1つの(例えば、各)MLモデルM0インスタンスについて、少なくとも1つのプロセッサは、少なくとも1つの発話に対応する注釈付きフィードバック145の少なくとも1つのデータ要素を取得することができる。例えば、注釈付きフィードバック145の少なくとも1つのデータ要素は、少なくとも1つの発話143の感想分類に関するラベル付け又は注釈を含み得る。例えば、注釈付きフィードバック145は、真陽性(TP)注釈、真陰性(TN)注釈、偽陽性(FP)注釈、及び偽陰性(FN)注釈など、MLモデル120Aによる少なくとも1つの発話143の分類に関する監視フィードバックを含むことができる。追加又は代替として、注釈付きフィードバック145の少なくとも1つのデータ要素は、少なくとも1つの発話143の「グラウンドトゥルース」感情分類(例えば、「肯定的感情」、「否定的感情」)などのラベル付けされた又は注釈付きデータを含み得る。
ステップS1025に示されるように、少なくとも1つの(例えば、各)MLモデルM0インスタンス120Aに対して、少なくとも1つのプロセッサは、第2のMLモデルM1(例えば、図2のMLモデル120B)を生成するために、MLモデルM0を再トレーニング又は微調整トレーニングしてもよい。MLモデル120Aの再トレーニングは、第2の注釈付きトレーニングデータセットに基づくことができ、第2の注釈付きトレーニングデータセットは、第1の注釈付きトレーニングデータセット23及び少なくとも1つの注釈付きフィードバックデータ要素145を含むことができる。
ステップS1030に示されるように、少なくとも1つの(例えば、各)サイト(例えば、及び/又は対応するMLモデルM0インスタンス120A)について、少なくとも1つのプロセッサは、第2のMLモデルM1120Bを使用して、発話、例えば、関連付けられたサイトで受信された発話143を、1つ以上の感情クラスに従って(例えば、「肯定的感情」クラス、「中立的感情」クラス、及び「否定的感情」クラスに従って)分類することができる。
ここで図5を参照すると、図5は、本発明のいくつかの実施形態による、少なくとも1つのプロセッサ(例えば、図1のプロセッサ2)によって自動感情分類を微調整する別の方法を示すフロー図である。
ステップS2005に示すように、少なくとも1つのプロセッサは、第1のMLモデルM0(例えば、図2のMLモデル120A)を受信することができる。第1のMLモデルM0は、第1の注釈付きトレーニングデータセット23及び/又は検証セット25に基づいて、発話の自動感情分類を実行するように最初にトレーニング又は事前トレーニングされてもよい。追加又は代替として、MLモデルM0は、少なくとも1つの予測閾値(例えば、図2の初期閾値151A)に関連付けられ得る。
ステップS2010に示されるように、少なくとも1つのプロセッサは、モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けるか、又はモデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに展開してもよい。これらの1つ以上のサイトは、例えば、本明細書に詳述されるように、ウェブサイト、コールセンター、オンラインチャットルームなどを含んでもよく、これらは、1つ以上の対応する組織、クライアント及び/又は企業に属してもよく、又は関連付けられてもよい。
ステップS2015に示されるように、少なくとも1つの(例えば、各)MLモデルM0インスタンス120Aについて、少なくとも1つのプロセッサは、(例えば、図4に関連して)本明細書で詳述されるように、対応するサイトを介して少なくとも1つの発話を受信してもよい。
ステップS2020に示すように、少なくとも1つの(例えば、各)MLモデルM0インスタンスについて、少なくとも1つのプロセッサは、(例えば、図4に関連して)本明細書で詳述されるように、少なくとも1つの発話に対応する注釈付きフィードバック145の少なくとも1つのデータ要素を取得してもよい。
ステップS2025に示すように、少なくとも1つの(例えば、各)MLモデルM0インスタンスについて、少なくとも1つのプロセッサは、(例えば、図3に関連して)本明細書で詳述されるように、(例えば、本明細書でp_reqとして示される)要求される精度レベルに従って、かつ少なくとも1つの注釈付きフィードバックデータ要素145に基づいて、少なくとも1つの予測閾値151Bを自動的に較正することができる。
ステップS2030に示すように、少なくとも1つの(例えば、各)サイトについて、少なくとも1つのプロセッサは、少なくとも1つの予測閾値を使用して、本明細書で詳述されるように、発話143を1つ以上の感情クラスに属するものとして分類することができる。
本発明の実施形態は、MLベースの自然言語処理を実行するための実用的なアプリケーションを含むことができる。
本発明の実施形態は、MLベースの分類、特にMLベースの自然言語処理、及び感情分析の現在利用可能な技術に対するいくつかの改善を含むことができる。
例えば、本発明の実施形態は、MLモデルが展開される特定のサイト又は組織の特定の環境、ジャーゴン、及び/又は分野に従って、事前トレーニングされた感情分析MLモデルを改良又は再トレーニングすることによって、MLベースの感情分析技術を改善することができる。この再トレーニングは、(a)MLモデルが最初に事前トレーニングされた初期トレーニングデータセット、及び(b)MLモデルが展開される特定のサイトに関する監視フィードバックデータに基づくか、又はそれらを考慮することができる。
別の例では、本発明の実施形態は、要求される精度レベル(本明細書ではp_reqと示される)を受信し、p_reqに基づいて人間のフィードバックを受信するためのサンプルとして最小であるが十分な数の発話をインテリジェントに選択し、この最小数のサンプルに基づいてMLモデルの予測層の予測閾値を自動的に微調整することによって、MLベースの感情分析技術を改善することができる。
明示的に述べられない限り、本明細書で説明される方法実施形態は、特定の順序又はシーケンスに制約されない。更に、本明細書に記載される全ての式は、例としてのみ意図され、他の又は異なる式が使用されてもよい。加えて、説明される方法実施形態又はその要素のうちのいくつかは、同じ時点で発生又は実行されてもよい。
本発明の特定の特徴が本明細書に例示され、説明されてきたが、多くの修正、置換、変更、及び均等物が当業者に想起され得る。したがって、添付の特許請求の範囲は、本発明の真の精神の範囲内に入る全てのそのような修正及び変更を包含することが意図されていることを理解されたい。
様々な実施形態が提示されてきた。これらの実施形態の各々は、当然ながら、提示される他の実施形態からの特徴を含んでもよく、具体的に説明されていない実施形態は、本明細書に説明される種々の特徴を含んでもよい。
Claims (15)
- 少なくとも1つのプロセッサによって自動感情分類を微調整する方法であって、前記方法は、
第1の注釈付きトレーニングデータセットに基づいて、発話の自動感情分類を実行するように事前トレーニングされた第1の機械学習(ML)モデルM0を受信することと、
モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けることと、
各MLモデルM0インスタンスについて、
前記対応するサイトを介して少なくとも1つの発話を受信することと、
前記少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得することと、
前記MLモデルM0を再トレーニングして、前記第1の注釈付きトレーニングデータセットと少なくとも1つの注釈付きフィードバックデータ要素とを含む第2の注釈付きトレーニングデータセットに基づいて、第2のMLモデルM1を生成することと、
前記第2のMLモデルM1を使用して、1つ以上の感情クラスに従って発話を分類することと、を含む、方法。 - 前記注釈付きフィードバックの少なくとも1つのデータ要素を取得することは、前記対応するサイトに関連付けられたユーザインターフェース(UI)を介して対話的に行われる、請求項1に記載の方法。
- 前記注釈付きフィードバックは、0個以上の感情クラスによる、前記少なくとも1つの発話の分類を含む、請求項1に記載の方法。
- 複数の発話を含む注釈付き検証データセットを受信し、対応する複数の信頼度スコアであって、各信頼度スコアが、感情クラスへの発話の分類の確実性レベルを表す、信頼度スコアを計算することと、
計算された前記信頼度スコアに従って、順序付けられたリストにおいて前記検証データセットの前記発話をソートすることと、
前記順序付けられたリストの1つ以上のエントリについて、分類精度の値を計算することと、
要求される分類精度値に対応する、前記順序付けられたリストのインデックスを識別することと、
識別された前記インデックスの前記信頼度スコアを、発話を前記感情クラスに属するものとして分類するための予測閾値として決定することと、を更に含む、請求項1に記載の方法。 - 少なくとも1つのプロセッサによって自動感情分類を微調整する方法であって、前記方法は、
発話の自動感情分類を実行するように事前トレーニングされたMLモデルM0であって、少なくとも1つの予測閾値に関連付けられている、モデルM0を受信することと、
モデルM0の1つ以上のインスタンスを1つ以上の対応するサイトに関連付けることと、
各MLモデルM0インスタンスについて、
前記対応するサイトを介して少なくとも1つの発話を受信することと、
前記少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得することと、
要求される精度レベルに従って、かつ少なくとも1つの注釈付きフィードバックデータ要素に基づいて、前記少なくとも1つの予測閾値を自動的に較正することと、
前記少なくとも1つの予測閾値を使用して、発話を1つ以上の感情クラスに属するものとして分類することと、を含む、方法。 - 前記注釈付きフィードバックの少なくとも1つのデータ要素を取得することは、
UIを介して1つ以上の発話をユーザに提示することと、
前記UIを介して前記ユーザから前記注釈付きフィードバックデータ要素を取得することと、を含み、前記注釈付きフィードバックは、0個以上の感情クラスによる、前記提示された1つ以上の発話の分類を含む、請求項5に記載の方法。 - 1つ以上の発話を提示することは、
感情クラスに対する各発話の関連性に従って、対応する複数の発話に対する複数の信頼度スコアを計算することと、
それぞれの信頼度スコアに基づいて、フィードバックのために前記複数の発話のうちの発話のサブセットを選択することと、
前記UIを介して、選択された前記発話のサブセットを提示することと、を含む、請求項6に記載の方法。 - フィードバックのための1つ以上の発話を選択することは、各感情クラスについて、
前記複数の発話から選択閾値を超える発話の第1のサブセットを選択することと、
前記第1のサブセットから発話の第2のサブセットをランダムに選択することと、
前記UIを介して前記発話の第2のサブセットを提示することと、を含む、請求項6に記載の方法。 - 前記予測閾値は、各感情クラスに固有である、請求項8に記載の方法。
- 前記発話の第2のサブセットのサイズは、各感情クラスに固有である所定のサブセットサイズによって制限される、請求項8に記載の方法。
- 前記発話の第2のサブセットは、300個以下の発話を含む、請求項8に記載の方法。
- 前記少なくとも1つの予測閾値を較正することは、
感情クラスに対する各発話の関連性に従って、前記第2のサブセットの前記1つ以上の発話に対応する1つ以上の信頼度スコアを計算することと、
前記信頼度スコアに従って、降順リストにおいて前記第2のサブセットの前記複数の発話をソートすることと、
前記順序付けられたリストの1つ以上のエントリについて、前記注釈付きフィードバックに基づいて分類精度の値を計算することと、
要求される分類精度値に対応する、前記順序付けられたリストのインデックスを識別することと、
識別された前記インデックスの前記信頼度スコアを前記予測閾値の前記値として決定することと、を含む、請求項8に記載の方法。 - 前記所定のサブセットサイズは、前記予測閾値が0.05の誤差のマージン内で少なくとも95%の信頼値を有するグラウンドトゥルース精度に対応することを保証するように選択される、請求項8に記載の方法。
- 前記感情クラスは、肯定的感情及び否定的感情からなるリストから選択される、請求項5に記載の方法。
- 自動感情分析を微調整するためのシステムであって、前記システムは、特定のサイトに関連付けられており、(a)命令コードを記憶する非一時的メモリデバイスと、(b)前記メモリデバイスに関連付けられたプロセッサとを備え、前記プロセッサは、前記命令コードを実行し、それにより、
第1の注釈付きトレーニングデータセットに基づいて、発話の自動感情分類を実行するように事前トレーニングされた第1のMLモデルM0を受信し、
前記サイトを介して少なくとも1つの発話を受信し、
前記少なくとも1つの発話に対応する、注釈付きフィードバックの少なくとも1つのデータ要素を取得し、
前記MLモデルM0を再トレーニングして、前記第1の注釈付きトレーニングデータセットと少なくとも1つの注釈付きフィードバックデータ要素とを含む第2の注釈付きトレーニングデータセットに基づいて、第2のMLモデルM1を生成し、かつ
前記第2のMLモデルM1を使用して、1つ以上の感情クラスに従って発話を分類するように構成されている、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2021/031991 WO2022240404A1 (en) | 2021-05-12 | 2021-05-12 | System and method for finetuning automated sentiment analysis |
US17/318,467 US20220366197A1 (en) | 2021-05-12 | 2021-05-12 | System and method for finetuning automated sentiment analysis |
US17/318,467 | 2021-05-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024521041A true JP2024521041A (ja) | 2024-05-28 |
Family
ID=76523437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023568669A Pending JP2024521041A (ja) | 2021-05-12 | 2021-05-12 | 自動感情分析を微調整するためのシステム及び方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20220366197A1 (ja) |
EP (1) | EP4338090A1 (ja) |
JP (1) | JP2024521041A (ja) |
CN (1) | CN117396881A (ja) |
AU (1) | AU2021445464A1 (ja) |
BR (1) | BR112023023460A2 (ja) |
CA (1) | CA3218840A1 (ja) |
CO (1) | CO2023016153A2 (ja) |
WO (1) | WO2022240404A1 (ja) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2865184C (en) * | 2012-05-15 | 2018-01-02 | Whyz Technologies Limited | Method and system relating to re-labelling multi-document clusters |
US20150170053A1 (en) * | 2013-12-13 | 2015-06-18 | Microsoft Corporation | Personalized machine learning models |
US9978362B2 (en) * | 2014-09-02 | 2018-05-22 | Microsoft Technology Licensing, Llc | Facet recommendations from sentiment-bearing content |
US9400956B2 (en) * | 2014-11-05 | 2016-07-26 | International Business Machines Corporation | Answer interactions in a question-answering environment |
US20160189037A1 (en) * | 2014-12-24 | 2016-06-30 | Intel Corporation | Hybrid technique for sentiment analysis |
US20160350644A1 (en) * | 2015-05-29 | 2016-12-01 | Sas Institute Inc. | Visualizing results of electronic sentiment analysis |
US11250311B2 (en) * | 2017-03-15 | 2022-02-15 | Salesforce.Com, Inc. | Deep neural network-based decision network |
US20210209488A1 (en) * | 2019-12-20 | 2021-07-08 | Boe Technology Group Co., Ltd. | Inference computing apparatus, model training apparatus, inference computing system |
-
2021
- 2021-05-12 BR BR112023023460A patent/BR112023023460A2/pt unknown
- 2021-05-12 EP EP21733599.1A patent/EP4338090A1/en active Pending
- 2021-05-12 CN CN202180098675.2A patent/CN117396881A/zh active Pending
- 2021-05-12 US US17/318,467 patent/US20220366197A1/en active Pending
- 2021-05-12 CA CA3218840A patent/CA3218840A1/en active Pending
- 2021-05-12 WO PCT/US2021/031991 patent/WO2022240404A1/en active Application Filing
- 2021-05-12 AU AU2021445464A patent/AU2021445464A1/en active Pending
- 2021-05-12 JP JP2023568669A patent/JP2024521041A/ja active Pending
-
2023
- 2023-11-29 CO CONC2023/0016153A patent/CO2023016153A2/es unknown
Also Published As
Publication number | Publication date |
---|---|
EP4338090A1 (en) | 2024-03-20 |
CO2023016153A2 (es) | 2024-02-15 |
WO2022240404A1 (en) | 2022-11-17 |
AU2021445464A1 (en) | 2023-11-09 |
BR112023023460A2 (pt) | 2024-01-30 |
US20220366197A1 (en) | 2022-11-17 |
CN117396881A (zh) | 2024-01-12 |
CA3218840A1 (en) | 2022-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11676067B2 (en) | System and method for creating data to train a conversational bot | |
CN111460111B (zh) | 评估自动对话服务的重新训练推荐 | |
US11113479B2 (en) | Utilizing a gated self-attention memory network model for predicting a candidate answer match to a query | |
US20190354810A1 (en) | Active learning to reduce noise in labels | |
Mehdiyev et al. | A multi-stage deep learning approach for business process event prediction | |
US10163061B2 (en) | Quality-directed adaptive analytic retraining | |
US20200195779A1 (en) | System and method for performing agent behavioral analytics | |
US11030547B2 (en) | System and method for intelligent incident routing | |
US20180075357A1 (en) | Automated system for development and deployment of heterogeneous predictive models | |
US11373041B2 (en) | Text classification using models with complementary granularity and accuracy | |
US11869021B2 (en) | Segment valuation in a digital medium environment | |
KR20180120488A (ko) | 텍스트 마이닝 기법을 활용한 고객 불만에 대한 분류 및 예측 방법 | |
US11295177B2 (en) | Ensemble weak support vector machines | |
US20210357699A1 (en) | Data quality assessment for data analytics | |
US20220198320A1 (en) | Minimizing processing machine learning pipelining | |
CN109508456B (zh) | 一种文本处理方法和装置 | |
US20240273293A1 (en) | Adversarial input generation for natural language processing machine learning models | |
US20230308360A1 (en) | Methods and systems for dynamic re-clustering of nodes in computer networks using machine learning models | |
KR102703332B1 (ko) | 상담 품질을 평가하기 위한 방법 | |
Al Qadi et al. | A scalable shallow learning approach for tagging arabic news articles | |
JP2024521041A (ja) | 自動感情分析を微調整するためのシステム及び方法 | |
US11514311B2 (en) | Automated data slicing based on an artificial neural network | |
CN112801226A (zh) | 数据筛选方法和装置、计算机可读存储介质、电子设备 | |
Arief et al. | Hybrid Approach with VADER and Multinomial Logistic Regression for Multiclass Sentiment Analysis in Online Customer Review. | |
US20230258081A1 (en) | Devices and methods for oil field specialty chemical development and testing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240509 |