Course Content for Julia & AI Engineering
Julia: a high-level, general-purpose dynamic programming language for scientific computing and AI engineering
First Steps
70 marks
17 Exercises & Test (60 Questions)
First steps (Part 1)
First steps in Julia (Part 1)
First steps in Julia (Part 2)
Unit 1 Test
Built-in Functions
70 marks
30 Exercises & Test (60 Questions)
Built-in functions (Part 1)
Built-in functions (Part 2)
Built-in functions in Julia (Part 1)
Built-in functions in Julia (Part 2)
Built-in functions (Part 3)
Built-in functions (Part 4)
Built-in functions in Julia (Part 3)
Built-in functions in Julia (Part 4)
Unit 2 Test
Storing and Using Information
70 marks
7 Exercises & Test (55 Questions)
Storing and using information (Part 1)
Storing and using information (Part 2)
Storing and using information in Julia (Part 1)
Storing and using information in Julia (Part 2)
Unit 3 Test
Creating Functions
70 marks
17 Exercises & Test (55 Questions)
Creating functions (Part 1)
Creating functions (Part 2)
Creating functions in Julia (Part 1)
Creating functions in Julia (Part 2)
Creating functions (Part 3)
Creating functions (Part 4)
Creating functions in Julia (Part 3)
Creating functions in Julia (Part 4)
Unit 4 Test
Booleans
70 marks
18 Exercises & Test (60 Questions)
Booleans (Part 1)
Booleans (Part 2)
Booleans in Julia (Part 1)
Booleans (Part 3)
Booleans (Part 4)
Booleans in Julia (Part 2)
Booleans in Julia (Part 3)
Unit 5 Test
Branching
70 marks
10 Exercises & Test (55 Questions)
Branching (Part 1)
Branching in Julia (Part 1)
Branching (Part 2)
Branching (Part 3)
Branching in Julia (Part 2)
Branching in Julia (Part 3)
Unit 6 Test
Building Better Programs
70 marks
23 Exercises & Test (60 Questions)
Building better programs (Part 1)
Building better programs in Julia (Part 1)
Building better programs in Julia (Part 2)
Building better programs (Part 2)
Building better programs (Part 3)
Building better programs in Julia (Part 3)
Unit 7 Test
Iteration Using While
70 marks
13 Exercises & Test (55 Questions)
Iteration using while (Part 1)
Iteration using while (Part 2)
Iteration using while (Part 3)
Iteration using while in Julia (Part 1)
Iteration using while in Julia (Part 2)
Unit 8 Test
Storing Elements in A Sequence
70 marks
24 Exercises & Test (60 Questions)
Storing elements in a sequence (Part 1)
Storing elements in a sequence (Part 2)
Storing elements in a sequence in Julia (Part 1)
Storing elements in a sequence in Julia (Part 2)
Storing elements in a sequence (Part 3)
Storing elements in a sequence in Julia (Part 3)
Unit 9 Test
Iteration Using For
70 marks
31 Exercises & Test (60 Questions)
Iteration using for (Part 1)
Iteration using for in Julia (Part 1)
Iteration using for (Part 2)
Iteration using for in Julia (Part 2)
Iteration using for (Part 3)
Iteration using for (Part 4)
Iteration using for in Julia (Part 3)
Iteration using for in Julia (Part 4)
Unit 10 Test
Bundling Information Into Objects
70 marks
15 Exercises & Test (60 Questions)
Bundling information into objects
Bundling information into objects in Julia (Part 1)
Bundling information into objects in Julia (Part 2)
Bundling information into objects in Julia (Part 3)
Unit 11 Test
Structuring Data
70 marks
17 Exercises & Test (60 Questions)
Structuring data
Structuring data in Julia (Part 1)
Structuring data in Julia (Part 2)
Structuring data in Julia (Part 3)
Unit 12 Test
Recursion
70 marks
19 Exercises & Test (44 Questions)
Recursion (Part 1)
Recursion (Part 2)
Recursion (Part 3)
Recursion in Julia (Part 1)
Recursion in Julia (Part 2)
Unit 13 Test
Applied Computing & Julia Challenges
6 Problem Sets (2019–2024)
2019 Computing Challenge
2020 Computing Challenge
2021 Computing Challenge
2022 Computing Challenge
2023 Computing Challenge
2024 Computing Challenge
Vectorized Computing & Linear Algebra
Coming Soon
Vector and Matrix Operations in Julia
Broadcasting and SIMD Vectorization
Matrix Factorizations and Decompositions
Multidimensional Arrays & Tensor Operations
Coming Soon
N-Dimensional Array Manipulation
Tensor Contraction and Permutations
Memory Layout and Cache Efficiency
Automatic Differentiation & Dual Numbers
Coming Soon
Dual Number Arithmetic
Forward-Mode Differentiation
Reverse-Mode Differentiation
Loss Functions & Numerical Optimization
Coming Soon
Loss Landscapes and Convexity
Gradient Descent and Momentum Variants
Adaptive Learning Rates: Adam and RMSProp
Neural Network Foundations
Coming Soon
Feedforward Architecture from Scratch
Layer Design and Weight Initialization
Custom Layer Implementations
Backpropagation & Computational Graphs
Coming Soon
Chain Rule in Directed Acyclic Graphs
Gradient Accumulation and Memory Management
Custom Gradient Hooks and Callbacks
Convolutional Neural Networks & Vision
Coming Soon
Spatial Convolutions and Padding Strategies
Feature Maps, Pooling and Striding
Image Classification Pipelines
Recurrent Networks & Sequential Modeling
Coming Soon
Recurrent Cell Dynamics
Long Short-Term Memory (LSTM) and GRU
Sequence-to-Sequence Modeling
Attention Mechanisms & Transformers
Coming Soon
Scaled Dot-Product Attention
Multi-Head Self-Attention Mechanics
Encoder-Decoder Transformer Implementation
Scientific Machine Learning (SciML)
Coming Soon
Differential Equation Solvers in Julia
Neural Ordinary Differential Equations (Neural ODEs)
Parameter Estimation in Dynamical Systems
Physics-Informed Neural Networks (PINNs)
Coming Soon
Embedding Physical Laws into Loss Formulations
Boundary and Initial Condition Constraints
PDE Solving with Neural Approximators
Probabilistic Machine Learning & Bayesian Modeling
Coming Soon
Probabilistic Programming Principles
Markov Chain Monte Carlo (MCMC) Sampling
Variational Inference and Posterior Analysis
Reinforcement Learning & Policy Gradients
Coming Soon
Markov Decision Processes and Bellman Equations
Q-Learning and Value Function Approximation
Policy Gradient Methods
Generative Modeling & Representation Learning
Coming Soon
Autoencoders and Dimensionality Reduction
Variational Autoencoders (VAEs)
Diffusion Models and Latent Spaces
High-Performance Benchmarking & GPU Acceleration
Coming Soon
Profiling, Type Stability and Memory Allocation
Multithreading and Distributed Computing
CUDA.jl Kernel Execution
AI Engineering Capstone Project
Coming Soon
End-to-End Scientific Machine Learning Pipeline
Model Verification, Testing and Benchmarking
ELSIE Deployment and Technical Defense