Python.NLTK(WindowDiff和PK)与Python。塞格瓦尔(WindowDiff和PK)

2024-04-26 10:02:47 发布

您现在位置:Python中文网/ 问答频道 /正文

Beeferman的PK和WindowDIFF的Python NLTK实现与Python segeval实现的结果完全不同。

使用相同的参数。在

hyp: 0100100000
ref: 0101000000
k=2
PK's SegEval:0.2222222
PK's NLTK:0.111111111

hyp: 111111
ref: 100100
k=2
PK's SegEval:0.4
PK's NLTK:0.64

这可能会给使用它的人带来不同的研究结果。
为什么我在这两个实现中用PK得到不同的结果?PK只能有一个结果。在


Tags: ref参数pknltkhypwindowdiffbeefermansegeval
1条回答
网友
1楼 · 发布于 2024-04-26 10:02:47

可能,调用NLTK函数的方式出了问题,或者使用的是NLTK的旧版本。在

我得到的NLTK结果与您在segeval中显示的结果相同:

>>> from nltk.metrics.segmentation import pk
>>> hyp = '0100100000'
>>> ref = '0101000000'
>>> pk(hyp, ref, 2)
0.2222222222222222
>>> hyp = '111111'
>>> ref = '100100'
>>> pk(hyp, ref, 2)
0.4

我的nltk版本:

^{pr2}$

这样做:

$ pip install -U nltk

相关问题 更多 >