Do you ever wonder how Google suggests you similar searches in future based on your past search activity list? Or even Amazon recommends similar product list on your search. Be it Netflix, Amazon, Flipkart etc., they all are built on the concept of Machine Learning (ML).
What is Machine Learning?
Machine learning can be defined as a mechanism where it can extract data and learn from it with the help of some predefined algorithms fed to it. It learns hidden patterns from the available data and tries to suggest next move to the user based on that pattern.
There are several applications that we use in our day to day life that is built on the concepts of ML. YouTube, Google search, Alexa, Siri, Snapchat are examples of these kinds of applications.
How Machine Learning evolved?
• Supervised learning – Machine was supervised by some researchers to make machines learn.
• Unsupervised learning – Machine was made to learn on its own.
• Reinforcement learning – Machines were rewarded if they learnt and responded in an expected way.
• Deep learning – Traditional ways of machine learning failed to analyse and learn on the huge amount of data released by the Big Data and hence deep learning was evolved where human minds were simulated in the Artificial Neural Networks created in our computers. The machine is now able to learn on its own using advanced technology to compute voluminous data with the required speed.
• Deep Reinforcement Learning – Now the rewards are given to Deep learning machines.
Algorithms used in Machine Learning
• Linear regression – Two-dimensional relationship between x and y variable so that one is dependent on the other. Linear Regression can be classified into Simple Linear Regression where it uses only one independent variable, and the other as Multiple Linear regression where it uses more than one independent variable.
• Logistic regression – It can estimate discrete values based on the independent variables used. There are only two outcomes – true/false or 0/1. In other words, it can predict the probability of occurrence of an event by applying data to a logic function.
• Decision Tree – It is mainly used for classification type of problems and comes under supervised learning. Based on the independent variable, the entire population is split into two homogenous sets. To split them into homogenous sets, it uses various techniques like Chi-square, entropy, Information Gain, Gini etc.
• Support Vector Machine – It is an n-dimensional plot of data in space where each point has two coordinates called support vectors.
• Naïve Bayes – It is based on Baye’s Theorem assuming that the predictors are independent. In other words, it assumes that a particular feature in a class is independent of any other feature.
• K- Nearest neighbours – It is used for both regression and classification problems. In this algorithm, it stores all cases and classifies them according to the majority votes of its k neighbours.
• K- Means – This fall under the unsupervised learning and can solve clustering problem. It classifies the given data by a certain number of clusters, say k clusters. Inside a cluster data points can be homogenous or heterogeneous. It is similar to finding out shapes from an ink blot.
• Random Forest – It is termed as “Forest” because it can be considered as a group of decision trees. Each new object having certain attributes are voted by the Tree according to the classification terms of the Tree. The object having the most votes is chosen by the Forest.
• Dimensionality Reduction Algorithms – As cognitive technologies like AI and IoT are booming, a huge amount of data is being generated from almost every sector- government, research and development, finance, healthcare etc. These data will have useful information which is based on many significant variables and parameters.
It becomes a tedious task for the data scientists to extract or choose a highly significant variable from 1000 or 2000. Here comes the Dimensionality Reduction Algorithms which helps to achieve the task along with various other algorithms like Decision Tree, Random Forest, missing value ratios etc.
• Gradient Boosting Algorithms – This algorithm of Machine Learning can be applied when a large amount of data is being dealt with and prediction should be very high and accurate. This algorithm makes use of several weak or moderate predictors to build a strong predictor. Other Boosting algorithms are XGBoost, LightGBM, CatBoost etc.
Implementation of Machine Learning applications
There are many development platforms available to develop a machine language application which is free to use. Here is the list of IDE, platform and languages for development.
Choice of IDEs
- R Studio
Choice of Platform
- Google Cloud
Choice of Language
Machine learning and Artificial Intelligence
Artificial Intelligence (AI) implies “intelligent machines” i.e. machines which are artificially made intelligent by humans. Computer machines are fed with algorithms such that machine can behave as intelligently as humans in all real-world scenarios.
Machine Learning (ML) is the technology where machines can learn on their own without being programmed. Machine learning is concerned only about increasing accuracy, unlike AI which aims at the success rate.
ML develops from its past experiences and learnings. Artificial Intelligence is about decision making whereas ML is about learning new things from existing data.
AI is all about machines ‘thinking and behaving like humans’ whereas ML creates self-learning algorithms.
Machine Learning finds just a solution whether it is optimal or not whereas Artificial Intelligence will find only an optimal solution.
Machine Learning and Deep Learning
Deep learning can be considered as the subset of Machine Learning that can learn from data even if the data points are very unstructured and diverse.
Deep Learning algorithms work well only when the amount of available data is very large. Deep Learning needs a very large amount of data to understand it perfectly.
Machine Language algorithms can work on low-end machines while Deep learning algorithm needs high-end machines.
The success of Machine Language algorithms depends on how accurately the features (like pixel values, shape and textures) can be extracted and hand-coded. Deep Learning aims at learning high-level details from the data.
Machine Language algorithms break down a problem into smaller modules, solve them independently and then combine them back to get the result. In Deep Learning the process is done end-to-end.
Deep Learning algorithms take a long time to train whereas Machine Language algorithms take much less time.
Applications of Machine Learning
• Image Processing – Image recognition and Image processing is a field where Machine Learning is widely used. It can identify faces, images, places etc. Facebook’s auto friend tagging application is based on Machine Learning concepts. Facebook’s project called “Deep Face” is behind this concept.
• Speech Processing – Speech Recognition by Google is a popular application of Machine Learning. It uses a process called “Speech to Text”. Google Assistant, Siri, Cortona and Alexa are all using Machine Learning.
• Autonomous vehicles – Self-driving cars have become possible due to Machine Learning. Tesla, a car manufacturing company uses Unsupervised learning method to train their car.
• Prediction – Google maps show us the shortest route and can also predict traffic condition at various time of the day using various colour coding to show heavy or light traffic in a route.
• Product recommendations – Product and entertainment companies heavily rely on the Machine Learning concepts to recommend new products or new movie based on the customer’s last search history.
• Email spam filtering – Machine Learning is behind filtering all our emails as normal or spam. Gmail uses some spam filters like a Content filter, Header filter, Permission filters, Rule-based filters, etc.
• Online Fraud detection – Our online transaction can be safe by Machine Learning technology. Fake accounts, fake IDs and steal money can all be kept at bay by Feed Forward Neural Network.
• Stock Market – Machine Language’s technology called ‘long short term memory neural network” is used for predicting stock market trends.
• Healthcare – Predicting the correct position of the tumour and the stage in breast cancer, prediction of the exact position of lesions in the brain and other health advances have been made possible by Machine Learning.
• Language Translation – uses ‘Google Neural Machine Translation’ to convert a text into a familiar language.
Machine Learning Life cycle
Due to Machine Language computers can learn without being programmed. The entire process can be summed up using the life cycle of Machine Learning. It helps in arriving at the solution of a given problem easily. Various stages in the life cycle of Machine learning are
- Gathering data
- Data Prediction
- Data Wrangling
- Analyse data
- Train the model
- Test the model
To conclude, we can say that Machine Learning has the ability to learn from a large amount of data. It aims at giving accurate results and generally delivers fast in order to avoid any unforeseen business risk and also predict profitability. Combining Machine Learning with AI and other cognitive technologies can even make it more efficient.
M.Tech (VLSI Design and Embedded system)
BS Abdur Rahman University