Programming · WDC-94

Deep Learning with Python

Deep Learning with Python is an advanced course in building deep learning models with PyTorch and Keras 3, from neural network principles, CNNs, transfer learning and YOLO object detection to LSTMs, Transformers and fine-tuning Thai language models with Hugging Face. It suits developers with Python and machine learning foundations, and data scientists who want to update their toolset.

Updated
From 12,150 THB / person 13,500 −10% excl. VAT 7% · group rates available
PDFDownload the course outline
  • Duration18 hours · 3 days
  • FormatOnsite / live online
  • Next roundOn request
  • CertificateIncluded

Course overview

Deep learning is the engine behind the AI systems people use every day, from image classification and object detection on camera feeds to sentiment analysis of text and large language models. But the tools move fast: the TensorFlow 1 and Keras 2 style code that used to be taught no longer works, and key libraries such as Hugging Face Transformers now centre on PyTorch. Developers who want to build their own models need to understand both the principles and today's toolset.

This course takes learners through building deep learning models in Python with PyTorch 2 at its core, alongside Keras 3. It starts with neural network principles, backpropagation and a training loop written by hand, then moves on to training techniques, CNNs for images, transfer learning, object detection with Ultralytics YOLO26 and autoencoders. It continues with sequence data using LSTM and GRU, the Transformer architecture, fine-tuning a Thai sentiment analysis model with Hugging Face, and exporting models to ONNX. It closes with a capstone in which each learner builds a model with their own demo page. (3 days, 6 hours per day, 18 hours in total, Advanced level.)

What you’ll gain

  • Understand neural networks, loss functions, backpropagation and optimisers
  • Use PyTorch tensors, autograd, Dataset and DataLoader, and write a training loop by hand
  • Build and train models with Keras 3 and understand how to choose a backend
  • Build CNNs for image classification and apply transfer learning from pretrained models
  • Train a YOLO26 object detection model on your own dataset
  • Apply LSTM, GRU and Transformer models to sequence data and text
  • Fine-tune a language model for sentiment analysis with Hugging Face Transformers
  • Export models to ONNX and build a demo page that others can try

Who this course is for

  • Developers and web developers with Python skills who want to build AI systems with deep learning
  • Data scientists and ML engineers who want to move from TensorFlow 1 or Keras 2 to current tools
  • People who have completed Python for Machine Learning or already have machine learning foundations
  • Lecturers and students working on projects with images, text or time series data

Prerequisites

  • Confident Python, including functions, classes and basic use of NumPy and pandas
  • Machine learning basics such as train/test splits, overfitting and model evaluation
  • Upper secondary school maths; matrices and derivatives are explained as far as needed in class
  • A Google account for Google Colab and a free Hugging Face account

Curriculum

Course Details

This is the 2026 edition that replaces the previous content of Deep Learning with Python. It keeps the original core of neural networks, CNNs, object detection with YOLO, transfer learning, LSTM and GRU, autoencoders and BERT sentiment analysis, but moves the tooling from the older TensorFlow approach to PyTorch 2 with Keras 3, updates object detection to YOLO26, uses Hugging Face Transformers for language work, and adds Transformers, fine-tuning and ONNX export. It runs for 3 days, 6 hours per day (18 hours in total, 09:00-16:00), as lectures with labs. Advanced level. Labs run on Google Colab, so no local GPU is needed. Learners without machine learning foundations are advised to take Python for Machine Learning first.

Day 1 Neural Networks, PyTorch and Keras 3

Section 1: Lab: Setting Up for Deep Learning

  • The deep learning toolset in 2026: PyTorch, Keras 3 and Hugging Face
  • Use Google Colab with a GPU and confirm that code really runs on CUDA
  • Install locally with uv, with Apple Silicon (MPS) as an option
  • Organise the project and record library versions so results can be reproduced

Section 2: From Machine Learning to Neural Networks

  • Neurons, weights, biases and activation functions such as ReLU and softmax
  • Loss functions for regression and classification
  • How backpropagation and gradient descent work
  • Optimisers such as SGD, Adam and AdamW, and the role of the learning rate
  • An overview of today's CNNs, RNNs, Transformers and foundation models

Section 3: Lab: Tensors and Autograd in PyTorch

  • Create and manipulate tensors and shapes, and move data to the GPU
  • How autograd computes gradients automatically
  • Build models with nn.Module and basic layers such as Linear
  • Prepare data in batches with Dataset and DataLoader

Section 4: Lab: Writing a Training Loop in PyTorch

  • The sequence of forward pass, loss, backward pass and optimiser step
  • Split training and validation sets and track loss and accuracy
  • Build an MLP for regression and classification
  • Save and load models with state_dict and checkpoints
  • Read training curves to spot overfitting and underfitting

Section 5: Lab: Building Models Faster with Keras 3

  • Multi-backend Keras 3 running on PyTorch, JAX or TensorFlow
  • The Sequential API and the Functional API for multi-input models
  • compile, fit and callbacks such as EarlyStopping and ModelCheckpoint
  • Save models as .keras files and how this differs from Keras 2
  • Compare Keras code with the hand-written PyTorch training loop
Day 2 Computer Vision and Generative Models

Section 6: Training Models Well and Fast

  • Reduce overfitting with dropout, weight decay and data augmentation
  • Batch normalisation and weight initialisation
  • Learning rate schedules and early stopping
  • Mixed precision with torch.autocast and speed-ups with torch.compile
  • Track experiments and compare results systematically

Section 7: Lab: CNNs for Image Classification

  • Convolution, filters, stride, padding and pooling
  • Build a CNN from scratch to classify product and everyday images
  • Visualise feature maps to see what each layer learns
  • Evaluate with a confusion matrix and analyse misclassified images

Section 8: Lab: Transfer Learning and Fine-tuning

  • Load pretrained models with ready-made weights from torchvision
  • Freeze the early layers, replace the final layer and train on your own classes
  • Unfreeze some layers to fine-tune at a low learning rate
  • Use pretrained models from KerasHub as an alternative
  • Lab: build an image classifier from your own small dataset

Section 9: Lab: Object Detection with YOLO26

  • Object detection principles: bounding boxes, IoU and mAP
  • Run pretrained YOLO26 models on images and video with Ultralytics
  • Prepare a dataset in YOLO format and label images
  • Train a model on your own data and read the evaluation results
  • Export the model and what to know about the AGPL-3.0 licence

Section 10: Autoencoders and Generative Models

  • Autoencoders for compressing data and removing noise from images
  • Detect anomalies from the reconstruction error
  • The ideas behind VAEs and GANs made simple
  • An overview of diffusion models behind today's image generation tools
  • Lab: an autoencoder that flags abnormal product images
Day 3 Sequence Data, Transformers and Deployment

Section 11: Lab: RNN, LSTM and GRU for Sequence Data

  • Sequence data and shaping it into windows for training
  • RNNs and the vanishing gradient problem
  • How LSTM and GRU handle long-term memory
  • Forecast a time series such as daily sales and compare against a baseline

Section 12: Transformers and the Attention Mechanism

  • The limits of RNNs that led to attention
  • Self-attention, multi-head attention and positional encoding
  • BERT-style encoders compared with GPT-style decoders
  • Tokenisation, embeddings and word segmentation in Thai
  • Lab: build a small Transformer block in PyTorch

Section 13: Lab: Sentiment Analysis with Hugging Face

  • Use a pipeline to run sentiment analysis with a model from the Hugging Face Hub
  • Prepare Thai review data with the Datasets library and a tokeniser
  • Fine-tune a Thai language model such as WangchanBERTa with Trainer
  • Evaluate with F1-score and analyse the sentences the model gets wrong
  • When to fine-tune a small model and when to call an LLM through an API

Section 14: Lab: Putting Models to Use

  • Export PyTorch and Keras models to ONNX and run them with ONNX Runtime
  • Shrink and speed up models with basic quantisation
  • Build a demo page with Gradio and share it on Hugging Face Spaces
  • Care points on bias, personal data, PDPA and the copyright of training data

Section 15: Workshop: Capstone Project

  • Choose an image, text or time series problem and define the metrics
  • Choose an architecture or pretrained model that fits the data
  • Train, tune and compare against a baseline
  • Export the model, build a demo page and present the results with their limits

Schedule & training options

For individuals — public rounds

No public rounds are open right now. Join the waiting list and we will contact you first when the next round opens, or ask us on LINE. Or call 02-570-8449 or 088-807-9770

For organisations — in-house / private

  • Tailor the content to your team’s tools and projects
  • Your dates, at your office or live online
  • Quotation with tax ID for procurement
Corporate training quote

Instructors

Frequently asked questions

How does a neural network work?

A neural network is made of layers of neurons that take inputs, multiply them by weights, add a bias and pass the result through an activation function to the next layer until an output is produced. During training, a loss function compares the output with the correct answer, backpropagation works out how each weight should change, and an optimiser such as Adam or AdamW adjusts the weights over many rounds until the error falls. On the course you write the training loop yourself in PyTorch to see every step.

What is a CNN, and why is it suited to image tasks?

A CNN (convolutional neural network) slides small filters across an image to detect features wherever they appear. Early layers pick up edges and colours, later layers combine them into shapes and objects, and pooling reduces the data size. Reusing the same filters across the image needs far fewer parameters than a fully connected network, which makes CNNs suit image classification and underpins object detectors such as YOLO, used on the course in its YOLO26 version.

What is transfer learning, and how does it help deep learning work?

Transfer learning reuses a model already trained on a large dataset for your own task. You freeze the early layers that capture general features, replace the final layer to match your classes and train it, then optionally unfreeze some layers to fine-tune at a low learning rate. It needs far less data and time than training from scratch. On the course you use pretrained models from torchvision and KerasHub for images, and language models from Hugging Face for text.

Who is the Deep Learning with Python course for, and what should I know beforehand?

It suits developers and web developers with Python skills who want to build AI systems with deep learning, as well as data scientists who want to move from TensorFlow 1 or Keras 2 to current tools. You should be confident in Python and understand machine learning basics such as splitting data and evaluating models. If you do not have these yet, Python for Machine Learning is a good first step.

What will I be able to do after the Deep Learning with Python course?

You will be able to explain how neural networks work, write a training loop in PyTorch and build models with Keras 3, create CNNs for image classification, apply transfer learning, train YOLO26 to detect objects in your own data, forecast sequences with LSTM and GRU, understand Transformers, fine-tune a Thai sentiment analysis model with Hugging Face, export models to ONNX and build a demo page with Gradio. Participants who complete the training receive a Certificate of Completion.

Can the Deep Learning with Python course be run in-house for our team?

Yes. It can be run in-house for your team, with examples adapted to your work, such as classifying images, detecting objects or analysing text in problems similar to your own data. You can request a quotation from this page, or contact us on LINE @itgenius or by phone on 02-570-8449.

Related articles

Articles are published in Thai.