我用它nltk.word_tokenize来标记一些包含编程语言,框架等的句子,这些句子被错误地标记化.
例如:
>>> tokenize.word_tokenize("I work with C#.")
['I', 'work', 'with', 'C', '#', '.']
Run Code Online (Sandbox Code Playgroud)
有没有办法输入这样的"例外"列表给tokenizer?我已经编制了一份我不想分割的所有内容(语言等)的列表.
多词表达式分词器应该就是您所需要的。
您将异常列表添加为元组,并向其传递已经标记化的句子:
tokenizer = nltk.tokenize.MWETokenizer()
tokenizer.add_mwe(('C', '#'))
tokenizer.add_mwe(('F', '#'))
tokenizer.tokenize(['I', 'work', 'with', 'C', '#', '.'])
['I', 'work', 'with', 'C_#', '.']
tokenizer.tokenize(['I', 'work', 'with', 'F', '#', '.'])
['I', 'work', 'with', 'F_#', '.']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
717 次 |
| 最近记录: |