使用 tensorflow 实现的 spacy 3.0 自定义模型

问题描述

搜索过,搜索过。我能够找到 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 提供动力。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...