Les modèles de classification Watson Natural Language Processing Sentiment classifient le sentiment du texte d'entrée.
Langues prises en charge
La classification des sentiments est disponible pour les langues suivantes. Pour obtenir la liste des codes de langue et de la langue correspondante, voir Codes de langue.
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
Sentiments
Le sentiment du texte peut être positif, négatif ou neutre.
Le modèle de sentiment calcule le sentiment pour chaque phrase du document d'entrée. Le sentiment agrégé pour l'ensemble du document est également calculé à l'aide du flux de travaux du transformateur de sentiment.
Les classifications renvoyées contiennent une probabilité. Le score du sentiment varie de -1 à 1. Un score supérieur à 0 indique un sentiment positif, un score inférieur à 0 un sentiment négatif et un score égal à 0 un sentiment neutre.
Flux de travaux de sentiment de phrase
Noms de flux de travaux
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu
Le flux de travaux sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
peut être utilisé sur les unités centrales et les processeurs graphiques.
Le flux de travaux sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu
est optimisé pour les environnements d'exécution basés sur l'UC.
Exemple de code à l'aide du flux de travaux sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
# 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)
Sortie de l'exemple de code :
{
"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"
}
}
Cible l'extraction des sentiments
Cible l'extraction de sentiments extrait les sentiments exprimés dans le texte et identifie les cibles de ces sentiments.
Il peut gérer plusieurs cibles avec un sentiment différent dans une phrase, par opposition au bloc de sentiment décrit ci-dessus.
Par exemple, compte tenu de la phrase d'entrée La nourriture servie était délicieuse, mais le service était lent., le bloc de sentiments Cibles identifie qu'il y a un sentiment positif exprimé dans la cible "food", et un sentiment négatif exprimé dans "service".
Le modèle a été affiné sur les données en anglais uniquement. Bien que vous puissiez utiliser le modèle dans les autres langues répertoriées sous Langues prises en charge, les résultats peuvent varier.
Cible les flux de travaux de sentiments
Noms de flux de travaux
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu
Le flux de travaux targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
peut être utilisé sur les unités centrales et les processeurs graphiques.
Le flux de travaux targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu
est optimisé pour les environnements d'exécution basés sur l'UC.
Exemple de code pour le flux de travaux targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
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)
Sortie de l'exemple de code :
{
"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"
}
}
Rubrique parent: Watson Natural Language Processing