blob: 7d2358ce5c96f2030c361d5d980ec2acd4d8be06 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
local SoftMin, _ = torch.class('nn.SoftMin', 'nn.Module')
function SoftMin:updateOutput(input)
self.mininput = self.mininput or input.new()
self.mininput:resizeAs(input):copy(input):mul(-1)
return input.nn.SoftMax_updateOutput(self, self.mininput)
end
function SoftMin:updateGradInput(input, gradOutput)
self.mininput = self.mininput or input.new()
self.mininput:resizeAs(input):copy(input):mul(-1)
self.gradInput = input.nn.SoftMax_updateGradInput(self, self.mininput, gradOutput)
self.gradInput:mul(-1)
return self.gradInput
end
|