Conv2D tweaks
This commit is contained in:
parent
c709041d73
commit
cc1ca4c3c2
@ -1,18 +1,17 @@
|
|||||||
export Conv, MaxPool
|
export Conv2D, MaxPool
|
||||||
|
|
||||||
type Conv <: Model
|
type Conv2D <: Model
|
||||||
size::Dims{2}
|
filter::Param{Array{Float64,4}} # [height, width, outchans, inchans]
|
||||||
features::Int
|
|
||||||
stride::Dims{2}
|
stride::Dims{2}
|
||||||
end
|
end
|
||||||
|
|
||||||
Conv(size, features; stride = (1,1)) =
|
Conv2D(size; in = 1, out = 1, stride = (1,1), init = initn) =
|
||||||
Conv(size, features, stride)
|
Conv2D(param(initn(size..., in, out)), stride)
|
||||||
|
|
||||||
shape(c::Conv, in::Dims{2}) =
|
shape(c::Conv2D, in::Dims{2}) =
|
||||||
(map(i -> (in[i]-c.size[i])÷c.stride[i]+1, (1,2))..., c.features)
|
(map(i -> (in[i]-size(c.filter,i))÷c.stride[i]+1, (1,2))..., size(c.filter, 3))
|
||||||
|
|
||||||
shape(c::Conv, in::Dims{3}) =
|
shape(c::Conv2D, in::Dims{3}) =
|
||||||
shape(c, (in[1],in[2]))
|
shape(c, (in[1],in[2]))
|
||||||
|
|
||||||
type MaxPool <: Model
|
type MaxPool <: Model
|
||||||
|
Loading…
Reference in New Issue
Block a user