Hi, I will finish this course and I saw on youtube that I need to understand data structures and algorithms before learning machine learning, it also said that I should know SQL and a deep understanding of python is necessary. What prerequisites do you think will be necessary to really go far in machine learning?
Hello @kaki178925
You said you will finish this course, but you are concerning about what you need “before” learning machine learning, so I am not sure at what stage you are - are you going to start this machine learning specialization? Or are you planning for something after the machine learning specialization?
Anyway, I think both for this specialization and for going any further than this specialization, the pre-requisites are
-
Python - good enough to kind of know what is going on in the assignment notebook
-
Ready to google for code (e.g. numpy functions, tensorflow functions) that you have not yet used before, read their documentations, see examples of how others use it, and experiment them yourself on a jupyter notebook. This pre-requisite will support you through bad times.
-
Ready to google online machine learning articles as your own supplementary readings. They will provide different angles to the same concept and the luck is that you can find something that hit the spot!
-
Ready to experiment your understanding with the optional lab and assignment notebooks. After you learn a new thing, build up some expectations, adjust whatever adjustable parameters, and see the outcomes. Verify that the outcomes are as expected and if not, look for references to find out any knowledge gap.
-
Ready to share your understanding and even better if you would like to discuss other learners’ open questions in this community. The more you give the more you receive.
Finally, something probably you were more concerned about:
-
SQL: not necessary. SQL is for querying data from a database. If you are not required by anyone to get data from a SQL database, there is no need to learn it. You can download data from the internet to practice.
-
Maths: if you know Calculus, it will be easy for you to understand the origin of some formulae. If you don’t know it, then you have a decision to make: either accept the formulae, or learn Calculus. If you can accept them, it is not an obstacle at all. You might leave learning Calculus to a future time when that is necessary for your work.
-
Algorithms: if you learn Machine Learning, you are learning Machine Learning algorithms, so it is not a pre-requisite. If you were referring to those computer algorithms like how to sort, how to find the max. value and so on, I believe no one can tell you how much of those you need to learn. Therefore, my above point number 2 is what you will need to keep in mind as you encounter something you are not familiar. Always try to read the code, understand what it is doing, and most importantly, get your hands dirty by experimenting.
-
Data structure: like my point number 8, learn as you go. Learn it when you encounter something you don’t know.
I cannot tell you what else you need to learn before going further, because no one knows what you will be interested in. It is a journey. However, my point number 2-5 are something I believe any successful self-learners are used to do. Those skills will help you through unknown challenges ahead.
Good luck, and cheers,
Raymond
Thank you, I was talking about prerequisites for going further in machine learning, like deep learning reinforcement learning etc
OK. Then my previous reply are my recommentations.