网络模型创建步骤
nn.Module属性
self._parameters = OrderedDict()#存储管理nn.Parameter类
self._buffers = OrderedDict()#存储管理缓冲属性,如BN层中的running_mean
self._backward_hooks = OrderedDict()
self._forward_hooks = OrderedDict()#存储管理钩子函数
self._forward_pre_hooks = OrderedDict()
self._state_dict_hooks = OrderedDict()
self._load_state_dict_pre_hooks = OrderedDict()
self._modules = OrderedDict()#存储管理nn.Module类
nn.Module总结:
一个module可以包含多个子module
一个module相当于一个运算,必须实现forward()函数
每个module都有8个字典管理它的属性