spaCy实际上实现了哪些NN模型?是什么决定了他们的记忆大小?

时间:2017-08-25 14:07:06

标签: python nlp spacy

我已经看到有一个paper提供了Sense2Vec背后的想法,但是首先创建标准spaCy模型的方式是什么?当我从the selection of models下载类似标准“en_core_web_md”模型的内容时,实际上是如何创建的?有没有我可以阅读的文章或spaCy博客文章?

加分问题:

即将到来的spaCy 2.0新模型的尺寸如此之小?

来自version 2 Release summary

  

此版本为spaCy的标记器,解析器和实体识别器提供全新的深度学习驱动模型。新型号比迄今为止推出的spaCy线性型号小20倍:从300 MB到15 MB。

在此方向上唯一真正的参考是发布摘要中的here。 可以找到所有模型内存占用的摘要here

是否提供了模型权重,并且每次调用以获得相关属性实际上是计算吗?这可以解释this page

基准测试中显示的较慢吞吐量

1 个答案:

答案 0 :(得分:2)

如果您查看模型github repo https://github.com/explosion/spacy-models/releases中的版本,有关模型每个部分的详细信息,例如:标记器或解析器,说明它所训练的数据以及所得模型的准确性:

解析器:OntoNotes 5,91.5%准确度

Tagger :OntoNotes 5,96.9%准确度

NER :OntoNotes 5,84.7%准确度

Word矢量:常见抓取

有关培训模型所需代码的更多详细信息,请访问:http://spacy.io/docs/usage/training。上面链接的版本还附带了源代码,但我还没有检查过哪些代码。

编辑:

阅读完discussion following the announcement of v2.0后,我遇到了一个问题,解释了新NN模型如何在内部工作。

您可以在此处找到它:https://github.com/explosion/spaCy/issues/1057