2016-08-16 3 views
5

내가문법적 유사성/거리 NLTK

텍스트 1 아래로이 텍스트를 가지고 : 존 사과

텍스트 2를 추천했습니다 : 당신이 경우 마이크는 오렌지

에게 싫어 2 개의 텍스트를 확인하십시오. 둘 다 구문 론적으로 유사하지만 의미 적으로 다른 의미를 지닙니다.

은 내가 NLP에 안돼서로 NLTK 사용하여이 작업을 수행 할 수있는 방법이 있나요이 텍스트

사이에 2 텍스트

2) 시맨틱 거리 사이

1) 문법적 거리를 찾으려면 ?

답변

2

네,하지만 nltk에 국한되지 않습니다. https://en.wikipedia.org/wiki/Part-of-speech_tagging

은 다음에 문장을지도 예를 들면 다음과 같습니다 :
텍스트 1 : 명사 동사 명사
구문 거리를 사용하는 한 가지 방법은, 특정 태그에 문장의 각 단어를 매핑 음성 태그 (POS 태그)의 일부입니다 텍스트 2 : 명사 동사

다음 두 문장의 거리를 측정 할 수 있습니다.


그리고 의미에 대한

, 당신은 할 수 있습니다, 다음 각 문장 의미에 대한

+0

이것은 좋은 대답입니다. 아마도 첫 번째 사례와 특정 단어 인 net 또는 resource에 대한 OP 비교 방법을 추천 할 수 있습니까? 나는 앞으로의 독자들에게도 흥미가있을 것이라고 확신한다. – slezica

+0

Thanx @Masoud는 방향을 제시하기 위해 몇 가지 질문을한다. nltk에서 SYNTACTIC 거리를 계산하는 빌트인 라이브러리가 있는가? 그렇지 않다면 같은 거리를 측정하는 방법? 당신이 제공 할 수있는 참조/리소스는 무엇입니까? –

3

단어의 동의어의 교차점을 찾아보십시오, 의미 론적 단어 그물을 필요로하고, 문장의 각 단어에 대한 동의어를 찾을 수 word2vec을 시도하십시오. 문장 내에서 단어의 유사성을 안전하게 평균화하거나 구문에 따라 단어의 무게를 재어 올 수 있습니다.

from gensim.models import Word2Vec 

model = Word2Vec.load(path/to/your/model) 

model.similarity('apple', 'orange') 
+0

구문 거리를 제공 할 수있는 참조는 무엇입니까? 우리는 빌트인 라이브러리를 지원합니까? –