Nlp Spacy在训练自定义模型时使用哪种深度学习算法?
当我们训练自定义模型时,我确实看到我们需要调整辍学和n_iter参数,但Spacy使用哪种深度学习算法来训练自定义模型?另外,在添加新实体类型时,创建空白或在现有模型上对其进行训练是否合适?spaCy使用哪种学习算法?Nlp Spacy在训练自定义模型时使用哪种深度学习算法?,nlp,spacy,ner,Nlp,Spacy,Ner,当我们训练自定义模型时,我确实看到我们需要调整辍学和n_iter参数,但Spacy使用哪种深度学习算法来训练自定义模型?另外,在添加新实体类型时,创建空白或在现有模型上对其进行训练是否合适?spaCy使用哪种学习算法? 深度学习lib库有自己的深度学习库,用于不同NLP模型的引擎盖。对于大多数(如果不是全部)任务,spaCy使用了基于CNN的深层神经网络,并进行了一些调整。spacy专门用于命名实体识别,它使用: 一种基于转换的方法借用自移位-归约解析器,Lample等人在论文中对此进行了描述。
深度学习lib库有自己的深度学习库,用于不同NLP模型的引擎盖。对于大多数(如果不是全部)任务,spaCy使用了基于CNN的深层神经网络,并进行了一些调整。spacy专门用于命名实体识别,它使用:
- 嵌入:使用Bloom过滤器嵌入单词,这意味着单词哈希作为键保存在嵌入词典中,而不是单词本身。这维护了一个更紧凑的嵌入字典,单词可能会发生冲突,并以相同的向量表示结束
- 编码:将单词列表编码到句子矩阵中,以考虑上下文。spaCy使用CNN进行编码
- 参与:确定给定查询的哪些部分信息量更大,并获取问题特定的表示形式
- 预测:spaCy使用多层感知机进行推理
编辑2021年2月:spaCy版本3现在使用Transformer架构作为其深度学习模型。在训练自定义实体的示例代码中,我们可以将SGD视为优化器,因此如果我错了,请纠正我,基本上在引擎盖下有一个CNN训练的模型,但在训练自定义实体时,spacy在CNN模型上使用SGD来调整参数,以使误差函数最小化?是的,SGD是使用的优化器,但是模型本身不同于通常用于NER的普通LSTM或CRF。好的,明白了。所以你要说的是,Spacy的核心模型是基于CNN的,但它也包含了来自其他架构(如LSTM、CRF e.t.cI)的功能。我不认为它包含了LSTM或CRF。这可能就是为什么它比循环模型快得多的原因。如果要我用一句话说的话,我会说“CNN在布卢姆之上,全神贯注”