在SpaCy v1.1.2中加载以前保存的NER模型

时间:2016-10-24 02:25:35

标签: python spacy

因此,每当我尝试加载以前保存的SpaCy NER模型时,我都会获得核心转储。

if os.path.isfile( model_path ):
    ner.model.load( model_path )
for itn in range( 5 ):
    random.shuffle( TRAIN_DATA )
    for raw_text, entity_offsets in TRAIN_DATA:
        doc = nlp.make_doc( raw_text )
        gold = GoldParse( doc, entities=entity_offsets )
        ner.update( doc, gold ) # <- Core dump occurs here

转储报告:

7fb1b7459000-7fb1b7499000 rw-p 00000000 00:00 0 [1]    23967 abort (core dumped)

我在做/装错了吗?

2 个答案:

答案 0 :(得分:1)

编辑: 事实证明我不需要加载模型来更新它,我需要做的就是删除

if os.path.isfile( model_path ):
    ner.model.load( model_path )

并添加

ner.model.dump( model_path )

到底如此:

for itn in range( 5 ):
random.shuffle( TRAIN_DATA )
for raw_text, entity_offsets in TRAIN_DATA:
    doc = nlp.make_doc( raw_text )
    gold = GoldParse( doc, entities=entity_offsets )
    ner.update( doc, gold ) 
ner.model.dump( model_path )

以便将其附加到以前保存的数据中。一切都好!

答案 1 :(得分:1)

嗯。但是,这里可能还有一个错误。显然你应该能够写入预装模型!