Machine learning is a hot topic in 2020 and many innovations are being made in the field of machine learning every day. This facilitates us in coping up with our day-to-day lives. But for a starter, how should one proceed with machine learning if he/she has no prior experience in machine learning. One could go for the conventional way of going through a series of college degrees. And then there is an unconventional way which we will discuss later on.
Let’s talk about the conventional way first, suppose you get enrolled in an undergraduate course and start studying machine learning, then you will surely pass through the following phases.
· 1-year in: The honeymoon phase, also known as the noob gains period. You’re much better than a beginner, perhaps even a little too confident (though this isn’t a bad thing).
· 2-years in: The oh, maybe I’m not as good as I thought phase. Your beginner skills are starting to mature but now you realize getting better is going to take some effort.
· 3-years in: The wow, there’s still so much to learn phase. Not a beginner anymore but now you know enough to realize how much you don’t know (I’m here).
This is the natural course and all of us will go through this for sure, enrolling in a degree program will surely help you develop a deeper understanding of the subject but it has a lot of cons too. A proper degree course would also have a lot of topics that are irrelevant and obsolete in the modern world but they would still be there because of the age-old curriculum. This may waste a lot of your time and may divert you from those topics which are very important in the competent world.
Now here comes the unconventional approach, you can try a bunch of online courses available on the internet but all they are just remixes and revolve around the same core idea, if not properly followed they’ll bore you death and you won’t want to study that topic again. Instead of worrying about which course is better than another, find a teacher who excites you. Learning anything is 10% material and 90% being excited to learn. Dabble in a few resources, you’re smart enough to find the best ones. See which ones spark your interest enough to keep going and stick with those. It isn’t an unpleasant task to learn a skill if the teacher gets you interested in it.
Problems a Beginner Faces
One of the major problems a beginner faces is getting overwhelmed with lots of resources available in the world. Being a beginner, you don’t need to focus on so many resources, like it’s always said, Learn the language thoroughly and not the framework, building the basics first is the first step to build something great.
Steps to Build: The Right Way
Next, you would want to do is build something using your basic knowledge, build something local and too simple, it will be quite helpful in boosting your morale. Courses help to build foundational skills. But working on your own projects helps to build specific knowledge (knowledge which can’t be taught). Do whatever you want, Train a model, build a front-end application around it with Streamlight. Get the application working locally (on your computer), once it’s working wrap the application with Docker, then deploy the Docker container to Heroku or another cloud provider.
Next, you’ll want to tweak your model. You’ll realize that the model is taking too long to predict the desired result and you’ll want to add more features to it, there comes the research part. You’ll read research papers, look it up on the internet and do research on your own. This will help you to get a better understanding of your own models as well as get an edge over what’s going on in the field of research.
Always remember that skills are more important than having a ton of certificates, certifications will get you a pre-defined knowledge but learning on your own will open up a sea of unlimited opportunities. Never fall for certificates by sabotaging your skills.
If you’re wondering, how you’ll get started. These are a few resources that will help you get started.
Specific Parts of Machine Learning
The machine learning specific parts would be:
1. Machine learning concepts — understand what kind of problems machine learning can and should be used for. Elements of AI is great for this.
2. Python — the language itself, along with the machine learning specific frameworks, NumPy, pandas, matplotlib, Scikit-Learn. Check out pythonlikeyoumeanit or the official documentation for each of these.
3. Machine learning tools — the main one being Jupyter Notebooks.
Apart from these, there are many other tools that you’d like to check out. Like CS50 courses and freecodecamp.org courses which are enough to let to get started on the epic journey of machine learning.