I have often been recommended to complete data structures and algorithms before I get into machine learning, for better understanding purposes. I have completed your python Bootcamp course, and have had a decent grip on the language.
I would like to ask, how important is it to learn data structures and algorithms(irrespective of the language) before I deep dive into machine learning?
thanks for reaching out! You’ve asked an excellent question. In fact, we’ve recently had a somewhat related question in our Q & A section in regards to the Python Bootcamp programming course:
Here, one of our students points out that a solution which is presented isn’t as efficient, as it could be. This is exactly what algorithms and data structures help you understand better: the complexity of algorithms, as well as many other topics. Nonetheless, algorithms and data structures is a primarily theoretical part of computer science. So, it’s up to you to decide how crucial this is going to be in your career.
In terms of the data science field in general, having a grasp of algorithms and data structures is certainly beneficial, however, it’s not an absolute must. Particularly for machine learning, foundations in linear algebra, as well as analysis and probability theory are far more crucial. That’s my personal opinion, by the way, but it’s been a while since I’ve had to reduce complexity of a function or method to improve the performance in a data science related task.
Where I’d say algorithms and data structures, as well as efficiency of algorithms is crucial is Computer Vision and Image Processing. This comes from the fact, that the files themselves are a lot larger and take up a lot more memory space. In addition, a lot of times, performance is crucial in this area. So, if you’d like to specialize in that area, then some theory would be very beneficial. It’s up to you and what you find interesting.