2025-08-13 15:04:44 +02:00
|
|
|
|
|
|
|
|
|
|
\documentclass[border=8pt, multi, tikz]{standalone}
|
|
|
|
|
|
\usepackage{import}
|
|
|
|
|
|
\subimport{../layers/}{init}
|
|
|
|
|
|
\usetikzlibrary{positioning}
|
|
|
|
|
|
\usetikzlibrary{3d} %for including external image
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\def\ConvColor{rgb:yellow,5;red,2.5;white,5}
|
|
|
|
|
|
\def\ConvReluColor{rgb:yellow,5;red,5;white,5}
|
|
|
|
|
|
\def\PoolColor{rgb:red,1;black,0.3}
|
|
|
|
|
|
\def\UnpoolColor{rgb:blue,2;green,1;black,0.3}
|
|
|
|
|
|
\def\FcColor{rgb:blue,5;red,2.5;white,5}
|
|
|
|
|
|
\def\FcReluColor{rgb:blue,5;red,5;white,4}
|
|
|
|
|
|
\def\SoftmaxColor{rgb:magenta,5;black,7}
|
|
|
|
|
|
\def\SumColor{rgb:blue,5;green,15}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\newcommand{\copymidarrow}{\tikz \draw[-Stealth,line width=0.8mm,draw={rgb:blue,4;red,1;green,1;black,3}] (-0.3,0) -- ++(0.3,0);}
|
|
|
|
|
|
|
|
|
|
|
|
\begin{document}
|
|
|
|
|
|
\begin{tikzpicture}
|
|
|
|
|
|
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
|
|
|
|
|
\tikzstyle{copyconnection}=[ultra thick,every node/.style={sloped,allow upside down},draw={rgb:blue,4;red,1;green,1;black,3},opacity=0.7]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={(0,0,0)}] at (0,0,0)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=input,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
caption=Input,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{1, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.2,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
zlabel={{2048×32}},
|
|
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=1,
|
|
|
|
|
|
depth=52
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={(2,0,0)}] at (input-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=dwconv1,
|
|
|
|
|
|
caption=,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{1, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.3,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
zlabel=,
|
|
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=1,
|
|
|
|
|
|
depth=52
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={(0,0,0)}] at (dwconv1-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=dwconv2,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
caption=Conv1,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{16, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.15,
|
|
|
|
|
|
zlabel={{2048×32}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=4,
|
|
|
|
|
|
depth=52
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={ (0,0,0) }] at (dwconv2-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=pool1,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
xlabel={{, }},
|
|
|
|
|
|
zlabeloffset=0.3,
|
|
|
|
|
|
zlabel={{512×32}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
caption=,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\PoolColor,
|
|
|
|
|
|
opacity=0.5,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=4,
|
|
|
|
|
|
depth=24
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={(2,0,0)}] at (pool1-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=dwconv3,
|
|
|
|
|
|
caption=,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{1, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.3,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
zlabel=,
|
|
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=1,
|
|
|
|
|
|
depth=24
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={(0,0,0)}] at (dwconv3-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=dwconv4,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
caption=Conv2,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{32, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.3,
|
|
|
|
|
|
zlabel={{512×32}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=26,
|
|
|
|
|
|
width=8,
|
|
|
|
|
|
depth=24
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={ (0,0,0) }] at (dwconv4-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=pool2,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
xlabel={{, }},
|
|
|
|
|
|
zlabeloffset=0.45,
|
|
|
|
|
|
zlabel={{256×16}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
caption=,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\PoolColor,
|
|
|
|
|
|
opacity=0.5,
|
|
|
|
|
|
height=18,
|
|
|
|
|
|
width=8,
|
|
|
|
|
|
depth=12
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\pic[shift={ (0,0,0) }] at (pool2-east)
|
|
|
|
|
|
{Box={
|
|
|
|
|
|
name=pool3,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
xlabel={{, }},
|
|
|
|
|
|
zlabeloffset=0.45,
|
|
|
|
|
|
zlabel={{128×8}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
caption=,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\PoolColor,
|
|
|
|
|
|
opacity=0.5,
|
|
|
|
|
|
height=12,
|
|
|
|
|
|
width=8,
|
|
|
|
|
|
depth=6
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-09-28 14:35:10 +02:00
|
|
|
|
\pic[shift={(1,0,0)}] at (pool3-east)
|
2025-08-13 15:04:44 +02:00
|
|
|
|
{Box={
|
|
|
|
|
|
name=squeeze,
|
2025-09-01 18:53:01 +02:00
|
|
|
|
caption=Squeeze,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{8, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.45,
|
|
|
|
|
|
zlabel={{128×8}},
|
2025-08-13 15:04:44 +02:00
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=12,
|
|
|
|
|
|
width=2,
|
|
|
|
|
|
depth=6
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-09-28 14:35:10 +02:00
|
|
|
|
\pic[shift={(2,-.5,0)}] at (squeeze-east)
|
2025-08-13 15:04:44 +02:00
|
|
|
|
{Box={
|
|
|
|
|
|
name=fc1,
|
|
|
|
|
|
caption=FC,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{" ","dummy"}},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.5,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
zlabel={{8×128×8}},
|
|
|
|
|
|
fill=\FcColor,
|
|
|
|
|
|
opacity=0.8,
|
|
|
|
|
|
height=1,
|
|
|
|
|
|
width=1,
|
|
|
|
|
|
depth=24
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-09-28 14:35:10 +02:00
|
|
|
|
\pic[shift={(1.3,0.5,0)}] at (fc1-east)
|
2025-08-13 15:04:44 +02:00
|
|
|
|
{Box={
|
|
|
|
|
|
name=latent,
|
|
|
|
|
|
caption=Latent Space,
|
2025-09-28 14:35:10 +02:00
|
|
|
|
captionshift=0,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
xlabel={{, }},
|
2025-09-01 18:53:01 +02:00
|
|
|
|
zlabeloffset=0.3,
|
2025-08-13 15:04:44 +02:00
|
|
|
|
zlabel=latent dim,
|
|
|
|
|
|
fill=\ConvColor,
|
|
|
|
|
|
height=19.200000000000003,
|
|
|
|
|
|
width=1,
|
|
|
|
|
|
depth=1
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\end{tikzpicture}
|
|
|
|
|
|
\end{document}
|
|
|
|
|
|
|