Classificação de sentimento

Os modelos de classificação do Watson Natural Language Processing Sentiment classificam o sentimento do texto de entrada.

Idiomas suportados

A classificação de sentimento está disponível para os seguintes idiomas. Para obter uma lista dos códigos de idioma e dos idiomas correspondentes, consulte Códigos de idiomas.

ar, cs, da, de, en, es, fi, fr, he, hi, it, ja, ko, nb, nl, nn, pl, pt, ro, ru, sk, sv, tr, zh-cn

Impressão

O sentimento do texto pode ser positivo, negativo ou neutro

O modelo de impressão calcula o sentimento para cada sentença no documento de entrada.. O sentimento agregado para o documento inteiro também é calculado usando o fluxo de trabalho do transformador de sentimento.

As classificações retornadas contêm uma probabilidade. A pontuação do sentimento varia de -1 a 1. Uma pontuação maior que 0 denota um sentimento positivo, um score menos de 0 a de sentimento negativo, e uma pontuação de 0 a de sentimento neutro.

Fluxos de trabalho de impressão de sentença

Nomes do Fluxo de Trabalho

  • sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
  • sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu

O fluxo de trabalho do sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled pode ser usado em CPUs e GPUs.

O fluxo de trabalho do sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu é otimizado para tempos de execução baseados em CPU

Amostra de código usando o sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled fluxo de trabalho

# Load the Sentiment workflow
sentiment_model = watson_nlp.load('sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu')

# Run the sentiment model on the result of the syntax results
sentiment_result = sentiment_model.run('The rooms are nice. But the beds are not very comfortable.')

# Print the sentence sentiment results
print(sentiment_result)

Saída da amostra de código:

{
  "document_sentiment": {
    "score": -0.339735,
    "label": "SENT_NEGATIVE",
    "mixed": true,
    "sentiment_mentions": [
      {
        "span": {
          "begin": 0,
          "end": 19,
          "text": "The rooms are nice."
        },
        "sentimentprob": {
          "positive": 0.9720447063446045,
          "neutral": 0.011838269419968128,
          "negative": 0.016117043793201447
        }
      },
      {
        "span": {
          "begin": 20,
          "end": 58,
          "text": "But the beds are not very comfortable."
        },
        "sentimentprob": {
          "positive": 0.0011594508541747928,
          "neutral": 0.006315878126770258,
          "negative": 0.9925248026847839
        }
      }
    ]
  },
  "targeted_sentiments": {
    "targeted_sentiments": {},
    "producer_id": {
      "name": "Aggregated Sentiment Workflow",
      "version": "0.0.1"
    }
  },
  "producer_id": {
    "name": "Aggregated Sentiment Workflow",
    "version": "0.0.1"
  }
}

Extração de sentimento de destino.

A extração de sentimento de destino extrai os sentimentos expressos no texto e identifica os destinos desses sentimentos

Ele pode lidar com vários alvos com sentimento diferente em uma frase em oposição ao bloco de sentimentos descrito acima.

Por exemplo, dada a sentença de entrada A comida servida era deliciosa, no entanto o serviço era lento., o bloco de sentimentos da Targets identifica que há um sentimento positivo expresso no alvo "alimentar", e um sentimento negativo expresso em "serviço".

O modelo foi afinado apenas em dados em inglês. Apesar de você poder utilizar o modelo nas outras línguas listadas em idiomas suportados, os resultados podem variar.

Destina fluxos de trabalho de impressão

Nomes do Fluxo de Trabalho

  • targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
  • targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu

O fluxo de trabalho do targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled pode ser usado em CPUs e GPUs.

O fluxo de trabalho do targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu é otimizado para tempos de execução baseados em CPU

Amostra de código para o targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled fluxo de trabalho

import watson_nlp
# Load Targets Sentiment model for English
targets_sentiment_model = watson_nlp.load('targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled')
# Run the targets sentiment model on the input text
targets_sentiments = targets_sentiment_model.run('The rooms are nice, but the bed was not very comfortable.')
# Print the targets with the associated sentiment
print(targets_sentiments)

Saída da amostra de código:

{
  "targeted_sentiments": {
    "rooms": {
      "score": 0.990798830986023,
      "label": "SENT_POSITIVE",
      "mixed": false,
      "sentiment_mentions": [
        {
          "span": {
            "begin": 4,
            "end": 9,
            "text": "rooms"
          },
          "sentimentprob": {
            "positive": 0.990798830986023,
            "neutral": 0.0,
            "negative": 0.00920116901397705
          }
        }
      ]
    },
    "bed": {
      "score": -0.9920912981033325,
      "label": "SENT_NEGATIVE",
      "mixed": false,
      "sentiment_mentions": [
        {
          "span": {
            "begin": 28,
            "end": 31,
            "text": "bed"
          },
          "sentimentprob": {
            "positive": 0.00790870189666748,
            "neutral": 0.0,
            "negative": 0.9920912981033325
          }
        }
      ]
    }
  },
  "producer_id": {
    "name": "Transformer-based Targets Sentiment Extraction Workflow",
    "version": "0.0.1"
  }
}