Syllabus học LaTex
TUẦN 1 - Nền tảng LaTeX
Ngày 1: Cài đặt & Compile file đầu tiên
Khái niệm: LaTeX là hệ thống typesetting dựa trên engine TeX - khác Word ở chỗ bạn viết mã nguồn (
.tex) rồi compile ra PDF, chứ không WYSIWYG. Phân biệt engine:pdfLaTeX(phổ biến nhất, nhanh) vsXeLaTeX/LuaLaTeX(hỗ trợ font hệ thống, Unicode tốt hơn - cần khi gõ tiếng Việt có dấu).Thực hành: Tạo tài khoản Overleaf, tạo project trống, gõ:
\documentclass{article}
\begin{document}
Xin chào LaTeX!
\end{document}
Nhấn Recompile, quan sát PDF sinh ra.
- Advanced: Thử đổi engine compiler trong Overleaf (Menu → Compiler: pdfLaTeX/XeLaTeX/LuaLaTeX), quan sát log biên dịch để làm quen cách đọc lỗi.
Ngày 2: Cấu trúc file & documentclass
Khái niệm:
\documentclass{article|report|book}- vì sao luận văn dùngreport/book(có\chapter) còn paper/báo cáo ngắn dùngarticle. Tham số class (12pt,a4paper,twocolumn...).Thực hành: Tạo file với
\documentclass[12pt,a4paper]{report}, thêm\title,\author,\date,\maketitle.Advanced: So sánh output khi đổi
report→article→bookvới cùng nội dung, quan sát khác biệt về đánh số chương, trang bìa mặc định.
Ngày 3: Phân cấp mục & định dạng chữ cơ bản
Khái niệm: Cây phân cấp
\chapter > \section > \subsection > \subsubsection. Định dạng inline:\textbf,\textit,\underline,\emph(khác\textitở chỗ tự đảo nghiêng khi lồng nhau).Thực hành: Viết khung sườn luận văn (chỉ tiêu đề chương): Introduction, Related Work, Method, Experiment, Conclusion.
Advanced: Dùng
\newcommandsơ khai để tạo alias định dạng riêng (ví dụ\term{}in nghiêng cho thuật ngữ).
Ngày 4: Danh sách, ghi chú & tìm template chuẩn
Khái niệm:
itemize(không thứ tự),enumerate(có thứ tự),description. Footnote (\footnote). Package là gì - cơ chế\usepackage{}mở rộng chức năng.Thực hành: Viết phần Introduction ~nửa trang có danh sách liệt kê đóng góp (contributions). Tìm và tải template NeurIPS/ICML hoặc template trường, copy nội dung vào.
Advanced: Mở file
.cls/.stycủa template vừa tải, đọc thử xem họ định nghĩa margin/font ra sao (không cần hiểu hết, chỉ làm quen).
Checkpoint tuần 1: 1 file dùng template thật, compile sạch, có khung mục lục + phần Introduction.
TUẦN 2 - Công thức toán & Thuật toán
Ngày 5: Chế độ toán cơ bản
Khái niệm: Toán inline (
$...$) vs display (\[...\]hoặcequation). Vì sao không nên dùng$$...$$(cú pháp Plain TeX cũ, gây lỗi spacing).Thực hành: Viết công thức MSE loss, cross-entropy loss dạng display.
Advanced: So sánh
equationvsequation*(có/không đánh số) vsalign(căn nhiều dòng công thức).
Ngày 6: Package amsmath & ký hiệu ML
Khái niệm:
amsmath,amssymb,bm(bold cho vector/ma trận). Ký hiệu hay dùng:\nabla,\mathbb{E},\Pr,\operatorname{argmax},\|\cdot\|.Thực hành: Viết công thức gradient descent: \(\theta_{t+1} = \theta_t - \eta \nabla \mathcal{L}(\theta_t)\).
Advanced: Học
\left(...\right)để ngoặc tự co giãn theo nội dung bên trong.
Ngày 7: Định nghĩa ký hiệu riêng & tham chiếu công thức
Khái niệm:
\newcommandgiúp đồng nhất ký hiệu xuyên suốt tài liệu dài (đổi 1 chỗ, sửa toàn bài).\label/\eqrefđể tham chiếu công thức.Thực hành: Định nghĩa 8-10 lệnh:
\R,\E,\loss,\dataset... Viết phần Method có 3 công thức được\labelvà tham chiếu qua lại bằng\eqref.Advanced: Tìm hiểu
\providecommand(không ghi đè nếu lệnh đã tồn tại) - hữu ích khi ghép nhiều file.
Ngày 8: Pseudocode/Algorithm
Khái niệm: Gói
algorithm(khung nổi/caption) +algpseudocode(cú pháp\State,\For,\If).Thực hành: Viết pseudocode cho 1 thuật toán trong đề tài của bạn (ví dụ training loop, hoặc thuật toán tối ưu).
Advanced: Tùy biến số dòng lệnh hiển thị (
[1]trong\begin{algorithmic}[1]), thêm comment bằng\Comment{}.
Checkpoint tuần 2: Phần "Method" hoàn chỉnh với công thức có \label/\eqref và 1 khối algorithm.
TUẦN 3 - Hình ảnh & Bảng biểu
Ngày 9: Chèn hình & xuất ảnh đúng chuẩn từ Python
Khái niệm: Phân biệt định dạng - PNG (raster, dễ mờ khi phóng to), PDF/SVG (vector, sắc nét ở mọi kích thước). Dân ML nên xuất hình từ matplotlib bằng
plt.savefig("fig.pdf")hoặc PNG vớidpi=300trở lên.Thực hành: Vẽ 1 loss curve bằng matplotlib,
savefigra PDF, chèn vào LaTeX bằng\includegraphics[width=0.8\textwidth]{}.Advanced: So sánh cùng 1 hình xuất PNG dpi=72 vs dpi=300 vs PDF trong bản in thử - quan sát độ nét khi zoom PDF cuối.
Ngày 10: Environment figure, caption, label
Khái niệm:
figurelà "float" - LaTeX tự chọn vị trí đặt hình cho đẹp trang, không phải chỗ bạn gõ code.\caption,\label{fig:...}.Thực hành: Đặt hình loss curve vào
figure, thêm caption mô tả,\label, tham chiếu bằng\reftrong văn bản.Advanced: Học cách ép vị trí hình bằng
[H](góifloat) khi thật sự cần, và vì sao không nên lạm dụng[H].
Ngày 11: Subfigure - ghép nhiều hình con
Khái niệm: Paper ML rất hay ghép (a)(b)(c) trong 1 figure lớn (ví dụ so sánh CNN/ResNet/ViT). Gói
subcaption.Thực hành: Làm 1 figure gồm 3 subfigure so sánh 3 kiến trúc/kết quả, mỗi subfigure có caption riêng (a)/(b)/(c) và 1 caption chung.
Advanced: Căn chỉnh layout khi các subfigure có tỷ lệ khung hình khác nhau (dùng
\adjustboxhoặc cănwidthđồng nhất).
Ngày 12: Bảng nâng cao chuẩn benchmark ML
Khái niệm:
booktabs(bảng đẹp, không kẻ dọc).multirow/multicolumnđể gộp ô - cần thiết khi làm bảng kiểu Model × Dataset (CIFAR10/CIFAR100...).siunitxđể căn số liệu theo dấu thập phân.Thực hành: Làm 1 bảng benchmark thật: hàng là Model, cột là Dataset, bôi đậm giá trị tốt nhất bằng
\textbf{}.Advanced: Dùng
\resizebox{\textwidth}{!}{...}hoặcsidewaystablekhi bảng quá rộng/dài so với khổ trang.
Checkpoint tuần 3: Phần "Experiment" có 1 figure ghép subfigure + 1 bảng benchmark dùng multirow/multicolumn.
TUẦN 4 - Hyperlink, Cross-reference & Package chuẩn ML
Ngày 13: hyperref
Khái niệm:
\usepackage{hyperref}biến PDF thành tài liệu có thể click (mục lục, citation, figure đều nhảy tới đúng chỗ). Cần đặthyperrefgần cuối cùng trong danh sách\usepackage(thứ tự load ảnh hưởng tương thích).Thực hành: Thêm hyperref vào file hiện có, compile, thử click vào mục lục và citation trong PDF xem có nhảy đúng không.
Advanced: Tùy chỉnh màu link (
\hypersetup{colorlinks=true, linkcolor=blue, citecolor=red}) để không bị khung đỏ xấu khi in.
Ngày 14: cleveref/autoref
Khái niệm: Thay vì tự gõ "Hình 3", "Bảng 2" thủ công (dễ sai khi sửa thứ tự),
\autoref{}hoặcclevereftự sinh chữ + số tương ứng.Thực hành: Thay toàn bộ
\ref{}thủ công trong bài đã viết bằng\autoref{}, kiểm tra tự động sinh đúng "Figure X", "Table Y".Advanced: So sánh
autoref(có sẵn trong hyperref) vscleveref(gói riêng, mạnh hơn - tự gộp nhiều tham chiếu liền kề như "Eq. 1–3").
Ngày 15: Preamble chuẩn - "starter pack" package ML
Khái niệm: Tổng hợp bộ package hầu như paper ML nào cũng dùng:
amsmath, amssymb, bm, graphicx, booktabs, hyperref, cleveref, subcaption, algorithm, algpseudocode, siunitx, xcolor.Thực hành: Tạo 1 file
preamble.texchứa sẵn toàn bộ package + các\newcommandký hiệu đã định nghĩa từ Ngày 7, dùng\input{preamble}để tái sử dụng cho mọi project sau này.Advanced: Tìm hiểu cách tránh xung đột package (ví dụ thứ tự load
algorithmtrướchyperref, hoặc conflict giữasubfigcũ vàsubcaptionmới).
Ngày 16: Cấu trúc template hội nghị AI
Khái niệm: So sánh NeurIPS/ICML/ICLR/AAAI - page limit, bibliography style riêng, cách xử lý appendix/supplementary material (thường tách file riêng hoặc đặt sau
\newpage+ reset numbering).Thực hành: Chọn 1 venue, tải template thật, điền outline paper của bạn (chỉ heading, chưa cần nội dung đầy đủ) đúng khuôn giới hạn số trang.
Advanced: Đọc file
.stycủa venue đó, tìm dòng quy định\textwidth/\hoffsetđể hiểu vì sao không được tự ý chỉnh margin.
Checkpoint tuần 4: File preamble tái sử dụng được + 1 outline paper đúng khuôn 1 venue cụ thể.
TUẦN 5 - Trích dẫn & Workflow nghiên cứu
Ngày 17: BibLaTeX + Biber cơ bản
Khái niệm: BibLaTeX (hiện đại) vs BibTeX cũ. File
.bibchứa danh mục tài liệu, mỗi entry có@article,@inproceedings...Thực hành: Tạo file
references.bib, thêm 5 entry thủ công, dùng\cite{}trong bài.Advanced: Tìm hiểu sự khác nhau giữa
\cite,\parencite,\textcite- khi nào dùng cái nào theo style APA/IEEE.
Ngày 18: Zotero + Better BibTeX
Khái niệm: Workflow chuẩn nghiên cứu - Zotero quản lý tài liệu tham khảo tập trung, plugin Better BibTeX tự xuất
.bibđồng bộ, tránh gõ tay dễ sai.Thực hành: Cài Zotero, cài Better BibTeX, import 15+ paper (từ Google Scholar/arXiv/Semantic Scholar), xuất ra
references.bibtự động.Advanced: Setup auto-export (Zotero tự cập nhật file
.bibmỗi khi thêm paper mới) và kết nối trực tiếp với Overleaf qua tính năng sync.
Ngày 19: Overleaf + Git/GitHub
Khái niệm: Version control cho LaTeX - vì sao cần khi luận văn/paper trải qua nhiều bản chỉnh sửa với advisor/co-author.
Thực hành: Kết nối 1 project Overleaf với repo GitHub, thử commit 1 thay đổi và xem lịch sử.
Advanced: Tìm hiểu cách resolve conflict khi 2 người cùng sửa 1 file
.tex(khác XML/JSON ở chỗ merge tool text thường dùng được).
Ngày 20: Đọc source LaTeX thật từ arXiv
Khái niệm: Cách dân ML thực sự viết - không đoán mà đọc trực tiếp source paper đã publish.
Thực hành: Vào trang arXiv 1 paper nổi tiếng (VD "Attention is All You Need"), bấm "Other formats" → tải source, giải nén, xem cách họ dùng
subcaption,algorithm,cleveref.Advanced: Thử copy 1 đoạn kỹ thuật trình bày (ví dụ cách họ làm bảng ablation) và áp dụng lại vào bài của bạn theo phong cách riêng (không copy nội dung, chỉ học kỹ thuật trình bày).
Checkpoint tuần 5: File .bib quản lý qua Zotero, project sync Git, đã đọc và học được ít nhất 1 kỹ thuật trình bày từ paper thật.
TUẦN 6 - Academic Writing & Mini-project
Ngày 21: Abstract & Introduction
Khái niệm: Cấu trúc chuẩn - Abstract nêu vấn đề/phương pháp/kết quả trong ~150-250 từ. Introduction đi từ motivation → gap → contribution.
Thực hành: Viết Abstract + Introduction cho mini-project (paper reproduce).
Advanced: So sánh Abstract của 3 paper cùng lĩnh vực để nhận diện pattern câu mở đầu thường dùng.
Ngày 22: Method, Experiment, Ablation study
Khái niệm: Ablation study - cách trình bày bảng so sánh khi bỏ/thêm từng thành phần để chứng minh đóng góp của mỗi phần.
Thực hành: Viết Method + 1 bảng ablation (dùng lại kỹ năng
multirow/booktabstừ tuần 3).Advanced: Học cách viết câu dẫn giải thích bảng ablation sao cho logic ("Removing X causes a drop of Y%...").
Ngày 23: Limitation, Conclusion, Appendix
Khái niệm: Limitation không phải "điểm yếu để xin lỗi" mà thể hiện hiểu biết sâu về phạm vi nghiên cứu. Appendix/Supplementary chứa chi tiết kỹ thuật không quan trọng bằng Method chính.
Thực hành: Hoàn thiện Conclusion + 1 mục Appendix (VD: chi tiết hyperparameter, thêm bảng kết quả phụ).
Advanced: Tìm hiểu cách một số venue tách riêng file Appendix và submit kèm bản chính (supplementary material).
Ngày 24: Mini-project tổng hợp
Khái niệm: Ráp toàn bộ kỹ năng đã học vào 1 sản phẩm hoàn chỉnh.
Thực hành: Reproduce rút gọn 1 paper ML quen thuộc (CNN/ResNet/ViT/Transformer đơn giản) thành bài 4-6 trang đúng format 1 venue đã chọn ở Ngày 16, đủ 6 phần: Abstract → Intro → Method → Experiment → Conclusion → Appendix.
Advanced: Nhờ người khác (bạn học/advisor) review bản PDF, ghi nhận feedback và sửa lại - mô phỏng đúng quy trình submit-revise thật.
Checkpoint cuối khóa: 1 file PDF hoàn chỉnh, compile sạch từ project Overleaf có Git, dùng preamble chuẩn, có ít nhất: 1 algorithm, 1 figure ghép subfigure, 1 bảng ablation dùng multirow, trích dẫn qua Zotero/.bib, đủ 6 phần theo cấu trúc paper.
Tài liệu tham khảo
The Not So Short Introduction to LaTeX (miễn phí, tiếng Anh)
Template Overleaf: NeurIPS/ICML/ICLR/AAAI
Zotero + Better BibTeX (tài liệu chính thức)
Source LaTeX của paper trên arXiv (mục "Other formats")
Hướng dẫn Overleaf ↔ Git/GitHub trên overleaf.com