What is Machine Learning: Fundamentals & How to Learn it
In this article we will talk about machine learning, what is machine learning? and how we can get started in machine learning. The terms machine learning and AI artificial intelligence is closely related and it's not wrong to say that the abstraction level between these two words is a fairly thin line and they can be interchangeably used. But when I say machine learning or artificial intelligence what most of people think is the same old Terminator movie. You think that there is gonna be some tx9000 machine that comes from the future that is going to destroy entire humanity. You start panicking and you just think that there is not gonna any need for programmers in the future and a lot of theories like that.
Hold down there, this is not actually a fictional movie. If this could have been true, we should stop testing with gamma rays because they can generate a hulk and we should stop looking into space because we may find aliens that may come to the Earth. There might be a Thor coming up to save all of you and there might be Spider-Man roaming around and who knows there might be a Batman too.
So hold your horses we need to talk a lot about machine learning and what actually it is.
Introduction
So put down your Terminator movie theory aside for a minute & let's talk about machine learning and AI. now machine learning and AI are the branches of computer science that almost all who are doing their Master's and Ph.D. might have studied in their curriculum as well. They are closely related but according to me, my personal thought is machine learning is closely related to data mining rather than AI.
AI is completely a different thing but what you think of machine learning is closely related to data mining and you have been already using it quite a lot. now you might be asking hey!! where we are already using machine learning now although you have just heard the term machine learning you might already be aware of the term known as data mining. Data mining has been there since the evolution of data and computers which have been in the world quite a lot and all the things that a simple example would be spam emails. You see that some of your emails are in your inbox and some of them are in your spam box what is that?? that is machine learning, rather closely that is data mining.
There is a huge chunk of data and your program and algorithms are designed in such a manner that it can predict whether this email is spam or is it a good email that needs to be delivered to the inbox. Is it always perfect? No not at all sometimes good emails are also lined up in the spam and spam emails land up in the inbox. So that is basically a good example of machine learning at a very small level. But now things are changing. That was version 1.0 of machine learning. Now what we are seeing in our day-to-day life is machine learning version 2.0, So how actually this is working all nowadays?
Components
So if I talked about machine learning at a very broad scale there are a couple of components that need to be worried about. First of all, is a huge data set, a data set that can predict a lot of things for example if I just show you a chair you can say Hey!! that's a chair. But if I say that that's a wooden chair, that's a glass chair and there are many types of chairs. You can see the difference between all these chairs and can still predict that's a chair.
But if I just ask you to write a program for that that could have been a Nightmare for you for example if you are just writing a program that it should have four legs and some wooden texture that would be a chair but what about when I say that it can be just a centralized table having a central base and a glass sitting area, that is also a chair. But you cannot write a program for that and for such a situation, we require a huge number of data sets. That's problem number 1.
The second thing is that data set is being fetched to something known as a classifier which is again a big term but rather I would say that is just an the algorithm that can determine the output based on whatever the data is being fetched and as we all know the more data we are going to have the more prediction capability is going to be there.
So now based on what kind of data you are supplying your classifier can classify the image or any other thing in this example we just take an image of a chair so it can predict that image of the chair with some certain amount of confidence that it can be a chair, it can never be 100% sure but it's always about the ratio of how much confidence that showing, that is it 99% chair is 80% chair and is it 70% chair.
Examples
So this is all on a broad scale machine learning is what we are trying to teach with the machine and yes I know some of you are worried about hey!! in the future it can be AI and machine learning are going to learn to write the code so there will be no need of a programmer. Hold down your horses, who told you that first of all?
With evolution, things change quite a lot I do agree but this is almost similar to the strike that I saw in my childhood when people were opposing computers, everybody in the government department and private sector was saying hey!! if computers will come up they will take our jobs. Did it happen? perhaps but didn't open the board number of the job as compared to that the job that is taken, for sure it has been done.
So the same thing is applied here. Is it going to take the job of programmers? who knows but is it going to open up more responsibilities and more scenarios of working jobs, for sure it is going to be there.
So on a whole note, there is no such thing to be worried about that the future is machine learning and AI and we don't need programmers in the future. In fact, we do need more programmers in the future, so now that you understand how machine learning work in a simple scenario. A huge number of data sets have been given to the classifier and based on that data set it just does some processing and tries to predict the results. That basically your machine learning.
Applied in a lot of places, farming is one of them. Recently if you saw the Google new product you can just open up your camera app and can see the restaurant name based on handwriting prediction, image prediction, and logon prediction it can query the humongous amount of data set that is present at Google, and can find out the ratings of the restaurant's, the name of the restaurants and some reviews about the restaurant that's just one example of machine learning.
Have you used some kind of app that predicts how you will look in your 80s or in your 90s? How your face is gonna get a sum de-formation, your skin is going to get some kind of deformation. This is all based on machine learning, a small level of example but yes this is based on machine learning.
How to Learn Machine Learning
So now on a very big scale, you understand what is machine learning, and how you can get started in machine learning. There are a couple of ways of getting started in machine learning and everybody has their own implementation of machine learning. Let me walk you through have you can get started in learning machine learning.
Machine learning is first of all dependent quite a lot on math but not all the time it gonna be like designing your own neural networks or designing your patterns and all these things. It's not all the time about that but the base example of base core setup of machine learning is dependent on that as well.
The first language that you should be looking up in order to get started with machine learning is Python. Python was the very first language to take advantage of and brought up the libraries like sci-kit-learn and TensorFlow. Obviously, the language has its perks and it is being heavily used in machine learning.
Now before you get started and jump directly into the Scikit-learn and TensorFlow documentation & everything. Let me tell you that Python needs to be there in your pocket. Nobody is going to teach you a machine learning course hey how to write a loop or how to loop through an array or how to define these sets of lines into a function or create a new class. These are all basics that you should have already in Python.
So Python is the one way of getting started with machine learning and most people think that is the only way but that's not true. Most of the other languages are also coming up with machine learning but again it depends on how much data set you are having or how much data you can collect it's heavily dependent on that. Now another language or company which came up with the implementation of machine learning for public use is Apple. So if you got an Apple machine-like Macbook, iMac, or Mac mini you can get started in iOS 11. We're just like to have a core date and AV Foundation. We now have a new kit i.e. ML kit which is machine learning.
All you have to do is fetch a data set and it can produce the result. It always shows you there what kind of input it is expecting and what kind of output it will give to you. Very very easy to implement recently in the Bootcamp just a few days ago we created an app in which we can just take a photo of anything at will predict what that object is. It can be a light, a camera, remote control, a hotdog, Burger, or pizza we had a lot of fun playing along with that in fact we spend almost half a day playing around with that app.
Conclusion
So yes Apple is trying hard so that everybody gets access to machine learning and everybody is able to design such apps. Possibilities with such kind of ML kit are endless and I can see a huge future there as well. Now one other thing that has impressed me a little bit not much is the implementation of machine learning through JavaScript. Some of the libraries have come out in the node JS and basically in the core javascript as well, that are able to do machine learning. Are they good?? Not at all. Are they going to be good in future? For sure I am an optimistic guy. I always see the future in someplace because version 1.0 is always bad version 2.0 is always amazing.
So I think that JavaScript has some future in machine learning but there is no such rigid proof right now that it's gonna perform really well. So I would say yes it may come up in the future somehow or maybe some libraries just come out of the blue and we might get something amazing.
So right now Python and IOS 11 are the two good ways of getting started in machine learning and this is the condition right now. Surely this is going to change in the near future. So these were all the views about what basically machine learning is and how you can get started with machine learning. This was just an overview so that the basic queries could wipe out from your brain. Everyone can learn machine learning, it's not that only an experienced programmer can dive into this field. Even if you are bad at maths, then also you can start it by practicing the concepts.
Recent Articles
One of the main benefit to use django for web development is that it comes with an inbuilt database/filesystem i.e SQLITE. Managing database and files is super easy in django. But there are some drawbacks of using SQLITE...
- 2023-07-12Sometimes we have to serve a file which may be a large file from our project directory. Suppose you want to transfer a file from your project directory to your friend or to some other person/server/platform....
- 2023-07-12A sitemap is the first important SEO step which elaborates a website's content to search engines. It provides information to search engines about the available content on our site, which helps them to crawl webpages for indexing....
- 2023-07-12After reading this article you will never ever search for web development guide neither on Google nor on YouTube....
- 2023-07-12I'm kind of a person who always likes to get started by installing the things & writing some code. I love that but this time JavaScript requires a little bit of the theoretical basic so that we can understand what things we are learning, how hard and powerful it is and where they can be applied....
- 2023-07-12In this article we are talking about the most famous HR questions and the mind-set to answer those HR questions....
- 2023-07-12In today's article I want to talk about how to prepare the best resume to get a job in IT. Yes, everybody wants to have a job and in order to get a job you have to apply for it and when you apply for that, the resume is one good thing that you always submit....
- 2023-07-12