感情分析は、人間のエージェントとエンドユーザー間の会話中にメッセージを分析し、エンドユーザーの感情的な意図を特定します。会話のコンテキストで個々のメッセージを分析し、音声ストリームを分析してエンドユーザーの感情スコアを正確に提供することもできます。
感情分析を有効にする
感情分析は、会話プロファイルの作成時または編集時に有効にできます。既存の会話プロファイルを編集した場合、会話プロファイルが更新されるまで、会話に反映されません。Agent Assist コンソールを使用して会話プロファイルを作成する際に、感情分析を有効にすることもできます。
感情分析を有効にして結果を表示する手順は次のとおりです。
MessageAnalysisConfigでenableSentimentAnalysisV3をtrueに設定します。- この機能が有効になっている
ConversationProfileを使用して、createConversationリクエストを送信します。 - 感情分析の結果は
AnalyzeContentResponse.message.sentimentAnalysisで確認できます。 - Agent Assist で Pub/Sub 統合を有効にしている場合は、
NewMessagePayloadで感情分析の結果を確認することもできます。
感情分析の結果を解釈する
感情は、レスポンスで返される指標である score と magnitude の値で表されます。感情の score は -1.0(ネガティブ)~ 1.0(ポジティブ)の範囲で、テキストまたは音声の全体的な感情の傾向に対応します。magnitude の値は、指定されたテキストまたは音声内の感情の全体的な強度(ポジティブとネガティブの両方)を示し、0.0~1.0 の範囲の値になります。これらの指標の解釈の詳細については、自然言語の感情分析のドキュメントをご覧ください。
以下は、Natural Language API のデモ機能による感情分析の出力例です。次の手順に沿って、デモを使用してサンプル テキストの感情分析をテストします。
- サンプル テキストをフィールドに貼り付けます。
- [分析] > [感情] をクリックします。
例 1
テキスト: I'm not happy.
返される score は -0.9、magnitude は 0.9 です。これは、感情の強度が低い~中程度で、非常に強い否定的な感情の傾向を示しています。
例 2
テキスト: Google Cloud は Googleのクラウド サービスです。
score と magnitude の両方の戻り値は 0 です。これは、テキストに感情や感情の強さが示されていないことを意味します。
例 3
テキスト: 結果に非常に腹が立ち、失望しています。一方、チームが熱心に働き、プロフェッショナルな姿勢を示しているのを見て、うれしく思いました。
例 1 とは異なり、このテキストには 2 つの文が含まれています。出力には、ドキュメント全体の指標と、個々の文の指標が含まれます。ドキュメント全体の値は、一方の文ではなく、両方の文の指標を表します。各文は、対応する magnitude 値と score 値とともに一覧表示されます。
ドキュメント全体の感情 score は 0 で、magnitude は 1.0 です。複数文のドキュメントで score が 0 の場合、感情的に完全に中立であるか、テキストのさまざまな箇所でポジティブな感情とネガティブな感情が互いに相殺されている可能性があります。感情が完全に中立的なテキストの magnitude も 0 に近い値になります。この場合、magnitude が 1.0 と比較的高い値であることは、2 つの文の感情が実際には中立ではなく、混在している(たとえば、テキストのさまざまな箇所で怒り、失望、喜びが混在している)ことを意味します。各文の score 値を見ると、1 つは非常にポジティブ(0.8)、もう 1 つは非常にネガティブ(-0.8)で、ドキュメント全体の score の平均値は 0 になっています。
以前のモデル
Agent Assist の感情分析の以前のバージョンをまだ使用している可能性があります。以前のバージョンには、次のような違いがあります。
MessageAnalysisConfigでenableSentimentAnalysisをtrueに設定して、感情分析を有効にします。- 人間のエージェントとエンドユーザーの両方の感情を分析します。
- 分析には音声ファイルの会話文字起こしのみを使用します。
- 0.0 ~+inf の範囲の
Magnitudeスコアを参照してください。