pytorch - Pytorch-为什么“累积”.gradient的默认模式?
问题描述
为什么作者不让它覆盖渐变?有什么特别的理由让它保持积累吗?
解决方案
因为如果您在前向传递中使用相同的网络两次(或相同的权重),它应该累积而不是覆盖。另外,由于 pytorch 计算图是由运行定义的,所以累积是有意义的。见https://discuss.pytorch.org/t/why-do-we-need-to-set-the-gradients-manually-to-zero-in-pytorch/4903/9
推荐阅读
- kotlin - 为什么其中一些 kotlin 协程从未启动?
- c++ - 当同样好的转换函数可用时,为什么重载决议更喜欢移动构造函数而不是非特殊构造函数?
- go - 如何在 Go 中运行 .bat 文件
- android - INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION
- java - SQL/Hibernate/Spring 事务之间的区别
- angular - Angular BehaviorSubject 和错误异常
- html - 在 woocommerce 加载类期间隐藏 css :before 元素
- git - 如何在家中设置 git lfs 服务器?
- python-3.x - 如果名称相同,则将 2 个目录中的同名文件过滤到第三个文件夹中
- javascript - MongoDB 从请求中传递查询