A simple guide that led me to become an Artificial Intelligence Engineer at Elaniin.
Generally, there are no undergraduate degrees focused on Data Science (DS) or Artificial Intelligence (AI), so many people who today are dedicated to it started from different professions, such as mathematics, physics, computer science, economics or, in some cases, self-taught with no academic training. So, each of us has a different vision and perspective of how to start on this path, in my case, I have a degree in physics, however, the recommendations given in this blog try to be as general as possible.
Study the foundations of any programming language
You can’t do DS or AI without knowing at least one programming language (this is not absolute, but for practical purposes we will assume so), there are many options today, such as Python, R, Scala, MatLab, etc., I use in my day to day Python for all the advantages it offers, but we can start with the one we feel more comfortable, each of them has its advantages and disadvantages, so it is imperative to make a comparison and choose the one that best suits our needs. If I had to choose one of them to start from scratch, my choice would undoubtedly be Python.
In order to complete this step, you should be able to:
- Utilize functions to create cleaner and more manageable code
- Understand and use one of the most popular programming paradigms - Object-Oriented Programming
- Know how to use the Python Unittest library to test complex applications
- Create an API Rest (using Django, FastAPI or Flask)
- Manipulate csv, json to Excel files with Pandas
- Plot visualizations with Matplotlib and Seaborn
- Use decorators and Lambda expressions
- Handle exceptions
However, if you are interested in starting, don’t let the above list be a barrier. Learn the basics very well, things such as the main structures, functions, loops, etc. You will have plenty of time to learn the rest better.
Acquire Artificial Intelligence knowledge
There are hundreds of online materials to support this step and I think that a 20h online course will not magically transform you into a data scientist (or analyst, or engineer). But I believe that this is a good start if you didn’t have any previous contact in this field. Overall, I have taken many courses and read many books, so I will recommend you the following:
- Machine learning A-Z on Udemy (course)
- Deep Learning Specialization on Coursera (course)
- Intro to TensorFlow for Deep Learning on Udacity (course)
- AI and Machine Learning for Coders (book)
- Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow (book)
As a suggestion for this step: don’t go too deep in the math or attempt to code the algorithm from scratch. The intention is to build knowledge through repetition (practice makes perfect, right?), apart from forming intuition and giving us an immersion in the use of the libraries necessary for AI. You won’t be able to immediately apply this in the industry, but it’s going to enable you to learn more specific parts of machine learning with a much better understanding. It’s better to get a good overview of what AI is and does, and how it should work, instead of trying to learn all the things that happen under the hood.
Understand Artificial Intelligence in mode depth
As you may be thinking, AI is a complex field and if you want to build a solid knowledge you need to go deeper and explore some mathematical concepts. Here it is time to stop and try to understand how the stochastic gradient descent algorithm works, what backpropagation is, etc., so you will need calculus and statistics tools for completing those tasks. But why we should learn all those things, well, that will give you a lot of tools for answering many important questions like:
- How do I know which AI model will work "best" with my dataset?
- How do I interpret the results of my model?
- How do I select which features should be included in my model?
Here is a pyramid that depicts the high-level skills in order of their complexity and application in the industry.
Keep practicing and never stop learning
Working with data is challenging and requires constant learning. In order to achieve this step, we could do personal DS and/or AI projects, Kaggle competitions, online courses, etc. One of the things that has helped me the most is to make personal projects, for example, download a csv file from Kaggle and try to make an API in Django that makes inferences from my model, as an extra step you can use git and/or docker. The more tools you use, the better you will gain knowledge and forge your skills.
My roadmap may be useless to someone, so you can adjust it to your personal goals and add other technologies like SQL, Git, Docker, etc., in this case I tried to keep it as simple as possible. You can find a lot of roadmaps online for guiding you through your career. I believe that with confidence, passion, and hard work, you can definitely master it!