SGD Tensorflow和PyTorch SGD之间的实现差异
在使用从Pytorch移植到TF2的相同代码进行培训时遇到的一些问题SGD Tensorflow和PyTorch SGD之间的实现差异,pytorch,tensorflow2.0,Pytorch,Tensorflow2.0,在使用从Pytorch移植到TF2的相同代码进行培训时遇到的一些问题 Model.fit的收敛方式与渐变带完全不同。(更类似于Pytork) tf.keras.optimizers.SGD收敛性与pytorch SGD非常不同。(例如,训练时tf的LR为0.1是不稳定的,而Pytorch的相同起始LR用于许多SOTA实施) 我无法想出一个玩具示例来演示这个问题,而不需要很多时间来训练,并且可以用几行代码来演示。有什么建议吗?对于相同的模型、完全相同的权重、完全相同的种子和完全相同的数据,是否
- Model.fit的收敛方式与渐变带完全不同。(更类似于Pytork)
- tf.keras.optimizers.SGD收敛性与pytorch SGD非常不同。(例如,训练时tf的LR为0.1是不稳定的,而Pytorch的相同起始LR用于许多SOTA实施)
我无法想出一个玩具示例来演示这个问题,而不需要很多时间来训练,并且可以用几行代码来演示。有什么建议吗?对于相同的模型、完全相同的权重、完全相同的种子和完全相同的数据,是否存在相同的顺序?考虑到(没有其他正则化)结果应该是相同的(或几乎相同的)。实际上,我认为我观察到的可能是以下原因的直接原因: