2014-03-31 4 views
1

이것은 매우 사소한 질문 일 수 있습니다. 그러나 나는 Google 또는 SO 검색을 수행하여 내가 찾고있는 대답을 찾을 수 없습니다."double negative"문장에 대한 감정 표현 방법

간단한 정서 분석 논리를 만들고 싶습니다.

단어/문구가 얼마나 부정적인지 긍정적인지 몇 가지 점수가있는 음수 및 양성 단어/문구 목록이 두 개 있습니다.

부정적인 문구/단어 :

really hate   -2 
hate   -1 
dislike  -1 

긍정적 인 문구/단어 :

like   1 
very much like 2 

"I like to eat Apple"   => Sentiment Score = 1 
"I really hate the college president" => Sentiment Score = -2 

그것은 위의 경우에 괜찮 감정의 점수를 해당된다 다음과 같습니다. 그러나, 나는 다음과 같은 경우를 해결하는 방법을 궁금해 :

당신은 모두 감정 점수는 0 하지만, 나는 그것에 대해 긍정적 인 감정을 가지고 있기 때문에이 일을 것으로 예상 = 것 "처럼", "증오"를 참조
"Though I am an Android user, I hate to say I like iPhone 5s" 

iPhone 5s.

+3

이 예제는 이중 음수가 아닌 예제가 아닙니다. –

+0

@farmerjoe, 전적으로 당신과 동의하지만 예제를 호출 해야할지 모르겠습니다. 이 예제에 이름을 제안하거나 제목을 적절하게 편집하십시오. – Watt

+0

내 대답보기 =) –

답변

1

내가 언급했듯이, 이것은 이중 부정의 예가 아닙니다. 그것은 아이폰에 대한 느낌에 대한 증오의 표현이지만, 당신이 단지 감정을 계산하고자하는 것처럼 들리 네요 : 당신의 문장의 주제에 영향을 미치는 단어. 당신은 컨텍스트 알고리즘 계정이 필요

:

  1. 는 문장의 주어를 결정합니다. (Apple, president, iPhone, 등.)
  2. 당신이 관심있는 주제에 적용되는 수술 단어를 기반으로 문장을 점수 어떤 수술 키워드 ((really) hate/like/love 등)
  3. 를 찾습니다.

이 알고리즘은 자연어의 일반적인 이해를 향한 경향으로 구현하기가 매우 어렵습니다.

등 부울 감정에 뒤집의 원인이 단어는 아마 지적처럼 뭔가를 시도 할 것이다 이중 부정, 즉, not, don't,에 관해서는

(대부분이 not의 수축이다) 한 다음 결정 수를 할 는 형용사에 원인이되는 플립 :

I do not like green eggs and ham 

녹색 eggs and ham을 확인 즉, 키워드 찾기 위해 역 추적 : not, like을, 어쩌면 동사를 찾아, 일부 문장 같은regex를 얻을? 다시 말하지만, 쉬운 일이 아니며 항상 어느 정도 정확할 것입니다.

수는 not이고, 홀수는 -1에 의해 귀하의 정서 점수를 곱합니다.

I do not not like green eggs and ham 

이제 우리는 두 nots, 그것조차, 그래서 우리는 감정의 점수를 변경하거나 +1 곱하지 않습니다 있습니다. 당신의 감정 단어가 문구, 신속하고 더러운 해결책이 될 수 있습니다으로

내 전체 제안은 가양를 가지고 계속한다, 또는 Natural Language Processing

0

으로 살펴 봐야하는이 될 것입니다, 추가하는 것입니다 긍정적 인 감정 목록에 "내가 좋아하는 말을 싫어"극단적 인 해결책이

hate to say I like +1 

, 그리고 그것으로 문제가 단지 하나의 특정 사건을 처리하는, 그래서 당신은 수백만하지 않을 경우 수천을 추가해야합니다, 또는 그러한 엔트리. 또 하나의 극단은 문맥과 뉘앙스를 완전히 이해하는 초 지적 AI입니다. 문제는 현재 우리를 넘어선다는 것입니다. 두 가지 극단 사이에는 문법과 패턴을 사용하여 많은 문장을 이해하고 명시 적으로 모두 나열 할 필요없이 NLP 솔루션이 있습니다. 무게에


사이드 노트는 가장 큰 경기는 항상 사용하는 경우

사용 +1를 할당하고, 그 단어와 일치하는 다른 단어/문구를 중지합니다. 그렇지 않으면 무게를 조정하십시오. 이 경우에는 "증오"가 -1로 일치하는 것처럼 아무 것도하지 않아도되며, "좋아요"는 다른 "+1"을 제공하기 위해 일치합니다. 그러나 "내가 좋아하는 말을 정말로 싫어"하기 위해서는 기본 값으로 +2를 부여해야합니다. 그러면 "정말로 증오하다"는 -2가 추가되고 +1에 추가되고 +1의 원하는 정서가 나옵니다.