wordnet 包的使用
- 下載下傳nltk包,運作下方代碼
在import nltk nltk.download() # OR nltk.download("wordnet")
中選擇wordnet相關包下載下傳corpora
- 導入包
from nltk.corpus import wordnet as wn
- 查找一個詞所在的所有詞集
wn.synsets('cat') # 可以指定所需要詞集的形式 wn.synsets('cats', pos=wn.VERB) # pos 确定詞集的屬性 # pos 還可以是 NOUN, ADV, ADJ,
- 查找一個詞的定義
wn.synset('cat.n.01').definition() # cat -> 表示需要查詢的詞 # n -> 表示名詞 # 另外 a -> ADJ r -> ADV n -> NOUN v-> VERB # 01 -> 取第一個名詞(由n定義)的意思
- 由一個詞造句
- 擷取一個詞的詞性
cat = wn.synset("cat.n.01") cat.pos()
- 定義一個詞條
- 擷取一個詞的詞條
- 擷取一個詞的詞條名
- 擷取一個詞的上位詞
- 擷取一個詞的下位詞
- 擷取一個事物可以組成的整體
- 擷取兩個詞在分類樹中的距離
cat = wn.synset("cat.n.01") dog = wn.synset("dog.n.01") cat.shortest_path_distance(dog)
- 擷取與對應詞相似的詞(對副詞和形容詞比上方方法更有效)
good = wn.synset("good.a.1") good.similar_tos()
- 查詢兩個詞之間的語義相似度
- 使用詞條查詢反義詞
# 不能直接使用synset 進行查詢 good.lemmas()[0].antonyms()
- 查詢一個詞的組成部分
- 查詢一個物質的材質
- 查詢一個詞蘊含的關系