Description
This course is about numerical methods and optimization algorithms in Python programming language.
*** We are NOT going to discuss ALL the theory related to numerical methods (for example how to solve differential equations etc.) – we are just going to consider the concrete implementations and numerical principles ***
The first section is about matrix algebra and linear systems such as matrix multiplication, gaussian elimination and applications of these approaches. We will consider the famous Google’s PageRank algorithm.
Then we will talk about numerical integration. How to use techniques like trapezoidal rule, Simpson formula and Monte-Carlo method to calculate the definite integral of a given function.
The next chapter is about solving differential equations with Euler’s-method and Runge-Kutta approach. We will consider examples such as the pendulum problem and ballistics.
Finally, we are going to consider the machine learning related optimization techniques. Gradient descent, stochastic gradient descent algorithm, ADAGrad, RMSProp and ADAM optimizer will be discussed – theory and implementations as well.
*** IF YOU ARE NEW TO PYTHON PROGRAMMING THEN YOU CAN LEARN ABOUT THE FUNDAMENTALS AND BASICS OF PYTHON IN THA LAST CHAPTERS ***
Section 1 – Numerical Methods Basics
numerical methods basics
floating point representation
rounding errors
performance C, Java and Python
Section 2 – Linear Algebra and Gaussian Elimination
linear algebra
matrix multiplication
Gauss-elimination
portfolio optimization with matrix algebra
Section 3 – Eigenvectors and Eigenvalues
eigenvectors and eigenvalues
applications of eigenvectors in machine learning (PCA)
Google’s PageRank algorithm explained
Section 4 – Interpolation
Lagrange interpolation theory
implementation and applications of interpolation
Section 5 – Root Finding Algorithms
solving non-linear equations
root finding
Newton’s method and bisection method
Section 6 – Numerical Integration
numerical integration
rectangle method and trapezoidal method
Simpson’s method
Monte-Carlo integration
Section 7 – Differential Equations
solving differential-equations
Euler’s method
Runge-Kutta method
pendulum problem and ballistics
Section 8 – Numerical Optimization (in Machine Learning)
gradient descent algorithm
stochastic gradient descent
ADAGrad and RMSProp algorithms
ADAM optimizer explained
*** IF YOU ARE NEW TO PYTHON PROGRAMMING THEN YOU CAN LEARN ABOUT THE FUNDAMENTALS AND BASICS OF PYTHON IN THA LAST CHAPTERS ***
Thanks for joining my course, let’s get started!
Who this course is for:
This course is meant for student with quantitative background or software engineers who are interested in numerical methods
Requirements
Mathematical background – differential equations, integration and matrix algebra
Last Updated 4/2022