- Home
- Search
- Jonathan C Kao
- All Reviews
Jonathan Kao
AD
Based on 89 Users
A great course with a great lecturer and TAs. The lectures are well prepared and Prof. Kao is really good at teaching. He's happy to stop anytime and answer your questions. TAs are very helpful in the discussions and OH. The exams are fair, and do please attend the midterm and final review held by the TA! The topics are very similar to what will appear in the exam so you definitely should spend enough time reviewing these topics. If you are interested in the neuroscience and have a strong knowledge base of probability, linear algebra and Python, the course is a perfect choice. A little bit of matrix calculus is involved but truse me, they just look scary.
40% 6 homeworks, 25% midterm, 35% final.
As all the other reviews state, this class is goated. I petitioned for it to count as a BioE major field elective. For all the non EE people thinking about taking this class: you gotta at least be familiar with the pre-reqs for this class or ur gonna get rekt by all the probability and linear algebra.
Kao is great! Learned a lot. HW's can be tough/time consuming, but mosty because numpy doesn't always behave the way you expect. Dealt with influencers trying to disrupt class very professionally. Generally just a happy guy that seems super down to share what he knows.
I first want to mention that I took this class as a UCLA Extension student. I took it because I was bored to death in UCLA Extension's Data Science program and this class didn't disappoint. I would argue this is the best Machine Learning / Deep Learning class I ever took! The class is hard (be prepared to study a lot) but also incredibly rewarding.
This course has a strong focus on understanding the foundations of Deep Learning so that it isn't a black box anymore. It very often touches the mathematical background of Deep Learning so make sure you are familiar enough with calculus and linear algebra before you hop in. You will be working with tensor sized derivatives a lot and assignments are not coding only!
Assignments are hard but manageable. Overall you will be tasked with either mathematically solving for machine learning problems (e.g find optimal parameters for a noisy linear regression) or manually implementing neural networks in an efficient way. It takes time so make sure not to work last minute.
Besides UCLA Extension I'm a french master's student in Data Science (my course credits this year transfer back to France) and the presence of TAs, discussion sessions and a discussion forum was very new to me. I personally went through the course trying to figure out the homeworks on my own with no help. It makes it harder but you can still manage with enough time.
I also want to highlight that Professor Kao does an amazing job at teaching this class. He explains incredibly well, at a good pace, and also answers questions very quickly.
Overall a great course. If you're looking for a rewarding challenge go for it!
Professor Kao really, really cares about learning and is also a great lecturer, one of the best I've had at UCLA by far. I have a little bit of past experience with ML but Kao's slides and lectures made my understanding so much better, and the way the class is structured forces you to engage with the material. The final project is not bad at all and pretty easy to get 100% on if you can put in some time/thought -- even if you do it solo, IMO. The midterm was definitely very scary to me early on, but it's very similar to past midterms and the TAs do their best to help prepare you (I made some silly mistakes and still got an A on it). Finally, you do not need the prereqs to do well in this class as long as you're willing to put in some extra work early on.
Kao is, hands down, the best professor in the ECE department. His lectures are clear and engaging, and manage to break difficult concepts down into understandable chunks. He provides excellent slides, both annotated from class and unannotated originals, which are wonderful for studying. Kao is absolutely a subject matter expert, since the course focuses on research advances that he was a part of. He can answer literally any question on his lecture material. Seriously, this is what a proper college class should feel like.
A probability prerequisite (not necessarily ECE 131A, but any equivalent class) is absolutely required, and you may struggle without it. Much of the second section of the class focuses on poisson processes, and a course in probability is essential. It would also be helpful to have some knowledge of Python beforehand, since the homeworks generally assume it. However, you don't need any knowledge of electrical engineering at all. There's a tiny section on equivalent circuits in the first part of the course, but you don't need any background knowledge to understand it.
This class is a lot of work. Kao isn't kidding when he tells you that in the first lecture. The homeworks took a long time each, even though there are only 6 of them. They're a mixture of written math solutions and Python coding in Jupyter notebooks. The homeworks are pretty well spaced out, so there's plenty of time to complete them, and the TAs provide exceptional help during discussions (seriously, don't skip discussions. The TAs practically solve homework problems sometimes). Kao gives four "late days" across all the homework, which is an exceptionally generous grading policy.
The tests are difficult, but generally the class average is very good (attribute that to Kao's exceptional teaching abilities). He posts plenty of practice tests beforehand, and the TAs host a long review session for each test, so there is plenty of practice material. Both the midterm and the final had a bonus question for extra credit, but the bonus questions are generally harder than the rest of the test.
Despite the workload of the course, I would absolutely recommend it (and for CS majors, you can petition it to count as a CS elective). This course was one of the best courses I've taken at UCLA, primarily because of Professor Kao. It's a genuine pleasure to take his courses. Even if you have little interest in neuroscience or brain-machine interfaces, you will probably still find this course more engaging than most of the other courses offered at UCLA solely because of Professor Kao.
Lectures are clear and slides are provided.
Deep learning results and certain concepts are interesting but theory is lacking.
Homework is pretty boring. It's all just working with matrix dimensions or finding gradients.
Get a good group for the project.
Midterm is difficult.
Professor Kao is the best professor that I have encountered. He has an unrivaled ability to interact with his students, fielding questions and reiterating content while making everybody feel included and listened to. Particularly, he is very good at noticing when he has lost the class and is willing to take his time to backtrack and ensure that the majority of students understand the material, and it is game changing. This class covers some of the most interesting and challenging material in the computer science world and professor Kao makes it all digestible while simultaneously moving at breakneck speed.
I cannot stress enough how uniquely good these lectures are. I have taken four machine learning classes and this one class taught me more than the other three classes combined.
The homework assignments are extremely challenging and very time consuming, especially if you are terrible at linear algebra like I am. However, they are very rewarding and forced me to actually learn the algorithms inside and out. The exam did a great job of testing your mastery of the material, and you are provided with a lot of practice exams and review material. I did not do well, and it was my own fault, and I still got an A in the class.
If you actually want to learn about machine learning, this is by far the best way to do it. I cannot recommend professor Kao or this class strongly enough.
This class can be renamed from Neural Networks to Neurological Damage due to the heavy workload. Homeworks take A LOT of time, and they don’t release solutions to the coding parts. Assignments build on each other so if you don’t finish one, you still have to work on it before starting the next one. Otherwise it’s time to watch your grade-ient descent down the drain! Kao is very smart and a great lecturer, and the TA's are awesome with their help during discussions/office hours and videos uploaded to Bruinlearn. The midterm was fair, but somewhat of a time crunch, and the project at the end is challenging, but they offer help and grade nicely.
Do not be fooled by the high A rate. This class is an unbelievable amount of work, definitely no walk in the park. Since I was taking it w/o pre-reqs, it was even harder for me. The one midterm exam was okay, I'd estimate about ~60% of the class our year got A's. 5 homeworks, with Homeworks 2, 4, and 5 being the hardest. 1 end of quarter project; I found it really annoying that the project was due at the start of finals week. This is manageable if you have a good group, but if not or if working alone, this will likely destroy any studying time you can get for your other classes. If you like ML or looking to fill your schedule, then you should take this class. Otherwise, would not recommend taking this class if you have a heavy courseload. The professor and TA team are pretty goated tho.
A great course with a great lecturer and TAs. The lectures are well prepared and Prof. Kao is really good at teaching. He's happy to stop anytime and answer your questions. TAs are very helpful in the discussions and OH. The exams are fair, and do please attend the midterm and final review held by the TA! The topics are very similar to what will appear in the exam so you definitely should spend enough time reviewing these topics. If you are interested in the neuroscience and have a strong knowledge base of probability, linear algebra and Python, the course is a perfect choice. A little bit of matrix calculus is involved but truse me, they just look scary.
40% 6 homeworks, 25% midterm, 35% final.
As all the other reviews state, this class is goated. I petitioned for it to count as a BioE major field elective. For all the non EE people thinking about taking this class: you gotta at least be familiar with the pre-reqs for this class or ur gonna get rekt by all the probability and linear algebra.
Kao is great! Learned a lot. HW's can be tough/time consuming, but mosty because numpy doesn't always behave the way you expect. Dealt with influencers trying to disrupt class very professionally. Generally just a happy guy that seems super down to share what he knows.
I first want to mention that I took this class as a UCLA Extension student. I took it because I was bored to death in UCLA Extension's Data Science program and this class didn't disappoint. I would argue this is the best Machine Learning / Deep Learning class I ever took! The class is hard (be prepared to study a lot) but also incredibly rewarding.
This course has a strong focus on understanding the foundations of Deep Learning so that it isn't a black box anymore. It very often touches the mathematical background of Deep Learning so make sure you are familiar enough with calculus and linear algebra before you hop in. You will be working with tensor sized derivatives a lot and assignments are not coding only!
Assignments are hard but manageable. Overall you will be tasked with either mathematically solving for machine learning problems (e.g find optimal parameters for a noisy linear regression) or manually implementing neural networks in an efficient way. It takes time so make sure not to work last minute.
Besides UCLA Extension I'm a french master's student in Data Science (my course credits this year transfer back to France) and the presence of TAs, discussion sessions and a discussion forum was very new to me. I personally went through the course trying to figure out the homeworks on my own with no help. It makes it harder but you can still manage with enough time.
I also want to highlight that Professor Kao does an amazing job at teaching this class. He explains incredibly well, at a good pace, and also answers questions very quickly.
Overall a great course. If you're looking for a rewarding challenge go for it!
Professor Kao really, really cares about learning and is also a great lecturer, one of the best I've had at UCLA by far. I have a little bit of past experience with ML but Kao's slides and lectures made my understanding so much better, and the way the class is structured forces you to engage with the material. The final project is not bad at all and pretty easy to get 100% on if you can put in some time/thought -- even if you do it solo, IMO. The midterm was definitely very scary to me early on, but it's very similar to past midterms and the TAs do their best to help prepare you (I made some silly mistakes and still got an A on it). Finally, you do not need the prereqs to do well in this class as long as you're willing to put in some extra work early on.
Kao is, hands down, the best professor in the ECE department. His lectures are clear and engaging, and manage to break difficult concepts down into understandable chunks. He provides excellent slides, both annotated from class and unannotated originals, which are wonderful for studying. Kao is absolutely a subject matter expert, since the course focuses on research advances that he was a part of. He can answer literally any question on his lecture material. Seriously, this is what a proper college class should feel like.
A probability prerequisite (not necessarily ECE 131A, but any equivalent class) is absolutely required, and you may struggle without it. Much of the second section of the class focuses on poisson processes, and a course in probability is essential. It would also be helpful to have some knowledge of Python beforehand, since the homeworks generally assume it. However, you don't need any knowledge of electrical engineering at all. There's a tiny section on equivalent circuits in the first part of the course, but you don't need any background knowledge to understand it.
This class is a lot of work. Kao isn't kidding when he tells you that in the first lecture. The homeworks took a long time each, even though there are only 6 of them. They're a mixture of written math solutions and Python coding in Jupyter notebooks. The homeworks are pretty well spaced out, so there's plenty of time to complete them, and the TAs provide exceptional help during discussions (seriously, don't skip discussions. The TAs practically solve homework problems sometimes). Kao gives four "late days" across all the homework, which is an exceptionally generous grading policy.
The tests are difficult, but generally the class average is very good (attribute that to Kao's exceptional teaching abilities). He posts plenty of practice tests beforehand, and the TAs host a long review session for each test, so there is plenty of practice material. Both the midterm and the final had a bonus question for extra credit, but the bonus questions are generally harder than the rest of the test.
Despite the workload of the course, I would absolutely recommend it (and for CS majors, you can petition it to count as a CS elective). This course was one of the best courses I've taken at UCLA, primarily because of Professor Kao. It's a genuine pleasure to take his courses. Even if you have little interest in neuroscience or brain-machine interfaces, you will probably still find this course more engaging than most of the other courses offered at UCLA solely because of Professor Kao.
Lectures are clear and slides are provided.
Deep learning results and certain concepts are interesting but theory is lacking.
Homework is pretty boring. It's all just working with matrix dimensions or finding gradients.
Get a good group for the project.
Midterm is difficult.
Professor Kao is the best professor that I have encountered. He has an unrivaled ability to interact with his students, fielding questions and reiterating content while making everybody feel included and listened to. Particularly, he is very good at noticing when he has lost the class and is willing to take his time to backtrack and ensure that the majority of students understand the material, and it is game changing. This class covers some of the most interesting and challenging material in the computer science world and professor Kao makes it all digestible while simultaneously moving at breakneck speed.
I cannot stress enough how uniquely good these lectures are. I have taken four machine learning classes and this one class taught me more than the other three classes combined.
The homework assignments are extremely challenging and very time consuming, especially if you are terrible at linear algebra like I am. However, they are very rewarding and forced me to actually learn the algorithms inside and out. The exam did a great job of testing your mastery of the material, and you are provided with a lot of practice exams and review material. I did not do well, and it was my own fault, and I still got an A in the class.
If you actually want to learn about machine learning, this is by far the best way to do it. I cannot recommend professor Kao or this class strongly enough.
This class can be renamed from Neural Networks to Neurological Damage due to the heavy workload. Homeworks take A LOT of time, and they don’t release solutions to the coding parts. Assignments build on each other so if you don’t finish one, you still have to work on it before starting the next one. Otherwise it’s time to watch your grade-ient descent down the drain! Kao is very smart and a great lecturer, and the TA's are awesome with their help during discussions/office hours and videos uploaded to Bruinlearn. The midterm was fair, but somewhat of a time crunch, and the project at the end is challenging, but they offer help and grade nicely.
Do not be fooled by the high A rate. This class is an unbelievable amount of work, definitely no walk in the park. Since I was taking it w/o pre-reqs, it was even harder for me. The one midterm exam was okay, I'd estimate about ~60% of the class our year got A's. 5 homeworks, with Homeworks 2, 4, and 5 being the hardest. 1 end of quarter project; I found it really annoying that the project was due at the start of finals week. This is manageable if you have a good group, but if not or if working alone, this will likely destroy any studying time you can get for your other classes. If you like ML or looking to fill your schedule, then you should take this class. Otherwise, would not recommend taking this class if you have a heavy courseload. The professor and TA team are pretty goated tho.