感情分類

Watson 自然言語処理分類ワークフローの感情モデルは、入力テキスト内の感情を分類します。

ワークフロー名

  • emotion_aggregated-workflow_en_stock
  • emotion_aggregated-workflow_fr_stock

サポート対象言語

  • 英語とフランス語

機能

「Emotion」分類モデルは、入力ドキュメントに含まれる感情を分類するタスク向けに事前学習されたドキュメント分類モデルです。 このモデルは、文書に含まれる感情を識別し、次のように分類します:

  • 怒り
  • 嫌悪
  • 不安
  • 喜び
  • 悲しみ

個々の文を分類する「センチメントモデル」とは異なり、「エモーションモデル」は入力された文書全体を分類します。 したがって、Emotionモデルは、分類対象の入力テキストが1000文字以内の場合に最適な性能を発揮します。 1000文字を超えるテキストを分類したい場合は、テキストを文や段落などに分割し、それぞれの文や段落に対して「Emotion」モデルを適用してください。

文書は、複数のカテゴリに分類される場合もあれば、どのカテゴリにも分類されない場合もあります。

例に基づく感情の分類の能力
機能
文書の感情を特定し、分類する 「このコードが動かないのが本当にイライラする」→ 怒り、悲しみ

他のブロックへの依存関係

なし

コード・サンプル

import watson_nlp

# Load the Emotion workflow model for English
emotion_model = watson_nlp.load('emotion_aggregated-workflow_en_stock')

# Run the Tone model
emotion_result = emotion_model.run("I'm so annoyed that this code won't run")
print(emotion_result)

コードサンプルの出力:

{
  "emotion_predictions": [
    {
      "emotion": {
        "anger": 0.6145385088342609,
        "disgust": 0.016446104781194168,
        "fear": 0.09267639538103885,
        "joy": 0.002527286676040879,
        "sadness": 0.19656945832751013
      },
      "target": "",
      "emotion_mentions": [
        {
          "span": {
            "begin": 0,
            "end": 39,
            "text": "I'm so annoyed that this code won't run"
          },
          "emotion": {
            "anger": 0.6145385088342609,
            "disgust": 0.016446104781194168,
            "fear": 0.09267639538103885,
            "joy": 0.002527286676040879,
            "sadness": 0.19656945832751013
          }
        }
      ]
    }
  ],
  "producer_id": {
    "name": "Ensemble Aggregated Emotion Workflow",
    "version": "0.0.1"
  }
}