Understanding records for maskrcnn_benchmark —— in layers\roi_align.py, using @staticmethod and @once_differentiable for handling the reverse propagation of functions that are not differentiable.
发布时间
阅读量:
阅读量
在调用某一类中的方法时,首先需要创建该类的一个实例对象,随后借助该实例对象来执行对应的方法。Python语言中提供了@staticmethod与@classmethod两个修饰符,允许用户无需实例化即可直接通过类名进行方法调用。
当使用@staticmethod对方法进行声明时,该方法可直接通过类或实例对象进行访问,具体形式为 类||实例.静态方法()。所有经过@staticmethod修饰的方法均无需传入self参数,其调用方式与普通函数的使用方式完全一致。
一:关于torch.autograd.Function
属性(成员变量)
saved_tensors: 传给forward()的参数,在backward()中会用到。
needs_input_grad:长度为 :attr:num_inputs的bool元组,表示输出是否需要梯度。可以用于优化反向过程的缓存。
num_inputs: 传给函数 :func:forward的参数的数量。
num_outputs: 函数 :func:forward返回的值的数目。
requires_grad: 布尔值,表示函数 :func:backward 是否永远不会被调用。
成
全部评论 (0)
还没有任何评论哟~
