WSD (Word Sense Disambiguation) 기술의 파이썬 구현 :
레크 알고리즘
유사성 극대화 (Pedersen et al. (2003) 참조)
참고 : PYWSD는 Python 3 Now ( pywsd>=1.2.0 ) 만 지원합니다. Python 2를 사용하는 경우 마지막 가능한 버전은 pywsd==1.1.7 입니다.
pip install -U nltk
python -m nltk.downloader 'popular'
pip install -U pywsd
$ python
> >> from pywsd . lesk import simple_lesk
> >> sent = 'I went to the bank to deposit my money'
> >> ambiguous = 'bank'
> >> answer = simple_lesk ( sent , ambiguous , pos = 'n' )
> >> print answer
Synset ( 'depository_financial_institution.n.01' )
> >> print answer . definition ()
'a financial institution that accepts deposits and channels the money into lending activities'All-Words WSD의 경우 시도해보십시오.
> >> from pywsd import disambiguate
> >> from pywsd . similarity import max_similarity as maxsim
> >> disambiguate ( 'I went to the bank to deposit my money' )
[( 'I' , None ), ( 'went' , Synset ( 'run_low.v.01' )), ( 'to' , None ), ( 'the' , None ), ( 'bank' , Synset ( 'depository_financial_institution.n.01' )), ( 'to' , None ), ( 'deposit' , Synset ( 'deposit.v.02' )), ( 'my' , None ), ( 'money' , Synset ( 'money.n.03' ))]
> >> disambiguate ( 'I went to the bank to deposit my money' , algorithm = maxsim , similarity_option = 'wup' , keepLemmas = True )
[( 'I' , 'i' , None ), ( 'went' , u'go' , Synset ( 'sound.v.02' )), ( 'to' , 'to' , None ), ( 'the' , 'the' , None ), ( 'bank' , 'bank' , Synset ( 'bank.n.06' )), ( 'to' , 'to' , None ), ( 'deposit' , 'deposit' , Synset ( 'deposit.v.02' )), ( 'my' , 'my' , None ), ( 'money' , 'money' , Synset ( 'money.n.01' ))]SYNSET 당 미리 컴퓨팅 된 서명을 읽으려면 :
> >> from pywsd . lesk import cached_signatures
> >> cached_signatures [ 'dog.n.01' ][ 'simple' ]
set ([ u'canid' , u'belgian_griffon' , u'breed' , u'barker' , ... , u'genus' , u'newfoundland' ])
> >> cached_signatures [ 'dog.n.01' ][ 'adapted' ]
set ([ u'canid' , u'belgian_griffon' , u'breed' , u'leonberg' , ... , u'newfoundland' , u'pack' ])
> >> from nltk . corpus import wordnet as wn
> >> wn . synsets ( 'dog' )[ 0 ]
Synset ( 'dog.n.01' )
> >> dog = wn . synsets ( 'dog' )[ 0 ]
> >> dog . name ()
u'dog.n.01'
> >> cached_signatures [ dog . name ()][ 'simple' ]
set ([ u'canid' , u'belgian_griffon' , u'breed' , u'barker' , ... , u'genus' , u'newfoundland' ]) pywsd 인용하려면 :
라이닝 황갈색. 2014. PYWSD : WSD (Word Sense Disambiguation) 기술의 파이썬 구현 [소프트웨어]. https://github.com/alvations/pywsd에서 검색했습니다
bibtex 에서 :
@misc{pywsd14,
author = {Liling Tan},
title = {Pywsd: Python Implementations of Word Sense Disambiguation (WSD) Technologies [software]},
howpublished = {https://github.com/alvations/pywsd},
year = {2014}
}
마이클 레스크. 1986. 기계 판독 가능한 사전을 사용한 자동 감각 분해 : 아이스크림 콘에서 소나무 콘을 말하는 방법. 시스템 문서에 관한 제 5 차 연례 국제 컨퍼런스 (SIGDOC '86), Virginia Debuys (ed.). ACM, 뉴욕, 뉴욕, 미국, 24-26. doi = 10.1145/318723.318728 http://doi.acm.org/10.1145/318723.318728
Satanjeev Banerjee와 Ted Pedersen. 2002. WordNet을 사용한 Word Sense Disambiguation에 대한 적응 된 레크 알고리즘. 계산 언어학 및 지능형 텍스트 처리에 관한 제 3 차 국제 회의 (Cicling '02), Alexander F. Gelbukh (ed.). Springer-Verlag, 영국, 영국, 136-145.
Satanjeev Banerjee와 Ted Pedersen. 2003. 시맨틱 관련성의 척도로서 확장 광택이 겹칩니다. 인공 지능에 관한 18 번째 국제 공동 회의 (Acapulco) 805 ~ 810 페이지의 절차에서.
Jay J. Jiang과 David W. Conrath. 1997. 코퍼스 통계 및 어휘 분류에 근거한 의미 론적 유사성. 대만, 전산 언어학 연구에 관한 국제 회의 절차.
Claudia Leacock과 Martin Chodorow. 1998. Word Sense 식별을위한 로컬 컨텍스트와 WordNet 유사성 결합. Fellbaum 1998, pp. 265–283.
Lee, Yuong Keok, Hwee Tou Ng 및 Tee Kiah Chia. "지원 벡터 머신 및 여러 지식 소스로 감독 된 Word Sense 명확성." Senseval-3 : 텍스트의 의미 분석을위한 시스템 평가에 관한 세 번째 국제 워크숍. 2004.
Dekang Lin. 1998. 유사성에 대한 정보 이론적 정의. 머신 러닝에 관한 제 15 차 국제 컨퍼런스의 진행에서 WI.
Linlin Li, Benjamin Roth 및 Caroline Sporleder. 2010. Word Sense Disambiguation 및 Token 기반 관용구 탐지에 대한 주제 모델. ACL (Association for Computational Linguististic)의 제 48 회 연례 회의. 웁살라, 스웨덴.
Andrea Moro, Roberto Navigli, Francesco Maria Tucci 및 Rebecca J. Passonneau. 2014. Babelnet과 Masc Corpus에 주석을 달았습니다. 언어 자원 및 평가에 관한 아홉 번째 국제 회의 (LREC'14)의 절차. Reykjavik, 아이슬란드.
Zhi Zhong과 Hwee tou ng. 2010 년. 의미가 있습니다 : 자유 텍스트를위한 광범위한 단어 감각 명확한 시스템. ACL 2010 시스템 데모의 절차 (ACLDEMOS '10). 미국 펜실베이니아 주 Stroudsburg, Computational Linguistics 협회, 78-83.
Steven Bird, Ewan Klein 및 Edward Loper. 2009. 파이썬을 사용한 자연 언어 처리 (1st ed.). O'Reilly Media, Inc ..
Eneko Agirre와 Aitor Soroa. 2009. Word Sense DisaMbiguation을위한 PageRank 개인화. 계산 언어 협회 (EACL-2009)의 유럽 챕터 12 번째 회의 절차. 아테네, 그리스.