""" 第一种替换方法 """ qian_line = net.line class Add_Drop(nn.Module): def __init__(self, qian_line): super(Add_Drop, self).__init__() self.add_drop = nn.Sequential( nn.Dropout(0.3), qian_line ) def forward(self, x): x = self.add_drop(x) return x net.line = Add_Drop(qian_line) 或者 net.add_module('line', Add_Drop(qian_line))
""" 第二种 """ qian_line = net.line net.line = nn.Sequential(nn.Dropout(p=0.3), qian_line) 或者 net.add_module('line', nn.Sequential(nn.Dropout(p=0.3), qian_line))
""" 第三种(没用),函数名为添加,实则只能添加到最后,或者同名替换 """ net.aver_pool.add_module('drop', nn.Dropout(0.3)) net.aver_pool.add_module('drop', nn.Conv2d(111, 999, (3, 3)))