[英]Python: Spacy NER and memory consumption
我使用 SPACY 進行命名實體識別。 我在 en_core_web_md 上有自己訓練有素的 model。 我的 model 的大小是 223 兆字節。 當 model 加載到 memory 時,它使用 800 兆字節。 是否有可能出於 NER 目的不加載所有內容(lexemes.bin、string.json、key2row),而僅加載向量和 model(分別重 4 和 24 兆字節)來消耗更少的 ZCD69B4957F06CD819D7? 或者是否都需要為 NER 加載?
對於 spacy v2.2,有必要加載所有內容。 有一個小錯誤會影響md
模型中的key2row
:要改進v2.2.0-v2.2.5
版本的md
模型中key2row
的大小和加載時間,請參閱https://stackoverflow.com/a/60541041/461847 。
如果您使用自己的自定義向量從頭開始訓練 model,則與 key2row 相關的錯誤已在key2row
中修復,但提供的 v2.2 md
模型仍然存在此問題。
計划用於 v2.3:刪除lexemes.bin
,僅按需創建詞位。 通過這些更改, md
模型在磁盤上將縮小約 50%,初始 model 加載速度提高約 50%。 最初加載時,英文md
model 看起來在 memory 中小了大約 300MB,但是 memory 在構建 lexe 緩存時使用會增加一點。 見: https://github.com/explosion/spaCy/pull/5238
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.