# Computational Linear Algebra with Python & NumPy

Computational Linear Algebra with Python & NumPy, Linear algebra computations using NumPy & SciPy, matrix operations, linear decomposition, principal component analysis.

## Course Description

Welcome to Computational Linear Algebra with Python & Numpy course. This is a comprehensive linear algebra tutorial for data scientists and machine learning engineers, this course will cover fundamental concepts, practical implementations, and real-world applications to enhance your understanding and expertise in the field. This course is a perfect combination between linear algebra and python, making it an ideal opportunity for anyone who is looking to practice their programming skills while improving their mathematical knowledge. In the introduction session, you will learn the basic fundamentals of linear algebra, such as getting to know its use cases and key concepts. Then, in the next section, we will start the first lesson where you will get to know more about the basic concepts like scalar, vector, and matrices. In addition, you will also learn about matrix operations like addition, subtraction, two by two matrix multiplications, and three by three matrix multiplications. Afterward, in the second lesson, you will learn how to perform inverse and transpose on matrices manually, then after that you will also learn how to use Numpy to do the calculation. In the third lesson, you will learn how to calculate determinants of two by two matrices and three by three matrices both manually and using Numpy. Then, in the fourth lesson, you will learn how to solve complex linear equations and to make sure you understand the concepts, we will try many practice problems. Meanwhile, in the fifth lesson, you will learn how to calculate eigenvalues and eigenvectors both manually and using Numpy. Then, in the sixth lesson, you will learn about linear decomposition particularly LU, QR, and Cholesky decomposition. Firstly we will do the calculation manually then after you understand the basic concepts, then we will utilize Numpy for computations. After that, in the seventh lesson, you will learn how to create a tensor with specific size using Numpy and even more exciting, we will play around with the tensors and learn how to access a value of tensor by using slicing and indexing techniques. Then, in the eighth lesson, you will learn how to calculate singular value decomposition both manually and also using Numpy. After we are done with linear algebra lessons, we will make sure that you have the opportunity to implement all concepts that you have learnt into real world projects. In total, there will be five projects, in the first project, you will build recommendation engine using linear decomposition, in the second project, you will build image compressor using singular value decomposition, in the third project, you will predict real estate market using linear regression, in the fourth project, you will do text mining using non negative matrix factorization, and in the last project, you will perform dimensionality reduction using principal component analysis.

First of all, before getting into the course, we need to ask ourselves this question, why should we learn about computational linear algebra? Well, here is my answer. Linear algebra serves as the foundation for many advanced mathematical concepts and techniques used in machine learning, data science, and engineering. In machine learning, linear algebra is essential for understanding and implementing algorithms such as linear regression, support vector machines, and neural networks. In data science, linear algebra enables us to analyze large datasets efficiently, perform dimensionality reduction, and solve optimization problems. In engineering, linear algebra plays a critical role in modeling physical systems, designing control systems, and solving differential equations.

Below are things that you can expect to learn from this course:

- Learn the basic fundamentals of linear algebra, such as getting to know its real world applications and important key concepts
- Learn about the difference between scalar, vector, matrix, and tensor
- Learn how to add and subtract matrix using Numpy
- Learn how to multiply matrix using Numpy
- Learn how to inverse and transpose matrix using Numpy
- Learn how to calculate matrix determinant using Numpy
- Learn how to calculate matrix norm, trace, and rank using Numpy
- Learn how to solve system of linear equation using Numpy
- Learn how to calculate eigenvalues and eigenvectors using Numpy
- Learn about LU, QR, and Cholesky decomposition
- Learn how to create, slice, and reshape tensor using Numpy
- Learn how to build movie recommendation engine using linear decomposition
- Learn how to build image compressor using singular value decomposition
- Learn how to predict real estate market using linear regression
- Learn how to do text mining using non negative matrix factorization
- Learn how to perform dimensionality reduction using principal component analysis