关于变量共享的问题
在Debug Tensorflow代码的时候博主遇到一个比较常见的bug,查阅了许多资料都无法解决,着实让人头大。最终通过自己的努力还是找到了解决方法,为了不再犯同样的错误,下面请看我的解决方案,希望对遇到同样Bug的新手同学们有一点点帮助。(博主也是个菜鸟新手,我们共同进步,各位行业大佬有问题请提出,万分感谢)
BUG描述
我主要跑的代码是两个模型融合的代码,在debug时也是遇到了许多错误。现在唯一的问题是变量共享的问题(reuse),问题如下:
ValueError: Trying to share variable CSFse/d_model/d_block_0/downconv/W, but specified shape (31, 1, 2, 16) and found shape (31, 1, 1, 16).
很明显指定shape是(31,1,2,16),但是给入的shape是(31,1, 1, 16)
问题解决方案
(1)查阅到这篇博客,受到一定启发。
这篇博客中提及,可能是参数设置存在问题,解决方案为更改参数名。
(2)我解决这个问题是从代码源头找起,发现在构建模型时给入了变量,从而造成变量shape=(31,1, 1, 16)。未解决这个问题,我重新修改了代码,成功解决了问题
总结
本人记录此问题,方便自己日后学习,各位有什么问题或者学习经验都可以分享,本人是一名研二学生,研究方向是语音增强,希望相关领域大佬可以互相分享学习经验。第一次写博客,或许很菜,但是加油。