使用spacy训练新的实体类型

时间:2018-09-18 10:27:56

标签: spacy named-entity-recognition

需要帮助来尝试添加新实体并使用名为实体识别的伪造训练我自己的模型。我想先尝试一下已经在这里完成的示例:

https://github.com/explosion/spaCy/blob/master/examples/training/train_new_entity_type.py

但我遇到此错误:

ipykernel_launcher.py:错误:无法识别的参数:-f /root/.local/share/jupyter/runtime/kernel-c46f384e-5989-4902-a775-7618ffadd54e.json 发生异常,请使用%tb查看完整的追溯。

SystemExit:2 /usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py:2890:用户警告:要退出:请使用“退出”,“退出”或Ctrl-D。   警告(“退出:使用'退出','退出'或Ctrl-D。”,堆栈级别= 1)

试图查看所有相关的问题和答案,但无法解决。

谢谢您的帮助。

1 个答案:

答案 0 :(得分:1)

看起来您正在从Jupyter笔记本运行代码,对吗?所有spaCy示例均设计为完全独立的脚本,可从命令行运行。他们使用Python库plac生成命令行界面,因此您可以使用参数运行脚本。然而,Jupyter似乎添加了另一个命令行选项-f,这与现有的命令行界面产生了冲突。

作为解决方案,您可以直接执行脚本,例如:

python train_new_entity_type.py

或者,使用命令行参数:

python train_new_entity_type.py --model en_core_web_sm --n-iter 20

或者,您也可以删除@plac.annotationsplac.call(main),而直接在笔记本中执行main()函数。