Compare commits
2 Commits
52dabf0f89
...
e34a374adc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e34a374adc | ||
|
|
f36477ed9b |
BIN
thesis/Main.pdf
BIN
thesis/Main.pdf
Binary file not shown.
652
thesis/Main.tex
652
thesis/Main.tex
File diff suppressed because it is too large
Load Diff
@@ -147,22 +147,22 @@
|
|||||||
% standard
|
% standard
|
||||||
\newcommand{\fig}[3]{\begin{figure}\centering\includegraphics[width=\textwidth]{#2}\caption{#3}\label{fig:#1}\end{figure}}%
|
\newcommand{\fig}[3]{\begin{figure}\centering\includegraphics[width=\textwidth]{#2}\caption{#3}\label{fig:#1}\end{figure}}%
|
||||||
% with controllable parameters
|
% with controllable parameters
|
||||||
\newcommand{\figc}[4]{\begin{figure}\centering\includegraphics[#1]{#2}\caption{#3}\label{fig:#4}\end{figure}}%
|
\newcommand{\figc}[4]{\begin{figure}\centering\includegraphics[#4]{#2}\caption{#3}\label{fig:#1}\end{figure}}%
|
||||||
% two subfigures
|
% two subfigures
|
||||||
\newcommand{\twofig}[6]{\begin{figure}\centering%
|
\newcommand{\twofig}[6]{\begin{figure}\centering%
|
||||||
\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}}%
|
\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}}%
|
||||||
\subfigure[#4]{\includegraphics[width=0.495\textwidth]{#3}}%
|
\subfigure[#4]{\includegraphics[width=0.495\textwidth]{#3}}%
|
||||||
\caption{#5}\label{fig:#6}\end{figure}}%
|
\caption{#5}\label{fig:#6}\end{figure}}%
|
||||||
% two subfigures with labels for each subplot
|
% two subfigures with labels for each subplot
|
||||||
\newcommand{\twofigs}[8]{\begin{figure}\centering%
|
\newcommand{\twofigs}[8]{\begin{figure}\centering%
|
||||||
\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}\label{fig:#8#3}}%
|
\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}\label{fig:#8#3}}%
|
||||||
\subfigure[#5]{\includegraphics[width=0.495\textwidth]{#4}\label{fig:#8#6}}%
|
\subfigure[#5]{\includegraphics[width=0.495\textwidth]{#4}\label{fig:#8#6}}%
|
||||||
\caption{#7}\label{fig:#8}\end{figure}}%
|
\caption{#7}\label{fig:#8}\end{figure}}%
|
||||||
% two subfigures and controllable parameters
|
% two subfigures and controllable parameters
|
||||||
\newcommand{\twofigc}[8]{\begin{figure}\centering%
|
\newcommand{\twofigc}[8]{\begin{figure}\centering%
|
||||||
\subfigure[#3]{\includegraphics[#1]{#2}}%
|
\subfigure[#3]{\includegraphics[#1]{#2}}%
|
||||||
\subfigure[#6]{\includegraphics[#4]{#5}}%
|
\subfigure[#6]{\includegraphics[#4]{#5}}%
|
||||||
\caption{#7}\label{fig:#8}\end{figure}}%
|
\caption{#7}\label{fig:#8}\end{figure}}%
|
||||||
|
|
||||||
% framed figures
|
% framed figures
|
||||||
% standard
|
% standard
|
||||||
@@ -171,19 +171,19 @@
|
|||||||
\newcommand{\figcf}[4]{\begin{figure}\centering\fbox{\includegraphics[#1]{#2}}\caption{#3}\label{fig:#4}\end{figure}}%
|
\newcommand{\figcf}[4]{\begin{figure}\centering\fbox{\includegraphics[#1]{#2}}\caption{#3}\label{fig:#4}\end{figure}}%
|
||||||
% two subfigures
|
% two subfigures
|
||||||
\newcommand{\twofigf}[6]{\begin{figure}\centering%
|
\newcommand{\twofigf}[6]{\begin{figure}\centering%
|
||||||
\fbox{\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}}}%
|
\fbox{\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}}}%
|
||||||
\fbox{\subfigure[#4]{\includegraphics[width=0.495\textwidth]{#3}}}%
|
\fbox{\subfigure[#4]{\includegraphics[width=0.495\textwidth]{#3}}}%
|
||||||
\caption{#5}\label{fig:#6}\end{figure}}%
|
\caption{#5}\label{fig:#6}\end{figure}}%
|
||||||
% two subfigures with labels for each subplot
|
% two subfigures with labels for each subplot
|
||||||
\newcommand{\twofigsf}[8]{\begin{figure}\centering%
|
\newcommand{\twofigsf}[8]{\begin{figure}\centering%
|
||||||
\fbox{\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}\label{fig:#8#3}}}%
|
\fbox{\subfigure[#2]{\includegraphics[width=0.495\textwidth]{#1}\label{fig:#8#3}}}%
|
||||||
\fbox{\subfigure[#5]{\includegraphics[width=0.495\textwidth]{#4}\label{fig:#8#6}}}%
|
\fbox{\subfigure[#5]{\includegraphics[width=0.495\textwidth]{#4}\label{fig:#8#6}}}%
|
||||||
\caption{#7}\label{fig:#8}\end{figure}}%
|
\caption{#7}\label{fig:#8}\end{figure}}%
|
||||||
% two subfigures and controllable parameters
|
% two subfigures and controllable parameters
|
||||||
\newcommand{\twofigcf}[8]{\begin{figure}\centering%
|
\newcommand{\twofigcf}[8]{\begin{figure}\centering%
|
||||||
\fbox{\subfigure[#3]{\includegraphics[#1]{#2}}}%
|
\fbox{\subfigure[#3]{\includegraphics[#1]{#2}}}%
|
||||||
\fbox{\subfigure[#6]{\includegraphics[#4]{#5}}}%
|
\fbox{\subfigure[#6]{\includegraphics[#4]{#5}}}%
|
||||||
\caption{#7}\label{fig:#8}\end{figure}}%
|
\caption{#7}\label{fig:#8}\end{figure}}%
|
||||||
|
|
||||||
% listings
|
% listings
|
||||||
\newcommand{\filelisting}[5][]{\lstinputlisting[style=#2,caption={#4},label={lst:#5},#1]{#3}}
|
\newcommand{\filelisting}[5][]{\lstinputlisting[style=#2,caption={#4},label={lst:#5},#1]{#3}}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_ef_decoder.pdf
vendored
Normal file
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_ef_decoder.pdf
vendored
Normal file
Binary file not shown.
@@ -30,7 +30,8 @@ arch = [
|
|||||||
height=H8 * 1.6,
|
height=H8 * 1.6,
|
||||||
depth=D1,
|
depth=D1,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption=f"Latent Space",
|
caption="Latent Space",
|
||||||
|
captionshift=0,
|
||||||
),
|
),
|
||||||
# to_connection("fc1", "latent"),
|
# to_connection("fc1", "latent"),
|
||||||
# --------------------------- DECODER ---------------------------
|
# --------------------------- DECODER ---------------------------
|
||||||
@@ -39,19 +40,20 @@ arch = [
|
|||||||
"fc3",
|
"fc3",
|
||||||
n_filer="{{8×128×8}}",
|
n_filer="{{8×128×8}}",
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
offset="(2,0,0)",
|
offset="(2,-.5,0)",
|
||||||
to="(latent-east)",
|
to="(latent-east)",
|
||||||
height=H1,
|
height=H1,
|
||||||
depth=D512,
|
depth=D512,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption=f"FC",
|
caption=f"FC",
|
||||||
|
captionshift=20,
|
||||||
),
|
),
|
||||||
to_Conv(
|
to_Conv(
|
||||||
"unsqueeze",
|
"unsqueeze",
|
||||||
s_filer="{{128×8}}",
|
s_filer="{{128×8}}",
|
||||||
zlabeloffset=0.4,
|
zlabeloffset=0.4,
|
||||||
n_filer=32,
|
n_filer=32,
|
||||||
offset="(2,0,0)",
|
offset="(1.4,0,0)",
|
||||||
to="(fc3-east)",
|
to="(fc3-east)",
|
||||||
height=H8,
|
height=H8,
|
||||||
depth=D128,
|
depth=D128,
|
||||||
@@ -62,7 +64,7 @@ arch = [
|
|||||||
# Reshape to 4×8×512
|
# Reshape to 4×8×512
|
||||||
to_UnPool(
|
to_UnPool(
|
||||||
"up1",
|
"up1",
|
||||||
offset="(2,0,0)",
|
offset="(1.2,0,0)",
|
||||||
n_filer=32,
|
n_filer=32,
|
||||||
to="(unsqueeze-east)",
|
to="(unsqueeze-east)",
|
||||||
height=H16,
|
height=H16,
|
||||||
@@ -101,7 +103,8 @@ arch = [
|
|||||||
height=H16,
|
height=H16,
|
||||||
depth=D1024,
|
depth=D1024,
|
||||||
width=W32,
|
width=W32,
|
||||||
caption="",
|
caption="Deconv2",
|
||||||
|
captionshift=20,
|
||||||
),
|
),
|
||||||
to_Conv(
|
to_Conv(
|
||||||
"dwdeconv3",
|
"dwdeconv3",
|
||||||
@@ -112,7 +115,7 @@ arch = [
|
|||||||
height=H16,
|
height=H16,
|
||||||
depth=D1024,
|
depth=D1024,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption="Deconv2",
|
caption="",
|
||||||
),
|
),
|
||||||
to_Conv(
|
to_Conv(
|
||||||
"dwdeconv4",
|
"dwdeconv4",
|
||||||
@@ -134,7 +137,8 @@ arch = [
|
|||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=W16,
|
width=W16,
|
||||||
caption="",
|
caption="Deconv3",
|
||||||
|
captionshift=10,
|
||||||
),
|
),
|
||||||
to_Conv(
|
to_Conv(
|
||||||
"dwdeconv5",
|
"dwdeconv5",
|
||||||
@@ -145,7 +149,7 @@ arch = [
|
|||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption="Deconv3",
|
caption="",
|
||||||
),
|
),
|
||||||
to_Conv(
|
to_Conv(
|
||||||
"dwdeconv6",
|
"dwdeconv6",
|
||||||
@@ -164,7 +168,7 @@ arch = [
|
|||||||
s_filer="{{2048×32}}",
|
s_filer="{{2048×32}}",
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
n_filer=1,
|
n_filer=1,
|
||||||
offset="(2,0,0)",
|
offset="(1.5,0,0)",
|
||||||
to="(dwdeconv6-east)",
|
to="(dwdeconv6-east)",
|
||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
@@ -178,12 +182,13 @@ arch = [
|
|||||||
s_filer="{{2048×32}}",
|
s_filer="{{2048×32}}",
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
n_filer=1,
|
n_filer=1,
|
||||||
offset="(2,0,0)",
|
offset="(1.5,0,0)",
|
||||||
to="(outconv-east)",
|
to="(outconv-east)",
|
||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption="Output",
|
caption="Output",
|
||||||
|
captionshift=5,
|
||||||
),
|
),
|
||||||
# to_connection("deconv2", "out"),
|
# to_connection("deconv2", "out"),
|
||||||
to_end(),
|
to_end(),
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=latent,
|
name=latent,
|
||||||
caption=Latent Space,
|
caption=Latent Space,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{, }},
|
xlabel={{, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=latent dim,
|
zlabel=latent dim,
|
||||||
@@ -39,10 +40,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (latent-east)
|
\pic[shift={(2,-.5,0)}] at (latent-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=fc3,
|
name=fc3,
|
||||||
caption=FC,
|
caption=FC,
|
||||||
|
captionshift=20,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
zlabel={{8×128×8}},
|
zlabel={{8×128×8}},
|
||||||
@@ -55,10 +57,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (fc3-east)
|
\pic[shift={(1.4,0,0)}] at (fc3-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=unsqueeze,
|
name=unsqueeze,
|
||||||
caption=Unsqueeze,
|
caption=Unsqueeze,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{32, }},
|
xlabel={{32, }},
|
||||||
zlabeloffset=0.4,
|
zlabeloffset=0.4,
|
||||||
zlabel={{128×8}},
|
zlabel={{128×8}},
|
||||||
@@ -70,10 +73,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={ (2,0,0) }] at (unsqueeze-east)
|
\pic[shift={ (1.2,0,0) }] at (unsqueeze-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=up1,
|
name=up1,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
xlabel={{32, }},
|
xlabel={{32, }},
|
||||||
@@ -88,6 +92,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv1,
|
name=dwdeconv1,
|
||||||
caption=Deconv1,
|
caption=Deconv1,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=,
|
zlabel=,
|
||||||
@@ -103,6 +108,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv2,
|
name=dwdeconv2,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{32, }},
|
xlabel={{32, }},
|
||||||
zlabeloffset=0.4,
|
zlabeloffset=0.4,
|
||||||
zlabel={{256×16}},
|
zlabel={{256×16}},
|
||||||
@@ -117,7 +123,8 @@
|
|||||||
\pic[shift={ (2,0,0) }] at (dwdeconv2-east)
|
\pic[shift={ (2,0,0) }] at (dwdeconv2-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=up2,
|
name=up2,
|
||||||
caption=,
|
caption=Deconv2,
|
||||||
|
captionshift=20,
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
xlabel={{32, }},
|
xlabel={{32, }},
|
||||||
@@ -131,7 +138,8 @@
|
|||||||
\pic[shift={(0,0,0)}] at (up2-east)
|
\pic[shift={(0,0,0)}] at (up2-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv3,
|
name=dwdeconv3,
|
||||||
caption=Deconv2,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=,
|
zlabel=,
|
||||||
@@ -147,6 +155,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv4,
|
name=dwdeconv4,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{16, }},
|
xlabel={{16, }},
|
||||||
zlabeloffset=0.17,
|
zlabeloffset=0.17,
|
||||||
zlabel={{1024×16}},
|
zlabel={{1024×16}},
|
||||||
@@ -161,7 +170,8 @@
|
|||||||
\pic[shift={ (2,0,0) }] at (dwdeconv4-east)
|
\pic[shift={ (2,0,0) }] at (dwdeconv4-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=up3,
|
name=up3,
|
||||||
caption=,
|
caption=Deconv3,
|
||||||
|
captionshift=10,
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
xlabel={{16, }},
|
xlabel={{16, }},
|
||||||
@@ -175,7 +185,8 @@
|
|||||||
\pic[shift={(0,0,0)}] at (up3-east)
|
\pic[shift={(0,0,0)}] at (up3-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv5,
|
name=dwdeconv5,
|
||||||
caption=Deconv3,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=,
|
zlabel=,
|
||||||
@@ -191,6 +202,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwdeconv6,
|
name=dwdeconv6,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{8, }},
|
xlabel={{8, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -202,10 +214,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (dwdeconv6-east)
|
\pic[shift={(1.5,0,0)}] at (dwdeconv6-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=outconv,
|
name=outconv,
|
||||||
caption=Deconv4,
|
caption=Deconv4,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -217,10 +230,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (outconv-east)
|
\pic[shift={(1.5,0,0)}] at (outconv-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=out,
|
name=out,
|
||||||
caption=Output,
|
caption=Output,
|
||||||
|
captionshift=5,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
|
|||||||
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_ef_encoder.pdf
vendored
Normal file
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_ef_encoder.pdf
vendored
Normal file
Binary file not shown.
@@ -125,7 +125,7 @@ arch = [
|
|||||||
n_filer=8,
|
n_filer=8,
|
||||||
zlabeloffset=0.45,
|
zlabeloffset=0.45,
|
||||||
s_filer="{{128×8}}",
|
s_filer="{{128×8}}",
|
||||||
offset="(2,0,0)",
|
offset="(1,0,0)",
|
||||||
to="(pool3-east)",
|
to="(pool3-east)",
|
||||||
height=H8,
|
height=H8,
|
||||||
depth=D128,
|
depth=D128,
|
||||||
@@ -137,12 +137,13 @@ arch = [
|
|||||||
"fc1",
|
"fc1",
|
||||||
n_filer="{{8×128×8}}",
|
n_filer="{{8×128×8}}",
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
offset="(2,0,0)",
|
offset="(2,-.5,0)",
|
||||||
to="(squeeze-east)",
|
to="(squeeze-east)",
|
||||||
height=H1,
|
height=H1,
|
||||||
depth=D512,
|
depth=D512,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption=f"FC",
|
caption="FC",
|
||||||
|
captionshift=0,
|
||||||
),
|
),
|
||||||
# to_connection("pool2", "fc1"),
|
# to_connection("pool2", "fc1"),
|
||||||
# --------------------------- LATENT ---------------------------
|
# --------------------------- LATENT ---------------------------
|
||||||
@@ -150,7 +151,7 @@ arch = [
|
|||||||
"latent",
|
"latent",
|
||||||
n_filer="",
|
n_filer="",
|
||||||
s_filer="latent dim",
|
s_filer="latent dim",
|
||||||
offset="(2,0,0)",
|
offset="(1.3,0.5,0)",
|
||||||
to="(fc1-east)",
|
to="(fc1-east)",
|
||||||
height=H8 * 1.6,
|
height=H8 * 1.6,
|
||||||
depth=D1,
|
depth=D1,
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=input,
|
name=input,
|
||||||
caption=Input,
|
caption=Input,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.2,
|
zlabeloffset=0.2,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -43,6 +44,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwconv1,
|
name=dwconv1,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=,
|
zlabel=,
|
||||||
@@ -58,6 +60,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwconv2,
|
name=dwconv2,
|
||||||
caption=Conv1,
|
caption=Conv1,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{16, }},
|
xlabel={{16, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -76,6 +79,7 @@
|
|||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel={{512×32}},
|
zlabel={{512×32}},
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
height=26,
|
height=26,
|
||||||
@@ -89,6 +93,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwconv3,
|
name=dwconv3,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=,
|
zlabel=,
|
||||||
@@ -104,6 +109,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=dwconv4,
|
name=dwconv4,
|
||||||
caption=Conv2,
|
caption=Conv2,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{32, }},
|
xlabel={{32, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel={{512×32}},
|
zlabel={{512×32}},
|
||||||
@@ -122,6 +128,7 @@
|
|||||||
zlabeloffset=0.45,
|
zlabeloffset=0.45,
|
||||||
zlabel={{256×16}},
|
zlabel={{256×16}},
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
height=18,
|
height=18,
|
||||||
@@ -138,6 +145,7 @@
|
|||||||
zlabeloffset=0.45,
|
zlabeloffset=0.45,
|
||||||
zlabel={{128×8}},
|
zlabel={{128×8}},
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
height=12,
|
height=12,
|
||||||
@@ -147,10 +155,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (pool3-east)
|
\pic[shift={(1,0,0)}] at (pool3-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=squeeze,
|
name=squeeze,
|
||||||
caption=Squeeze,
|
caption=Squeeze,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{8, }},
|
xlabel={{8, }},
|
||||||
zlabeloffset=0.45,
|
zlabeloffset=0.45,
|
||||||
zlabel={{128×8}},
|
zlabel={{128×8}},
|
||||||
@@ -162,10 +171,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (squeeze-east)
|
\pic[shift={(2,-.5,0)}] at (squeeze-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=fc1,
|
name=fc1,
|
||||||
caption=FC,
|
caption=FC,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
zlabel={{8×128×8}},
|
zlabel={{8×128×8}},
|
||||||
@@ -178,10 +188,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (fc1-east)
|
\pic[shift={(1.3,0.5,0)}] at (fc1-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=latent,
|
name=latent,
|
||||||
caption=Latent Space,
|
caption=Latent Space,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{, }},
|
xlabel={{, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=latent dim,
|
zlabel=latent dim,
|
||||||
|
|||||||
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_lenet_decoder.pdf
vendored
Normal file
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_lenet_decoder.pdf
vendored
Normal file
Binary file not shown.
@@ -39,19 +39,20 @@ arch = [
|
|||||||
"fc3",
|
"fc3",
|
||||||
n_filer="{{4×512×8}}",
|
n_filer="{{4×512×8}}",
|
||||||
zlabeloffset=0.35,
|
zlabeloffset=0.35,
|
||||||
offset="(2,0,0)",
|
offset="(2,-.5,0)",
|
||||||
to="(latent-east)",
|
to="(latent-east)",
|
||||||
height=1.3,
|
height=1.3,
|
||||||
depth=D512,
|
depth=D512,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption=f"FC",
|
caption=f"FC",
|
||||||
|
captionshift=20,
|
||||||
),
|
),
|
||||||
# to_connection("latent", "fc3"),
|
# to_connection("latent", "fc3"),
|
||||||
# Reshape to 4×8×512
|
# Reshape to 4×8×512
|
||||||
to_UnPool(
|
to_UnPool(
|
||||||
"up1",
|
"up1",
|
||||||
n_filer=4,
|
n_filer=4,
|
||||||
offset="(2,0,0)",
|
offset="(2.5,0,0)",
|
||||||
to="(fc3-east)",
|
to="(fc3-east)",
|
||||||
height=H16,
|
height=H16,
|
||||||
depth=D1024,
|
depth=D1024,
|
||||||
@@ -82,7 +83,8 @@ arch = [
|
|||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=W8,
|
width=W8,
|
||||||
caption="",
|
caption="Deconv2",
|
||||||
|
captionshift=10,
|
||||||
),
|
),
|
||||||
# to_connection("deconv1", "up2"),
|
# to_connection("deconv1", "up2"),
|
||||||
# DeConv2 (5×5, same): 8->1, 32×2048
|
# DeConv2 (5×5, same): 8->1, 32×2048
|
||||||
@@ -96,7 +98,7 @@ arch = [
|
|||||||
height=H32,
|
height=H32,
|
||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption="Deconv2",
|
caption="",
|
||||||
),
|
),
|
||||||
# to_connection("up2", "deconv2"),
|
# to_connection("up2", "deconv2"),
|
||||||
# Output
|
# Output
|
||||||
@@ -111,6 +113,7 @@ arch = [
|
|||||||
depth=D2048,
|
depth=D2048,
|
||||||
width=1.0,
|
width=1.0,
|
||||||
caption="Output",
|
caption="Output",
|
||||||
|
captionshift=5,
|
||||||
),
|
),
|
||||||
# to_connection("deconv2", "out"),
|
# to_connection("deconv2", "out"),
|
||||||
to_end(),
|
to_end(),
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=latent,
|
name=latent,
|
||||||
caption=Latent Space,
|
caption=Latent Space,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{, }},
|
xlabel={{, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=latent dim,
|
zlabel=latent dim,
|
||||||
@@ -39,10 +40,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (latent-east)
|
\pic[shift={(2,-.5,0)}] at (latent-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=fc3,
|
name=fc3,
|
||||||
caption=FC,
|
caption=FC,
|
||||||
|
captionshift=20,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabeloffset=0.35,
|
zlabeloffset=0.35,
|
||||||
zlabel={{4×512×8}},
|
zlabel={{4×512×8}},
|
||||||
@@ -55,10 +57,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={ (2,0,0) }] at (fc3-east)
|
\pic[shift={ (2.5,0,0) }] at (fc3-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=up1,
|
name=up1,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
xlabel={{4, }},
|
xlabel={{4, }},
|
||||||
@@ -73,6 +76,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=deconv1,
|
name=deconv1,
|
||||||
caption=Deconv1,
|
caption=Deconv1,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{8, }},
|
xlabel={{8, }},
|
||||||
zlabeloffset=0.2,
|
zlabeloffset=0.2,
|
||||||
zlabel={{1024×16}},
|
zlabel={{1024×16}},
|
||||||
@@ -87,7 +91,8 @@
|
|||||||
\pic[shift={ (2,0,0) }] at (deconv1-east)
|
\pic[shift={ (2,0,0) }] at (deconv1-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=up2,
|
name=up2,
|
||||||
caption=,
|
caption=Deconv2,
|
||||||
|
captionshift=10,
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
xlabel={{8, }},
|
xlabel={{8, }},
|
||||||
@@ -101,7 +106,8 @@
|
|||||||
\pic[shift={(0,0,0)}] at (up2-east)
|
\pic[shift={(0,0,0)}] at (up2-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=deconv2,
|
name=deconv2,
|
||||||
caption=Deconv2,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -117,6 +123,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=out,
|
name=out,
|
||||||
caption=Output,
|
caption=Output,
|
||||||
|
captionshift=5,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
|
|||||||
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_lenet_encoder.pdf
vendored
Normal file
BIN
thesis/third_party/PlotNeuralNet/deepsad/arch_lenet_encoder.pdf
vendored
Normal file
Binary file not shown.
@@ -91,13 +91,14 @@ arch = [
|
|||||||
to_fc(
|
to_fc(
|
||||||
"fc1",
|
"fc1",
|
||||||
n_filer="{{4×512×8}}",
|
n_filer="{{4×512×8}}",
|
||||||
offset="(2,0,0)",
|
offset="(2,-.5,0)",
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
to="(pool2-east)",
|
to="(pool2-east)",
|
||||||
height=1.3,
|
height=1.3,
|
||||||
depth=D512,
|
depth=D512,
|
||||||
width=W1,
|
width=W1,
|
||||||
caption=f"FC",
|
caption=f"FC",
|
||||||
|
captionshift=20,
|
||||||
),
|
),
|
||||||
# to_connection("pool2", "fc1"),
|
# to_connection("pool2", "fc1"),
|
||||||
# --------------------------- LATENT ---------------------------
|
# --------------------------- LATENT ---------------------------
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=input,
|
name=input,
|
||||||
caption=Input,
|
caption=Input,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{1, }},
|
xlabel={{1, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -43,6 +44,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=conv1,
|
name=conv1,
|
||||||
caption=Conv1,
|
caption=Conv1,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{8, }},
|
xlabel={{8, }},
|
||||||
zlabeloffset=0.15,
|
zlabeloffset=0.15,
|
||||||
zlabel={{2048×32}},
|
zlabel={{2048×32}},
|
||||||
@@ -61,6 +63,7 @@
|
|||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel={{1024×16}},
|
zlabel={{1024×16}},
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
height=18,
|
height=18,
|
||||||
@@ -74,6 +77,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=conv2,
|
name=conv2,
|
||||||
caption=Conv2,
|
caption=Conv2,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{4, }},
|
xlabel={{4, }},
|
||||||
zlabeloffset=0.4,
|
zlabeloffset=0.4,
|
||||||
zlabel={{1024×16\hspace{2.5em}512×8}},
|
zlabel={{1024×16\hspace{2.5em}512×8}},
|
||||||
@@ -92,6 +96,7 @@
|
|||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel={{}},
|
zlabel={{}},
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
height=12,
|
height=12,
|
||||||
@@ -101,10 +106,11 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
\pic[shift={(2,0,0)}] at (pool2-east)
|
\pic[shift={(2,-.5,0)}] at (pool2-east)
|
||||||
{Box={
|
{Box={
|
||||||
name=fc1,
|
name=fc1,
|
||||||
caption=FC,
|
caption=FC,
|
||||||
|
captionshift=20,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabeloffset=0.5,
|
zlabeloffset=0.5,
|
||||||
zlabel={{4×512×8}},
|
zlabel={{4×512×8}},
|
||||||
@@ -121,6 +127,7 @@
|
|||||||
{Box={
|
{Box={
|
||||||
name=latent,
|
name=latent,
|
||||||
caption=Latent Space,
|
caption=Latent Space,
|
||||||
|
captionshift=0,
|
||||||
xlabel={{, }},
|
xlabel={{, }},
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
zlabel=latent dim,
|
zlabel=latent dim,
|
||||||
|
|||||||
10
thesis/third_party/PlotNeuralNet/layers/Box.sty
vendored
10
thesis/third_party/PlotNeuralNet/layers/Box.sty
vendored
@@ -57,8 +57,12 @@
|
|||||||
\path (b1) edge ["\ylabel",midway] (a1); %height label
|
\path (b1) edge ["\ylabel",midway] (a1); %height label
|
||||||
|
|
||||||
|
|
||||||
\tikzstyle{captionlabel}=[text width=15*\LastEastx/\scale,text centered]
|
% \tikzstyle{captionlabel}=[text width=15*\LastEastx/\scale,text centered,xshift=\captionshift pt]
|
||||||
\path (\LastEastx/2,-\y/2,+\z/2) + (0,-25pt) coordinate (cap)
|
% \path (\LastEastx/2,-\y/2,+\z/2) + (0,-25pt) coordinate (cap)
|
||||||
|
% edge ["\textcolor{black}{ \bf \caption}"',captionlabel](cap) ; %Block caption/pic object label
|
||||||
|
|
||||||
|
% Place caption: shift the coordinate by captionshift (NEW)
|
||||||
|
\path (\LastEastx/2,-\y/2,+\z/2) + (\captionshift pt,-25pt) coordinate (cap)
|
||||||
edge ["\textcolor{black}{ \bf \caption}"',captionlabel](cap) ; %Block caption/pic object label
|
edge ["\textcolor{black}{ \bf \caption}"',captionlabel](cap) ; %Block caption/pic object label
|
||||||
|
|
||||||
%Define nodes to be used outside on the pic object
|
%Define nodes to be used outside on the pic object
|
||||||
@@ -103,6 +107,7 @@ ylabel/.store in=\ylabel,
|
|||||||
zlabel/.store in=\zlabel,
|
zlabel/.store in=\zlabel,
|
||||||
zlabeloffset/.store in=\zlabeloffset,
|
zlabeloffset/.store in=\zlabeloffset,
|
||||||
caption/.store in=\caption,
|
caption/.store in=\caption,
|
||||||
|
captionshift/.store in=\captionshift,
|
||||||
name/.store in=\name,
|
name/.store in=\name,
|
||||||
fill/.store in=\fill,
|
fill/.store in=\fill,
|
||||||
opacity/.store in=\opacity,
|
opacity/.store in=\opacity,
|
||||||
@@ -117,5 +122,6 @@ ylabel=,
|
|||||||
zlabel=,
|
zlabel=,
|
||||||
zlabeloffset=0.3,
|
zlabeloffset=0.3,
|
||||||
caption=,
|
caption=,
|
||||||
|
captionshift=0,
|
||||||
name=,
|
name=,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,6 +75,7 @@ def to_Conv(
|
|||||||
height=40,
|
height=40,
|
||||||
depth=40,
|
depth=40,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
r"""
|
r"""
|
||||||
@@ -90,6 +91,9 @@ def to_Conv(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ r""",
|
+ r""",
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ """,
|
||||||
xlabel={{"""
|
xlabel={{"""
|
||||||
+ str(n_filer)
|
+ str(n_filer)
|
||||||
+ """, }},
|
+ """, }},
|
||||||
@@ -182,6 +186,7 @@ def to_Pool(
|
|||||||
depth=32,
|
depth=32,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
r"""
|
r"""
|
||||||
@@ -206,6 +211,9 @@ def to_Pool(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ r""",
|
+ r""",
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ """,
|
||||||
fill=\PoolColor,
|
fill=\PoolColor,
|
||||||
opacity="""
|
opacity="""
|
||||||
+ str(opacity)
|
+ str(opacity)
|
||||||
@@ -236,6 +244,7 @@ def to_UnPool(
|
|||||||
depth=32,
|
depth=32,
|
||||||
opacity=0.5,
|
opacity=0.5,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
r"""
|
r"""
|
||||||
@@ -251,6 +260,9 @@ def to_UnPool(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ r""",
|
+ r""",
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ r""",
|
||||||
fill=\UnpoolColor,
|
fill=\UnpoolColor,
|
||||||
opacity="""
|
opacity="""
|
||||||
+ str(opacity)
|
+ str(opacity)
|
||||||
@@ -335,6 +347,7 @@ def to_ConvSoftMax(
|
|||||||
height=40,
|
height=40,
|
||||||
depth=40,
|
depth=40,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
r"""
|
r"""
|
||||||
@@ -350,6 +363,9 @@ def to_ConvSoftMax(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ """,
|
+ """,
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ """,
|
||||||
zlabel="""
|
zlabel="""
|
||||||
+ str(s_filer)
|
+ str(s_filer)
|
||||||
+ """,
|
+ """,
|
||||||
@@ -380,6 +396,7 @@ def to_SoftMax(
|
|||||||
depth=25,
|
depth=25,
|
||||||
opacity=0.8,
|
opacity=0.8,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
z_label_offset=0,
|
z_label_offset=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
@@ -396,6 +413,9 @@ def to_SoftMax(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ """,
|
+ """,
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ """,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabel="""
|
zlabel="""
|
||||||
+ str(s_filer)
|
+ str(s_filer)
|
||||||
@@ -455,6 +475,7 @@ def to_fc(
|
|||||||
height=2,
|
height=2,
|
||||||
depth=10,
|
depth=10,
|
||||||
caption=" ",
|
caption=" ",
|
||||||
|
captionshift=0,
|
||||||
# titlepos=0,
|
# titlepos=0,
|
||||||
):
|
):
|
||||||
return (
|
return (
|
||||||
@@ -471,6 +492,9 @@ def to_fc(
|
|||||||
caption="""
|
caption="""
|
||||||
+ caption
|
+ caption
|
||||||
+ """,
|
+ """,
|
||||||
|
captionshift="""
|
||||||
|
+ str(captionshift)
|
||||||
|
+ """,
|
||||||
xlabel={{" ","dummy"}},
|
xlabel={{" ","dummy"}},
|
||||||
zlabeloffset="""
|
zlabeloffset="""
|
||||||
+ str(zlabeloffset)
|
+ str(zlabeloffset)
|
||||||
|
|||||||
Reference in New Issue
Block a user