0 / 0
Go back to the English version of the documentation
Klasifikace vyznění
Last updated: 07. 11. 2023
Klasifikace vyznění

Klasifikační modely Watson Natural Language Processing Sentiment klasifikují vyznění vstupního textu.

Podporované jazyky

Klasifikace vyznění je k dispozici pro následující jazyky. Seznam kódů jazyků a odpovídajících jazyků viz Kódy jazyků.

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

Vyznění

Vyznění textu může být kladné, záporné nebo neutrální.

Model vyznění vypočítá vyznění pro každou větu ve vstupním dokumentu. Agregované vyznění celého dokumentu je také vypočteno pomocí sledu prací transformátoru vyznění v běhovém prostředí 23.1. Používáte-li modely vyznění v běhovém prostředí 22.2 , lze celkové vyznění dokumentu vypočítat pomocí pomocné metody s názvem predict_document_sentiment.

Vrácené klasifikace obsahují pravděpodobnost. Skóre vyznění se liší od -1 do 1. Skóre větší než 0 označuje kladné vyznění, skóre menší než 0 záporné vyznění a skóre 0 neutrální vyznění.

Sledy prací vyznění za běhu 23.1

Názvy sledu prací

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

Sled prací sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled lze použít na CPU i GPU.

Sled prací sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu je optimalizován pro běhová prostředí založená na procesoru.

Ukázka kódu pomocí sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled sledu prací

# 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)

Výstup ukázky kódu

{
  "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"
  }
}

Bloky vyznění vět v běhových prostředí 22.2

Název bloku

sentiment_sentence-bert_multi_stock

Závislosti na jiných blocích

Před spuštěním bloku vyznění věty musí být spuštěn následující blok:

  • syntax_izumo_<language>_stock

Ukázka kódu pomocí bloku sentiment_sentence-bert_multi_stock

import watson_nlp
from watson_nlp.toolkit.sentiment_analysis_utils import predict_document_sentiment
# Load Syntax and a Sentiment model for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')
sentiment_model = watson_nlp.load('sentiment_sentence-bert_multi_stock')

# Run the syntax model on the input text
syntax_result = syntax_model.run('The rooms are nice. But the beds are not very comfortable.')

# Run the sentiment model on the result of the syntax results
sentiment_result = sentiment_model.run_batch(syntax_result.get_sentence_texts(), syntax_result.sentences)

# Print the sentence sentiment results
print(sentiment_result)

# Get the aggregated document sentiment
document_sentiment = predict_document_sentiment(sentiment_result, sentiment_model.class_idxs)
print(document_sentiment)

Výstup ukázky kódu:

[{
  "score": 0.9540348989256836,
  "label": "SENT_POSITIVE",
  "sentiment_mention": {
    "span": {
      "begin": 0,
      "end": 19,
      "text": "The rooms are nice."
    },
    "sentimentprob": {
      "positive": 0.919123649597168,
      "neutral": 0.05862388014793396,
      "negative": 0.022252488881349564
    }
  },
  "producer_id": {
    "name": "Sentence Sentiment Bert Processing",
    "version": "0.1.0"
  }
}, {
  "score": -0.9772116371114815,
  "label": "SENT_NEGATIVE",
  "sentiment_mention": {
    "span": {
      "begin": 20,
      "end": 58,
      "text": "But the beds are not very comfortable."
    },
    "sentimentprob": {
      "positive": 0.015949789434671402,
      "neutral": 0.025898978114128113,
      "negative": 0.9581512808799744
    }
  },
  "producer_id": {
    "name": "Sentence Sentiment Bert Processing",
    "version": "0.1.0"
  }
}]
{
  "score": -0.335185,
  "label": "SENT_NEGATIVE",
  "mixed": true,
  "sentiment_mentions": [
    {
      "span": {
        "begin": 0,
        "end": 19,
        "text": "The rooms are nice."
      },
      "sentimentprob": {
        "positive": 0.919123649597168,
        "neutral": 0.05862388014793396,
        "negative": 0.022252488881349564
      }
    },
    {
      "span": {
        "begin": 20,
        "end": 58,
        "text": "But the beds are not very comfortable."
      },
      "sentimentprob": {
        "positive": 0.015949789434671402,
        "neutral": 0.025898978114128113,
        "negative": 0.9581512808799744
      }
    }
  ]
}

Zaměřuje se na extrakci vyznění

Extrakce vyznění cílů extrahuje vyznění vyjádřená v textu a identifikuje cíle těchto vyznění.

Dokáže zpracovat více cílů s různými vyznění v jedné větě na rozdíl od výše popsaného bloku vyznění.

Například vzhledem k vstupní větě Podané jídlo bylo chutné, ale služba byla pomalá., Cíle Sentiment blok identifikuje, že existuje pozitivní sentiment vyjádřený v cíli "jídlo", a negativní sentiment vyjádřený v "služba".

Model byl vyladěn pouze na anglických datech. Ačkoli můžete použít model v jiných jazycích uvedených v části Podporované jazyky, výsledky se mohou lišit.

Cílí na sledy prací vyznění v běhovém prostředí 23.1

Názvy sledu prací

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

Sled prací targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled lze použít na CPU i GPU.

Sled prací targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu je optimalizován pro běhová prostředí založená na procesoru.

Ukázka kódu pro targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled sled prací

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)

Výstup ukázky kódu:

{
  "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"
  }
}

Bloky vyznění cílů v běhových prostředí 22.2

Název bloku targets-sentiment_sequence-bert_multi_stock

Závislosti na jiných blocích

Před spuštěním bloku extrakce vyznění cílů musí být spuštěn následující blok:

  • syntax_izumo_<language>_stock

Ukázka kódu pomocí bloku sentiment-targeted_bert_multi_stock

import watson_nlp

# Load Syntax and the Targets Sentiment model for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')
targets_sentiment_model = watson_nlp.load('targets-sentiment_sequence-bert_multi_stock')

# Run the syntax model on the input text
syntax_result = syntax_model.run('The rooms are nice, but the bed was not very comfortable.')

# Run the targets sentiment model on the syntax results
targets_sentiments = targets_sentiment_model.run(syntax_result)

# Print the targets with the associated sentiment
print(targets_sentiments)

Výstup ukázky kódu:

{
  "targeted_sentiments": {
    "rooms": {
      "score": 0.9989274144172668,
      "label": "SENT_POSITIVE",
      "mixed": false,
      "sentiment_mentions": [
        {
          "span": {
            "begin": 4,
            "end": 9,
            "text": "rooms"
          },
          "sentimentprob": {
            "positive": 0.9989274144172668,
            "neutral": 0.0,
            "negative": 0.0010725855827331543
          }
        }
      ]
    },
    "bed": {
      "score": -0.9977545142173767,
      "label": "SENT_NEGATIVE",
      "mixed": false,
      "sentiment_mentions": [
        {
          "span": {
            "begin": 28,
            "end": 31,
            "text": "bed"
          },
          "sentimentprob": {
            "positive": 0.002245485782623291,
            "neutral": 0.0,
            "negative": 0.9977545142173767
          }
        }
      ]
    }
  },
  "producer_id": {
    "name": "BERT TSA",
    "version": "0.0.1"
  }
}

Nadřízené téma: Watson Katalog úloh zpracování přirozeného jazyka

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more