Nlp 如何在开胃酒中引导一对语言?

Nlp 如何在开胃酒中引导一对语言?,nlp,apertium,Nlp,Apertium,我在这里遵循了引导现有语言对的所有步骤,在UBTO终端发出命令时遵循了这些步骤 echo house | apertium-d。英语spa 它回答我正确的答案 casa 但是当发出命令时 echo casa | apertium-d。spa英语 它给了我 terminate在抛出“DeserializationException”实例后调用 what():无法反序列化1字节整数类型:无法反序列化字节 中止(堆芯转储) 如何克服这个问题?调试这些东西的典型方法是查看文件modes/spa-eng.

我在这里遵循了引导现有语言对的所有步骤,在UBTO终端发出命令时遵循了这些步骤
echo house | apertium-d。英语spa

它回答我正确的答案
casa

但是当发出命令时
echo casa | apertium-d。spa英语

它给了我
terminate在抛出“DeserializationException”实例后调用
what():无法反序列化1字节整数类型:无法反序列化字节
中止(堆芯转储)


如何克服这个问题?

调试这些东西的典型方法是查看文件
modes/spa-eng.mode
,然后一步一步地运行管道,直到崩溃

如果文件包含
lt proc spa-eng.automorf.bin | apertium tagger-g spa-eng.prob |……
等等,我会先试试

echo casa | lt-proc spa-eng.automorf.bin
然后

等等,直到我发现了坠机


可能有一个
$2
作为该文件中某个程序的参数-如果是这样,用
-g
替换它

非常感谢您的友好回答,是的,问题出在
apertium tagger-g spa-eng.prob
中,当我添加-x
apertium tagger-g-x spa-eng.prob
时,它工作得很好。但是为什么我要添加这个?请您详细说明一下。请参见
apertium tagger--help
,它说
-x
(或者
--perceptron
)使用平均perceptron算法。因此,您的
.prob
文件是使用感知器而不是默认值(Baum Welch/Hidden Markov Model stuff)进行训练的
echo casa | lt-proc spa-eng.automorf.bin | apertium-tagger -g spa-eng.prob