有没有办法使用NLTK获得Wordnet形容词名词化? 例如,对于“快乐”,所需的输出将是“快乐”。
我试图四处搜寻,但找不到任何东西。
谢谢!
答案 0 :(得分:4)
快速而肮脏的答案是wordnet does this already:
< adj.all> S :( adj)快乐(享受或表现或以喜悦或愉悦为标志) “幸福的笑容”; “花了很多快乐 海滩上的日子“;”幸福的婚姻“
- 属性
- < noun.state> S:(n)幸福,幸福(状态) 幸福的特点是情绪 从满足到激情 喜悦)
- < noun.feeling> S:(n)幸福(情绪经历时) 处于幸福状态)
- 派生相关的形式
- < noun.state> W:(n)幸福[相关:快乐](状态 幸福的特点是 从满足到满足的情绪 激动的喜悦)
- < noun.feeling> W:(n)幸福[相关:快乐] (在一个州里经历的情绪 幸福)
剩下的问题是如何以编程方式执行此操作(无需抓取网页)。
wordnet库包装工具非常强大,它展示了C库接口的广度:
$ wn happy
No information available for noun happy
No information available for verb happy
Information available for adj happy
-antsa Antonyms
-synsa Synonyms (ordered by estimated frequency)
-attra Attributes
-deria Derived Forms
-famla Familiarity & Polysemy Count
-grepa List of Compound Words
-over Overview of Senses
$ wn happy -deria -n1
Derived Forms of adj happy
Sense 1
happy (vs. unhappy)
RELATED TO->(noun) happiness#1
=> happiness, felicity
RELATED TO->(noun) happiness#2
=> happiness
所以,从Python的角度来说,你可以{w}命令subprocess
或者使用已经内置到NLTK中的wordnet工具。
在ubuntu(可能是debian)上,wordnet库和工具可以方便地使用:
sudo apt-get install wordnet wordnet-dev
唉:
$ wn pythonic
No information available for pythonic
答案 1 :(得分:0)
或者,你可以问同样的问题on nltk-users。