gpt4 book ai didi

machine-learning - 吉萨++的糟糕结果和评估

转载 作者:行者123 更新时间:2023-11-30 08:32:23 26 4
gpt4 key购买 nike

我尝试在窗口上使用 giza++(使用 Cygwin 编译器)。我使用了这段代码:

//假设源语言是法语,目标语言是英语

plain2snt.out  FrenchCorpus.f  EnglishCorpus.e

mkcls -c30 -n20 -pFrenchCorpus.f -VFrenchCorpus.f.vcb.classes opt
mkcls -c30 -n20 -pEnglishCorpus.e -VEnglishCorpus.e.vcb.classes opt
snt2cooc.out FrenchCorpus.f.vcb EnglishCorpus.e.vcb FrenchCorpus.f_EnglishCorpus.e.snt >courpuscooc.cooc

GIZA++ -S FrenchCorpus.f.vcb -T EnglishCorpus.e.vcb -C FrenchCorpus.f_EnglishCorpus.e.snt -m1 100 -m2 30 -mh 30 -m3 30 -m4 30 -m5 30 -p1 o.95 -CoocurrenceFile courpuscooc.cooc -o dictionary

但是从 giza++ 获取输出文件并评估输出后,我发现结果太糟糕了。

我的评估结果是:

召回率 = 0.0889

精度 = 0.0990

F_MEASURE = 0.0937

AER = 0.9035

有人知道原因吗?可能是我忘记了一些参数或者我应该更改其中一些参数?

换句话说:

首先我想通过大量数据训练 giza++,然后通过小语料库对其进行测试,并通过所需的对齐方式(GOLD STANDARD)比较其结果,但我在网络中找不到任何文档或有用的页面。

能介绍一下有用的文档吗?

因此,我通过小语料库(447 个句子)运行它,并通过所需的对齐方式比较结果。您认为这是正确的方法吗?

我还按如下方式更改了代码并得到了更好的结果,但仍然不好:

GIZA++ -S teSTLowsf.f.vcb -T teSTLowde.e.vcb -C teSTLowsf.f_teSTLowde.e.snt -m1 5 -m2 0 -mh 5 -m3 5 -m4 0 -CoocurrenceFile 输入cooc.cooc -o 字典-model1dump频率 1 -model4smoothfactor 0.4 -nodumps 0 -nsmooth 4 -onlyaldumps 1 -p0 0.999 -对角线是 -最终是

评估结果:

//假设 A 是 GIZA++ 的结果,G 是黄金标准。 As和Gs是A和G文件中的S链接。 Ap和Gp是A和G文件中的p链接。

RECALL = 相交 Gs/Gs = 0.6295

精度 = Ap 与 Gp/A = 0.1090 相交

FMEASURE = (2*精度*召回率)/(召回率 + 精度) = 0.1859

AER = 1 - ((与 Gs 相交 + Ap 与 Gp 相交)/(A + S)) = 0.7425

你知道原因吗?

最佳答案

你从哪里得到这些参数? model1 的 100 次迭代?!好吧,如果你真的设法运行这个,我强烈怀疑你有一个非常小的平行语料库。如果是这样,您应该考虑在训练中添加更多并行数据。到底如何计算召回率和精确率?

编辑:

如果句子少于 500 个,您不太可能获得任何合理的性能。通常的方法不是找到一个更大的(未对齐的)平行语料库,对两者一起运行 GIZA++,然后评估手动对齐的小部分。检查EuroparlMultiUN ,这些都是免费提供的语料库,都包含相对大量的英法平行数据。有关准备数据的说明可以在网站上找到。

关于machine-learning - 吉萨++的糟糕结果和评估,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12172422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com