是否可以对已标记化的输入使用spacy?

是否可以对已标记化的输入使用spacy?,第1张

是否可以对已标记化的输入使用spacy?

您可以通过使用自己的替换spaCy的默认令牌生成器来做到这一点:

nlp.tokenizer = custom_tokenizer

其中

custom_tokenizer
函数将原始文本作为输入并返回一个
Doc
对象。

您未指定如何获取令牌列表。如果您已经有一个使用原始文本并返回令牌列表的函数,则对其进行一些小的更改:

def custom_tokenizer(text):    tokens = []    # your existing pre to fill the list with tokens    # replace this line:    return tokens    # with this:    return Doc(nlp.vocab, tokens)

请参阅文档上

Doc

如果由于某种原因您不能执行此 *** 作(也许您无权使用令牌化功能),则可以使用字典:

tokens_dict = {'Hello, world.': ['Hello', ',', 'world', '.']}def custom_tokenizer(text):    if text in tokens_dict:        return Doc(nlp.vocab, tokens_dict[text])    else:        raise ValueError('No tokenization available for input.')

无论哪种方式,都可以像第一个示例一样使用管道:

doc = nlp('Hello, world.')


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5631640.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存