-
Notifications
You must be signed in to change notification settings - Fork 59
/
Copy pathadversarial_G.lua
39 lines (35 loc) · 1.13 KB
/
adversarial_G.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
require 'torch'
require 'nn'
require 'optim'
require 'image'
require 'nngraph'
local function createModel()
local function bottleneck()
local convs=nn.Sequential()
convs:add(nn.SpatialConvolution(64,64,3,3,1,1,1,1))
convs:add(nn.SpatialBatchNormalization(64))
convs:add(nn.ReLU(true))
convs:add(nn.SpatialConvolution(64,64,3,3,1,1,1,1))
convs:add(nn.SpatialBatchNormalization(64))
local shortcut=nn.Identity()
return nn.Sequential():add(nn.ConcatTable():add(convs):add(shortcut)):add(nn.CAddTable(true))
end
local function layer(count)
local s=nn.Sequential()
for i=1,count do
s:add(bottleneck())
end
return s
end
model=nn.Sequential()
model:add(nn.SpatialConvolution(1,64,3,3,1,1,1,1))
model:add(nn.ReLU())
model:add(layer(15))
model:add(nn.SpatialFullConvolution(64,64,3,3,2,2,1,1,1,1))
model:add(nn.ReLU())
model:add(nn.SpatialFullConvolution(64,64,3,3,2,2,1,1,1,1))
model:add(nn.ReLU())
model:add(nn.SpatialFullConvolution(64,1,3,3,1,1,1,1))
return model
end
return createModel