강의

챌린지

멘토링

로드맵

커뮤니티

Relearning Deep Learning with PyTorch - Understanding the Principles and Implementing Them Yourself

This course consists of 47 lessons, totaling approximately 39 hours, in which you build deep learning from the ground up with PyTorch. There are many deep learning courses, but most fall into one of two categories. Either they skim only the basics of using libraries, leaving you unsure why the code is written the way it is, or they start with equations and leave you giving up halfway through. This course takes a different approach. First, you create a result; then you dig into what happened under the hood. The course begins with pretrained models. You will run image classification, try inpainting with Stable Diffusion, and even practice image captioning with BLIP. Because you produce tangible results from the very first lesson, you gain the motivation to learn the theory that follows. Next comes the core of this course. Tensors are covered over seven lessons. In addition to indexing and broadcasting, you will explore memory structures such as storage and strides, memory contiguity management, GPU operations, and conversions between tensors and NumPy arrays. It is rare to find a Korean-language course that covers tensors in this much depth. Once you understand this part, you will read all subsequent code differently. You will then learn preprocessing that converts real-world data into tensors. The course covers different data types, including image color channels, tabular data and one-hot encoding, time series, and text embeddings. Moving on to the principles of training, you will implement loss functions and gradient descent yourself using numerical differentiation, and then see how Autograd automates the process. Only those who have built it themselves can truly appreciate the convenience of automatic differentiation. The second half focuses on neural network architectures. You will build deep neural networks with nn.Module and classify CIFAR-10, encounter the limitations of fully connected neural networks, and naturally arrive at why CNNs are necessary. Finally, you will move on to text generation, covering everything from bigram models to embeddings and MLP-based generative models, and then the principles of Attention’s Query, Key, and Value. If you know how to use Python and want to properly understand deep learning, what you will take away from this course is not example code, but the ability to read and understand the structure of any model you encounter.

1 learners are taking this course

Level Basic

Course period Unlimited

Deep Learning(DL)
Deep Learning(DL)
deep-neural-network
deep-neural-network
Tensorflow
Tensorflow
NLP
NLP
Computer Vision(CV)
Computer Vision(CV)
Deep Learning(DL)
Deep Learning(DL)
deep-neural-network
deep-neural-network
Tensorflow
Tensorflow
NLP
NLP
Computer Vision(CV)
Computer Vision(CV)

What you will gain after the course

  • Overall PyTorch Pipeline Flow - Build a deep learning training pipeline using Dataset and DataLoader

  • Understand the internal structure of tensors — indexing, broadcasting, storage, strides, and memory contiguity.

  • Tensor Conversion by Data Type - Images, tables, time-series, and text data can be preprocessed into tensors for training.

  • Building Deep Neural Networks - You can design neural networks with nn.Module and Sequential and complete the training and validation loops.

  • Generative Models and Attention - Implement a text generation model and explain the principles of Query, Key, and Value-based Attention.

  • Use pretrained models and generative AI hands-on for image classification, Stable Diffusion inpainting, and BLIP captioning.

  • GPU Computation and NumPy Integration - Apply GPU-accelerated computation, convert between tensors and NumPy, and save and restore tensors.

  • Learning Principles and Autograd - Implement loss functions and gradient descent yourself, and apply automatic differentiation with Autograd.

  • CNN Design and Optimization - Understand the principles of convolution and pooling, and design and evaluate image classification models.

Learn Deep Learning with PyTorch: From Tensors to CNNs and Attention

This is a hands-on course that teaches the core principles of deep learning step by step, starting with the basics and using PyTorch.

In this course, you will learn by implementing in code a training pipeline using Dataset and DataLoader, the memory structure and operations of tensors, GPU acceleration and NumPy integration, data preprocessing, loss functions and gradient descent, Autograd and backpropagation, neural network design and training, CNN-based image classification, and finally text generation and the principles of Attention's Query, Key, and Value.

It also covers practical applications of generative AI and multimodal AI, including image classification using pretrained models, Stable Diffusion inpainting, and BLIP image captioning.

The technologies you learn can be applied in the fields of artificial intelligence (AI), deep learning, computer vision, natural language processing (NLP), generative AI, data science, and AI engineering.

The course goes beyond explaining concepts by using actual code and execution results to examine how each technology works. In particular, you will work directly with tensor indexing, broadcasting, Storage, Stride, and memory contiguity, with a focus on developing the ability to understand the internal structure of models and tensor operations rather than simply using PyTorch code.

What You’ll Learn

Section: Key Learning Content

In this course, you will progressively learn the core concepts of deep learning and practical implementation methods using PyTorch.

1. PyTorch Deep Learning Pipeline

  • Setting Up the PyTorch Development Environment

  • Structure and Use of Datasets and DataLoaders

  • Understanding the entire process of inputting data into a model and training it

  • Image Classification Using a Pretrained Model

  • Inpainting with Stable Diffusion

  • Image Captioning Using BLIP

2. Tensor Structure and Operations

  • Understanding the Basic Concepts and Dimensions of Tensors

  • Indexing and Slicing

  • Operations Using Broadcasting

  • Named Tensors and Data Type Conversion

  • Tensor Storage and Memory Structure

  • Strides and Memory Contiguity

  • Performing Tensor Operations on a GPU

  • Converting Between NumPy and PyTorch Tensors

  • Saving and Restoring Tensors

3. Converting Various Data into Tensors

  • Representing Image Data as Tensors and Preprocessing

  • Dimension Changes and Normalization

  • 3D Data Processing

  • Tabular Data and One-Hot Encoding

  • Statistical Analysis and Boolean Indexing

  • Preprocessing and Dimensional Transformation of Time-Series Data

  • Text Normalization and Word Embeddings

4. Principles of Deep Learning Training

  • Concepts of Linear Models and Parameters

  • The Role of the Loss Function

  • Principles of Gradient Descent

  • Understanding Differentiation and the Chain Rule

  • Implementing a Training Loop Directly

  • Methods for Stabilizing Training

  • Automatic differentiation using Autograd

  • Principles and Implementation of Backpropagation

  • Applying an Optimizer

  • Model Validation and Performance Evaluation

5. Building Deep Neural Networks

  • Understanding the Limitations of Linear Models

  • The Role of Activation Functions

  • Using nn.Module and Linear Layers

  • Hidden Layer Configuration

  • Model design using Sequential

  • Image classification using the CIFAR-10 dataset

  • Normalization and Softmax

  • Batch-Based Training and NLLLoss

  • Training Using a GPU

  • Checking for overfitting and calculating the number of parameters

  • Understanding the Limitations of Fully Connected Networks

6. CNN and Image Classification

  • Why CNNs Are Needed and Their Background and Origins

  • Principles of Convolution

  • The Role of Pooling

  • Designing a CNN Network Architecture

  • Differences between the Module API and the Functional API

  • Implementing a CNN Training Loop

  • Accuracy evaluation

  • CNN Model Architecture and Performance Optimization

7. Text Generation and Attention

  • Concepts of Text Generation and Self-Supervised Learning

  • Character sequence analysis using a Bigram model

  • Subsequence Construction

  • Principles of Embeddings

  • Implementing an MLP-Based Text Generation Model

  • Fundamental Principles of Attention

  • Understanding the roles of Query, Key, and Value

Learning Objectives

By the end of the course, you will go beyond simply using the PyTorch API to understand and implement at the code level how Tensors are structured and operated on in memory, how models are trained and backpropagation works, and the principles behind how CNNs and Attention work.

Before You Enroll

Prerequisites & Notices

This course is an intermediate-level deep learning course and requires a basic understanding of Python and NumPy.

Prerequisites

  • You should know the basic syntax of Python.

  • Basic knowledge of Python, including functions, classes, lists, and dictionaries, is required.

  • Experience with basic array operations in NumPy is recommended.

  • It is recommended that you have a high school level of mathematics and a basic understanding of differentiation.

  • The mathematical concepts needed for calculus and deep learning will also be explained again in the course.

  • You should be able to use a Python 3 development environment or Google Colab.

  • Having a GPU allows you to proceed with learning and hands-on practice more quickly, but most exercises can also be done on a CPU.

Learning Method

We recommend watching each lecture in order while writing and running the explained code yourself. Rather than simply watching the videos, it is more effective to modify and run the example code provided in the lectures yourself and observe how Tensor, Autograd, Neural Network, CNN, and other components work.

In particular, after learning each concept, it is recommended that you create and run small exercises yourself and learn by checking the results and errors.

Course quality

The course is structured so that you can clearly follow the code and concept explanations, and learn by following the Python and PyTorch exercises. We recommend learning in a PC environment with a large screen, running the code yourself as you go.

Questions and Learning Support

If you encounter anything difficult to understand while studying or run into problems while executing the code, you can ask questions using the lecture’s Q&A and discussion feature.

When asking a question, you can receive more accurate help by including the code where the problem occurred, the error message, and the methods you tried.

The course content may be updated as necessary based on changes to the lecture material and hands-on practice environment.

Recommended for
these people

Who is this course right for?

  • A developer who took an introductory deep learning course but felt frustrated because they couldn’t understand how it worked.

  • An engineer switching from TensorFlow to PyTorch

  • Researchers and graduate students who get stuck on tensor manipulation when reading implementation code for academic papers

  • Practitioners who only use pretrained models without understanding what’s inside them

  • Those who want to understand how generative AI works at the code level

  • Learners who once gave up because deep learning was difficult and are looking to start again

  • Those preparing for employment or a career change related to AI and seeking to build a solid foundation.

Need to know before starting?

  • CNN Design and Optimization - Understand the principles of convolution and pooling, and design and evaluate image classification models.

  • Basic experience using NumPy

  • High school-level mathematics (having been exposed to the concept of derivatives is sufficient; it will be covered again in the lecture)

  • Python 3 development environment or Google Colab account

  • GPU environment recommended (most exercises can still be completed on a CPU, and Colab’s free GPU can be used)

  • XMind or a free viewer is required to view the course materials.

Hello
This is it learner

IT training programs led by hands-on experts and professional instructors in various IT fields, offering practical, hands-on courses in programming, software development, data analysis, artificial intelligence, networking, information technology, and more. Through educational content that reflects the latest IT technologies and industry trends, these programs help learners acquire both theoretical knowledge and practical skills while adapting to the rapidly changing IT environment.

More

Curriculum

All

47 lectures ∙ (37hr 47min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

it learner's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!

Limited time deal

$80,080.00

20%

$77.00