Added all the files for lulu.com + A5 booklet
[littlebook.git] / lb.tex
1
2 \usepackage{lipsum} 
3
4 \hypersetup{
5   pdfauthor={XXXX},
6   pdftitle={XXXX},
7   pdfsubject={XXXX},
8   pdfkeywords={XXXX},
9   pdfproducer={XXXX},
10   pdfcreator={XXXX},
11 }
12
13 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
14
15 \begin{document}
16
17
18 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
19 % Cover for the phone version
20 \ifdefined\withcover
21
22 \thispagestyle{empty}
23
24 \begin{center}
25
26 \vspace*{\stretch{1}}
27
28 {\huge The Little Book\\[0.75ex] of\\[1.75ex] Things}
29
30 \vspace*{4ex}
31
32 {\large Bob Jones}
33
34 \vspace*{\stretch{3}}
35
36 \end{center}
37
38 \newpage
39
40 \fi
41
42 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
43 % First page for the pocket book version
44 \ifdefined\forprint
45
46 \cleardoublepage
47
48 \thispagestyle{empty}
49
50 \begin{center}
51
52 \vspace*{4ex}
53
54 {The Little Book of Things}
55
56 \vspace*{\stretch{1}}
57
58 \end{center}
59
60 \newpage
61 \fi
62
63 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
64
65 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
66
67 \vspace*{\stretch{1.25}}
68
69 The author blah blah blah
70
71 \vspace*{\stretch{1}}
72
73 \begin{flushright}
74 \footnotesize beta-\dotdate\today
75 \end{flushright}
76
77 \vspace*{-3ex}
78
79 \newpage
80
81 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
82 % Table of content
83 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
84
85 {
86 \everymath{\color{black}}
87 \tableofcontents* % Prints the table of contents
88 %\addcontentsline{toc}{chapter}{Contents}
89 }
90
91 \clearpage
92
93 \listoffigures*
94 \addcontentsline{toc}{chapter}{List of figures}
95
96 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
97
98 \chapter*{Foreword}
99 \addcontentsline{toc}{chapter}{Foreword}
100
101 \keyterm[lorem]{Lorem}
102
103 \lipsum[1-3]
104
105 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
106
107 \part{Foundations}
108
109
110 %% This first part provides a minimal background about machine
111 %% learning, issues and techniques for efficient computation, and the
112 %% strategies to train a parametric model.
113
114 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
115 \chapter{Lorem}
116
117 \cite{arxiv-1907.07174}
118
119 \lipsum[1-3]
120
121 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
122 \chapter{Ipsum}
123
124 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
125
126 \begin{figure}
127   \center
128   \begin{tikzpicture}[deepnet]
129     \path
130     node[var] (X) {$X$}
131     coordinate[next=4,layer] (encoder start)
132     node[next=4,layer,param] (encoder embed) {$\embedding$}
133     node[next,layer small] (encoder sum) {$+$}
134     node[next=4,layer large,param] (encoder sa) {$\selfattention$}
135     coordinate[next=4,layer] (encoder end)
136     ;
137
138     \node[var,left=10pt of encoder sum] (encoder pe) {$\positionalencoding$};
139
140     \path
141     node[var,above=8mm of encoder sa] (Z) {$Z$}
142     coordinate[next=4,layer] (decoder start)
143     node[next=4,layer,param] (decoder embed) {$\embedding$}
144     node[next,layer small] (decoder sum) {$+$}
145     node[next=4,layer large,param,text height=3.5ex,every text node part/.style={align=center}] (decoder sa) {$\operatorname{causal}$\\[-1pt]$\selfattention$}
146     node[next=4,param,layer large,inputs={$\hspace*{3pt}Q\hspace*{38pt}KV$}] (decoder ca) {$\crossattention$}
147     node[next=4,layer,param] (decoder readout) {$\fullyconnected$}
148     coordinate[next=4,layer] (end)
149     node[next=4,var] (Y) {$Y$}
150     ;
151
152     \node[var,left=10pt of decoder sum] (decoder pe) {$\positionalencoding$};
153
154     \begin{scope}[on background layer]
155       \node[replicated=N,fit=(encoder sa)] {};
156       \node[replicated=N,fit=(decoder sa) (decoder ca)] {};
157
158       \draw[halo]
159       (X)--(encoder start)--(encoder embed)--(encoder sum)--(encoder sa)
160       ;
161
162       \draw[halo]
163       (Z)--(decoder start)--(decoder embed)--(decoder sum)--(decoder sa)
164       ;
165
166       \draw[halo] (encoder pe)--(encoder sum);
167       \draw[halo,->] (decoder ca) -- (decoder readout) -- (Y);
168
169       \draw[halo] (decoder pe)--(decoder sum);
170
171       \coordinate (decoder ca q) at ($(decoder ca.south west)!0.5!(decoder ca.south)$);
172       \coordinate (decoder ca kv) at ($(decoder ca.south east)!0.5!(decoder ca.south)$);
173       \coordinate (decoder ca kv d) at ($(decoder ca kv)!0.5!(decoder ca kv|-decoder sa.north)$);
174
175       \draw[halo] (decoder ca q)--(decoder ca q|-decoder sa.north);
176       %%       \draw[halo] (decoder ca kv)|-(encoder end)--(encoder sa.north);
177       \draw[halo] (decoder ca kv)--(decoder ca kv d)--++(3.25\layerthickness,0)|-(encoder end)--(encoder sa.north);
178     \end{scope}
179
180     \begin{pgfinterruptboundingbox}
181
182       \node[fit=(encoder embed) (encoder pe) (encoder sa),xshift=-5pt] (encoder) {};
183
184       \draw[curly brace]
185       %
186       (encoder.south west) -- (encoder.north west)
187       %
188       node[midway,left,every text node part/.style={align=center},xshift=-0.5em,yshift=2pt] {\likecaption Encoder};
189
190       \node[fit=(decoder embed) (decoder pe) (decoder readout),xshift=-5pt] (decoder) {};
191
192       \draw[curly brace]
193       %
194       (decoder.south west) -- (decoder.north west)
195       %
196       node[midway,left,every text node part/.style={align=center},xshift=-0.5em,yshift=2pt] {\likecaption Decoder};
197
198       \setlength{\diminfoshift}{85pt}
199       \diminfo{X}{X}{$T$}
200       \diminfo{encoder embed}{X}{$T \times D$}
201       \diminfo{encoder sa}{X}{$T \times D$}
202       \diminfo{Z}{X}{$S$}
203       \diminfo{decoder embed}{X}{$S \times D$}
204       \diminfo{decoder ca}{X}{$S \times D$}
205       \diminfo{decoder readout}{X}{$S \times V$}
206     \end{pgfinterruptboundingbox}
207
208   \end{tikzpicture}
209
210   \caption[Transformer]{Original encoder-decoder
211     \keyterm[Transformer]{Transformer model} for sequence-to-sequence
212     translation \citep{arxiv-1706.03762}.}\label{fig:transformer}
213 \end{figure}
214
215 \lipsum[1-2]
216
217 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
218
219 \bibliography{test}
220
221 %% If there is an index, it should follow the bibliography (see the
222 %% Manual, 14.62). Bibliography entries are listed in one alphabetical
223 %% sequence arranged by the surname of the first author or by title if
224 %% there is no author.25 Nov 2022
225 %%
226 %% Bibliography - Chicago Citation Style, 17th Edition - Library
227
228 \printindex
229
230 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
231
232 \newpage
233
234 \vspace*{\stretch{1}}
235
236 \ifdefined\draft
237 \begin{center}
238   {\color{red} (draft, do not circulate)}
239 \end{center}
240 \else
241 This book is licensed under the
242 \href{https://creativecommons.org/licenses/by-nc-sa/4.0/}{Creative
243   Commons BY-NC-SA 4.0 International License.}
244 \fi
245
246 \vspace*{\stretch{1}}
247
248 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
249
250 \checknbdrafts
251
252 \end{document}