diff --git a/Ch02_DNN_regression/README.md b/Ch02_DNN_regression/README.md
index 5a01a39f1..895b98904 100644
--- a/Ch02_DNN_regression/README.md
+++ b/Ch02_DNN_regression/README.md
@@ -21,22 +21,22 @@ ISBN-13: 9781718503922
2. **Dense Neural Networks for Regression**
Explores regression problems and digital twins, focusing on continuous-value prediction with multi-layer networks.
-> - [**Code 2-1: Regressing 1D Data with a Single Neuron**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_1_neuron_reg_1d/neuron_reg_1d.ipynb)
+> - [**Code 2-1: Regressing 1D Data with a Single Neuron**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_1_neuron_reg_1d/neuron_reg_1d.ipynb)
> Implements a single neuron to perform linear regression on 1D data. The example introduces weight updates using stochastic gradient descent to minimize prediction errors.
>
-> - [**Code 2-2: Regressing 2D Data with a Single Neuron**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_2_neuron_reg_2d/neuron_reg_2d.ipynb)
+> - [**Code 2-2: Regressing 2D Data with a Single Neuron**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_2_neuron_reg_2d/neuron_reg_2d.ipynb)
> Extends the single-neuron approach to multidimensional data, demonstrating the scalar product between input and weights to predict outputs in 2D data.
>
-> - [**Code 2-3: Regressing 2D Data with a Two-Layer Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_3_dnn2_reg/dnn2_reg.ipynb)
+> - [**Code 2-3: Regressing 2D Data with a Two-Layer Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_3_dnn2_reg/dnn2_reg.ipynb)
> Explores two-layer dense neural networks to model linear functions in 2D data using backpropagation for weight updates and training.
>
-> - [**Code 2-4: Fitting Data with a Neural Network Trained Using Batch Training**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_4_dnn2_reg_batches/dnn2_reg_batches.ipynb)
+> - [**Code 2-4: Fitting Data with a Neural Network Trained Using Batch Training**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_4_dnn2_reg_batches/dnn2_reg_batches.ipynb)
> Demonstrates mini-batch training for 2D regression tasks, incorporating batch randomization to improve stability and avoid local minima.
>
-> - [**Code 2-5: Training a Neural Network Splitting the Data**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_5_dnn2_reg_split/dnn2_reg_split.ipynb)
+> - [**Code 2-5: Training a Neural Network Splitting the Data**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_5_dnn2_reg_split/dnn2_reg_split.ipynb)
> Divides data into training, validation, and test sets to train and validate a two-layer network, monitoring metrics to identify overfitting.
>
-> - [**Code 2-A: Simulating the Forces Acting on an Optically Trapped Particle**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_A_optical_forces/optical_forces.ipynb)
+> - [**Code 2-A: Simulating the Forces Acting on an Optically Trapped Particle**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch02_DNN_regression/ec02_A_optical_forces/optical_forces.ipynb)
> Uses a dense neural network to emulate optical forces on a microsphere in optical tweezers, creating a digital twin to model real-world systems efficiently.
3. [Convolutional Neural Networks for Image Analysis](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN)
diff --git a/Ch03_CNN/README.md b/Ch03_CNN/README.md
index 7fa3198c2..05bf1fce5 100644
--- a/Ch03_CNN/README.md
+++ b/Ch03_CNN/README.md
@@ -23,19 +23,19 @@ ISBN-13: 9781718503922
3. **Convolutional Neural Networks for Image Analysis**
Covers convolutional neural networks (CNNs) and their application to tasks such as image classification, localization, style transfer, and DeepDream.
-> - [**Code 3-1: Implementing Neural Networks in PyTorch**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_1_cnn/cnn.ipynb)
+> - [**Code 3-1: Implementing Neural Networks in PyTorch**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_1_cnn/cnn.ipynb)
> Demonstrates the basics of convolutional neural networks, including defining convolutional layers, activation functions (ReLU), pooling/upsampling layers, and stacking them into a deeper architecture for image transformation or classification tasks. This notebook also illustrates how to use PyTorch in general.
>
-> - [**Code 3-A: Classifying Blood Smears with a Convolutional Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_A_blood_smears/blood_smears.ipynb)
+> - [**Code 3-A: Classifying Blood Smears with a Convolutional Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_A_blood_smears/blood_smears.ipynb)
> Walks you through loading a malaria dataset, preprocessing images, and training a CNN to distinguish parasitized from uninfected blood cells. It also shows how to generate training logs, measure accuracy, plot ROC curves, and visualize CNN heatmaps and activations to confirm the network’s attention on infected regions.
>
-> - [**Code 3-B: Localizing Microscopic Particles with a Convolutional Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_B_particle_localization/particle_localization.ipynb)
+> - [**Code 3-B: Localizing Microscopic Particles with a Convolutional Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_B_particle_localization/particle_localization.ipynb)
> Focuses on regression tasks (rather than classification) by predicting the (x,y) position of a trapped microparticle in noisy microscope images. It demonstrates how to manually annotate data or use simulated data for training, and includes hooking into intermediate activations to understand how the network learns positional features.
>
-> - [**Code 3-C: Creating DeepDreams**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_C_deepdream/deepdream.ipynb)
+> - [**Code 3-C: Creating DeepDreams**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_C_deepdream/deepdream.ipynb)
> Uses a pre-trained VGG16 model to generate surreal DeepDream visuals, where an image is iteratively adjusted via gradient ascent to amplify the features that specific CNN layers have learned. It implements forward hooks to capture layer activations and shows how to produce dream-like images revealing what the model sees.
>
-> - [**Code 3-D: Transferring Image Styles**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_D_style_transfer/style_transfer.ipynb)
+> - [**Code 3-D: Transferring Image Styles**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch03_CNN/ec03_D_style_transfer/style_transfer.ipynb)
> Implements neural style transfer, blending the higher-level content of one image with the lower-level textures and brush strokes of another (for example, re-painting a microscopy image in the style of a famous artwork). It demonstrates the use of Gram matrices, L-BFGS optimization, and carefully chosen layers to balance content and style.
4. [Encoders–Decoders for Latent Space Manipulation](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE)
diff --git a/Ch04_AE/README.md b/Ch04_AE/README.md
index 74ee1fbe2..02d7ce9fc 100644
--- a/Ch04_AE/README.md
+++ b/Ch04_AE/README.md
@@ -25,16 +25,16 @@ ISBN-13: 9781718503922
4. **Encoders–Decoders for Latent Space Manipulation**
Focuses on autoencoders, variational autoencoders, Wasserstein autoencoders, and anomaly detection, enabling data compression and generation.
-> - [**Code 4-1: Denoising Images with a Denoising Encoder-Decoder**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_1_denoising/denoising.ipynb)
+> - [**Code 4-1: Denoising Images with a Denoising Encoder-Decoder**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_1_denoising/denoising.ipynb)
> Implements a denoising encoder–decoder that cleans noisy microscopy images. It illustrates how to simulate noisy vs. clean pairs, train a small convolutional model to learn noise removal, and verify that the network isn’t simply memorizing one output (checking for mode collapse).
>
-> - [**Code 4-A: Generating Digit Images with Variational Autoencoders**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_A_vae_mnist/vae_mnist.ipynb)
+> - [**Code 4-A: Generating Digit Images with Variational Autoencoders**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_A_vae_mnist/vae_mnist.ipynb)
> Shows how to implement a variational autoencoder (VAE) on MNIST digits. The encoder outputs a mean and variance for latent variables, and the decoder reconstructs digits from sampled latent points. The notebook demonstrates random sampling to create new digit images and visualizes how the VAE organizes digits in the latent space.
>
-> - [**Code 4-B: Morphing Images with Wasserstein Autoencoders**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_B_wae_fashionmnist/wae_fashionmnist.ipynb)
+> - [**Code 4-B: Morphing Images with Wasserstein Autoencoders**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_B_wae_fashionmnist/wae_fashionmnist.ipynb)
> Explores a Wasserstein autoencoder (WAE) trained on Fashion-MNIST. You’ll see how to decode random latent points to generate clothing/accessory images and how to interpolate (morph) one image into another in latent space, showcasing the smooth transitions that WAEs learn.
>
-> - [**Code 4-C: Detecting ECG Anomalies with an Autoencoder**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_C_anomaly_detection/anomaly_detection.ipynb)
+> - [**Code 4-C: Detecting ECG Anomalies with an Autoencoder**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch04_AE/ec04_C_anomaly_detection/anomaly_detection.ipynb)
> Uses a 1D convolutional autoencoder to detect abnormal heartbeats in ECG data. It’s trained exclusively on normal ECGs so that reconstruction error (or distance in latent space) highlights anomalies that deviate from learned “normal” patterns. Demonstrates how to set a threshold for detecting anomalous signals and compares two approaches: reconstruction-based vs. neighbor-based in latent space.
5. [U-Nets for Image Transformation](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet)
diff --git a/Ch05_UNet/README.md b/Ch05_UNet/README.md
index 2b33d3e00..2b69b5b9e 100644
--- a/Ch05_UNet/README.md
+++ b/Ch05_UNet/README.md
@@ -27,13 +27,13 @@ ISBN-13: 9781718503922
5. **U-Nets for Image Transformation**
Discusses U-Net architectures for image segmentation, cell counting, and various biomedical imaging applications.
-> - [**Code 5-1: Segmenting Biological Tissue Images with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_1_unet/unet.ipynb)
+> - [**Code 5-1: Segmenting Biological Tissue Images with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_1_unet/unet.ipynb)
> Demonstrates how to build and train a U-Net to segment internal cell structures (for example, mitochondria) in electron micrographs. It covers creating pipelines for raw images and labeled masks, using skip connections for detail retention, applying early stopping to avoid overfitting, and evaluating performance via the Jaccard Index (IoU). The notebook also demonstrates data augmentation to improve segmentation robustness.
>
-> - [**Code 5-A: Detecting Quantum Dots in Fluorescence Images with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_A_qdots_localization/qdots_localization.ipynb)
+> - [**Code 5-A: Detecting Quantum Dots in Fluorescence Images with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_A_qdots_localization/qdots_localization.ipynb)
> Uses a U-Net to localize fluorescent quantum dots in noisy microscopy images. It simulates realistic training data with random positions, intensities, and added noise, and pairs them with masks indicating quantum dot locations. After training on these simulations, the U-Net is tested on real experimental images. You’ll see how accurately it can mark quantum dots by generating centroid-based masks.
>
-> - [**Code 5-B: Counting Cells with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_B_cell_counting/cell_counting.ipynb)
+> - [**Code 5-B: Counting Cells with a U-Net**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch05_UNet/ec05_B_cell_counting/cell_counting.ipynb)
> Applies a U-Net to create binary masks of cell nuclei, then uses connected-component labeling to count how many nuclei the mask contains. After simulating or loading real images of stained nuclei, the notebook trains a single-channel output U-Net using a binary cross-entropy loss. Accuracy is measured by comparing predicted cell counts with ground truth, reporting mean absolute and percentage errors. This pipeline automates cell counting and quantifies how close the predictions are to actual counts.
6. [Self-Supervised Learning to Exploit Symmetries](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch06_SelfSupervised)
diff --git a/Ch06_SelfSupervised/README.md b/Ch06_SelfSupervised/README.md
index e35b7d723..0d3eb4186 100644
--- a/Ch06_SelfSupervised/README.md
+++ b/Ch06_SelfSupervised/README.md
@@ -29,10 +29,10 @@ ISBN-13: 9781718503922
6. **Self-Supervised Learning to Exploit Symmetries**
Explains how to use unlabeled data and the symmetries symmetries of a problem for improved model performance with an application in particle localization.
-> - [**Code 6-1: Localizing Particles Using LodeSTAR**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch06_SelfSupervised/ec06_1_lodestar/lodestar.ipynb)
+> - [**Code 6-1: Localizing Particles Using LodeSTAR**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch06_SelfSupervised/ec06_1_lodestar/lodestar.ipynb)
> Demonstrates how to train a self-supervised neural network to determine the sub-pixel position of a particle within a microscope image. The network uses two channels for displacement and one channel for a probability distribution (intensity of detection). This example starts with small, single-particle images and shows how LodeSTAR’s architecture avoids bias by design. You’ll see how the model can accurately predict the x–y position even without direct labels—using only translations (and optionally flips) during training.
>
-> - [**Code 6-A: Localizing Multiple Cells Using LodeSTAR**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch06_SelfSupervised/ec06_A_cell_localization/cell_localization.ipynb)
+> - [**Code 6-A: Localizing Multiple Cells Using LodeSTAR**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch06_SelfSupervised/ec06_A_cell_localization/cell_localization.ipynb)
> Applies the LodeSTAR approach to detect multiple mouse stem cells in a brightfield microscopy dataset. Trained solely on a single crop containing one cell, the network can generalize to large frames with many cells. The script showcases how LodeSTAR calculates probability and displacement maps for each pixel, clusters them into detections, and evaluates performance via true centroids provided by Cell Tracking Challenge annotations.
7. [Recurrent Neural Networks for Timeseries Analysis](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch07_RNN)
diff --git a/Ch07_RNN/README.md b/Ch07_RNN/README.md
index 1a03fe865..2277c3e0e 100644
--- a/Ch07_RNN/README.md
+++ b/Ch07_RNN/README.md
@@ -31,10 +31,10 @@ ISBN-13: 9781718503922
7. **Recurrent Neural Networks for Timeseries Analysis**
Uses recurrent neural networks (RNNs), GRUs, and LSTMs to forecast time-dependent data and build a simple text translator.
-> - [**Code 7-1: Predicting Temperatures Using Recurrent Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch07_RNN/ec07_1_rnn/rnn.ipynb)
+> - [**Code 7-1: Predicting Temperatures Using Recurrent Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch07_RNN/ec07_1_rnn/rnn.ipynb)
> Demonstrates how to load the Jena Climate Dataset (a 7-year record of hourly weather data), prepare input and output sequences for time-lagged temperature prediction, and compare different RNN variants (basic RNN, stacked RNN, GRU, LSTM). Each model’s training and validation losses are plotted against a simple common-sense baseline (tomorrow’s temperature = today’s temperature). You’ll learn also to mitigate overfitting with dropout.
>
-> - [**Code 7-A: Translating with a Recurrent Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch07_RNN/ec07_A_nlp_rnn/nlp_rnn.ipynb)
+> - [**Code 7-A: Translating with a Recurrent Neural Network**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch07_RNN/ec07_A_nlp_rnn/nlp_rnn.ipynb)
> Implements a seq2seq translation model for English-to-Spanish sentences. It shows how to preprocess text corpora (tokenizing, normalizing, truncating/padding sequences), build vocabularies, load external word embeddings (GloVe), and define an encoder–decoder architecture. It details teacher forcing during training, testing with BLEU score, and visualizing example translations. The approach can also be adapted to other NLP tasks, including chatbot dialogues or more general text generation.
8. [Attention and Transformers for Sequence Processing](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention)
diff --git a/Ch08_Attention/README.md b/Ch08_Attention/README.md
index 97a6c7ca4..78f60852f 100644
--- a/Ch08_Attention/README.md
+++ b/Ch08_Attention/README.md
@@ -33,16 +33,16 @@ ISBN-13: 9781718503922
8. **Attention and Transformers for Sequence Processing**
Introduces attention mechanisms, transformer models, and vision transformers (ViT) for natural language processing (NLP) including improved text translation and sentiment analysis, and image classification.
-> - [**Code 8-1: Understanding Attention**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_1_attention/attention.ipynb)
+> - [**Code 8-1: Understanding Attention**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_1_attention/attention.ipynb)
> Builds attention modules from scratch (dot-product, trainable dot-product, additive) and applies them to toy examples, visualizing attention maps that show which tokens focus on which other tokens. It illustrates how pre-trained embeddings (GloVe) can highlight semantic relationships (like she-her) even without fine-tuning. It clarifies the difference between non-learnable and learnable key/value embeddings.
>
-> - [**Code 8-A: Translating with Attention**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_A_nlp_attn/nlp_attn.ipynb)
+> - [**Code 8-A: Translating with Attention**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_A_nlp_attn/nlp_attn.ipynb)
> Improves the seq2seq model from Chapter 7 with dot-product cross-attention to focus on the most relevant parts of source sentences during translation. It demonstrates how attention helps align multi-word phrases and resolves ambiguities. The model surpasses the earlier RNN-based approach by dynamically highlighting crucial source tokens, proving "attention is all you need" for better translations.
>
-> - [**Code 8-B: Performing Sentiment Analysis with a Transformer**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_B_transformer/transformer.ipynb)
+> - [**Code 8-B: Performing Sentiment Analysis with a Transformer**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_B_transformer/transformer.ipynb)
> Implements an encoder-only Transformer using multi-head self-attention and feedforward layers to classify the sentiment of IMDB reviews as positive or negative. Details the entire pipeline: tokenizing, building a vocabulary, batching sequences with masks, stacking multiple Transformer blocks, and adding a dense top for binary classification. The approach yields strong sentiment prediction accuracy, highlighting the parallel processing benefits of Transformers over RNN-based models.
>
-> - [**Code 8-C: Classifying Images with a Vision Transformer**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_C_vit/vit.ipynb)
+> - [**Code 8-C: Classifying Images with a Vision Transformer**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch08_Attention/ec08_C_vit/vit.ipynb)
> Shows how Transformers can replace convolutions for image tasks by splitting images into patch embeddings. The ViT model is trained from scratch on CIFAR-10, using CutMix to address its weaker inductive biases compared to CNNs. Achieves notable performance when fine-tuned and especially excels if using a pretrained backbone. This underscores ViT’s flexibility and potential to rival or outperform CNNs on visual data.
9. [Generative Adversarial Networks for Image Synthesis](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN)
diff --git a/Ch09_GAN/README.md b/Ch09_GAN/README.md
index f498a40e9..b496187b8 100644
--- a/Ch09_GAN/README.md
+++ b/Ch09_GAN/README.md
@@ -35,16 +35,16 @@ ISBN-13: 9781718503922
9. **Generative Adversarial Networks for Image Synthesis**
Demonstrates generative adversarial networks (GAN) training for image generation, domain translation (CycleGAN), and virtual staining in microscopy.
-> - [**Code 9-1: Generating New MNIST Digits with a GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_1_gan_mnist/gan_mnist.ipynb)
+> - [**Code 9-1: Generating New MNIST Digits with a GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_1_gan_mnist/gan_mnist.ipynb)
> Implements a simple Deep Convolutional GAN (DCGAN) on the MNIST dataset to generate novel handwritten digits. Illustrates how the generator maps random noise vectors into realistic images, while the discriminator learns to distinguish them from real MNIST samples. Includes visualization of loss curves and intermediate samples during training.
>
-> - [**Code 9-A: Generating MNIST Digits On Demand with a Conditional GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_A_cgan_mnist/cgan_mnist.ipynb)
+> - [**Code 9-A: Generating MNIST Digits On Demand with a Conditional GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_A_cgan_mnist/cgan_mnist.ipynb)
> Extends the basic MNIST GAN to a conditional GAN (cGAN), enabling you to specify which digit to generate. Shows how to incorporate class labels into both generator and discriminator by concatenating embedding vectors or feature maps, resulting in targeted digit generation (for example, only 7s).
>
-> - [**Code 9-B: Virtually Staining a Biological Tissue with a Conditional GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_B_virtual_staining/virtual_staining.ipynb)
+> - [**Code 9-B: Virtually Staining a Biological Tissue with a Conditional GAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_B_virtual_staining/virtual_staining.ipynb)
> Applies cGANs to transform brightfield images of human motor neurons into virtually stained fluorescence images—without using invasive chemical stains. Demonstrates how to train on paired brightfield and fluorescence images (13 z-planes to 3 fluorescence channels) and produce consistent neuron and nucleus stains. Enables faster, less-destructive microscopy in biomedical studies.
>
-> - [**Code 9-C: Converting Microscopy Images with a CycleGAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_C_cyclegan/cyclegan.ipynb)
+> - [**Code 9-C: Converting Microscopy Images with a CycleGAN**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch09_GAN/ec09_C_cyclegan/cyclegan.ipynb)
> Shows how CycleGAN can handle unpaired images in two domains (e.g., holographic vs. brightfield micrographs). The model learns a forward generator and backward generator with cycle consistency, ensuring that a transformed image can be mapped back to the original domain. Illustrates conversion between holograms and brightfield images even though paired training samples do not exist.
10. [Diffusion Models for Data Representation and Exploration](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch10_Diffusion)
diff --git a/Ch10_Diffusion/README.md b/Ch10_Diffusion/README.md
index 2e2a9a08d..49ca3f725 100644
--- a/Ch10_Diffusion/README.md
+++ b/Ch10_Diffusion/README.md
@@ -37,16 +37,16 @@ ISBN-13: 9781718503922
10. **Diffusion Models for Data Representation and Exploration**
Presents denoising diffusion models for generating and enhancing images, including text-to-image synthesis and image super-resolution.
-> - [**Code 10-1: Generating Digits with a Diffusion Model**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main//Ch10_Diffusion/ec10_1_ddpm_mnist/ddpm_mnist.ipynb)
+> - [**Code 10-1: Generating Digits with a Diffusion Model**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch10_Diffusion/ec10_1_ddpm_mnist/ddpm_mnist.ipynb)
> Implements a Denoising Diffusion Probabilistic Model (DDPM) on MNIST digits. It explains the forward process (adding Gaussian noise at each time step) and the reverse process (a trained denoising U-Net), culminating in random but plausible digit images. It also demonstrates how forward and reverse diffusion steps can be visualized, as well as how different runs from the same noise yield different samples.
>
-> - [**Code 10-A: Generating Bespoke Digits with a Conditional Diffusion Model**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main//Ch10_Diffusion/ec10_A_cddpm_mnist/cddpm_mnist.ipynb)
+> - [**Code 10-A: Generating Bespoke Digits with a Conditional Diffusion Model**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch10_Diffusion/ec10_A_cddpm_mnist/cddpm_mnist.ipynb)
> Extends the DDPM to condition on class labels using classifier-free guidance. Allows specifying which MNIST digit to generate. After training, the network can produce custom digits on demand by blending conditional and unconditional outputs.
>
-> - [**Code 10-B: Generating Images of Digits from Text Prompts**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main//Ch10_Diffusion/ec10_B_text2image/text2image.ipynb)
+> - [**Code 10-B: Generating Images of Digits from Text Prompts**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch10_Diffusion/ec10_B_text2image/text2image.ipynb)
> Demonstrates a mini text-to-image pipeline by pairing a custom transformer encoder (or pretrained CLIP) with a diffusion model. It converts sentences like "There are three horses and two lions. How many lions?" into correct digits. It also showcases classifier-free guidance, adding textual context into an attention U-Net.
>
-> - [**Code 10-C: Generating Super-Resolution Images**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main//Ch10_Diffusion/ec10_C_superresolution/superresolution.ipynb)
+> - [**Code 10-C: Generating Super-Resolution Images**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch10_Diffusion/ec10_C_superresolution/superresolution.ipynb)
> Uses a conditional diffusion model to transform low-resolution microscopy images into detailed high-resolution counterparts, showcasing the power of diffusion-based upsampling. It adapts the forward and reverse diffusion to combine the noisy target image with the low-resolution input, effectively learning a mapping to super-resolve biological data.
11. [Graph Neural Networks for Relational Data Analysis](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN)
diff --git a/Ch11_GNN/README.md b/Ch11_GNN/README.md
index 55bc7451a..a2947a0fa 100644
--- a/Ch11_GNN/README.md
+++ b/Ch11_GNN/README.md
@@ -39,13 +39,13 @@ ISBN-13: 9781718503922
11. **Graph Neural Networks for Relational Data Analysis**
Shows how graph neural networks (GNNs) can model graph-structured data (molecules, cell trajectories, physics simulations) using message passing and graph convolutions.
-> - [**Code 11-1: Predicting Molecular Properties with Graph Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_1_gnn/gnn.ipynb)
+> - [**Code 11-1: Predicting Molecular Properties with Graph Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_1_gnn/gnn.ipynb)
> Demonstrates how to implement graph convolutional and message-passing layers, apply them to the ZINC dataset, and predict molecular logP values. It highlights the stepwise approach of building GNN layers, normalizing adjacency matrices, handling node and edge embeddings, and combining them with readouts for regression on chemical compounds.
>
-> - [**Code 11-A: Simulating Complex Physical Phenomena with Graph Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_A_dynamics/dynamics.ipynb)
+> - [**Code 11-A: Simulating Complex Physical Phenomena with Graph Neural Networks**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_A_dynamics/dynamics.ipynb)
> Implements a graph-based simulator for granular particle systems (SAND dataset). It shows how a GNN can learn to predict accelerations of interacting particles from observations and iteratively simulates the system dynamics faster than traditional force-field simulations.
>
-> - [**Code 11-B: Identifying Cell Trajectories with MAGIK**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_B_magik/magik.ipynb)
+> - [**Code 11-B: Identifying Cell Trajectories with MAGIK**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch11_GNN/ec11_B_magik/magik.ipynb)
> Constructs a directed graph to model cell movement across frames in biological imaging, then trains a simplified MAGIK network to classify edges as true connections. Post-processing recovers trajectories that approximate cells’ paths accurately, even through divisions or noisy segmentations.
12. [Active Learning for Continuous Learning](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL)
diff --git a/Ch12_AL/README.md b/Ch12_AL/README.md
index 74023a45f..86d3d71c0 100644
--- a/Ch12_AL/README.md
+++ b/Ch12_AL/README.md
@@ -41,13 +41,13 @@ ISBN-13: 9781718503922
12. **Active Learning for Continuous Learning**
Describes techniques to iteratively select the most informative samples to label, improving model performance efficiently.
-> - [**Code 12-1: Training a Binary Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_1_active2/active2.ipynb)
+> - [**Code 12-1: Training a Binary Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_1_active2/active2.ipynb)
> Demonstrates the implementation of active learning for a simple binary classification task. A logistic regression model is iteratively trained on a dataset with two distinct classes by selecting the most informative samples.
>
-> - [**Code 12-2: Training a Three-Class Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_2_active3/active3.ipynb)
+> - [**Code 12-2: Training a Three-Class Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_2_active3/active3.ipynb)
> Extends active learning to a multi-class classification problem. A dataset with three groups of overlapping data points is used to test the effectiveness of active learning. It evaluates random sampling and uncertainty sampling strategies by plotting decision boundaries and observing sampling behavior near class overlaps.
>
-> - [**Code 12-A: Training an MNIST Digits Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_A_mnist_al/mnist_al.ipynb)
+> - [**Code 12-A: Training an MNIST Digits Classifier with Active Learning**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch12_AL/ec12_A_mnist_al/mnist_al.ipynb)
> Applies active learning to classify handwritten digits from the MNIST dataset using a convolutional neural network. Key elements include preprocessing the MNIST dataset, training a CNN achieving 99% accuracy on the full dataset, and comparing three active learning strategies—random, uncertainty, and adversarial sampling—where adversarial sampling achieves benchmark performance using just 3% of the labeled data.
13. [Reinforcement Learning for Strategy Optimization](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch13_RL)
diff --git a/Ch13_RL/README.md b/Ch13_RL/README.md
index 21ffce684..b48af447f 100644
--- a/Ch13_RL/README.md
+++ b/Ch13_RL/README.md
@@ -43,7 +43,7 @@ ISBN-13: 9781718503922
13. **Reinforcement Learning for Strategy Optimization**
Explains Q-learning and Deep Q-learning by teaching an agent to master games such as Tetris.
-> - [**Code 13-1: Teaching a Deep Q-Learning Agent to Play Tetris**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch13_RL/ec13_1_tetris/tetris.ipynb)
+> - [**Code 13-1: Teaching a Deep Q-Learning Agent to Play Tetris**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch13_RL/ec13_1_tetris/tetris.ipynb)
> Demonstrates how to implement a deep reinforcement learning agent to play Tetris by using Deep Q-Learning to overcome the challenges posed by the game's large state space and complex dynamics. The example begins with adapting the Tetris environment to enable efficient interaction for reinforcement learning. The agent employs a neural network to approximate Q-values, allowing it to make decisions without relying on a traditional Q-table. To balance exploration and exploitation, an epsilon-greedy strategy is used, where randomness gradually decreases as the agent learns. A replay buffer is implemented to store past experiences, ensuring diverse training data that enhances stability during learning. The agent refines its policy through iterative training, guided by the Bellman equation, leading to consistent improvements. As training progresses, the agent effectively handles randomized tile sequences and achieves performance levels comparable to skilled human players.
14. [Reservoir Computing for Predicting Chaos](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch14_RC)
diff --git a/Ch14_RC/README.md b/Ch14_RC/README.md
index 0935f8038..1b826f710 100644
--- a/Ch14_RC/README.md
+++ b/Ch14_RC/README.md
@@ -45,7 +45,7 @@ ISBN-13: 9781718503922
14. **Reservoir Computing for Predicting Chaos**
Covers reservoir computing methods for forecasting chaotic systems such as the Lorenz attractor.
-> - [**Code 14-1: Training a Reservoir Computer to Predict the Lorenz System**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch14_RC/ec14_1_lorenz/lorenz.ipynb)
+> - [**Code 14-1: Training a Reservoir Computer to Predict the Lorenz System**](https://github.com/DeepTrackAI/DeepLearningCrashCourse/tree/main/Ch14_RC/ec14_1_lorenz/lorenz.ipynb)
> Trains a reservoir computer to predict the Lorenz system, a chaotic model governed by nonlinear differential equations. The reservoir, a fixed random network of neurons, transforms input data into a higher-dimensional space, while only the output weights are trained using a regularized least squares method. After generating training and validation data from the Lorenz equations, the reservoir predicts future states of the system. It successfully replicates the Lorenz attractor, capturing the system’s chaotic dynamics and providing accurate short-term forecasts despite eventual divergence due to the system’s sensitivity to initial conditions.
---