Conventional Programming VS Machine Learning
I’ll start this article with some questions and then give explanation for every questions. In this article i’ll not explain about technical but focus on the big picture.
What is Conventional Programming ?
What is Machine Learning ?
Is Machine Learning will replace Conventional Programming ?
First,
Conventional Programming is writing a program in a traditional procedural language, such as assembly language or a high-level compiler language (C, C++, Java, JavaScript, Python, etc).
Example :
We want to write program which can recognize activity and then make rules for some conditions.
From the image above we only use one information (speed), but how to recognize golf activity ? It’s more complicated right ? We need more than one variable to give enough information to recognize complex activity. We can’t do activity recognition by use speed variable alone of course is quite naive. We walk and run at different speeds uphill and downhill and other people walk and run at different speeds to us.
Imagine that you need to create activity recognition program, so how much variable and if-else statement for create this program ? Maybe it can be tens of variable and thousands of if-else statement. It’s terrible and actually static system
And now,
What is Machine Learning ? [Machine learn from DATA]
Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to effectively perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as “training data”, in order to make predictions or decisions without being explicitly programmed to perform the task.
Example :
Let’s say every activity generate specific and unique data which represent these activity (like the picture above). We realize that this data has specific patterns and we give label for every patterns. Term of “label” is result which you want to predict from system. Machine Learning need high quality and high quantity data for training the system.
Concept of Conventional Programming and Machine Learning
Conventional Programming decision making is based on IF-ELSE. Many solution can not be modeled with conventional programming because of the variation of the data input variable and complexity of the problem.
Machine Learning solves this problem by modeling this data with train data and test data and then predict the result.
Is Machine Learning will replace Conventional Programming ?
From my opinion, Machine Learning (ML) does not replace Conventional Programming. Because both are have different usability and purpose. Conventional Programming will always use for develop and build website, android app, ios app, and other stuff. But ML can be used to build intelligent systems like Fraud Detection, Recommendations, and etc.
Thank you !