Artificial intelligence in smart things
One of the greatest assets and markers of smart things such as smart homes, smart manufacturing, smart cities, smart cars, smart hospitals is artificial intelligence (AI). What exactly is AI and why is it a big deal? This is what we aim to answer. AI encompasses the link between machine operations and human intelligence. Through the application of AI and machine learning algorithms to inanimate but useful systems, mechanisms that once could only be accomplished by natural and biological systems can now be perfectly accomplished by programs, machines and robots. AI allows machines to make decisions on their own without much or any human intervention by making use of large amounts of data and continuous learning.
It is through AI that autonomous vehicles are a possible feat and not just a futuristic concept. How else would online marketing platforms know and recommend the exact commodities that you are interested in? It has been proven that a machine algorithm called
Watson by IBM can now diagnose lung cancer, Hepatitis and skin cancer with much higher accuracy levels than human doctors. How does this happen?
This article aims to answer this by delving deep into the different types of Artificial Intelligence, different classifications of AI algorithms, applications of AI solutions, emerging trends and some limitations of Artificial Intelligence.
Types of AI
According to the strength and extent of use of AI, three classifications arise. These classifications move from systems that have single task performance to multivariable systems that incorporate human emotions and fully mimic human intelligence. These classifications are;
- Narrow or weak AI;
- General or strong AI; and
- Artificial Super-Intelligence.
Narrow AI
Currently, all the progress the human kind has made on AI is stuck in this classification. In its performance of tasks, narrow AI has a very goal oriented approach and only accomplishes the specific task it is given. In its working, the developers provide a thin line of parameters and data limits to guide its running. Compared to human capabilities and working of the human mind, narrow AI still as a long way to go in its aim of replicating human intelligence in a machine. Therefore this leads to the emergence of the second classification of AI.
Examples of narrow AI include; virtual assistants in phones, suggestions based on search history in search engines and many more.
General AI
The aim of AI is to replicate human emotions and intelligence in an effort to make machines autonomous. General AI is way ahead of Narrow AI in achieving this goal. Though still majorly in theory, machines in General AI are very much in comparison to humans in reacting to situations.
The algorithms used will have to learn fast and effectively in order to prompt the machines to apply corrective measures in a variety of problems they experience. There has been an attempt to build a system that reaches the level of General AI in the manufacture of K, the fastest supercomputer built by
Fujistu.
Artificial Super-Intelligence
While narrow AI is yet to achieve complete human intelligence replication, and general AI is at par with human intelligence replication, Artificial Super-Intelligence is predicted to surpass any human’s capability of responding to specific problematic situations. We use the term predicted because Artificial Super Intelligence is only depicted in science fiction movies where it completely takes over the world because it is way better at everything that humans do. This would therefore explain the fears of scientists like
Elon Musk towards allowing unrestricted development to AI.
AI algorithms
For any program or system, algorithms are the specific instructions that tell to accomplish a specific task. In order to achieve the aim of allowing machines to learn from experience and make better decisions on behalf of humans, AI algorithms are much more superior to regular programming algorithms. These algorithms together with copious amounts of data allow machines and systems to make calculated decisions based on learning experience.
The working of the algorithms can be loosely divided into
two distinct segments namely;
- The training phase
- The testing phase
The training phase is when specific data is fed into a machine so that it can get to learn from them. For example, the data could be symptoms of various types of crop ailments and is given the name training data. The machine can register their manifestations in form of spots or stripes and any other characteristic. Based on this information, the machine can be able to make calculated decisions in the testing phase when it now encounters the characteristics in real life plants. These characteristics that the machine encounters can be named testing data.
Classification of AI algorithms
Understanding the different types of algorithms is very important in making decisions on which algorithm to use in what scenario depending on the use of the AI system or machine. We will classify the algorithms broadly along two lines;
- According to the purpose and learning style of the machine learning algorithm; and
- According to the similarity in form and function.
Classification according to purpose and learning style
Subsections in this classification include;
- Supervised learning;
- Unsupervised learning;
- Semi-supervised learning; and
- Reinforcement learning.
1. Supervised learning
Supervised learning is used in instances where for a specific dataset, which can be used as the training data set, a specific characteristic is known. In other words, the training data is labeled in a specific instance. However in another instance or scenario, the characteristic is not known and is in need of prediction.
Here, the human programmer gives the machine training data that contains both input data and the expected results. From this feeding the computer or machine can be able to observe and learn from the patterns and hence predict when required in the future.
A simple example would be the pattern set to lock and unlock a smart phone. A user trains the smart phone by inputting a desired pattern. The system in the phone registers and learns the pattern such that when the correct pattern is input in the future, the user can be able to be identified.
Examples of supervised learning algorithms include:
- Naïve Bayes;
- Decision Trees; and
- Linear Regression.
2. Unsupervised Learning
Unsupervised Learning is used in instances where the dataset has no known characteristics. Therefore the challenge here is for the machine or system to discover any unlabeled or hidden characteristics. These algorithms are particularly useful when a developer does not know what to look for in a specific dataset.
The human programmer does not give the machine the expected results but just fills it with training data and leaves the algorithms to discover any patterns on their own. Based on the intrinsic characteristics of the data, the algorithms identify the patterns and return interesting results.
Unsupervised Learning is used in fraudulent detection. In a vast data collected of say credit card transactions, algorithms can be able to detect any anomalies or uncommon transactions and alert the banks. Based on the history of the transactions, fraudulent ones – which are normally out of the ordinary, can be identified.
Examples of algorithms utilizing unsupervised learning include;
- Clustering algorithms;
- k-means clustering; and
- Association rule learning algorithms.
3. Semi-supervised learning
This type falls in between supervised and unsupervised learning. It includes training data that is both labeled and un-labeled. It is actually expensive to label all the data in many practical scenarios in the real world so a set of data can have a few known characteristics in specific data and a majority of the training data unlabeled. It helps in exploiting advantages of both supervised and unsupervised learning algorithms.
4. Reinforcement learning
In reinforcement learning, there are no specific labels or characteristics given to training data. Here there is some form of feedback that comes from a machine or system interacting with the environment. Observations gathered from these interactions prompt a feedback that leans on two extreme sides; either maximizing a reward or minimizing a risk. With the aim of getting more rewards, a system learns from observations and adjusts itself to interact with the environment in a way that brings back the positive feedback.
Reinforcement learning involves two phases – exploration and exploitation. Exploration is when the algorithms act as learning agents and interact with the environment to get either a positive or a negative feedback. Exploitation is when the algorithms now utilize this experience to obtain a reward or positive feedback from the environment.
Reinforcement learning algorithms are used in self-driving vehicles and even robotic hands. Some examples of the algorithms under reinforcement learning are;
- Q- Learning;
- Temporal Difference; and
- Deep Adversarial Networks.
Classification of AI algorithms according to their functionality
- Regression algorithms;
- Decision tree algorithms;
- Clustering algorithms;
- Association rule algorithms;
- Artificial Neural Network algorithms; and
- Bayesian algorithms;
1. Regression algorithms
These algorithms are about developing relationships between various variables according to a certain model. The model is developed when specific outcomes are predicted when input data is fed into a system. From this developed model, continuous output values are predicted following the input of certain input data.
Regression algorithms are very important in statistics and data analytic tools.
Examples of regression algorithms include;
- Ordinary Least Squares Regression;
- Linear Regression;
- Logistic Regression;
- Stepwise Regression; and
- Multivariate Adaptive Regression Splines.
2. Decision Tree Algorithms.
These algorithms use classification as a model to reach a predictive decision. It is counted as a decision support tool as it models decisions based on classified attributes in data. A tree like graph structure is used to classify variables on the lines of very distinct attributes to make clearly separate groups together with their expected outcomes
Decision Tree algorithms are one of the most used types of algorithms as they are fast and accurate because of their systematic and organized approach. Most popular decision tree algorithms are;
- Classification and Regression Tree;
- Iterative Dichotomiser 3;
- Decision Stump; and
- Conditional Decision Trees.
3. Clustering algorithms
These algorithms are concerned with arranging data into groups which have variables with similar attributes. From these classifications, classes are developed according to the attributes and predictive analysis realized. Some clustering algorithms include;
- k-Means;
- k-Medians;
- Expectation maximization; and
- Hierarchical clustering
4. Association rule algorithms
These algorithms derive the relationship between variables from rules that best explain the relationships between variables in data. These rules are obtained from thoroughly studying a data set and eventually can reveal useful relations especially in vast datasets of different types. Some association rule learning algorithms include;
- Apriori algorithm; and
- Eclat algorithm.
5. Artificial Neural Network algorithms
These algorithms are drawn and inspired from the structure of biological neural networks. In their working, they do a lot of pattern matching for both classification and regression scenarios and problems. These are examples of artificial neural network algorithms;
- Back-propagation;
- Stochastic gradient descent;
- Perceptron;
- Multilayer perceptrons; and
- Radial basis function network.
6. Bayesian algorithms.
These algorithms utilize the Bayes’ Theorem for problems that involve classification and regression. In their working, they assume independence between variables. Examples of algorithms under Bayesian algorithms include;
- Naïve Bayes;
- Gaussian Naïve Bayes;
- Multinomial Naïve Bayes;
- Bayesian Belief Network; and
- Bayesian Network.
Examples of AI algorithms
There are myriads of AI algorithms that are being used by developers all over the world which we have listed in above sections. In this article we will only elaborate more about Naïve Bayes algorithm and how it is used to create AI solutions.
Naïve Bayes
Naïve Bayes algorithm is part of a larger group of Bayesian algorithms that use probability to classify data and offer predictive solutions. A Naïve Bayes algorithm assumes the independence of a particular variable – that it does not depend on the presence of any other variable to offer some prediction. Armed with simplicity, the Naïve Bayes algorithm is easy to use and is very helpful with sophisticated datasets. The probability Naïve Bayes equation is given as;
P(A/B)=P(B/A)P(A)/(P(B))
Where;
P(A/B) – the posterior probability of class given predictor
P(A) – the prior probability of class
P(B/A) – the likelihood which is the probability of predictor given class
P(B) – the prior probability of predictor
Some of the real life applicaions of Naïve Bayes include:
- Classification of an email as priority, social or forum; and
- Use of facial recognition software.
Limitations of AI
As powerful as AI is, there is no one size fits all solution. Each problem to be solved has to be researched on and built from the ground up with a team of experts. Since we are still stuck at Narrow AI, the AI solutions still require some supervision and regular maintenance and upgrades. The solutions can’t fully think for themselves. It is expensive to build up and maintain AI solutions.
Application of AI
We have already looked at how AI encompasses a series of interconnected systems, methodologies and technologies that showcase intelligent actions by analysis of data with some degree of autonomy. The results of these technologies are tremendous and in this article we will look at applications of AI in smart homes.
The explosion in population has led to expansion of cities due to urbanization and therefore a great demand for affordable housing. This has led to the need of designing, building and operating households in a cost effective environmental friendly intelligent manner. AI plays a pivotal role in analyzing data and offering solutions that;
- Greatly reduce energy consumption;
- Cut down on carbon emissions;
- Lower building and construction costs; and
- Reduce expenses around the house.
Water and energy wastage in a house lead to exorbitantly high billing expenses that make it hard for many people to either afford living in a city or live comfortably with access to basic needs in a home. AI working together with smart IoT devices brings a practical solution to this problem.
Smart preinstalled meters record real time usage of both energy from any device (e.g. air conditioners) and water usage and avail this information. AI takes this data to interpret it in an intelligent way so as to make it useful to relevant stakeholders. Residents, engineers and even local authority can be able to gain from AI by;
Making better rationing decisions in order to optimize either water or electricity when resources are limited. AI solutions are consulted by local authority in order to make better conclusions that save or resources and cost but also positively impact the community.
Monitoring of water and energy use through AI developed programs that analyze the availed data.
Research has shown that monitoring both energy and water consumption by users leads to a 5% reduction in wastage and savings of up to a month’s rent in a year.
AI technologies respond intelligently without human intervention in cooling a house to save on energy used by ACs. After sensors detect that outside temperatures are suitable and air quality is okay, AI prompts the opening or shading of windows to cool a house down instead of relying on the AC. AI could also prompt a ceiling fan to start in a specific room where there are human occupants detected.
Conclusion
Despite the limitations listed above, investing in AI is completely worth it. It is revolutionizing businesses and making previously impossible tasks now viable. From driverless cars to arrhythmia detection, AI is changing lives for the better. As driverless cars reduce operational costs and allow efficient service to PWD arrhythmia detection solutions are saving lives by alerting doctors when a patient has an irregular heartbeat. Fraud is now easily detected and traced because of artificial intelligent algorithms in a system. Security has also been beefed up because of fingerprint and facial recognition software. Virtual assistants are taking customer experience to another level thus boosting business sales. AI is even tackling mental health where chat-bots monitors a person’s mental health through continuous one on one interaction. They then offer helpful resolutions after interacting with a patient. The future is truly bright.