解决方案1
点击方案1参考这篇博文。
解决方案2
点击方案2参考这篇博文
原因分析
我这里的报错原因是我的 forward 函数的输出不止一个,所以才会有这个list报错,方案1提供的解决方案是减少输出,但在本案例中不可行,而方案2提供的解决方案就很简单粗暴,将forward (def forward (x)) 函数重新命名,比如 forward1 (def forward1 (x)),然后在调用该函数的地方补充一下调用名称:
比如原来的调用是 self.encoder(x)
现在改为 self.encoder.forward1(x)
(这里的encoder表示网络的名字,根据自己的情况进行更改…)
好了,这样就可以正常总结summary啦…
心路历程
说实话,虽然提供方案1的博主写的逻辑很清晰,但我当时并未看懂…
而且,仔细研究之后觉得只有方法三是适合我的,但是我不能随便更改我的网络输出的啊