When It Becomes Machine Learning Project?
Okay, this story I start with question that is “When it becomes machine learning project?”. As a deep learning enthusiast, this question is dazzling around to my mind for separating a kind of project that need machine learning as a solution or just a standard algorithm as a solution.
To answer this question I watched several videos about machine learning and I found Prof. Yaseer Abu Mustafa from Caltech University online lecture. AfterI watched Prof. Yaseer, I conclude the answer from the lecture video as a question for filtering does the project is machine learning project.
Question for filtering Machine Learning Project or Not
- Do we have data (a lot of data usually)?
- Does the data have a pattern on it?
- Can we pin it down the data mathematically?
These 3 question is like feasible test for a machine learning project. If you have a project for machine learning and do not pass all of these 3 question than you are not in business, but if you pass these 3 question than you are on business. Some of my friend told me that machine learning effort is 80% in data acquiring or data preparation. I don’t know if these percentage is correct or not, but in my perspective that percentage probably correct. Because preparing data in machine learning is usually the most time consuming after training the classifier.
Okay, lets answer the second question, “Does the data have a pattern on it?”. This question is related to the condition of data, which means that if the data is image type than the image must has a pattern on it. For example, if we want have dog or cat classifier than an image must have dog in every image as dataset. Pattern mean, it has a same structure of some object and from that structure machine learning will learn and generalize it when see something similar.
How about question number three? “Can We Pin it down the data mathematically?”
This the last question that machine learning algorithm do its job well other than another algorithm. But what this question mean anyway? Okay let me explain it, every dog has a different face, different type of tail (long tail or short tail), and many more thing. But in general every dog has a ear, four legs, a tail and other thing that we call it as a structure of dog. This structure has a pattern that with normal algorithm we can not create a specific code to determine a dog with other object just be reading the pixel on image. Because of this condition object detection on image is very hard to do with standard algorithm. In other hand, human will easily do this kind of task because human is pattern reader. Soo, if we want to make computer do the thing that we do, we need to teach them how to learn to understand the abstract meaning of an object so they can perceive pattern like we do.
Okay, that’s a three question for feasible test or determine if your project or your problem need machine learning as a problem solving. Let me know your opinion on this topic by commenting in this article.