用于计算二值化错误率(DER)的轻量级库。
simpleder的Python项目详细描述
简化程序
概述
这是一个计算二值化错误率(DER)的轻量级库。
功能不受支持:
- 处理重叠语音,即两个扬声器同时讲话
- 允许段边界公差,a.k.a.的
collar
值。
对于这些支持的更复杂的度量,请使用 pyannote-metrics取而代之。
要了解有关说话人二值化的更多信息,这里有一个精心策划的资源列表: awesome-diarization。
二值化错误率
二值化错误率(DER)是 speaker diarization
其严格形式是:
False Alarm + Miss + Overlap + Confusion
DER = ------------------------------------------
Reference Length
每个术语的定义:
Reference Length:
引用的总长度(基本事实)。False Alarm
:在 假设,但不是参考Miss
:在 引用,但不在假设中Overlap
:被视为重叠语音的段的长度 在假设中,但不在参考中。 此库不支持重叠。Confusion
:分配给不同扬声器的段的长度 在假设和参考中(在应用最优分配之后)。
每个术语的单位是seconds
注意,der理论上可以大于1.0。
参考文献:
教程
安装
通过以下方式安装软件包:
pip3 install simpleder
或
python3 -m pip install simpleder
api
下面是一个最小的示例:
importsimpleder# reference (ground truth)ref=[("A",0.0,1.0),("B",1.0,1.5),("A",1.6,2.1)]# hypothesis (diarization result from your algorithm)hyp=[("1",0.0,0.8),("2",0.8,1.4),("3",1.5,1.8),("1",1.8,2.0)]error=simpleder.DER(ref,hyp)print("DER={:.3f}".format(error))
这将输出:
DER=0.350