My journey with AI/ML and python
Adarsh Goyal
Posted on July 26, 2020
Artificial Intelligence | Machine Learning | Natural Language Processing so cool mammoth terms right?
Firstly heard in the 3rd Semester of Computer Science Engineering when completed C | C++ | Java Core | Java Advanced not completed with the last two but yes completed some SWING and AWT projects as per the curriculum.
Learning Programming languages becomes a tiresome job sometimes, every time I used to learn a language I learned the basics and when it was time for some real action I mean (Project Implementation) time elapses and the curriculum moves to some different language to study without the implementation level knowledge of the preceding one.
This continued till Java Advanced, I was disappointed as was unable to complete a single good project and the things looked even worse in the future so I read blogs and find out which language is Hot | Trending | In-demand language in the market the answer was python the name attracted me literally.
Gone through the documentation, learned basics, almost completed documentation, When learning python it is told that you can automate tasks like Use Python external libraries to create and modify documents, images, and messages Understand and use Application Programming Interfaces (APIs) to interact with web services Understand and use data serialization to send messages between running programs and what not I tried all on them from here and was very excited to implement every little thing
But then at last after every example, I realized each time and asked myself is it a Real-World project? This how things work?
clearly No!
Read more and more blogs, one day came to know that python is majorly used to implement AI/ML stuff and that was my ingress in the world of ML, AI. Machine Learning gave me a winsome experience and I tried to know everything about it
Till then I was actively attending community meetups of GDG, FDC, ITC, etc.
These groups let me to the path to ML/AI and various other techs some told the path to become Data scientist some to Data Analyst.
I started some courses course on Coursera by Andrew Ng
The course was intelligible apart from the sound quality, subtitles were the only hack to that thing
Courses from NPTEL
1.Introduction to Machine Learning
2.Machine Learning for Engineering and Science Applications
The second one was nice and it was the latest now so it was nice as they took live youtube sessions too to clear the doubts.
So it was too much of learning till now and I have not created a single project from scratch till now, so I was wondering that how would earn money in future from these type of projects knowledge because they are not from scratch and they are just made using following up some blogs from courses or any learning courses from the course of NPTEL or the official documentation.
Finally, I decided to make a project from scratch, till then I was in a position that I was knowing much of the libraries like numpy, scikit-learn, scipy,matplotlib, etc. And tools like Anaconda, Pypa and even I was wondering which code editor should I use to develop python projects, I came upon JetBrains pycharm but I continued with the IDLE itself.
I use to code in different PC’s in my college so I was finding a tool to write online so then I came up with the great tool name Jupyter notebook and I also came about to know about the Google Colab so that my online work can be saved and I could access the code from anywhere as I used to be on different computers every time. I was nooby and was not aware of GitHub now.
Natural Language Processing
I was always excited about how the text to speech or speech to text work, I kept searching the libraries to use, I came up with an idea to build up voice calculator using speech to text so that I can learn some NLP basics and know how to use this module in future.
Finally, end up with this Voice Calculator
I searched the best offline or online library for speech recognition and found Using Google speech recognition library and found it easy to use, after completing the implementation of basic arithmetic operations I felt like What I have done in this whole project? nothing much probably just some drag and drop like a thing but some learning was there.
One question arose every time in my mind that how to make an efficient ML model and the fact was that it is very difficult to frame a model from scratch as all the models have lots of math and research behind it particularly to make it efficient.
So, started exploring the existing Image recognition | Handwriting recognition | Natural Language Processing models | Speech recognition models and many more but it was hard to understand even one of them.
Apart from these I also tried some other stuff like Game in Python Using libraries like pyglet opengl pygame etc.
The game was pretty easy and the GUI’S was also ok but again it was not the kind of the project I thought of, I was much into ML/AI that I was unable to explore and other technologies.
Again, I searched that how can we do machine learning using web tech like JS so I came up with the Framework named Tensorflow. and it was a really good framework and it supports Python, JavaScript, and many other languages.
I took a specialization course Introduction to TensorFlow for Artificial Intelligence, Machine learning, Deep Learning from Coursera as I was aware of the machine learning models till now and wanted to learn more about TensorFlow from this specialization it was a really good for me cause and I got to learn many new things and how to use TensorFlow from this was the only course completed fully from the Coursera platform.
Guess what? Python as a programming language in the course I thought now I will have some great big projects but wait
I was wrong the curriculum was very outdated and it only stopped on on the basic Python introduction, not even the basic projects like I have made on the speech recognition and voice calculator. Invested much time and till now I was fed up that I am not creating any projects and I was not able to do anything on the web or in the mobile I continued reading blogs on topics like what to do with Python?
So, I came to know about the Django framework made a blog website in Django and it was tough for me to follow even the blog of Django as it involved APIs and many other things which I had never seen in my previous projects.
I thought Python was my waste of time but was it?
The sixth Semester and guess what we have Artificial Intelligence in Curriculum
But…….The curriculum was again outdated and I had a hard time understanding the theory, but faculty Ph.D. in (Machine Learning) makeup my Interest in having some steps again towards AI/ML.
Faculty asked to implement a Chatbot, here comes the game now I was having something to do with Python building a chatbot, using NLP to build a chatbot, but the condition was that we cannot use any existing libraries to make chatbot challenging but somehow I was able to make pretty decent chatbot without using any of the libraries and end up with an AIML. As it needs a lot of NLP understanding to write the code for a chatbot from scratch.
Another project was Tic Tac Toe with one player as an AI another as a human obviously but when I saw that how to implement these board games like Chess or Checkers or Go it was very difficult because in these games like chess number of moves increases exponentially.
It was nearly impossible to find any algorithm to implement for the problem but Minimax Algorithm was at rescue which used to implement the chess versus name human versus chess game This chess game implementation me to an algorithm Monte Carlo which was also a very nice algorithm to learn but these all fascinated me but at last, it was great learning.
7th semester
Courses changed now there is nothing like AI/ML or Python
Minor Project so I begin by learning JavaScript as I was planning to make some projects in React.js the framework of JavaScript started with JavaScript continued with the react JS and Boom I was able to make complete e-commerce which I will talk about in future blogs.
AI/ML is not bad at the university level but what we have to understand is that we can make use of ML/AI model in our project but we are unable to make one without prior knowledge of and understanding of all the Math and Research involved behind these models.
I committed a mistake in switching my language to Python the machine learning was also possible in C++ and that too very efficiently which can be seen in the framework named OpenCV so any time you are switching a language just to implement something try to implement in that language first. do like the blog if you find anything helpful and you can reach me at ⬇
Email: founder@openmindd.xyz
Twitter
Posted on July 26, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.