我正在使用 spacy 版本 3 进行一些性能测试,以便在生产中调整实例的大小。我正在观察以下情况
观察:
| 型号名称 | 没有 NER 的时间 | 与 NER 共度时光 | 评论 |
|---|---|---|---|
| en_core_web_lg | 4.89秒 | 21.9秒 | NER在原来的基础上增加了350% |
| en_core_web_trf | 43.64秒 | 52.83秒 | NER 只比原来的时间增加了 20% |
为什么在使用 Transformer 模型的情况下,使用 NER和不使用 NER 的情况没有显着差异?在 en_core_web_trf 的情况下,NER 是否只是 POS 标记之后的增量任务?
测试环境: GPU实例
测试代码:
import spacy
assert(spacy.__version__ == '3.0.3')
spacy.require_gpu()
texts = load_sample_texts() # loads 10,000 texts from a file
assert(len(texts) == 10000)
def get_execution_time(nlp, texts, N):
return timeit.timeit(stmt="[nlp(text) for text in texts]",
globals={'nlp': nlp, 'texts': texts}, number=N) / N
# load …Run Code Online (Sandbox Code Playgroud)