ボットとの会話におけるユーザー発話の感情分析 - Amazon Lex

ボットとの会話におけるユーザー発話の感情分析

センチメント分析を使用して、ユーザー発話で表現されるセンチメントを判断できます。センチメント情報を使用して、会話フローを管理したり、コール後の分析を実行できます。例えば、ユーザーのセンチメントがネガティブな場合、会話をヒューマンエージェントに引き渡すフローを作成できます。

Amazon Lex は、Amazon Comprehend と統合して、ユーザーのセンチメントを検出します。Amazon Comprehend からの応答は、テキストの全体的なセンチメントがポジティブ、中立、ネガティブ、または混合のいずれであるかを示します。応答には、ユーザー発話における最も可能性の高いセンチメントおよびセンチメントカテゴリごとのスコアが含まれます。スコアはセンチメントが正しく検出された可能性を表します。

ボットの感情分析を有効にするには、コンソールを使用するか、Amazon Lex API を使用します。ボットのエイリアスで感情分析を有効にします。Amazon Lex コンソールを使用します。

  1. エイリアスを選択します。

  2. [詳細] で [編集] を選択します。

  3. [感情分析を有効にする] を選択し、感情分析をオンまたはオフにします。

  4. [確定] を選択し、変更を保存します。

API を使用している場合は、detectSentiment フィールドを true に設定して CreateBotAlias オペレーションを呼び出します。

感情分析を有効にすると、RecognizeTextRecognizeUtterance オペレーション操作の応答は、他のメタデータと一緒に interpretations の構造体の sentimentResponse というフィールドを返します。sentimentResponse フィールドには、センチメント分析の結果を含む sentiment および sentimentScore の 2 つのフィールドがあります。Lambda 関数を使用している場合、sentimentResponse フィールドは関数に送信されるイベントデータに含まれます。

以下に、RecognizeText または RecognizeUtterance 応答の一部として返される sentimentResponse フィールドの例を示します。

sentimentResponse { "sentimentScore": { "mixed": 0.030585512690246105, "positive": 0.94992071056365967, "neutral": 0.0141543131828308, "negative": 0.00893945890665054 }, "sentiment": "POSITIVE" }

Amazon Lex は、あなたに代わって Amazon Comprehend を呼び出し、ボットが処理するすべての発話に含まれる感情を判断します。センチメント分析を有効にすると、Amazon Comprehend のサービス利用規約および契約に同意したことになります。Amazon Comprehend の料金の詳細については、「Amazon Comprehend Pricing」(Amazon Comprehend の料金) を参照してください。

Amazon Comprehend の感情分析の仕組みについては、「Amazon Comprehendデベロッパーガイド」の「感情を判断する」を参照してください。