[英]Preventing splitting at apostrophies when tokenizing words using nltk
我正在使用nltk
將句子分成單詞。 例如
nltk.word_tokenize("The code didn't work!")
-> ['The', 'code', 'did', "n't", 'work', '!']
標記化可以很好地分割單詞邊界[即從單詞中分割標點符號],但有時會過度分割,單詞末尾的修飾符會被視為單獨的部分。 例如, didn't
被分成部分did
和n't
和i've
被分裂, I
和've
。 顯然這是因為這些單詞在nltk
使用的原始語料庫中被分成兩部分,並且在某些情況下可能是合乎需要的。
有沒有內置的方法來克服這種行為? 可能與nltk's
MWETokenizer
如何能夠將多個單詞聚合為短語的方式類似,但在這種情況下,只是將單詞組件聚合為單詞。
或者,是否有另一個不分割單詞部分的標記器?
這實際上按預期工作 :
這是正確/預期的輸出。 對於單詞標記化,收縮被認為是兩個單詞,因為它們具有意義。
不同的nltk
標記nltk
不同nltk
處理英語語言的收縮 。 例如,我發現TweetTokenizer
沒有將收縮分為兩部分:
>>> from nltk.tokenize import TweetTokenizer
>>> tknzr = TweetTokenizer()
>>> tknzr.tokenize("The code didn't work!")
[u'The', u'code', u"didn't", u'work', u'!']
請在以下位置查看更多信息和解決方法:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.