diff --git a/.github/workflows/latex-builder.yml b/.github/workflows/latex-builder.yml index 85d14bbd..bb7bc59e 100644 --- a/.github/workflows/latex-builder.yml +++ b/.github/workflows/latex-builder.yml @@ -1,3 +1,4 @@ + name: Latex Builder on: [push] @@ -13,8 +14,9 @@ jobs: - name: Install LaTex utilities run: sudo apt update && sudo apt-get install -y texlive-full - name: Get version from file - run: echo "VERSION=version/$(cat version)" >> $GITHUB_ENV - - name: Attempting to build PDFs + run: echo "::set-output name=version::$(cat version)" + id: version + - name: Build PDFs run: make release-it: permissions: @@ -25,9 +27,14 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + - name: Install LaTex utilities + run: sudo apt update && sudo apt-get install -y texlive-full - name: Get version from file id: get_version - run: echo "VERSION=$(cat version)" >> "$GITHUB_OUTPUT" + run: echo "VERSION=version/$(cat version)" >> $GITHUB_ENV + - name: Name release from version + id: get_release + run: echo "RELEASE=release_$(cat version)" >> $GITHUB_ENV - name: Build PDFs run: make - name: Upload PDFs archives @@ -52,4 +59,4 @@ jobs: name: ${{env.RELEASE}} tag_name: ${{env.VERSION}} make_latest: true - body_path: CHANGELOG.md \ No newline at end of file + body_path: CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 79e6e163..be8b7b36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,5 @@ -# 5.1.0 +# 5.1.1 -- updated logo, acknowledgements, and py_proj.tex -- README -- updated instructions -- refacto : one file per exercise -- Added satisfaction forms within PDFs -- indentation and overflows fixs -- corrected spelling mistakes -- Updated Github actions \ No newline at end of file +- Displaced recurring files (acknowledgements and instructions) to a new `/resources/42ai_bootcamps/` folder. +- Added sat forms within the conclusion of each day. +- Updated `instructions` to add a reference to Black package, and a cautionary word about using LLMs. diff --git a/build/module05.pdf b/build/module05.pdf index af9188df..ddb84f2f 100644 Binary files a/build/module05.pdf and b/build/module05.pdf differ diff --git a/build/module06.pdf b/build/module06.pdf index be3e6810..d22cdf42 100644 Binary files a/build/module06.pdf and b/build/module06.pdf differ diff --git a/build/module07.pdf b/build/module07.pdf index c29650c7..9f6c1db1 100644 Binary files a/build/module07.pdf and b/build/module07.pdf differ diff --git a/build/module08.pdf b/build/module08.pdf index 54850cfc..7845a266 100644 Binary files a/build/module08.pdf and b/build/module08.pdf differ diff --git a/build/module09.pdf b/build/module09.pdf index 5dda2fb7..57a5ce69 100644 Binary files a/build/module09.pdf and b/build/module09.pdf differ diff --git a/module05/Makefile b/module05/Makefile index 6b428e36..d13143ab 100644 --- a/module05/Makefile +++ b/module05/Makefile @@ -6,8 +6,9 @@ DEPS = exercises/en.ex02_interlude.tex \ exercises/en.ex03_interlude.tex \ exercises/en.ex06_interlude.tex \ exercises/en.ex08_interlude.tex \ - en.instructions.tex \ - en.acknowledgements.tex \ + ../resources/42ai_bootcamps/en.instructions.tex \ + ../resources/42ai_bootcamps/en.acknowledgements.tex \ + ../resources/latex/redefinition-commands.tex \ useful_resources.tex # Relative path to the LaTeX documentclass setup files diff --git a/module05/assets/42ai_logo.pdf b/module05/assets/42ai_logo.pdf index 1f5d3abb..884846f0 100644 Binary files a/module05/assets/42ai_logo.pdf and b/module05/assets/42ai_logo.pdf differ diff --git a/module05/en.instructions.tex b/module05/en.instructions.tex deleted file mode 100644 index ee9ad4e2..00000000 --- a/module05/en.instructions.tex +++ /dev/null @@ -1,43 +0,0 @@ -%******************************************************************************% -% % -% Common Instructions % -% for Python Projects % -% % -%******************************************************************************% - -\chapter{Common Instructions} -\begin{itemize} - \item The version of Python recommended to use is 3.7, you can - check the version of Python with the following command: \texttt{python -V} - - \item The norm: during this bootcamp, it is recommended to follow the - \href{https://www.python.org/dev/peps/pep-0008/}{PEP 8 standards}, though it is not mandatory. - You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} which - is a tool to check your Python code. - \item The function \texttt{eval} is never allowed. - \item The exercises are ordered from the easiest to the hardest. - \item Your exercises are going to be evaluated by someone else, - so make sure that your variable names and function names are appropriate and civil. - \item Your manual is the internet. - - \item If you are a student from 42, you can access our Discord server - on \href{https://discord.com/channels/887850395697807362/887850396314398720}{42 student's associations portal} and ask your - questions to your peers in the dedicated Bootcamp channel. - - \item You can learn more about 42 Artificial Intelligence by visiting \href{https://42-ai.github.io}{our website}. - - \item If you find any issue or mistake in the subject please create an issue on \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. - - \item We encourage you to create test programs for your - project even though this work \textbf{won't have to be - submitted and won't be graded}. It will give you a chance - to easily test your work and your peers’ work. You will find - those tests especially useful during your defence. Indeed, - during defence, you are free to use your tests and/or the - tests of the peer you are evaluating. - - \item We are constantly looking to improve these bootcamps, and your feedbacks are essential for us to do so !\\ - You can tell us more about your experience with this module by filling \href{https://forms.gle/K82aCgp4iLGJjbYD6}{this form}.\\ - Thank you in advance and good luck for this bootcamp ! - -\end{itemize} \ No newline at end of file diff --git a/module05/en.subject.pdf b/module05/en.subject.pdf deleted file mode 100644 index af9188df..00000000 Binary files a/module05/en.subject.pdf and /dev/null differ diff --git a/module05/en.subject.tex b/module05/en.subject.tex index 5d1afa4c..4235d9f1 100644 --- a/module05/en.subject.tex +++ b/module05/en.subject.tex @@ -19,102 +19,11 @@ %****************************************************************% % Re/definition of commands % %****************************************************************% - -\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} - -%% Redefine \maketitle -\makeatletter -\def \maketitle { - \begin{titlepage} - \begin{center} - %\begin{figure}[t] - %\includegraphics[height=8cm]{\@ailogo} - \includegraphics[height=8cm]{assets/42ai_logo.pdf} - %\end{figure} - \vskip 5em - {\huge \@title} - \vskip 2em - {\LARGE \@subtitle} - \vskip 4em - \end{center} - %\begin{center} - %\@author - %\end{center} - %\vskip 5em - \vfill - \begin{center} - \emph{\summarytitle : \@summary} - \end{center} - \vspace{2cm} - %\vskip 5em - %\doclicenseThis - \end{titlepage} -} -\makeatother - -\makeatletter -\def \makeheaderfilesforbidden -{ - \noindent - \begin{tabularx}{\textwidth}{|X X X X|} - \hline - \multicolumn{1}{|>{\raggedright}m{1cm}|} - {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & - \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & - \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} -%% {\scriptsize points : \@exscore} \\ \hline - {} \\ \hline - - \multicolumn{4}{|>{\centering}m{15cm}|} - {\small \@extitle} \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Turn-in directory : \ttfamily - $ex\@exnumber/$ } - \\ \hline - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Files to turn in : \ttfamily \@exfiles } - \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Forbidden functions : \ttfamily \@exforbidden } - \\ \hline - -%% \multicolumn{4}{|>{\raggedright}m{15cm}|} -%% {\small Remarks : \ttfamily \@exnotes } -%% \\ \hline -\end{tabularx} -%% \exnotes -\exrules -\exmake -\exauthorize{None} -\exforbidden{None} -\extitle{} -\exnumber{} -} -\makeatother - -%% Syntactic highlights -\makeatletter -\newenvironment{pythoncode}{% - \VerbatimEnvironment - \usemintedstyle{emacs} - \minted@resetoptions - \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} - \begin{figure}[ht!] - \centering - \begin{minipage}{16cm} - \begin{VerbatimOut}{\jobname.pyg}} -{%[ - \end{VerbatimOut} - \minted@pygmentize{c} - \DeleteFile{\jobname.pyg} - \end{minipage} -\end{figure}} -\makeatother - +\input{../resources/latex/redefinition-commands.tex} +%****************************************************************% +% END Re/definition of commands % +%****************************************************************% \usemintedstyle{native} - \begin{document} % =============================================================================% @@ -135,7 +44,7 @@ \maketitle \input{useful_resources.tex} -\input{en.instructions.tex} +\input{../resources/42ai_bootcamps/en.instructions.tex} \newpage \tableofcontents \startexercices @@ -229,12 +138,18 @@ \chapter{Conclusion - What you have learnt} \item Do you understand why matrix multiplications are not commutative? \end{enumerate} -These questions are an opportunity for discussion among your peers, or to simply reflect on your own acquired understanding during this day ! +These questions are an opportunity for discussion among your peers, or to simply reflect on your own acquired understanding during this day !\\ +\newline +\info{ + Your feedbacks are essential for us to improve these bootcamps !\newline + Please take a few minutes to tell us about your experience in this module by filling + \href{https://forms.gle/RnXgzgZZJh7V8h9D8}{this form}. Thank you in advance ! +} % ============================================== % \newpage % ================================= % -\input{en.acknowledgements.tex} +\input{../resources/42ai_bootcamps/en.acknowledgements.tex} \end{document} diff --git a/module06/Makefile b/module06/Makefile index bbd3ed67..8fd34659 100644 --- a/module06/Makefile +++ b/module06/Makefile @@ -6,7 +6,9 @@ DEPS = exercises/en.ex00_interlude.tex \ exercises/en.ex01_interlude.tex \ exercises/en.ex02_interlude.tex \ exercises/en.ex05_interlude.tex \ - en.instructions.tex \ + ../resources/42ai_bootcamps/en.instructions.tex \ + ../resources/42ai_bootcamps/en.acknowledgements.tex \ + ../resources/latex/redefinition-commands.tex \ en.subject.tex \ useful_resources.tex diff --git a/module06/assets/42ai_logo.pdf b/module06/assets/42ai_logo.pdf index 1f5d3abb..884846f0 100644 Binary files a/module06/assets/42ai_logo.pdf and b/module06/assets/42ai_logo.pdf differ diff --git a/module06/en.acknowledgements.tex b/module06/en.acknowledgements.tex deleted file mode 100644 index 5e935bbb..00000000 --- a/module06/en.acknowledgements.tex +++ /dev/null @@ -1,35 +0,0 @@ -\section*{Contact} -% --------------------------------- % -You can contact 42AI by email: \href{mailto:contact@42ai.fr}{contact@42ai.fr}\\ -\newline -Thank you for attending 42AI's Machine Learning Bootcamp module01 ! - -% ================================= % -\section*{Acknowledgements} -% --------------------------------- % -The Python \& ML bootcamps are the result of a collective effort. We would like to thank:\\ -\begin{itemize} - \item Maxime Choulika (cmaxime), - \item Pierre Peigné (ppeigne), - \item Matthieu David (mdavid), - \item Quentin Feuillade--Montixi (qfeuilla, quentin@42ai.fr) - \item Mathieu Perez (maperez, mathieu.perez@42ai.fr) -\end{itemize} -who supervised the creation and enhancements of the present transcription.\\ -\begin{itemize} - \item Louis Develle (ldevelle, louis@42ai.fr) - \item Owen Roberts (oroberts) - \item Augustin Lopez (aulopez) - \item Luc Lenotre (llenotre) - \item Amric Trudel (amric@42ai.fr) - \item Benjamin Carlier (bcarlier@student.42.fr) - \item Pablo Clement (pclement@student.42.fr) - \item Amir Mahla (amahla, amahla@42ai.fr) -\end{itemize} -for your investment in the creation and development of these modules.\\ -\begin{itemize} - \item All prior participants who took a moment to provide their feedbacks, and help us improve these bootcamps ! - \end{itemize} - -\vfill -\doclicenseThis diff --git a/module06/en.instructions.tex b/module06/en.instructions.tex deleted file mode 100644 index 1fca1290..00000000 --- a/module06/en.instructions.tex +++ /dev/null @@ -1,43 +0,0 @@ -%******************************************************************************% -% % -% Common Instructions % -% for Python Projects % -% % -%******************************************************************************% - -\chapter{Common Instructions} -\begin{itemize} - \item The version of Python recommended to use is 3.7, you can - check the version of Python with the following command: \texttt{python -V} - - \item The norm: during this bootcamp, it is recommended to follow the - \href{https://www.python.org/dev/peps/pep-0008/}{PEP 8 standards}, though it is not mandatory. - You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} which - is a tool to check your Python code. - \item The function \texttt{eval} is never allowed. - \item The exercises are ordered from the easiest to the hardest. - \item Your exercises are going to be evaluated by someone else, - so make sure that your variable names and function names are appropriate and civil. - \item Your manual is the internet. - - \item If you are a student from 42, you can access our Discord server - on \href{https://discord.com/channels/887850395697807362/887850396314398720}{42 student's associations portal} and ask your - questions to your peers in the dedicated Bootcamp channel. - - \item You can learn more about 42 Artificial Intelligence by visiting \href{https://42-ai.github.io}{our website}. - - \item If you find any issue or mistake in the subject please create an issue on \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. - - \item We encourage you to create test programs for your - project even though this work \textbf{won't have to be - submitted and won't be graded}. It will give you a chance - to easily test your work and your peers’ work. You will find - those tests especially useful during your defence. Indeed, - during defence, you are free to use your tests and/or the - tests of the peer you are evaluating. - - \item We are constantly looking to improve these bootcamps, and your feedbacks are essential for us to do so !\\ - You can tell us more about your experience with this module by filling \href{https://forms.gle/HDiEpw3GY4xMmonHA}{this form}.\\ - Thank you in advance and good luck for this bootcamp ! - -\end{itemize} \ No newline at end of file diff --git a/module06/en.subject.pdf b/module06/en.subject.pdf deleted file mode 100644 index be3e6810..00000000 Binary files a/module06/en.subject.pdf and /dev/null differ diff --git a/module06/en.subject.tex b/module06/en.subject.tex index c9b39eb5..fe9d5334 100644 --- a/module06/en.subject.tex +++ b/module06/en.subject.tex @@ -18,100 +18,10 @@ %****************************************************************% % Re/definition of commands % %****************************************************************% - -\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} - -%% Redefine \maketitle -\makeatletter -\def \maketitle { - \begin{titlepage} - \begin{center} - %\begin{figure}[t] - %\includegraphics[height=8cm]{\@ailogo} - \includegraphics[height=8cm]{assets/42ai_logo.pdf} - %\end{figure} - \vskip 5em - {\huge \@title} - \vskip 2em - {\LARGE \@subtitle} - \vskip 4em - \end{center} - %\begin{center} - %\@author - %\end{center} - %\vskip 5em - \vfill - \begin{center} - \emph{\summarytitle : \@summary} - \end{center} - \vspace{2cm} - %\vskip 5em - %\doclicenseThis - \end{titlepage} -} -\makeatother - -\makeatletter -\def \makeheaderfilesforbidden -{ - \noindent - \begin{tabularx}{\textwidth}{|X X X X|} - \hline - \multicolumn{1}{|>{\raggedright}m{1cm}|} - {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & - \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & - \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} -%% {\scriptsize points : \@exscore} \\ \hline - {} \\ \hline - - \multicolumn{4}{|>{\centering}m{15cm}|} - {\small \@extitle} \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Turn-in directory : \ttfamily - $ex\@exnumber/$ } - \\ \hline - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Files to turn in : \ttfamily \@exfiles } - \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Forbidden functions : \ttfamily \@exforbidden } - \\ \hline - -%% \multicolumn{4}{|>{\raggedright}m{15cm}|} -%% {\small Remarks : \ttfamily \@exnotes } -%% \\ \hline -\end{tabularx} -%% \exnotes -\exrules -\exmake -\exauthorize{None} -\exforbidden{None} -\extitle{} -\exnumber{} -} -\makeatother - -%% Syntactic highlights -\makeatletter -\newenvironment{pythoncode}{% - \VerbatimEnvironment - \usemintedstyle{emacs} - \minted@resetoptions - \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} - \begin{figure}[ht!] - \centering - \begin{minipage}{16cm} - \begin{VerbatimOut}{\jobname.pyg}} -{%[ - \end{VerbatimOut} - \minted@pygmentize{c} - \DeleteFile{\jobname.pyg} - \end{minipage} -\end{figure}} -\makeatother - +\input{../resources/latex/redefinition-commands.tex} +%****************************************************************% +% END Re/definition of commands % +%****************************************************************% \usemintedstyle{native} \begin{document} @@ -133,7 +43,7 @@ \maketitle \input{useful_resources.tex} -\input{en.instructions.tex} +\input{../resources/42ai_bootcamps/en.instructions.tex} \newpage \tableofcontents \startexercices @@ -206,10 +116,15 @@ \chapter{Conclusion - What you have learnt} \item What happens if you choose a very small learning rate, but still a sufficient number of cycles? \item Can you explain MSE and what it measures? \end{enumerate} - +\info{ + Your feedbacks are essential for us to improve these bootcamps !\newline + Please take a few minutes to tell us about your experience in this module by filling + \href{https://docs.google.com/forms/d/e/1FAIpQLSc1fQZrq32B3VQvzJwYbjGnMuQMOVBYbVBom5_fDonEgyjXPg/viewform?usp=sharing}{this form}. + Thank you in advance ! +} % ========================= end Closing Chapter % % ============================================== % \newpage -\input{en.acknowledgements.tex} +\input{../resources/42ai_bootcamps/en.acknowledgements.tex} \end{document} diff --git a/module07/Makefile b/module07/Makefile index df1f878b..f272f061 100644 --- a/module07/Makefile +++ b/module07/Makefile @@ -10,8 +10,9 @@ DEPS = exercises/en.ex00_interlude.tex \ exercises/en.ex07_interlude.tex \ exercises/en.ex08_interlude.tex \ exercises/en.ex09_interlude.tex \ - en.instructions.tex \ - en.acknowledgements.tex \ + ../resources/latex/redefinition-commands.tex \ + ../resources/42ai_bootcamps/en.instructions.tex \ + ../resources/42ai_bootcamps/en.acknowledgements.tex \ useful_resources.tex # Relative path to the LaTeX documentclass setup files diff --git a/module07/assets/42ai_logo.pdf b/module07/assets/42ai_logo.pdf index 1f5d3abb..884846f0 100644 Binary files a/module07/assets/42ai_logo.pdf and b/module07/assets/42ai_logo.pdf differ diff --git a/module07/en.acknowledgements.tex b/module07/en.acknowledgements.tex deleted file mode 100644 index 78d08083..00000000 --- a/module07/en.acknowledgements.tex +++ /dev/null @@ -1,37 +0,0 @@ -\section*{Contact} -% --------------------------------- % -You can contact 42AI by email: \href{mailto:contact@42ai.fr}{contact@42ai.fr}\\ -\newline -Thank you for attending 42AI's Machine Learning Bootcamp module02 ! - -% ================================= % -\section*{Acknowledgements} -% --------------------------------- % -The Python \& ML bootcamps are the result of a collective effort. We would like to thank: -\begin{itemize} - \item Maxime Choulika (cmaxime), - \item Pierre Peigné (ppeigne), - \item Matthieu David (mdavid), - \item Quentin Feuillade--Montixi (qfeuilla, quentin@42ai.fr) - \item Mathieu Perez (maperez, mathieu.perez@42ai.fr) -\end{itemize} -who supervised the creation and enhancements and the present transcription. - -\begin{itemize} - \item Louis Develle (ldevelle, louis@42ai.fr) - \item Owen Roberts (oroberts) - \item Augustin Lopez (aulopez) - \item Luc Lenotre (llenotre) - \item Amric Trudel (amric@42ai.fr) - \item Benjamin Carlier (bcarlier@student.42.fr) - \item Pablo Clement (pclement@student.42.fr) - \item Amir Mahla (amahla, amahla@42ai.fr) -\end{itemize} -for your investment for the creation and development of these modules. - -\begin{itemize} - \item All prior participants who took a moment to provide their feedbacks, and help us improve these bootcamps ! - \end{itemize} - -\vfill -\doclicenseThis diff --git a/module07/en.instructions.tex b/module07/en.instructions.tex deleted file mode 100644 index a8a66be9..00000000 --- a/module07/en.instructions.tex +++ /dev/null @@ -1,43 +0,0 @@ -%******************************************************************************% -% % -% Common Instructions % -% for Python Projects % -% % -%******************************************************************************% - -\chapter{Common Instructions} -\begin{itemize} - \item The version of Python recommended to use is 3.7, you can - check the version of Python with the following command: \texttt{python -V} - - \item The norm: during this bootcamp, it is recommended to follow the - \href{https://www.python.org/dev/peps/pep-0008/}{PEP 8 standards}, though it is not mandatory. - You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} which - is a tool to check your Python code. - \item The function \texttt{eval} is never allowed. - \item The exercises are ordered from the easiest to the hardest. - \item Your exercises are going to be evaluated by someone else, - so make sure that your variable names and function names are appropriate and civil. - \item Your manual is the internet. - - \item If you are a student from 42, you can access our Discord server - on \href{https://discord.com/channels/887850395697807362/887850396314398720}{42 student's associations portal} and ask your - questions to your peers in the dedicated Bootcamp channel. - - \item You can learn more about 42 Artificial Intelligence by visiting \href{https://42-ai.github.io}{our website}. - - \item If you find any issue or mistake in the subject please create an issue on \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. - - \item We encourage you to create test programs for your - project even though this work \textbf{won't have to be - submitted and won't be graded}. It will give you a chance - to easily test your work and your peers’ work. You will find - those tests especially useful during your defence. Indeed, - during defence, you are free to use your tests and/or the - tests of the peer you are evaluating. - - \item We are constantly looking to improve these bootcamps, and your feedbacks are essential for us to do so !\\ - You can tell us more about your experience with this module by filling \href{https://forms.gle/Df9hrjBRLv57bALm9}{this form}.\\ - Thank you in advance and good luck for this bootcamp ! - -\end{itemize} \ No newline at end of file diff --git a/module07/en.subject.pdf b/module07/en.subject.pdf deleted file mode 100644 index c29650c7..00000000 Binary files a/module07/en.subject.pdf and /dev/null differ diff --git a/module07/en.subject.tex b/module07/en.subject.tex index 9604be73..5dc651aa 100644 --- a/module07/en.subject.tex +++ b/module07/en.subject.tex @@ -18,100 +18,10 @@ %****************************************************************% % Re/definition of commands % %****************************************************************% - -\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} - -%% Redefine \maketitle -\makeatletter -\def \maketitle { - \begin{titlepage} - \begin{center} - %\begin{figure}[t] - %\includegraphics[height=8cm]{\@ailogo} - \includegraphics[height=8cm]{assets/42ai_logo.pdf} - %\end{figure} - \vskip 5em - {\huge \@title} - \vskip 2em - {\LARGE \@subtitle} - \vskip 4em - \end{center} - %\begin{center} - %\@author - %\end{center} - %\vskip 5em - \vfill - \begin{center} - \emph{\summarytitle : \@summary} - \end{center} - \vspace{2cm} - %\vskip 5em - %\doclicenseThis - \end{titlepage} -} -\makeatother - -\makeatletter -\def \makeheaderfilesforbidden -{ - \noindent - \begin{tabularx}{\textwidth}{|X X X X|} - \hline - \multicolumn{1}{|>{\raggedright}m{1cm}|} - {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & - \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & - \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} -%% {\scriptsize points : \@exscore} \\ \hline - {} \\ \hline - - \multicolumn{4}{|>{\centering}m{15cm}|} - {\small \@extitle} \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Turn-in directory : \ttfamily - $ex\@exnumber/$ } - \\ \hline - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Files to turn in : \ttfamily \@exfiles } - \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Forbidden functions : \ttfamily \@exforbidden } - \\ \hline - -%% \multicolumn{4}{|>{\raggedright}m{15cm}|} -%% {\small Remarks : \ttfamily \@exnotes } -%% \\ \hline -\end{tabularx} -%% \exnotes -\exrules -\exmake -\exauthorize{None} -\exforbidden{None} -\extitle{} -\exnumber{} -} -\makeatother - -%% Syntactic highlights -\makeatletter -\newenvironment{pythoncode}{% - \VerbatimEnvironment - \usemintedstyle{emacs} - \minted@resetoptions - \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} - \begin{figure}[ht!] - \centering - \begin{minipage}{16cm} - \begin{VerbatimOut}{\jobname.pyg}} -{%[ - \end{VerbatimOut} - \minted@pygmentize{c} - \DeleteFile{\jobname.pyg} - \end{minipage} -\end{figure}} -\makeatother - +\input{../resources/latex/redefinition-commands.tex} +%****************************************************************% +% END Re/definition of commands % +%****************************************************************% \usemintedstyle{native} \begin{document} @@ -122,7 +32,8 @@ \title{Machine Learning Bootcamp - Module 02} \subtitle{Multivariate Linear Regression} \author{ - Maxime Choulika (cmaxime), Pierre Peigné (ppeigne), Matthieu David (mdavid), Amir Mahla (amahla), Mathieu Perez (maperez) + Maxime Choulika (cmaxime), Pierre Peigné (ppeigne), Matthieu David (mdavid), + Amir Mahla (amahla), Mathieu Perez (maperez) } \summary @@ -133,7 +44,7 @@ \maketitle \input{useful_resources.tex} -\input{en.instructions.tex} +\input{../resources/42ai_bootcamps/en.instructions.tex} \newpage \tableofcontents \startexercices @@ -233,9 +144,14 @@ \chapter{Conclusion - What you have learnt} \item If a model overfits, what will happen when you compare its performance on the training set and the test set? \item If a model underfits, what do you think will happen when you compare its performance on the training set and the test set? \end{enumerate} +\info{ + Your feedbacks are essential for us to improve these bootcamps !\newline + Please take a few minutes to tell us about your experience in this module by filling + \href{https://docs.google.com/forms/d/e/1FAIpQLSerEYK28I1AJtTGPJU2S6yGdo47fAaM77wRIX-ulml2rABXtQ/viewform?usp=sharing}{this form}. Thank you in advance ! +} % =========================== fin Conclusion % % ============================================== % \newpage -\input{en.acknowledgements.tex} +\input{../resources/42ai_bootcamps/en.acknowledgements.tex} % ============================================== % \end{document} diff --git a/module08/Makefile b/module08/Makefile index 220ac97a..b2afa381 100644 --- a/module08/Makefile +++ b/module08/Makefile @@ -9,8 +9,9 @@ DEPS = exercises/en.ex00_interlude.tex \ exercises/en.ex04_interlude.tex \ exercises/en.ex05_interlude.tex \ exercises/en.ex08_interlude.tex \ - en.instructions.tex \ - en.acknowledgements.tex \ + ../resources/latex/redefinition-commands.tex \ + ../resources/42ai_bootcamps/en.instructions.tex \ + ../resources/42ai_bootcamps/en.acknowledgements.tex \ useful_resources.tex # Relative path to the LaTeX documentclass setup files diff --git a/module08/assets/42ai_logo.pdf b/module08/assets/42ai_logo.pdf index 1f5d3abb..884846f0 100644 Binary files a/module08/assets/42ai_logo.pdf and b/module08/assets/42ai_logo.pdf differ diff --git a/module08/en.acknowledgements.tex b/module08/en.acknowledgements.tex deleted file mode 100644 index 81b1e25c..00000000 --- a/module08/en.acknowledgements.tex +++ /dev/null @@ -1,37 +0,0 @@ -\section*{Contact} -% --------------------------------- % -You can contact 42AI by email: \href{mailto:contact@42ai.fr}{contact@42ai.fr}\\ -\newline -Thank you for attending 42AI's Machine Learning Bootcamp module03 ! - -% ================================= % -\section*{Acknowledgements} -% --------------------------------- % -The Python \& ML bootcamps are the result of a collective effort. We would like to thank: -\begin{itemize} - \item Maxime Choulika (cmaxime), - \item Pierre Peigné (ppeigne), - \item Matthieu David (mdavid), - \item Quentin Feuillade--Montixi (qfeuilla, quentin@42ai.fr) - \item Mathieu Perez (maperez, mathieu.perez@42ai.fr) -\end{itemize} -who supervised the creation and enhancements and the present transcription. - -\begin{itemize} - \item Louis Develle (ldevelle, louis@42ai.fr) - \item Owen Roberts (oroberts) - \item Augustin Lopez (aulopez) - \item Luc Lenotre (llenotre) - \item Amric Trudel (amric@42ai.fr) - \item Benjamin Carlier (bcarlier@student.42.fr) - \item Pablo Clement (pclement@student.42.fr) - \item Amir Mahla (amahla, amahla@42ai.fr) -\end{itemize} -for your investment for the creation and development of these modules. - -\begin{itemize} - \item All prior participants who took a moment to provide their feedbacks, and help us improve these bootcamps ! - \end{itemize} - -\vfill -\doclicenseThis diff --git a/module08/en.subject.pdf b/module08/en.subject.pdf deleted file mode 100644 index 54850cfc..00000000 Binary files a/module08/en.subject.pdf and /dev/null differ diff --git a/module08/en.subject.tex b/module08/en.subject.tex index 7bd577be..ab50d212 100644 --- a/module08/en.subject.tex +++ b/module08/en.subject.tex @@ -20,106 +20,15 @@ %****************************************************************% % Re/definition of commands % %****************************************************************% - -\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} - -%% Redefine \maketitle -\makeatletter -\def \maketitle { - \begin{titlepage} - \begin{center} - %\begin{figure}[t] - %\includegraphics[height=8cm]{\@ailogo} - \includegraphics[height=8cm]{assets/42ai_logo.pdf} - %\end{figure} - \vskip 5em - {\huge \@title} - \vskip 2em - {\LARGE \@subtitle} - \vskip 4em - \end{center} - %\begin{center} - %\@author - %\end{center} - %\vskip 5em - \vfill - \begin{center} - \emph{\summarytitle : \@summary} - \end{center} - \vspace{2cm} - %\vskip 5em - %\doclicenseThis - \end{titlepage} -} -\makeatother - -\makeatletter -\def \makeheaderfilesforbidden -{ - \noindent - \begin{tabularx}{\textwidth}{|X X X X|} - \hline - \multicolumn{1}{|>{\raggedright}m{1cm}|} - {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & - \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & - \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} -%% {\scriptsize points : \@exscore} \\ \hline - {} \\ \hline - - \multicolumn{4}{|>{\centering}m{15cm}|} - {\small \@extitle} \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Turn-in directory : \ttfamily - $ex\@exnumber/$ } - \\ \hline - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Files to turn in : \ttfamily \@exfiles } - \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Forbidden functions : \ttfamily \@exforbidden } - \\ \hline - -%% \multicolumn{4}{|>{\raggedright}m{15cm}|} -%% {\small Remarks : \ttfamily \@exnotes } -%% \\ \hline -\end{tabularx} -%% \exnotes -\exrules -\exmake -\exauthorize{None} -\exforbidden{None} -\extitle{} -\exnumber{} -} -\makeatother - -%% Syntactic highlights -\makeatletter -\newenvironment{pythoncode}{% - \VerbatimEnvironment - \usemintedstyle{emacs} - \minted@resetoptions - \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} - \begin{figure}[ht!] - \centering - \begin{minipage}{16cm} - \begin{VerbatimOut}{\jobname.pyg}} -{%[ - \end{VerbatimOut} - \minted@pygmentize{c} - \DeleteFile{\jobname.pyg} - \end{minipage} -\end{figure}} -\makeatother - +\input{../resources/latex/redefinition-commands.tex} +%****************************************************************% +% END Re/definition of commands % +%****************************************************************% \usemintedstyle{native} - \begin{document} % =============================================================================% -% ===================================== % +% ===================================== \title{Machine Learning Bootcamp - Module 03} \subtitle{Logistic Regression} @@ -135,7 +44,7 @@ \maketitle \input{useful_resources.tex} -\input{en.instructions.tex} +\input{../resources/42ai_bootcamps/en.instructions.tex} \newpage \tableofcontents \startexercices @@ -231,11 +140,15 @@ \chapter{Conclusion - What you have learnt} What is the type I and type II errors? \item What is the interest of the F1-score? \end{enumerate} - +\info{ + Your feedbacks are essential for us to improve these bootcamps !\newline + Please take a few minutes to tell us about your experience in this module by filling + \href{https://docs.google.com/forms/d/e/1FAIpQLSe2hLbxYFj7CJDqKXUSqYVEXG0DiQb8FGkLQEUIT4__gshtqA/viewform?usp=sharing}{this form}. Thank you in advance ! +} % ===========================(Conclusion) % % ============================================== % \newpage -\input{en.acknowledgements.tex} +\input{../resources/42ai_bootcamps/en.acknowledgements.tex} % ================================= % \end{document} diff --git a/module08/exercises/en.ex04_interlude.tex b/module08/exercises/en.ex04_interlude.tex index 5f9a6712..fcd8cd3f 100644 --- a/module08/exercises/en.ex04_interlude.tex +++ b/module08/exercises/en.ex04_interlude.tex @@ -39,10 +39,10 @@ \subsection*{The logistic gradient} $$ Where: \begin{itemize} - \item $\nabla(J)$ is a vector of length $(n + 1)$, the gradient vector + \item $\nabla(J)$ is a vector of dimension $(n + 1)$, the gradient vector \item $\nabla(J)_j$ is the j$^\text{th}$ component of $\nabla(J)$, the partial derivative of $J$ with respect to $\theta_j$ - \item $y$ is a vector of length $m$, the vector of expected values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $y^{(i)}$ is a scalar, the i$^\text{th}$ component of vector $y$ \item $x^{(i)}$ is the feature vector of the i$^\text{th}$ example \item $x^{(i)}_j$ is a scalar, the j$^\text{th}$ feature value of the i$^\text{th}$ example diff --git a/module08/exercises/m08ex01.tex b/module08/exercises/m08ex01.tex index 0b5b169d..063ce2c8 100644 --- a/module08/exercises/m08ex01.tex +++ b/module08/exercises/m08ex01.tex @@ -32,7 +32,7 @@ \section*{Objective} \begin{itemize} \item the $x$ your function will get as an input corresponds to $X$, the $(m \times n)$ matrix. Not $X'$. - \item $\theta$ is a vector of length $(n + 1)$ + \item $\theta$ is a vector of dimension $(n + 1)$ \end{itemize} \newpage % ================================= % diff --git a/module08/exercises/m08ex03.tex b/module08/exercises/m08ex03.tex index aa0e4d44..26969f01 100644 --- a/module08/exercises/m08ex03.tex +++ b/module08/exercises/m08ex03.tex @@ -21,9 +21,9 @@ \section*{Objective} \\ Where: \begin{itemize} - \item $\hat{y}$ is a vector of length $m$, the vector of predicted values - \item $y$ is a vector of length $m$, the vector of expected values - \item $\vec{1}$ is a vector of length $m$, a vector full of 1's + \item $\hat{y}$ is a vector of dimension $m$, the vector of predicted values + \item $y$ is a vector of dimension $m$, the vector of expected values + \item $\vec{1}$ is a vector of dimension $m$, a vector full of 1's \end{itemize} diff --git a/module08/exercises/m08ex04.tex b/module08/exercises/m08ex04.tex index 8af82b4c..c381221f 100644 --- a/module08/exercises/m08ex04.tex +++ b/module08/exercises/m08ex04.tex @@ -25,9 +25,9 @@ \section*{Objective} \\ Where: \begin{itemize} - \item $\nabla(J)$ is a vector of length $(n + 1)$, the gradient vector + \item $\nabla(J)$ is a vector of dimension $(n + 1)$, the gradient vector \item $\nabla(J)_j$ is the j$^\text{th}$ component of $\nabla(J)$, the partial derivative of $J$ with respect to $\theta_j$ - \item $y$ is a vector of length $m$, the vector of expected values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $y^{(i)}$ is a scalar, the i$^\text{th}$ component of vector $y$ \item $x^{(i)}$ is the feature vector of the i$^\text{th}$ example \item $x^{(i)}_j$ is a scalar, the j$^\text{th}$ feature value of the i$^\text{th}$ example diff --git a/module08/exercises/m08ex05.tex b/module08/exercises/m08ex05.tex index f2b060c6..5ae447ab 100644 --- a/module08/exercises/m08ex05.tex +++ b/module08/exercises/m08ex05.tex @@ -21,10 +21,10 @@ \section*{Objective} \\ Where: \begin{itemize} - \item $\nabla(J)$ is the gradient vector of length $(n + 1)$ + \item $\nabla(J)$ is the gradient vector of dimension $(n + 1)$ \item $X'$ is a matrix of dimensions $(m \times (n + 1))$, the design matrix onto which a column of ones was added as the first column \item $X'^T$ means the matrix has been transposed - \item $h_\theta(X)$ is a vector of length $m$, the vector of predicted values + \item $h_\theta(X)$ is a vector of dimension $m$, the vector of predicted values \item $y$ is a vector of dimension $m$, the vector of expected values \end{itemize} diff --git a/module09/Makefile b/module09/Makefile index 9cf507d7..874ff67d 100644 --- a/module09/Makefile +++ b/module09/Makefile @@ -7,8 +7,8 @@ DEPS = exercises/en.ex01_interlude.tex \ exercises/en.ex06_interlude.tex \ exercises/en.ex08_interlude.tex \ exercises/en.ex10_interlude.tex \ - en.instructions.tex \ - en.acknowledgements.tex \ + ../resources/42ai_bootcamps/en.instructions.tex \ + ../resources/42ai_bootcamps/en.acknowledgements.tex \ useful_resources.tex # Relative path to the LaTeX documentclass setup files diff --git a/module09/assets/42ai_logo.pdf b/module09/assets/42ai_logo.pdf index 1f5d3abb..884846f0 100644 Binary files a/module09/assets/42ai_logo.pdf and b/module09/assets/42ai_logo.pdf differ diff --git a/module09/en.acknowledgements.tex b/module09/en.acknowledgements.tex deleted file mode 100644 index 2a0e7f3b..00000000 --- a/module09/en.acknowledgements.tex +++ /dev/null @@ -1,37 +0,0 @@ -\section*{Contact} -% --------------------------------- % -You can contact 42AI by email: \href{mailto:contact@42ai.fr}{contact@42ai.fr}\\ -\newline -Thank you for attending 42AI's Machine Learning Bootcamp module04 ! - -% ================================= % -\section*{Acknowledgements} -% --------------------------------- % -The Python \& ML bootcamps are the result of a collective effort. We would like to thank: -\begin{itemize} - \item Maxime Choulika (cmaxime), - \item Pierre Peigné (ppeigne), - \item Matthieu David (mdavid), - \item Quentin Feuillade--Montixi (qfeuilla, quentin@42ai.fr) - \item Mathieu Perez (maperez, mathieu.perez@42ai.fr) -\end{itemize} -who supervised the creation and enhancements and the present transcription. - -\begin{itemize} - \item Louis Develle (ldevelle, louis@42ai.fr) - \item Owen Roberts (oroberts) - \item Augustin Lopez (aulopez) - \item Luc Lenotre (llenotre) - \item Amric Trudel (amric@42ai.fr) - \item Benjamin Carlier (bcarlier@student.42.fr) - \item Pablo Clement (pclement@student.42.fr) - \item Amir Mahla (amahla, amahla@42ai.fr) -\end{itemize} -for your investment for the creation and development of these modules. - -\begin{itemize} - \item All prior participants who took a moment to provide their feedbacks, and help us improve these bootcamps ! - \end{itemize} - -\vfill -\doclicenseThis diff --git a/module09/en.instructions.tex b/module09/en.instructions.tex deleted file mode 100644 index 0f54e374..00000000 --- a/module09/en.instructions.tex +++ /dev/null @@ -1,43 +0,0 @@ -%******************************************************************************% -% % -% Common Instructions % -% for Python Projects % -% % -%******************************************************************************% - -\chapter{Common Instructions} -\begin{itemize} - \item The version of Python recommended to use is 3.7, you can - check the version of Python with the following command: \texttt{python -V} - - \item The norm: during this bootcamp, it is recommended to follow the - \href{https://www.python.org/dev/peps/pep-0008/}{PEP 8 standards}, though it is not mandatory. - You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} which - is a tool to check your Python code. - \item The function \texttt{eval} is never allowed. - \item The exercises are ordered from the easiest to the hardest. - \item Your exercises are going to be evaluated by someone else, - so make sure that your variable names and function names are appropriate and civil. - \item Your manual is the internet. - - \item If you are a student from 42, you can access our Discord server - on \href{https://discord.com/channels/887850395697807362/887850396314398720}{42 student's associations portal} and ask your - questions to your peers in the dedicated Bootcamp channel. - - \item You can learn more about 42 Artificial Intelligence by visiting \href{https://42-ai.github.io}{our website}. - - \item If you find any issue or mistake in the subject please create an issue on \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. - - \item We encourage you to create test programs for your - project even though this work \textbf{won't have to be - submitted and won't be graded}. It will give you a chance - to easily test your work and your peers’ work. You will find - those tests especially useful during your defence. Indeed, - during defence, you are free to use your tests and/or the - tests of the peer you are evaluating. - - \item We are constantly looking to improve these bootcamps, and your feedbacks are essential for us to do so !\\ - You can tell us more about your experience with this module by filling \href{https://forms.gle/ruP9wv1RfwbneKJE8}{this form}.\\ - Thank you in advance and good luck for this bootcamp ! - -\end{itemize} \ No newline at end of file diff --git a/module09/en.subject.pdf b/module09/en.subject.pdf deleted file mode 100644 index 5dda2fb7..00000000 Binary files a/module09/en.subject.pdf and /dev/null differ diff --git a/module09/en.subject.tex b/module09/en.subject.tex index 3bbfc0f4..3f5010d8 100644 --- a/module09/en.subject.tex +++ b/module09/en.subject.tex @@ -20,106 +20,15 @@ %****************************************************************% % Re/definition of commands % %****************************************************************% - -\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} - -%% Redefine \maketitle -\makeatletter -\def \maketitle { - \begin{titlepage} - \begin{center} - %\begin{figure}[t] - %\includegraphics[height=8cm]{\@ailogo} - \includegraphics[height=8cm]{assets/42ai_logo.pdf} - %\end{figure} - \vskip 5em - {\huge \@title} - \vskip 2em - {\LARGE \@subtitle} - \vskip 4em - \end{center} - %\begin{center} - %\@author - %\end{center} - %\vskip 5em - \vfill - \begin{center} - \emph{\summarytitle : \@summary} - \end{center} - \vspace{2cm} - %\vskip 5em - %\doclicenseThis - \end{titlepage} -} -\makeatother - -\makeatletter -\def \makeheaderfilesforbidden -{ - \noindent - \begin{tabularx}{\textwidth}{|X X X X|} - \hline - \multicolumn{1}{|>{\raggedright}m{1cm}|} - {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & - \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & - \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} -%% {\scriptsize points : \@exscore} \\ \hline - {} \\ \hline - - \multicolumn{4}{|>{\centering}m{15cm}|} - {\small \@extitle} \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Turn-in directory : \ttfamily - $ex\@exnumber/$ } - \\ \hline - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Files to turn in : \ttfamily \@exfiles } - \\ \hline - - \multicolumn{4}{|>{\raggedright}m{15cm}|} - {\small Forbidden functions : \ttfamily \@exforbidden } - \\ \hline - -%% \multicolumn{4}{|>{\raggedright}m{15cm}|} -%% {\small Remarks : \ttfamily \@exnotes } -%% \\ \hline -\end{tabularx} -%% \exnotes -\exrules -\exmake -\exauthorize{None} -\exforbidden{None} -\extitle{} -\exnumber{} -} -\makeatother - -%% Syntactic highlights -\makeatletter -\newenvironment{pythoncode}{% - \VerbatimEnvironment - \usemintedstyle{emacs} - \minted@resetoptions - \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} - \begin{figure}[ht!] - \centering - \begin{minipage}{16cm} - \begin{VerbatimOut}{\jobname.pyg}} -{%[ - \end{VerbatimOut} - \minted@pygmentize{c} - \DeleteFile{\jobname.pyg} - \end{minipage} -\end{figure}} -\makeatother - +\input{../resources/latex/redefinition-commands.tex} +%****************************************************************% +% END Re/definition of commands % +%****************************************************************% \usemintedstyle{native} - \begin{document} % =============================================================================% -% ===================================== % +% ===================================== \title{Machine Learning Bootcamp - Module 04} \subtitle{Regularization} @@ -133,7 +42,7 @@ } \maketitle \input{useful_resources.tex} -\input{en.instructions.tex} +\input{../resources/42ai_bootcamps/en.instructions.tex} \newpage \tableofcontents \startexercices @@ -226,10 +135,15 @@ \chapter{Conclusion - What you have learnt} What are the type I and type II errors? \item What is the purpose and interest of the F1-score? \end{enumerate} +\info{ + Your feedbacks are essential for us to improve these bootcamps !\newline + Please take a few minutes to tell us about your experience in this module by filling + \href{https://docs.google.com/forms/d/e/1FAIpQLScImy0QtCvRLX9EzVt4q6c23ryMobb6p-hf-l9F0z7uAEV0zA/viewform?usp=sharing}{this form}. Thank you in advance ! +} % ===========================(Conclusion) % % ============================================== % \newpage -\input{en.acknowledgements.tex} +\input{../resources/42ai_bootcamps/en.acknowledgements.tex} % ================================= % \end{document} diff --git a/module09/exercises/en.ex04_interlude.tex b/module09/exercises/en.ex04_interlude.tex index 50753877..be9b362d 100644 --- a/module09/exercises/en.ex04_interlude.tex +++ b/module09/exercises/en.ex04_interlude.tex @@ -46,16 +46,16 @@ \section*{Interlude - Regularized Gradient} \\ Where: \begin{itemize} - \item $\nabla(J)$ is a vector of length $(n + 1)$, the gradient vector + \item $\nabla(J)$ is a vector of dimension $(n + 1)$, the gradient vector \item $m$ is the number of training examples used \item $X$ is a matrix of dimension $(m \times n)$, the design matrix \item $X'$ is a matrix of dimension $(m \times (n + 1))$, the design matrix onto which a column of ones is added as a first column - \item $y$ is a vector of length $m$, the vector of expected values - \item $h_\theta(X)$ is a vector of length $m$, the vector of predicted values + \item $y$ is a vector of dimension $m$, the vector of expected values + \item $h_\theta(X)$ is a vector of dimension $m$, the vector of predicted values \item $\lambda$ is a constant - \item $\theta$ is a vector of length $(n + 1)$, the parameter vector - \item $\theta'$ is a vector of length $(n + 1)$, constructed using the following rules: + \item $\theta$ is a vector of dimension $(n + 1)$, the parameter vector + \item $\theta'$ is a vector of dimension $(n + 1)$, constructed using the following rules: \end{itemize} $$ diff --git a/module09/exercises/m09ex02.tex b/module09/exercises/m09ex02.tex index 90dc41fc..5b119995 100644 --- a/module09/exercises/m09ex02.tex +++ b/module09/exercises/m09ex02.tex @@ -17,10 +17,10 @@ \section*{Objective} \\ Where: \begin{itemize} - \item $y$ is a vector of length $m$, the expected values - \item $\hat{y}$ is a vector of length $m$, the predicted values + \item $y$ is a vector of dimension $m$, the expected values + \item $\hat{y}$ is a vector of dimension $m$, the predicted values \item $\lambda$ is a constant, the regularization hyperparameter - \item $\theta'$ is a vector of length $n$, constructed using the following rules: + \item $\theta'$ is a vector of dimension $n$, constructed using the following rules: \end{itemize} $$ diff --git a/module09/exercises/m09ex03.tex b/module09/exercises/m09ex03.tex index 7130cbed..f1421ce7 100644 --- a/module09/exercises/m09ex03.tex +++ b/module09/exercises/m09ex03.tex @@ -19,11 +19,11 @@ \section*{Objective} \\ Where: \begin{itemize} - \item $\hat{y}$ is a vector of length $m$, the vector of predicted values - \item $y$ is a vector of length $m$, the vector of expected values - \item $\vec{1}$ is a vector of length $m$, a vector full of ones + \item $\hat{y}$ is a vector of dimension $m$, the vector of predicted values + \item $y$ is a vector of dimension $m$, the vector of expected values + \item $\vec{1}$ is a vector of dimension $m$, a vector full of ones \item $\lambda$ is a constant, the regularization hyperparameter - \item $\theta'$ is a vector of length $n$, constructed using the following rules: + \item $\theta'$ is a vector of dimension $n$, constructed using the following rules: \end{itemize} $$ \begin{matrix} diff --git a/module09/exercises/m09ex04.tex b/module09/exercises/m09ex04.tex index d76ae8b4..eaaf9ae0 100644 --- a/module09/exercises/m09ex04.tex +++ b/module09/exercises/m09ex04.tex @@ -34,10 +34,10 @@ \subsection*{Iterative} found in the i$^\text{th}$ row of the $X$ matrix \item $X$ is a matrix of dimensions $(m \times n)$, the design matrix \item $y^{(i)}$ is the i$^\text{th}$ component of the $y$ vector - \item $y$ is a vector of length $m$, the vector of expected values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $\lambda$ is a constant, the regularization hyperparameter \item $\theta_j$ is the j$^\text{th}$ parameter of the $\theta$ vector - \item $\theta$ is a vector of length $(n + 1)$, the parameter vector + \item $\theta$ is a vector of dimension $(n + 1)$, the parameter vector \end{itemize} % ================================= % @@ -55,11 +55,11 @@ \subsection*{Vectorized} \item $X'$ is a matrix of dimensions $(m \times (n + 1))$, the design matrix onto which a column of ones is added as a first column \item $X'^T$ is the transpose of tha matrix, with dimensions $((n + 1) \times m)$ - \item $h_\theta(X)$ is a vector of length $m$, the vector of predicted values - \item $y$ is a vector of length $m$, the vector of expected values + \item $h_\theta(X)$ is a vector of dimension $m$, the vector of predicted values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $\lambda$ is a constant, the regularization hyperparameter - \item $\theta$ is a vector of length $(n + 1)$, the parameter vector - \item $\theta'$ is a vector of length $(n + 1)$, constructed using the following rules: + \item $\theta$ is a vector of dimension $(n + 1)$, the parameter vector + \item $\theta'$ is a vector of dimension $(n + 1)$, constructed using the following rules: \end{itemize} $$ diff --git a/module09/exercises/m09ex05.tex b/module09/exercises/m09ex05.tex index 189f6b6f..b1da8318 100644 --- a/module09/exercises/m09ex05.tex +++ b/module09/exercises/m09ex05.tex @@ -27,17 +27,17 @@ \subsection*{Iterative} Where: \begin{itemize} \item $\nabla(J)_j$ is the j$^\text{th}$ component of $\nabla(J)$ - \item $\nabla(J)$ is a vector of length $(n + 1)$, the gradient vector + \item $\nabla(J)$ is a vector of dimension $(n + 1)$, the gradient vector \item $m$ is a constant, the number of training examples used \item $h_\theta(x^{(i)})$ is the model's prediction for the i$^\text{th}$ training example \item $x^{(i)}$ is the feature vector of dimension ($n$) of the i$^\text{th}$ training example, found in the i$^\text{th}$ row of the $X$ matrix \item $X$ is a matrix of length $(m \times n)$, the design matrix \item $y^{(i)}$ is the i$^\text{th}$ component of the $y$ vector - \item $y$ is a vector of length $m$, the vector of expected values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $\lambda$ is a constant, the regularization hyperparameter \item $\theta_j$ is the j$^\text{th}$ parameter of the $\theta$ vector - \item $\theta$ is a vector of length $(n + 1)$, the parameter vector + \item $\theta$ is a vector of dimension $(n + 1)$, the parameter vector \end{itemize} % ================================= % @@ -55,11 +55,11 @@ \subsection*{Vectorized} \item $X'$ is a matrix of dimensions $(m \times (n + 1))$, the design matrix onto which a column of ones is added as a first column \item $X'^T$ is the transpose of tha matrix, with dimensions $((n + 1) \times m)$ - \item $h_\theta(X)$ is a vector of length $m$, the vector of predicted values - \item $y$ is a vector of length $m$, the vector of expected values + \item $h_\theta(X)$ is a vector of dimension $m$, the vector of predicted values + \item $y$ is a vector of dimension $m$, the vector of expected values \item $\lambda$ is a constant, the regularization hyperparameter - \item $\theta$ is a vector of length $(n + 1)$, the parameter vector - \item $\theta'$ is a vector of length $(n + 1)$, constructed using the following rules: + \item $\theta$ is a vector of dimension $(n + 1)$, the parameter vector + \item $\theta'$ is a vector of dimension $(n + 1)$, constructed using the following rules: \end{itemize} $$ diff --git a/module05/en.acknowledgements.tex b/resources/42ai_bootcamps/en.acknowledgements.tex similarity index 94% rename from module05/en.acknowledgements.tex rename to resources/42ai_bootcamps/en.acknowledgements.tex index 1bc2637f..10da90ab 100644 --- a/module05/en.acknowledgements.tex +++ b/resources/42ai_bootcamps/en.acknowledgements.tex @@ -2,7 +2,7 @@ \section*{Contact} % --------------------------------- % You can contact 42AI by email: \href{mailto:contact@42ai.fr}{contact@42ai.fr}\\ \newline -Thank you for attending 42AI's Machine Learning Bootcamp module00 ! +Thank you for attending 42AI's Machine Learning Bootcamp ! % ================================= % \section*{Acknowledgements} diff --git a/module08/en.instructions.tex b/resources/42ai_bootcamps/en.instructions.tex similarity index 76% rename from module08/en.instructions.tex rename to resources/42ai_bootcamps/en.instructions.tex index 2b9caf9f..db922927 100644 --- a/module08/en.instructions.tex +++ b/resources/42ai_bootcamps/en.instructions.tex @@ -7,18 +7,26 @@ \chapter{Common Instructions} \begin{itemize} - \item The version of Python recommended to use is 3.7, you can - check the version of Python with the following command: \texttt{python -V} + \item The version of Python recommended to use is 3.7. You can + check your Python's version with the following command: \texttt{python -V} \item The norm: during this bootcamp, it is recommended to follow the \href{https://www.python.org/dev/peps/pep-0008/}{PEP 8 standards}, though it is not mandatory. - You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} which - is a tool to check your Python code. + You can install \href{https://pypi.org/project/pycodestyle}{pycodestyle} or + \href{https://black.readthedocs.io/en/stable/}{Black}, which are convenient + packages to check your code. + \item The function \texttt{eval} is never allowed. + \item The exercises are ordered from the easiest to the hardest. + \item Your exercises are going to be evaluated by someone else, so make sure that your variable names and function names are appropriate and civil. + \item Your manual is the internet. + + \item If you're planning on using an AI assistant such as a LLM, make sure it is helpful + for you to \textbf{learn and practice}, not to provide you with hands-on solution ! Own your tool, don't let it own you. \item If you are a student from 42, you can access our Discord server on \href{https://discord.com/channels/887850395697807362/887850396314398720}{42 student's associations portal} and ask your @@ -26,7 +34,8 @@ \chapter{Common Instructions} \item You can learn more about 42 Artificial Intelligence by visiting \href{https://42-ai.github.io}{our website}. - \item If you find any issue or mistake in the subject please create an issue on \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. + \item If you find any issue or mistake in the subject please create an issue on + \href{https://github.com/42-AI/bootcamp_machine-learning/issues}{42AI repository on Github}. \item We encourage you to create test programs for your project even though this work \textbf{won't have to be @@ -36,8 +45,4 @@ \chapter{Common Instructions} during defence, you are free to use your tests and/or the tests of the peer you are evaluating. - \item We are constantly looking to improve these bootcamps, and your feedbacks are essential for us to do so !\\ - You can tell us more about your experience with this module by filling \href{https://forms.gle/pMortPd7jZpkdNVw6}{this form}.\\ - Thank you in advance and good luck for this bootcamp ! - \end{itemize} \ No newline at end of file diff --git a/resources/latex/redefinition-commands.tex b/resources/latex/redefinition-commands.tex new file mode 100644 index 00000000..45c617e9 --- /dev/null +++ b/resources/latex/redefinition-commands.tex @@ -0,0 +1,93 @@ + +\newcommand{\ailogo}[1]{\def \@ailogo {#1}}\ailogo{assets/42ai_logo.pdf} + +%% Redefine \maketitle +\makeatletter +\def \maketitle { + \begin{titlepage} + \begin{center} + %\begin{figure}[t] + %\includegraphics[height=8cm]{\@ailogo} + \includegraphics[height=8cm]{assets/42ai_logo.pdf} + %\end{figure} + \vskip 5em + {\huge \@title} + \vskip 2em + {\LARGE \@subtitle} + \vskip 4em + \end{center} + %\begin{center} + %\@author + %\end{center} + %\vskip 5em + \vfill + \begin{center} + \emph{\summarytitle : \@summary} + \end{center} + \vspace{2cm} + %\vskip 5em + %\doclicenseThis + \end{titlepage} +} +\makeatother + +\makeatletter +\def \makeheaderfilesforbidden +{ + \noindent + \begin{tabularx}{\textwidth}{|X X X X|} + \hline + \multicolumn{1}{|>{\raggedright}m{1cm}|} + {\vskip 2mm \includegraphics[height=1cm]{assets/42ai_logo.pdf}} & + \multicolumn{2}{>{\centering}m{12cm}}{\small Exercise : \@exnumber } & + \multicolumn{1}{ >{\raggedleft}p{1.5cm}|} +%% {\scriptsize points : \@exscore} \\ \hline + {} \\ \hline + + \multicolumn{4}{|>{\centering}m{15cm}|} + {\small \@extitle} \\ \hline + + \multicolumn{4}{|>{\raggedright}m{15cm}|} + {\small Turn-in directory : \ttfamily + $ex\@exnumber/$ } + \\ \hline + \multicolumn{4}{|>{\raggedright}m{15cm}|} + {\small Files to turn in : \ttfamily \@exfiles } + \\ \hline + + \multicolumn{4}{|>{\raggedright}m{15cm}|} + {\small Forbidden functions : \ttfamily \@exforbidden } + \\ \hline + +%% \multicolumn{4}{|>{\raggedright}m{15cm}|} +%% {\small Remarks : \ttfamily \@exnotes } +%% \\ \hline +\end{tabularx} +%% \exnotes +\exrules +\exmake +\exauthorize{None} +\exforbidden{None} +\extitle{} +\exnumber{} +} +\makeatother + +%% Syntactic highlights +\makeatletter +\newenvironment{pythoncode}{% + \VerbatimEnvironment + \usemintedstyle{emacs} + \minted@resetoptions + \setkeys{minted@opt}{bgcolor=black,formatcom=\color{lightgrey},fontsize=\scriptsize} + \begin{figure}[ht!] + \centering + \begin{minipage}{16cm} + \begin{VerbatimOut}{\jobname.pyg}} +{%[ + \end{VerbatimOut} + \minted@pygmentize{c} + \DeleteFile{\jobname.pyg} + \end{minipage} +\end{figure}} +\makeatother \ No newline at end of file diff --git a/version b/version index acf69b48..3bff0591 100644 --- a/version +++ b/version @@ -1 +1 @@ -5.1.0 \ No newline at end of file +5.1.1 \ No newline at end of file