This course teaches you about one popular technique used in **machine learning**, **data science** and **statistics**: **linear regression**. We cover the theory from the ground up: derivation of the solution, and applications to real-world problems. We show you how one might code their own linear regression module in Python.

Linear regression is the simplest machine learning model you can learn, yet there is so much depth that you'll be returning to it for years to come. That's why it's a great introductory course if you're interested in taking your first steps in the fields of:

In the first section, I will show you how to use 1-D linear regression to prove that**Moore's Law** is true.

What's that you say? Moore's Law is not linear?

You are correct! I will show you how linear regression can still be applied.

In the next section, we will extend 1-D linear regression to any-dimensional linear regression - in other words, how to create a machine learning model that can learn from multiple inputs.

We will apply multi-dimensional linear regression to predicting a patient's systolic blood pressure given their age and weight.

Finally, we will discuss some practical machine learning issues that you want to be mindful of when you perform data analysis, such as generalization, overfitting, train-test splits, and so on.

This course does not require any external materials. Everything needed (Python, and some Python libraries) can be obtained for FREE.

If you are a programmer and you want to enhance your coding abilities by learning about data science, then this course is for you. If you have a technical or mathematical background, and you want to know how to apply your skills as a software engineer or "hacker", this course may be useful.

This course focuses on "how to build and understand", not just "how to use". Anyone can learn to use an API in 15 minutes after reading some documentation. It's not about "remembering facts", it's about "seeing for yourself" via experimentation. It will teach you how to visualize what's happening in the model internally. If you want more than just a superficial look at machine learning models, this course is for you.

Suggested Prerequisites:

Tips for success:

Linear regression is the simplest machine learning model you can learn, yet there is so much depth that you'll be returning to it for years to come. That's why it's a great introductory course if you're interested in taking your first steps in the fields of:

- deep learning
- machine learning
- data science
- statistics

In the first section, I will show you how to use 1-D linear regression to prove that

What's that you say? Moore's Law is not linear?

You are correct! I will show you how linear regression can still be applied.

In the next section, we will extend 1-D linear regression to any-dimensional linear regression - in other words, how to create a machine learning model that can learn from multiple inputs.

We will apply multi-dimensional linear regression to predicting a patient's systolic blood pressure given their age and weight.

Finally, we will discuss some practical machine learning issues that you want to be mindful of when you perform data analysis, such as generalization, overfitting, train-test splits, and so on.

This course does not require any external materials. Everything needed (Python, and some Python libraries) can be obtained for FREE.

If you are a programmer and you want to enhance your coding abilities by learning about data science, then this course is for you. If you have a technical or mathematical background, and you want to know how to apply your skills as a software engineer or "hacker", this course may be useful.

This course focuses on "how to build and understand", not just "how to use". Anyone can learn to use an API in 15 minutes after reading some documentation. It's not about "remembering facts", it's about "seeing for yourself" via experimentation. It will teach you how to visualize what's happening in the model internally. If you want more than just a superficial look at machine learning models, this course is for you.

Suggested Prerequisites:

- calculus
- matrix arithmetic (adding, multiplying)
- probability
- Python coding: if/else, loops, lists, dicts, sets
- Numpy coding: matrix and vector operations, loading a CSV file

Tips for success:

- Use the video speed changer! Personally, I like to watch at 2x.
- Take handwritten notes. This will drastically increase your ability to retain the information.
- Write down the equations. If you don't, I guarantee it will just look like gibberish.
- Ask lots of questions on the discussion board. The more the better!
- Don't get discouraged if you can't solve every exercise right away. Sometimes it'll take hours, days, or maybe weeks!
- Write code yourself, this is an applied course! Don't be a "couch potato".