Files
jonstreeter-ComfyUI-Referen…/lib/HardSigmoid.py
T
2020-11-30 22:57:10 +08:00

21 lines
554 B
Python
Executable File

from torch.autograd import Function, Variable
class HardSigmoid(Function):
@staticmethod
def forward(ctx, input):
output = (0.2 * input) + 0.5
output[output > 1] = 1
output[output < 0] = 0
ctx.save_for_backward(input)
return output
@staticmethod
def backward(ctx, grad_output):
input = ctx.saved_variables
grad_input = input.new(input.size())
grad_input.data.fill_(0.2)
grad_input[input <= -2.5] = 0
grad_input[input >= 2.5] = 0
return grad_input