Я хочу сделать настроенное обновление градиента, как показано ниже, изменяя значение backprop среднего слоя (dL / dx_midlayer = dL / dx_midlayer + some_custom_value_using_'label ')
for epoch in range(epochs):
x, y = some_inputs
output = model(x)
loss = criterion(output, label)
backprop_grad_until_last_conv = loss.backward_until_last_conv...()
x_hat = last_conv_input_features
backprop_grad_until_last_conv += customfunc(x_hat, label, epoch)
loss.backward_after_last_conv...()
optimizer.step()
Я сделал слой для пользовательской обратной функции,но не может получить аргумент label и epoch, потому что обратный аргумент torch.nn.Module - (self, grad_output), поэтому я просто делаю обратную функцию, которая может использовать 'label' и 'epoch'
. способ, который может сделать это ..?