Watson 자연어 처리 감성 분류 모델은 입력 텍스트의 감성을 분류합니다.
지원되는 언어
심리 분류는 다음 언어에 대해 사용 가능합니다. 언어 코드 및 해당 언어 목록은 언어 코드를 참조하십시오.
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
심리
텍스트의 감성은 긍정적, 부정적 또는 중립적일 수 있습니다.
감성 모델은 입력 문서의 각 문장에 대한 감성을 계산합니다. 전체 문서에 대해 집계된 감성도 감성 변환기 워크플로우를 사용하여 계산됩니다.
리턴된 분류에 확률이 포함되어 있습니다. 심리 스코어는 -1에서 1까지 다양합니다. 0보다 큰 점수는 긍정적인 감정을 나타내고, 0보다 작은 점수는 부정적인 감정을 나타내며, 0의 점수는 중립적인 감정을 나타냅니다.
문장 감성 워크플로우
워크플로우 이름
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled
워크플로우는 CPU및 GPU 모두에서 사용할 수 있습니다.
sentiment-aggregated_transformer-workflow_multilingual_slate.153m.distilled-cpu
워크플로우는 CPU 기반 런타임에 대해 최적화되어 있습니다.
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)
코드 샘플의 출력:
{
"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"
}
}
대상 감성 추출
대상 감성 추출은 텍스트로 표시된 감성을 추출하고 해당 감성의 대상을 식별합니다.
위에서 설명한 감성 블록과는 반대로 한 문장에서 감성이 다른 여러 대상을 처리할 수 있습니다.
예를 들어, 입력 문장 제공된 음식이 맛있지만 서비스가 느렸습니다.의 경우, 대상 감성 블록은 대상 "food" 에 표시된 긍정적 감성과 "service" 에 표시된 부정적 감성이 있음을 식별합니다.
모델은 영어 데이터에 대해서만 미세 조정되었습니다. 지원되는 언어 아래에 나열된 다른 언어에서 모델을 사용할 수 있지만 결과는 다를 수 있습니다.
감성 워크플로우를 대상으로 합니다
워크플로우 이름
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled
워크플로우는 CPU및 GPU 모두에서 사용할 수 있습니다.
targets-sentiment_transformer-workflow_multilingual_slate.153m.distilled-cpu
워크플로우는 CPU 기반 런타임에 대해 최적화되어 있습니다.
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)
코드 샘플의 출력:
{
"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"
}
}