As you start to walk on the way, the way appears
Thoughts on machine learning as a career path
Very often I read in my social network feed about students asking how to get into data science roles or how to get a job in machine learning. In this article I want to share some of my personal experience and some technical advice for people that cannot decide where to start or how to do it.
The title of this article is the quote I think fits the most for this particular situation (and other thousands). I will start to sound cheesy and predictable, but I remember when I was a student and I did not know anything about the professional life, having so many doubts, but life had another plan for me, I never planned to be an engineer and even less a Machine Learning engineer.
Talking from other side, I can say that the lesson learnt it’s that the best way to learn “something“… is do “something”, as simple as it sounds it is not trivial, we want some celestial sign that show us the path to success, however you have to walk your own unique path. The fear stops us from starting, and discourages us from continuing when things get hard. Our educational system turned us to be more success-oriented and punished the failures. Slowly we forgot the learning process and the enjoyment of discovering what are our strengths. We want to jump to the goal without walking the path, then we feel a failure for not being capable of achieving the things that we wanted. We often compare ourselves to impossible ideals, and just to remind you, the internet is very biased, it only shows the success stories, the millionaires and never the fails and the ugly side of growing.
For those who are interested in getting into Machine Learning, I would say that there is no easy path, even when you already have a position in a company you have to keep working on your skills. It is a relentless race against time, because every day you find new libraries, frameworks, algorithms and so on. You have to be prepared to feel behind all the time and acquire new knowledge continuously, and I don’t want to sound negative with this. What I meant to say is that you cannot just focus on getting a job. The “method” is to train yourself to be a self-learner and develop the competencies to design good solutions. If you manage to keep yourself motivated even when the problem is daunting, you will succeed in this industry. You don’t have to know it all, if you read all the things that others “know” you will feel overwhelmed, each person develops different strengths, find your own and work on them.
Now, just to get to the more practical side of this conversation, I don’t want to disappoint the readers that came here seeking concrete solutions, I would say :
- Start small and never stop: little by little you will get better, be patient and trust the process.
- Learn the basics: use different resources, find the one you like the most, I have tried Edx, Coursera, Kaggle, LearnOpenCV, Pyimagesearch.
- Learn Python: The most important language to start in machine learning, you can also learn R , C++, but start with the easy one. My choice here is to use Udemy they have tons of courses, you can try some classes for free, and decide which one is the best for you.
- Find your strengths: There are several areas to study such as Computer vision, NLP, Data Visualization,etc. You will be more motivated to learn something that is easier to understand, then pass to the things that are more challenging.
- Practice, practice, practice: You will gain confidence slowly, push yourself, take difficult tasks and commit to finishing them (this can be useful for almost anything in your life). This is vital to achieve fluency in any programming code.
- Don’t be disappointed if you don’t get something at first, remember that you are in this for the long run. There are forums, StackOverflow, Reddit, YouTube videos to help find the answers when you get stuck.
As a final remark, risking to sound like your father giving you advice. The worst that can happen is that you do not try.