SwinLayer constructor
SwinLayer({})
Implementation
SwinLayer({
required this.dim,
required this.depth,
required this.numHeads,
required this.windowSize,
this.downsample = true,
}) {
blocks = List.generate(
depth,
(i) => SwinTransformerBlock(
dim: dim,
numHeads: numHeads,
windowSize: windowSize,
shiftSize: i % 2 == 0 ? 0 : windowSize ~/ 2,
),
);
if (downsample) {
patchMerging = PatchMerging(dim);
}
}