My Journey with Artificial Intelligence
By Kevlyn Kadamala in AI
July 9, 2021
TL;DR - Try to make it as easy and fun as possible at the start. Once you get the hang of it, start challenging yourself. Exploring different domains is vital and once you find your niche, delve in deeper.
Table of Contents (Head on below to your topic of interest :D)
- My First Introduction to AI
- My First Proper Introduction to Machine Learning
- What Came Next?
- The Mistakes I’ve Made
- What Am I Doing Now?
My First Introduction to AI
My first ever introduction to AI was through video games. The earliest game that I can remember playing was Need for Speed: Porsche Unleashed. Since being a kid (and even now), I’ve always been fascinated with the use of AI in games. While I know the use of AI in game development is different from fields like Data Science, Data Analytics etc. I have to acknowledge that without video games, I probably wouldn’t even be interested in computers! So +1 to video games because without them, I probably wouldn’t even be here.
My First Proper Introduction to Machine Learning
It was during my Second Year of Engineering when we had something known as Project-Based Learning. Simply put - We choose a domain we would like to study, build a project and submit that project for grading. Some of the popular topics back then were Mobile Development and Web Development. I was honestly hesitant about what I should take. But after speaking to my father, he recommended selecting Machine Learning. Shortly after the domains got finalized, I worked on my first Machine Learning project (you can find it here). It also happened to be my first ever Python project.
What Came Next?
Summer vacations are more projects. These projects happened to be my first time working with JavaScript. It was around that time when I came across The Coding Train. His book The Nature of Code and his videos on p5.js, Genetic Algorithms, NEAT and Tensorflow.js kept me busy throughout the summer. I don’t think there was a point where I needed to find motivation. I was enjoying the processing of learning and building. Later, I started participating in AI hackathons (they usually covered the domain of Computer Vision or Natural Language Processing) where I could test my skills against other talented developers. Participating in hackathons not only helped me technically, but I’ve become better and more confident at speaking and presenting. Looking back to my first hackathon, there has been a huge change in my speaking style and self-confidence. I always recommend developers to participate in hackathons irrespective of their background.
The Mistakes I’ve Made
In my Third Year of Engineering, things were getting a bit intense. It was a classic example of The more you know, the more you don’t know for me. Here a some of the mistakes I’ve made:
- Not trusting my data: When you are responsible for curating data, you know best about to its strengths and weaknesses. I once cost my team a top 3 finish because I was eager to improve my model’s performance by combining the data I collected with another source. After the results, I realized that the model that got us through the qualifiers performed better because it trained only on my data. By combining it with an outside source that I did not curate, I effectively degraded the performance of our model. Safe to say, I stuck by this principle and won a hackathon when I had to make a similar decision months later.
- Not asking for help: I’ve always shied away from asking for help which is probably one of the biggest mistakes I’ve made (and maybe still do!). There is nothing wrong with asking someone to help you out. Feedback and criticism will only help you to become better. It also works the other way around, when someone approaches you for help, be humble about it and understand where they are coming from. Everyone was a beginner at one point in time. Help others just the way you would like others to help you.
- Kicking myself for being slow: Taking your time to learn a concept is vital. It is better to take time and fortify your knowledge rather than developing a project with concepts you still aren’t sure of. Giving yourself enough time to understand a concept will open up different ideas and perspectives that may improve the quality of your work.
- Not giving up: Yes, it is alright to give up but it is important to return later. There have been times where I’ve spent hours on a problem just to come back the next day and solve it within seconds. Sometimes things don’t seem to work out at the moment. The best thing you can do then is to move on. The most difficult of problems are sometimes easy with a fresh and clear mind.
What Am I Doing Now?
Last month (10th June 2021) I completed my final year of engineering. We also presented our work at the 5th International Conference on Inventive Communication and Computational Technologies. I now spend my time reading Deep Learning from Scratch: Building with Python from First Principles by Seth Weidman while also participating in a few Kaggle competitions now and then. I plan to write a few technical articles soon alongside a few side projects that I have in mind. I plan to continue this exploration and to find new things to learn and apply. It is not possible to know everything about AI, so you might as well take it at your own pace and enjoy while you learn :D