在不分解关键短语的情况下进行标记
Tokenizing without breaking up key phrases
我有一串文本 s = 'hi, welcome to grade 3'
当前,当我标记字符串时,我得到
tokens = ['hi', 'welcome', 'to', 'grade', '3']
如何在不为 'grade 3'
等常用短语生成单独标记的情况下标记字符串
我希望输出类似于
tokens = ['hi', 'welcome', 'to', 'grade 3']
我有一个常用短语列表,如果这样可以更简单的话,我想将其保留在一个标记中
最终我不想让我的所有标记都成为双字母组,因为我仍然需要程序其他部分的单个单词标记
此代码使用 MWETokenizer
.
from nltk import word_tokenize
from nltk.tokenize import MWETokenizer
tk = MWETokenizer([('grade', '3')])
tokens = tk.tokenize(word_tokenize('hi, welcome to grade 3'))
words = [val.replace('_', ' ') for val in tokens]
print(words)
我有一串文本 s = 'hi, welcome to grade 3'
当前,当我标记字符串时,我得到
tokens = ['hi', 'welcome', 'to', 'grade', '3']
如何在不为 'grade 3'
等常用短语生成单独标记的情况下标记字符串我希望输出类似于
tokens = ['hi', 'welcome', 'to', 'grade 3']
我有一个常用短语列表,如果这样可以更简单的话,我想将其保留在一个标记中
最终我不想让我的所有标记都成为双字母组,因为我仍然需要程序其他部分的单个单词标记
此代码使用 MWETokenizer
.
from nltk import word_tokenize
from nltk.tokenize import MWETokenizer
tk = MWETokenizer([('grade', '3')])
tokens = tk.tokenize(word_tokenize('hi, welcome to grade 3'))
words = [val.replace('_', ' ') for val in tokens]
print(words)