-
关键字:
机器翻译
beam_search
-
问题描述:使用Fluid 0.14 CPU版的PaddlePaddle运行机器翻译的例子时,出现
beam_search() got multiple values for keyword argument 'end_id'
-
报错输出:
Traceback (most recent call last):
File "infer.py", line 196, in <module>
main(use_cuda)
File "infer.py", line 191, in main
decode_main(False) # Beam Search does not support CUDA
File "infer.py", line 133, in decode_main
translation_ids, translation_scores = decode(context)
File "infer.py", line 98, in decode
beam_size, end_id=10, level=0)
TypeError: beam_search() got multiple values for keyword argument 'end_id'
-
问题解答:
这个问题很有可能是PaddlePaddle版本问题,因为beamsearch
相关的内容在Fluid 0.14版后依旧有相应的修改,所以造成该问题的原因可能是你使用机器学习示例中的用法与Paddle版本中提供的api不匹配。 -
解决方法:
将PaddlePaddle更新成最新的版本,参考官方最新的机器翻译的实例,如下或者直接参考PaddlePaddle提供的book中关于机器翻译的代码,如下
https://github.com/PaddlePaddle/book/tree/develop/08.machine_translation