问题描述
我搜索过,搜索过。我能够找到 this git repository 将 Thinc 模型作为 spacy 中的关系提取器管道。我需要添加使用 Tensorflow 作为 Spacy 管道实现的 NER 模型,但我不知道添加使用 Thinc 和 TensorFlow 实现的自定义模型有什么区别?
解决方法
澄清一下:您链接的存储库并未展示用于在 spaCy 中进行关系提取的 Pytorch 模型 - 事实上,它使用 ML 库 Thinc 来实现该模型。您可以在相应的 video tutorial 中找到更多详细信息。
要记住的关键点是 spaCy 在底层与 Thinc 模型一起使用,但 Thinc 为 Pytorch 和 Tensorflow 提供了 wrappers。
要在 spaCy 中使用它们,您可以按照文档 here 进行操作。简而言之,您应该能够执行以下操作:
from thinc.api import TensorFlowWrapper
wrapped_model = TensorFlowWrapper(your_tf_model)
wrapped_model
现在将是一个 Thinc
模型,您可以使用它来为您的(自定义)trainable pipeline component 提供动力。