median-research-group/LibMTL

请教一下Weighting中梯度计算的一些问题

Ruizhuo-Xu opened this issue · 1 comments

image 请教一下图中这两种计算梯度的方式分别有什么优劣吗(显存或者计算速度)?

backward会自动计算所有parameter(包括task-specific parameter)的gradient并存储在tensor.grad里,在optimizer.step()会自动更新所有参数(包括task-specific parameter)

autograd只会计算share parameter的gradient并且不会存储在tensor.grad里而是直接返回gradient

在weighting的实现中,可以根据不同的需求去选择这两个方式