spaCy v3.3 发布
2022年4月29日 · 5分钟阅读
我们很高兴推出spaCy自然语言处理库的v3.3版本。spaCy v3.3提高了几乎所有统计管道组件的速度,增加了一个可训练的词形还原器,并包含了针对芬兰语、韩语和瑞典语的新训练管道。
速度提升
spaCy v3.3包含了一系列速度改进,提高了所有核心管道组件在训练和推理阶段的速度。对于较长的文本,预测时训练管道的速度提升了15%或更多。针对en_core_web_md的详细基准测试显示了spaCy v3.2与v3.3的速度改进:
速度基准测试:en_core_web_md
| CPU | 平均词数/文档 | v3.2 词/秒 | v3.3 词/秒 | 差异 |
|---|---|---|---|---|
| Intel Xeon W-2265 | 100 | 17292 | 17441 | 0.86% |
| 1000 | 15408 | 16024 | 4.00% | |
| 10000 | 12798 | 15346 | 19.91% | |
| Apple M1 | 100 | 18272 | 18408 | 0.74% |
| 1000 | 18794 | 19248 | 2.42% | |
| 10000 | 15144 | 17513 | 15.64% |
可训练的词形还原器
新的可训练词形还原器组件使用编辑树将词元转换为其词元原形。您可以通过训练快速入门来试用可训练的词形还原器!
displaCy 支持重叠跨度标注
新的训练管道
特别感谢Antti Ajanki、Tuomo Hiippala(芬兰语)和Elena Fano(瑞典语)为新管道做出的贡献和帮助!
v3.3引入了针对芬兰语、韩语和瑞典语的新CPU/CNN管道,这些管道使用了新的可训练词形还原器和floret向量。由于使用了Bloom嵌入和子词,这些管道具有紧凑的向量表示,且没有词汇表外词。
| 包 | 语言 | UPOS | 解析器 LAS | NER F1 |
|---|---|---|---|---|
fi_core_news_sm | 芬兰语 | 92.5 | 71.9 | 75.9 |
fi_core_news_md | 芬兰语 | 95.9 | 78.6 | 80.6 |
fi_core_news_lg | 芬兰语 | 96.2 | 79.4 | 82.4 |
ko_core_news_sm | 韩语 | 86.1 | 65.6 | 71.3 |
ko_core_news_md | 韩语 | 94.7 | 80.9 | 83.1 |
ko_core_news_lg | 韩语 | 94.7 | 81.3 | 85.3 |
sv_core_news_sm | 瑞典语 | 95.0 | 75.9 | 74.7 |
sv_core_news_md | 瑞典语 | 96.3 | 78.5 | 79.3 |
sv_core_news_lg | 瑞典语 | 96.3 | 79.1 | 81.1 |
管道更新
以下语言的训练管道从基于查找或规则的词形还原器切换到了新的可训练词形还原器:
词形还原器准确率 (md管道)
| 语言 | v3.2 | v3.3 |
|---|---|---|
| 丹麦语 | 84.9 | 94.8 |
| 荷兰语 | 81.5 | 94.0 |
| 德语 | 73.4 | 97.7 |
| 希腊语 | 56.5 | 88.9 |
| 芬兰语 | - | 86.2 |
| 意大利语 | 86.6 | 97.2 |
| 韩语 | - | 90.0 |
| 立陶宛语 | 71.1 | 84.8 |
| 挪威语(书面语) | 76.7 | 97.1 |
| 波兰语 | 87.1 | 93.7 |
| 葡萄牙语 | 76.7 | 96.9 |
| 罗马尼亚语 | 81.8 | 95.5 |
| 瑞典语 | - | 95.5 |
spaCy 生态中的新内容
自v3.2以来,spaCy生态中新增了许多酷炫的插件、扩展、管道和教程:
- Applied Language Technology course - 使用spaCy和Stanza的新手NLP课程。
- Augmenty - 一个文本增强库。
- classy-classification - 一个用于spaCy内优雅的少样本和零样本分类的Python库。
- Concise Concepts - 基于词嵌入相似度的少样本NER。
- Crosslingual Coreference - 使用英语共指模型和跨语言嵌入的跨语言共指解析。
- EDS-NLP - 从法语临床笔记中提取信息的spaCy组件。
- eng-spacysentiment - 英语情感分析。
- Healthsea - 用于探索保健品效果的端到端spaCy管道。
- HuSpaCy - 工业级匈牙利语自然语言处理。
- Klayers - 作为AWS Lambda层的spaCy。
- NER using spaCy - 使用spaCy进行命名实体识别(视频)。
- Scrubadub - 使用spaCy从文本中移除个人身份信息。
- spacypdfreader - 简易PDF转文本转spaCy文本提取。
- spacy-setfit-textcat - 使用SetFit进行少样本分类的实验。
- spacy-wrap - 在spaCy管道中包装微调后的Transformer模型。
- textnets - 使用网络进行文本分析。
- tmtoolkit - 文本挖掘和主题建模工具包。