This post was originally published by adeleke dare at Medium [AI]
Probably imagining a robot or terminator when asking about machine learning, in reality, machine learning is beyond and involved in almost all application you can imagine in our today world. Think of spam filter in your email, voice, face and fingerprint recognition on your phone, your Siri on iPhone, google assistance on android device etcetera have an iota of machine learning. Remembered whenever you log-in to your Netflix, Amazon, Facebook, Jumia, something related to your likeness will be presented (such as products, movies, services etc), these are work of machine learning which is referred to as Recommended System. Let dive into what machine learning is, and how it works.
What is Machine Learning?
Machine learning is a subfield of artificial intelligence. Its goal is to enable computers to learn on their own. A machine’s learning algorithm enables it to identify patterns in observed data usually called train data, build models that explain the world, test the model on a test dataset, and predict things without having explicit pre-programmed rules and models.
Why machine learning?
Let assume that you would like to write a recommended system program without machine learning then you would have to carry out the following steps:
In the beginning, you will take a look at a customer’s profile and compare it with a pool of customers to figure out related features for clustering or segmentation.
Secondly, after clustering, you look for their activities and interaction when using the platform or services. Such as clicks, search words etc.
Thirdly, you’d write an algorithm to detect the patterns that you’ve seen, and then the software would recommend a related product, and services if a certain number of those patterns are detected.
Finally, you’d test the program, and then redo the first three steps again until the results are good enough.
Without machine learning, the program will contain a very long list of rules that are difficult to maintain. But if you developed the same software using ML, you’ll be able to maintain it properly.
From the above, data is supply to a machine learning algorithm for training, and which pattern will be detected by the algorithm to form a model that will automate the process of recommending services and products.
In addition, customer or user can update data (profile, profile images), using of traditional techniques would involve updating code again and again whenever there are changes in data but with ML techniques, changes will automatically be detected and all functionality will be maintained.
When should you use machine learning?
- The problem that requires many long lists of rules to find the solution. In this case, machine-learning techniques can simplify your code and improve performance.
- Very complex problems for which there is no solution with a traditional approach.
- Non- stable environments’: machine-learning software can adapt to new data.
In part two of this writeup, categories of machine learning will be discussed as an introduction level.
In part one, we have covered a lot taking a gentle approach to what machine learning entailed. This part will dive into the category of machine learning. Also, machine learning algorithms use in solving problem related to each category will be mentioned without digging into the mathematical part.
Categories of Machine Learning
Machine learning is categorized into three and depending on whether they have been trained with humans or not, they can learn incrementally, or If they work simply by comparing new data points to find data points, or can detect new patterns in the data, and then will build a model. Majorly, they are
- Reinforcement Learning
In this type of machine-learning system, the data that you feed into the algorithm, with the desired solution, are referred to as “labels.”
Supervised learning groups together tasks of classification (Spam or Not Spam). The above diagram is about spam filter program and it is a good example of classification because it’s been trained with many emails at the same time as their class.
Another example is to predict a numeric value like the price of a flat, given a set of features (location, number of rooms, facilities) called predictors; this type of task is called regression.
These are some of the supervised learning algorithms
- K-nears neighbours
- Linear regression
- Neural networks
- Support vector machine
- Logistic regression
- Decision trees and random forests
You should keep in mind that some regression algorithms can be used for classifications as well, and vice versa.
In this type of machine-learning system, you can guess that the data is unlabeled.
Unsupervised algorithms include the following:
- Clustering: k-means, hierarchical cluster analysis
- Association rule learning: Eclat, apriori
- Visualization and dimensionality reduction: kernel PCA, t-distributed, PCA
As an example, suppose you’ve got many data on customers patronising your retail store, using the algorithms for detecting groups with similar visitors. It may find that 52% of your male customers pay in cash, 30% male customers pay using a credit card, 10% female customers pay with credit card etcetera, by using a clustering algorithm, it will divide every group into smaller sub-groups.
Visualization and dimensionality algorithms are also unsupervised learning algorithms which are important and helpful. You’ll need to give them many unlabeled data as an input, and then you’ll get 2D or 3D visualization as an output.
The goal here is to make the output as simple as possible without losing any of the information. To handle this problem, it will combine several related features into one feature: for example, it will combine a car’s make with its model. This is called feature extraction.
Reinforcement learning is another type of machine-learning system. An agent
“AI system” will observe the environment, perform given actions, and then
receive rewards in return. With this type, the agent must learn by itself.
You can find this type of learning type in many robotics applications that learn
how to walk. Reinforcement learning involved exploration/exploitation tradeoff, Markov Decision Processes (MDPs), the classic setting for RL tasks, Q-learning, policy learning, and deep reinforcement learning and lastly, the value learning problem.
Self-driving cars, Game AI (bots), Robot navigation etc. are some examples of reinforcement learning.
And that’s it. Now you know about machine learning, types, and some of the algorithms.
- Machine Learning for Humans, Vishal Maini and Samer Sabri
- Machine Learning Step-by-Step Guide To Implement Machine Learning Algorithms with Python, Rudolph Russell
This post was originally published by adeleke dare at Medium [AI]