March 13, 2020
This article is part of the series “Common Beginner Questions“.
This article will answer the question, “I meet the prerequisites, but I can’t understand your course. Why?”
The short answer:
You THINK you meet the prerequisites, but in REALITY, you do not.
Questions you should ask yourself:
- Do I have any incentive to lie to you about the prerequisites? Why would I want to have a bunch of frustrated students who rate the course poorly?
- Does it make sense for the student to decide whether or not they meet the prerequisites, or the instructor?
- If you think “student”: That’s like saying a student of a driving school can decide whether or not they are ready to drive, which is clearly nonsense. The driving instructor decides whether or not you are ready! Obviously, driving would be very unsafe if we just let everyone decide for themselves when they are allowed to drive…
The long answer:
The simplest way to discuss this is by way of example. Let’s take my Linear Regression course.
It depends on 3 undergraduate / college-level math topics:
- Matrix arithmetic (I hesitate to say “linear algebra” because it doesn’t depend on most of the college-level topics of linear algebra, just high school-level matrix manipulation)
The matrix and vector arithmetic part should have already been covered in your high school math courses, and you should have applied those concepts already in Calculus 3, which typically covers vector calculus and some differential equations.
Not everyone is an A+ student
Let’s get this out of the way. Not everyone is an A+ student.
If you got a B or a C (or worse), there were many things you didn’t understand.
You passed the course, but it still means you didn’t understand 20% or more of the material.
That’s fine if you just need the course to progress in your degree.
That’s NOT fine if you need to apply the concepts in later courses.
If you got a D or an F, forget it. It doesn’t count at all.
So when I say “calculus is a prerequisite”, I don’t mean “you took a calculus class”, I mean you actually understand everything you learned and you’re able to apply it now.
If you got a B/C/D/F/whatever, act like a mature, responsible adult and just be proactive. Learn the skills you need to learn to get where you want to go, and stop blaming others for your insufficiencies.
To be very clear: this is not me being a hardass or being elitist.
I’m telling you to build these skills BEFORE taking this course, because you need these skills DURING the course.
Isn’t this just common sense?
“I did calculus 20 years ago and forgot everything, does that count?”
It should go without saying: no, it does not count.
You need to apply these concepts.
If you don’t know the concepts, you can’t apply them.
Many of the “older” generation like the idea of credentials.
“If I just get a piece of paper saying I know this subject, I’m good!”
No, you’re not good.
When I say calculus is a prerequisite, I don’t mean you need to show me a certificate saying you’ve learned calculus. (C’mon guys).
You need the skills to back it up.
The reason should be obvious.
“You shouldn’t assume students know <X>”
This one always gets me.
I always laugh when I see this and think, “yup, another person who can’t wrap their head around the concept of following instructions”.
Guys, the instructions are there.
They’re called the prerequisites.
Udemy students are notorious for not following instructions, which is why I’ve listed them TWICE in the course description.
On top of that, I mention it AGAIN in the lecture “How to succeed in this course”, which usually follows the introduction and outline lecture.
I mention them AGAIN in the FAQ, in the lectures “Is this course for beginners or experts?” and “How to succeed in this course (long version)”.
Yes, I really mention it that many times, because some students are that resistant to following them.
Really, it’s just an excuse for me to say: “I mentioned the prerequisites five times, and you still didn’t follow them?” 😉
There’s a difference between:
- Assuming you know something and not giving you any warning
- Assuming you know something because I TOLD YOU to know it and REMINDED you several times
I hope that the difference is obvious.
Example 1: Matrix Calculus
Let’s give some examples of students who think they meet the prerequisites, but really don’t.
A good example is matrix calculus, used a few times in my Linear Regression course (in a very basic way).
It’s meant to be an introductory course in machine learning and paves the way for all the other more advanced courses I teach (25+ so far).
- Matrix calculus is not a prerequisite of this course
- Matrix calculus doesn’t need to be a prerequisite to this course
- There is no “class” on matrix calculus that you can take
Some beginner students see the Matrix Cookbook and freak out. Why?
It’s not because I’ve failed to teach them “matrix calculus”.
It’s because they are not good at regular calculus! (And to be clear – that’s your fault).
Remember, after you’ve passed your calculus 1/2/3 classes, it’s all about applying what you learned in later courses.
Matrix calculus is essentially partial differentiation applied to the matrix and vector arithmetic you already learned in high school.
Some beginner students have asked me to show them the relevant rule in the matrix cookbook, or assume that there’s some “trick” to learning how to use this book.
It’s a book. You’re supposed to have the skills to read a book.
Given a book, you should be able to look up relevant information.
These are basic life skills, man!
Example 2: Multivariate Normal Distribution and Probability
Probability is a tricky subject, because it’s taught at all levels (high school, college, and graduate school).
For machine learning, the most relevant level is college level. You can watch this video for more details: https://youtu.be/5Iq7tcrTnWA
It should be obvious in any case:
- Obviously, I don’t mean high school probability, since machine learning is a 3rd-4th year subject
- Obviously, I don’t mean graduate level probability, because most people don’t have graduate degrees (but again, graduate school comes after 4th year)
If your level of probability is: p(heads) = # heads / (# heads + # tails), that’s just not enough.
Seeing a multivariate normal PDF shouldn’t scare you.
If it does, then the correct course of action is NOT: “Hey, you haven’t explained this! BAD TEACHER! He needs to bring the course DOWN to MY level!”
The correct course of action IS: “Hmm, I wonder why I haven’t seen this before? Let me look it up and double check whether or not I meet the prerequisites. I’ll research this by myself so I can catch up to my fellow students”.
It’s your responsibility to look up the correct level of probability of this course (after I’ve made it clear), and it’s your responsibility to catch up on topics you don’t know.
It’s not my responsibility to teach you everything from scratch (a whole new course for free, are you kidding?)
Basic topics you should know:
- PDFs, PMFs, CDFs
- Common distributions: Bernoulli, Binomial, Poisson, Exponential, Normal, Multivariate Normal
- Conditional distributions, Bayes’ rule
- Expected values and functions of random variables
You do not need exposure to statistics concepts like maximum likelihood estimation or MAP estimation.
You should be good enough with probability to learn MLE and MAP as you take this course.
If you cannot, that means your skills in probability are not sufficient and you do not meet the prerequisites.
I know the topics you listed, but I still can’t understand
Many people will see these “lists” (like: PDFs, PMFs, and CDFs) and say, “yes, I know these topics”.
Is that good enough?
People often confuse:
- Being exposed to a concept
- Being able to solve problems using the concept
When I say “know PDFs”, I don’t just mean “know what a PDF is”, I mean, actually be able to do useful computations involving PDFs.
In other words:
Reading a Wikipedia page or watching a YouTube / Khan Academy video is NOT enough.
You must be able to solve problems and do math.
Example 3: Relationship between Squared Error, MLE, Regularization, and MAP
In my linear Regression course, we show the equivalence of squared error minimization and MLE, and the equivalence of regularized regression and MAP.
This only requires exponentiating the loss function to recognize that the “form” or “shape” of the loss is proportional to the likelihood (or posterior in the MAP case).
Some beginner students have trouble “seeing” the equivalence, even when the equations are presented in front of their very eyes.
If you can’t see this equivalence, again, it’s because your skills in probability are not sufficient.
It means you need to IMPROVE your math knowledge.
The big mistake students make is thinking that they are perfect – they don’t need to improve.
They believe others should be bending over backwards to make things easier for them.
This is a stupid, self-centered approach which only hurts them in the end.
By not recognizing that THEY lack skills (in many cases, insisting that it cannot be true!), they will never gain new skills.
So, I suppose they reap what they sow in the end.
What is the solution?
The solution is obvious, and I’ve alluded to it earlier in this article.
No, it’s not just “meet the prerequisites”.
See, you really have 2 options:
- Blame OTHER PEOPLE for your insufficient prerequisite knowledge.
- IMPROVE your knowledge to meet the prerequisites sufficiently.
Obviously, only one of these will actually make you a better, more knowledgeable person.
The type 1 people often say things like: “You should have explained X, Y, Z, etc.” presuming that their knowledge of the prerequisites is perfect.
They presumed that it must be MY prerequisite knowledge was wrong, because I didn’t know what they knew.
No, the course will not be customized exactly for your background.
I don’t know you. I can’t know what you know or don’t know.
What happens when you are in the REAL world?
Do you go to your college professor and say, “Hey man! You made this course too hard! I DEMAND that you help me review the prerequisites!”?
No, no you don’t do that.
It’s called “catching up”.
You work hard and “catch up” to your peers, so that you can pass the class.
You don’t ask for the rest of the class to wait for you.