基于规则的俄语句子标记器

rusenttokenize的Python项目详细描述


ru_sent_tokenize

一种简单快速的基于规则的句子分割方法。在opencorba和syntagrus数据集上进行了测试。

安装

pip install rusenttokenize

运行

>>> from rusenttokenize import ru_sent_tokenize
>>> ru_sent_tokenize('Эта шоколадка за 400р. ничего из себя не представляла. Артём решил больше не ходить в этот магазин')
['Эта шоколадка за 400р. ничего из себя не представляла.', 'Артём решил больше не ходить в этот магазин']

指标

标记器已经在opencorba和syntagrus上进行了测试。有两个重要的指标。

精确。第一个是我们从数据集中提取单个句子,并测量标记器没有拆分它们的次数。

回忆。第二个指标是我们从数据集中提取两个连续的句子,并用一个空格字符连接每一对。我们测量了tokenizer将一个长句子正确拆分为两个句子的次数。

tokenizerOpenCorporaSynTagRus
PrecisionRecallExecution Time (sec)PrecisionRecallExecution Time (sec)
nltk.sent_tokenize94.3086.068.6798.1594.955.07
nltk.sent_tokenize(x, language='russian')95.5388.378.5498.4495.455.68
bureaucratic-labs.segmentator.split97.1688.6235996.7992.55210
ru_sent_tokenize98.7393.454.9299.8198.592.87

Notebook显示如何计算上表

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将Map<String,String>传递给需要Map<String,Object>   java在循环中使用字符串而不是StringBuilder是否会造成内存损失?   jnlp如何更新java控制台JRE?   java更改、修改和重新打包CXFAPI源文件   JavaFXJava应用程序在Fedora上运行一段时间后关闭   使用来自不同类的方法的java   java如何通过ant脚本在linux中使用subst?   java在使用camunda modeler进行base64编码/解码时出错   获取java。netbeans、weblogic和fastswap设置为true时的lang.NoSuchMethodError   java如何提高FinalizerThread在GC中收集对象的优先级   java检测具有相同根的单词   netbeans crud应用程序中的java错误