2016-08-19 12 views
0

나는 nltk을 처음 사용하고 있으며, wordnet 기능이 매우 유용하다고 생각합니다. synsets, hypernyms, similarity 등을 제공하지만, '델리'- '하이데라바드'와 같은 위치 사이의 유사성을 분명히주지 못합니다. 분명히 이러한 단어는 워드 넷 코퍼스에 없습니다.wordnet?

그래서, 어떻게 든 워드 넷 코퍼스를 업데이트하거나 다른 코퍼스를 통해 워드 넷을 만들 수 있는지 알고 싶습니다. 여행과 관련하여 위키피디아에서 추출한 페이지 집합? 우리가 다른 코퍼스를 통해 워드 넷을 만들 수 있다면 형식이 무엇이며 동일한 작업을 수행하기위한 단계와 제한이 있습니까?

위의 문제를 설명하는 링크를 가르쳐 주시겠습니까? 나는 인터넷 검색, 봤 거든, nltk 도서의 일부를 읽을 수 있지만 위의 질문에 대한 힌트가 하나도 없어.

질문이 완전히 우스운 경우 용서해주십시오. 당신이 원하는 것을 델리 나 하이데라바드와 같은 매우 구체적인 용어의 의미 론적 유사성을 측정하는 유연성을

+1

확인 - DBpedia – RAVI

답변

2

뭔가 워드 넷 같은 손으로 만들어진되지 않습니다하지만 매우 큰 데이터베이스에서 유사성 측정을 자동으로 배웠습니다. 이들은 statistical similarity 접근입니다. 물론, 직접 모델에 대한 교육을하지 않아도됩니다.

따라서 Google 거리 (wikipedia, original paper)가 유용 할 수 있습니다. 이러한 측정 값을 R (code)과 같은 언어로 구현하는 것이 매우 간단 해 보이며 원래의 논문은 WordNet과 87 %의 동의를보고합니다.

+0

"Google Distance"에 대한 흥미로운 논문! – alvas

1

Wordnet은 의미 상 유사성을 측정하기 때문에 Wordnet의 유사성 측정 값은 예상대로 작동합니다. 그런 의미에서, 둘 다 도시이므로 매우 유사합니다. 찾고있는 것은 아마도 geographic similarity입니다.

delhi = wn.synsets('Delhi', 'n')[0] 
print delhi.definition() 

# a city in north central India 

hyderabad = wn.synsets('Hyderabad', 'n')[0] 
print hyderabad.definition() 

# a city in southern Pakistan on the Indus River 


delhi.wup_similarity(hyderabad) 
# 0.9 

melon = wn.synsets('melon', 'n')[0] 

delhi.wup_similarity(melon) 
# 0.3 

Geowordnet이라는 Wordnet 확장 프로그램이 있습니다. 제 생각에는 어느 정도 문제가 있었고 Wordnet을 확장 기능 중 일부와 통합하려고했습니다 : wnext. 희망이 도움이됩니다.

+0

차가워졌습니다. 귀하의 답변에 많은 감사드립니다. 새로운 것을 배웠습니다. 그러나 지리적 입력은 제가 찾고있는 범주 중 하나였습니다. 관심있는 동물, 식품 품목 등 여러 가지가 있습니다. 따라서 나는 wikipeida (만약 가능하다면)를 통해 wordnet을 빌드하고자합니다. 이 관점에서의 입력은 무엇입니까? – mtk

+0

식품 품목 간 거리 측정은 어떻게됩니까? 성분 목록? – bogs

+0

나는 명확하게 요구 사항을 언급하지 않았다고 생각한다. 내가 명확히하려고 노력하겠습니다. 두 단어가 주어지면 나는 그것이 유사한지를 알아야합니다. 예 : 제가 파리와 도넛을 주면, 하나는 음식 품목이고 다른 하나는 장소입니다. 그래서 나는 그들이 유사하지 않다는 것을 알리기 위해 과정/프로그램이 필요합니다. 식량에 대해서는 거리 측정이 무엇인지 명확하지 않지만 일반 산출물을 얻는 방법을 찾고 있습니다. 나는 nltk가 여기에서 도움이 될 것이라고 생각했다. – mtk