<p>所以我基本上在我的项目中使用这个转换器实现:<a href="https://github.com/Kyubyong/transformer" rel="noreferrer">https://github.com/Kyubyong/transformer</a>。
它在德语到英语的翻译上很好地工作,我修改了处理python脚本,以便为我要翻译的语言创建词汇表文件。这似乎很管用。在</p>
<p>但是,在培训方面,我遇到了以下错误:</p>
<blockquote>
<p>InvalidArgumentError (see above for traceback): Restoring from
checkpoint failed. This is most likely due to a mismatch between the
current graph and the graph from the checkpoint. Please ensure that
you have not altered the graph expected based on the checkpoint.
Original error:</p>
<p>Assign requires shapes of both tensors to match. lhs shape= [9796,512]
rhs shape= [9786,512] [[{{node save/Assign_412}} =
Assign[T=DT_FLOAT, _class=["loc:@encoder/enc_embed/lookup_table"],
use_locking=true, validate_shape=true,
_device="/job:localhost/replica:0/task:0/device:CPU:0"](encoder/enc_embed/lookup_table/Adam_1,
save/RestoreV2:412)]]</p>
</blockquote>
<p>现在我不知道为什么会出现上述错误。我还恢复了原来的代码从德语翻译成英语,现在我得到了同样的错误(除了lhs和rhs张量形状当然是不同的),当它工作之前!在</p>
<p>你知道为什么会这样吗?在</p>
<p>提前谢谢</p>
<p>编辑:这是这里讨论的特定文件火车.py运行时:<a href="https://github.com/Kyubyong/transformer/blob/master/train.py" rel="noreferrer">https://github.com/Kyubyong/transformer/blob/master/train.py</a>
除了de和en加载的vocab不同(它们实际上是以单个字母作为单词的vocab文件),没有任何修改。然而,正如我提到的,即使回到前面的工作示例,我也会在不同的lhs和rhs维度上得到相同的错误。在</p>