🚀 多语言标点预测模型
本模型可预测英文、意大利文、法文和德文文本的标点符号,旨在恢复转录口语中的标点,提升文本可读性与理解度。
🚀 快速开始
本模型能预测英、意、法、德四种语言文本的标点,可用于恢复转录口语的标点。它在Europarl数据集上训练,能恢复句号、逗号、问号、连字符和冒号等标点。
✨ 主要特性
- 多语言支持:支持英文、意大利文、法文和德文等多种语言。
- 标点恢复:能够恢复多种标点符号,如句号、逗号、问号、连字符和冒号。
- 简单易用:提供简单的Python包,可处理任意长度的文本。
📦 安装指南
要开始使用,可从 pypi 安装该包:
pip install deepmultilingualpunctuation
💻 使用示例
基础用法
from deepmultilingualpunctuation import PunctuationModel
model = PunctuationModel()
text = "My name is Clara and I live in Berkeley California Ist das eine Frage Frau Müller"
result = model.restore_punctuation(text)
print(result)
输出
My name is Clara and I live in Berkeley, California. Ist das eine Frage, Frau Müller?
高级用法
from deepmultilingualpunctuation import PunctuationModel
model = PunctuationModel()
text = "My name is Clara and I live in Berkeley California Ist das eine Frage Frau Müller"
clean_text = model.preprocess(text)
labled_words = model.predict(clean_text)
print(labled_words)
输出
[['My', '0', 0.9999887], ['name', '0', 0.99998665], ['is', '0', 0.9998579], ['Clara', '0', 0.6752215], ['and', '0', 0.99990904], ['I', '0', 0.9999877], ['live', '0', 0.9999839], ['in', '0', 0.9999515], ['Berkeley', ',', 0.99800044], ['California', '.', 0.99534047], ['Ist', '0', 0.99998784], ['das', '0', 0.99999154], ['eine', '0', 0.9999918], ['Frage', ',', 0.99622655], ['Frau', '0', 0.9999889], ['Müller', '?', 0.99863917]]
📚 详细文档
模型性能
由于连字符和冒号在很多情况下是可选的,可由逗号或句号替代,因此不同标点符号的性能有所差异。该模型在不同语言上的F1分数如下:
标签 |
英文 |
德文 |
法文 |
意大利文 |
无标点 |
0.991 |
0.997 |
0.992 |
0.989 |
句号 |
0.948 |
0.961 |
0.945 |
0.942 |
问号 |
0.890 |
0.893 |
0.871 |
0.832 |
逗号 |
0.819 |
0.945 |
0.831 |
0.798 |
冒号 |
0.575 |
0.652 |
0.620 |
0.588 |
连字符 |
0.425 |
0.435 |
0.431 |
0.421 |
宏平均 |
0.775 |
0.814 |
0.782 |
0.762 |
可用模型
官方模型
社区模型
你可以通过设置 model
参数来使用不同的模型:
model = PunctuationModel(model = "oliverguhr/fullstop-dutch-punctuation-prediction")
代码与训练
你可以在 此仓库 中找到研究项目的完整代码。此外,还有关于 如何针对你的数据/语言微调此模型 的指南。
🔧 技术细节
本多语言模型在 Europarl 数据集 上进行训练,该数据集由 SEPP-NLG 共享任务 提供。需要注意的是,此数据集由政治演讲组成,因此模型在其他领域的文本上可能表现不同。
📄 许可证
本项目采用 MIT 许可证。
参考文献
@article{guhr-EtAl:2021:fullstop,
title={FullStop: Multilingual Deep Models for Punctuation Prediction},
author = {Guhr, Oliver and Schumann, Anne-Kathrin and Bahrmann, Frank and Böhme, Hans Joachim},
booktitle = {Proceedings of the Swiss Text Analytics Conference 2021},
month = {June},
year = {2021},
address = {Winterthur, Switzerland},
publisher = {CEUR Workshop Proceedings},
url = {http://ceur-ws.org/Vol-2957/sepp_paper4.pdf}
}