SpaCy自定义NER模型训练中“掉落”的含义?

时间:2019-08-06 06:56:55

标签: python nlp spacy named-entity-recognition

以下代码是SpaCy命名实体识别(NER)的示例训练循环。

for itn in range(100):
    random.shuffle(train_data)
    for raw_text, entity_offsets in train_data:
        doc = nlp.make_doc(raw_text)
        gold = GoldParse(doc, entities=entity_offsets)
        nlp.update([doc], [gold], drop=0.5, sgd=optimizer)
nlp.to_disk("/model")
根据{{​​1}}的

drop是辍学率。有人可以详细解释一下它的含义吗?

1 个答案:

答案 0 :(得分:3)

根据文档here,SpaCy Entity Recognizer是一个神经网络,应实现 thinc.neural.Model API。您正在谈论的drop参数是一种称为dropout的速率,它是一种优化神经网络的方法。

根据我的经验,推荐值为0.2,这意味着该模型中使用的大约20%的神经元将在训练过程中随机掉落。