2017-07-17 25 views
2

例如,假設給出單詞「幸福」,我想生成其他形式的快樂,如快樂,快樂地......等與NLTK,當給定某個單詞時,如何生成不同形式的單詞?

我讀#2和NLTK引用其他一些以前的問題。然而,只有POS標籤,變形就像識別句子中某些單詞的語法形式一樣,而不是生成不同單詞的列表。有沒有人遇到類似的問題?謝謝。

+0

這是干擾的反作用。在你的情況下,你可以將詞幹應用於一個大的語料庫,跟蹤哪些詞彙被歸爲同一形式 - 例如,使用蘭開斯特詞幹,「快樂」,「快樂」和「快樂」都映射到「快樂」。然後將這些羣集用於生成任務。 – lenz

回答

1

此類信息包含在NLTK的WordNet實現的Lemma類中。具體而言,它在Lemma.derivationally_related_forms()中找到。

這裏尋找的「快樂」所有可能的派生形式的一個示例腳本:

from nltk.corpus import wordnet as wn 

forms = set() #We'll store the derivational forms in a set to eliminate duplicates 
for happy_lemma in wn.lemmas("happy"): #for each "happy" lemma in WordNet 
    forms.add(happy_lemma.name()) #add the lemma itself 
    for related_lemma in happy_lemma.derivationally_related_forms(): #for each related lemma 
     forms.add(related_lemma.name()) #add the related lemma 

不幸的是,在共發現的信息是不完整的。上面的腳本找到了「快樂」和「幸福」,但它沒有找到「快樂」,即使有多個「快樂」的引理。

相關問題