我无法理解两者之间的区别。虽然,我知道word_tokenize使用Penn-Treebank进行令牌化。但是TweetTokenizer上没有任何可用。我应该对word_tokenize使用TweetTokenizer来处理哪种数据?
嗯,两个标记器都以相同的方式将句子拆分成单词。但是我们可以将TweetTokenizer
视为word_tokenize
的子集。 TweetTokenizer也关注标签我希望以下示例可以消除您的疑虑...
from nltk.tokenize import TweetTokenizer
from nltk.tokenize import word_tokenize
tt = TweetTokenizer()
tweet = "This is a cooool #dummysmiley: :-) :-P <3 and some arrows < > -> <-- @remy: This is waaaaayyyy too much for you!!!!!!"
print(tt.tokenize(tweet))
print(word_tokenize(tweet))
# output
# ['This', 'is', 'a', 'cooool', '#dummysmiley', ':', ':-)', ':-P', '<3', 'and', 'some', 'arrows', '<', '>', '->', '<--', '@remy', ':', 'This', 'is', 'waaaaayyyy', 'too', 'much', 'for', 'you', '!', '!', '!']
# ['This', 'is', 'a', 'cooool', '#', 'dummysmiley', ':', ':', '-', ')', ':', '-P', '<', '3', 'and', 'some', 'arrows', '<', '>', '-', '>', '<', '--', '@', 'remy', ':', 'This', 'is', 'waaaaayyyy', 'too', 'much', 'for', 'you', '!', '!', '!', '!', '!', '!']
[您可以看到word_tokenize将#dummysmiley
拆分为'#'
和'dummysmiley'
,但TweetTokenizer将井号保留为'#dummysmiley'
。因此,TweetTokenizer主要用于分析推文。您可以从此link