我正在開發一個從純文本中提取關鍵字的系統。WordNet 3.0詛咒詞
爲關鍵字的要求是:
- 在1 - 45個字母
- 字必須在共發現存在於數據庫中
- 不能是「共同」二字
- 切不可一個詛咒字
我已經達到了要求1 - 3,但是我找不到找到區分curs單詞;我如何過濾它們?
我知道這不會是一個篩選出所有詛咒詞的權威方法,但是會發生什麼事情呢是所有關鍵詞在被主持人「批准」之前首先被設置爲「未決」狀態。但是,如果我可以讓WordNet過濾掉大部分的詛咒話,它會讓主持人的工作更輕鬆。
我正在開發一個從純文本中提取關鍵字的系統。WordNet 3.0詛咒詞
爲關鍵字的要求是:
我已經達到了要求1 - 3,但是我找不到找到區分curs單詞;我如何過濾它們?
我知道這不會是一個篩選出所有詛咒詞的權威方法,但是會發生什麼事情呢是所有關鍵詞在被主持人「批准」之前首先被設置爲「未決」狀態。但是,如果我可以讓WordNet過濾掉大部分的詛咒話,它會讓主持人的工作更輕鬆。
很奇怪,共發現(WN)的Unix命令行版本會給你的選項-domn(域)所需 信息:
wn ass -domnn (-domnv for a verb)
...
>>> USAGE->(noun) obscenity#2, smut#4, vulgarism#1, filth#4, dirty word#1
>>> USAGE->(noun) slang#2, cant#3, jargon#1, lingo#1, argot#1, patois#1, vernacular#1
然而,在NLTK等效方法只返回空單:
from nltk.corpus import wordnet
a = wordnet.synsets('ass')
for s in a:
for l in s.lemmas:
print l.usage_domains()
[]
[]
...
正如你可以嘗試篩選在其同義詞集的定義「淫褻」,「粗」或「俚語」字樣的替代方案。但是,如前所述,對固定列表進行過濾可能更容易(如noswearing.com)。
您也可以嘗試[pattern.en.PROFANITY](http://www.clips.ua.ac.be/pages/pattern-en#wordlist) –
從根本上說,你只需要找到的「俗」字來篩選對列表。 –