Introduction To The Application Of Artificial Intelligence (AI)

Introduction To The Application Of Artificial Intelligence (AI)
The biggest high-tech companies like Google, Apple, Microsoft, etc. are recently started to invest a huge amount of money in Artificial Intelligence (AI). There are already several application based on AI machine learning built in some of the products you are probably also using daily. And machine learning started to spread to other industries and sectors also.

Since computers were invented we are trying to make (program) them to learn and to improve automatically. This is what we call Artificial Intelligence or machine learning. The possible applications of AI are endless from robotics to e.g. learning from existing medical records in order to decide on treatments of existing or new diseases, or optimize business processes based on specific process patterns, or to decide which next process step the employee (or client, product, etc.) has to take, or knowledge management, or to decide whether to buy a stock on the stock exchange (with well defined AI training parameters), or to quickly classify specific species or plants depending on some characteristics, data mining, or to quickly recognize specific illnesses depending on several symptoms in healthcare, or identify voices or images of people, or even automatically drive a car, ... etc.

Many people (especially the ones who do not know what it is) think about AI as the evil which will take over thousands of jobs in the future. I rather prefer to think about AI as the technology which makes complex things possible what people can not do (see e.g. the case studies) or to provide a much better user/client experience. AI is thus here in the first place to help us and not to replace our jobs!

There are two main application fields of AI:
  • Descriptive Modeling - with Knowledge Management as one of the most important applications. In this type of modeling all attributes are known and by presenting a ‘question’ (an attribute set) to the AI the AI will give the ‘answer’/the target attribute.
     
  • Predictive Modeling - in this type of modeling the aim is that the AI identifies an unknown target/decision depending on a set of input attributes. The AI does this by first learning about the specific process or phenomenon by studying a collection of attribute sets.
Artificial Intelligence in Business Process Improvement
In both cases we first need to develop an AI Model and then use the AI to identify quickly the target attribute or decision. The model development process is described in the next section.

Model Development

AI machine learning model development process
The first step in the model development process is the design of the AI by deciding which data to collect (input data). This step is crucial because the capabilities of the AI will depend on it. You need to collect (e.g. by measurements, interviews, etc.) all relevant attributes/parameters which are necessary to describe the specific problem you want the AI to learn. E.g. in a hospital if you would want the AI to help you to decide which specific next step the patient needs to take (go home, intensive care, general care, etc.), then you would collect all data about many patients which are necessary to make this decision (patient's temperature, blood pressure, perceived comfort, etc.). By feeding all these data to the AI together with the right decisions you can train the AI and use it later to help you make the right decision fast. Very complex issues can be decided in this way quickly with great confidence. The accuracy of the decisions will depend on how good you train the AI.

The input data is a collection of records. Each record is characterized by several attributes (attribute set) including one special target attribute or decision. 
The attributes can be discrete (categorical with a fixed/limited number of values) or continuous (real number) values. There are two types of models depending on the type of the target (decision) attribute. When the target attribute is discrete (category) we speak about Classification modeling, and when the target attribute is continuous (real number) we speak about Regression Modeling. In some cases the AI may convert the input to the above described format internally as for example if the input is images. The pixels of the images are then converted to numbers depending on their color.

The example on the image below shows a data set collected for a very simple AI model which is used to decide whether to play golf or not. The attributes are Outlook, Temperature, Humidity, Wind and the target or decision attribute is in the last column with two discrete values Play and No. Each attribute has two or more values. E.g. Outlook can be Sunny, Overcast or Rain which are a fixed number of discrete values (categories, designated with [Type]=Text in the example). The Temperature is a continues attribute with many different possible values (real numbers in a range, designated with [Type]=Number in the example).

AI decision tree machine learning data set
The second step in the model development process is data collection and the division of the collected data into two parts. One part (the larger part) will be used to train the AI and the other part will be used to test/validate the AI model. By testing the AI you are able to see how accurate the decisions are. In case the accuracy is not acceptable you need to collect more data or even introduce extra parameters (=redesign the AI).
The third step is the training of the AI Model (will be explained in detail in the next section) after which the AI model is validated. The validation provides the accuracy of the AI model. If the accuracy is acceptable the AI model is ready. If it is not acceptable the AI needs to be redesigned which can mean the collection of extra data or even the addition of extra attributes.

The accuracy of the AI model is calculated simply by dividing the number of correct predictions with the total number of predictions in the testing/validation data set.

AI Model Building - AI Training

The AI is using a so called learning algorithm to learn the input data or with other words to build an AI model. AI learning algorithm research is very active today. There are several types of AI learning algorithms which will be explained in the next section. There are some learning algorithms which are well suited for some problems but not for other types of problems. The complexity of the necessary input and the speed of the algorithms are also varying. The choice of the learning algorithm is thus important.

One of the today used AI learning algorithms is based on decision trees. An AI decision tree can be thought of as a series of appropriately developed questions and answers which follow-up each other. The tree starts with a root node (‘question’) and continues with several nodes (‘answers’) after which a new node/question is added (internal node) at all of the leaf nodes (answers) which become an internal root node and so further.

Please note that the AI-TOOLKIT contains several types of learning algorithms (SVM, Random Forest, Neural Networks, etc.).

decision tree

The AI model building algorithm reads the training data and step by step builds the AI decision tree by carefully deciding on the different nodes with a top-down divide an conquer strategy (root node, internal nodes and their hierarchy). A statistical property (the so called Information Gain) is used to classify the attributes and to build the decision tree from the data. Every time a node needs to be chosen the attribute with the highest information gain (the largest split over the input space) is used. 

You may also be interested in the software tool Decision AI, a free Google Sheets add-on (part of the BPI Tools package).

As a last step the AI tree model is pruned in order to remove all unnecessary nodes. In case you use the AI model for knowledge management you may prefer to not prune the tree!

AI Learning Algorithms

As it was mentioned before, the AI is using a so called learning algorithm to learn the input phenomena/data or with other words to build an AI model. There are several types of AI learning algorithms. Some of them are well suited for some problems but not for other types of problems. The complexity of the necessary input and the speed of the algorithms (and necessary computer memory) are also varying. The choice of the learning algorithm is thus important.

Learning algorithms and their properties

Learning algorithms are a mixture of mathematical optimization and computational statistics algorithms. The algorithms may be used for Classification or Regression AI modeling. As we have seen before we speak about classification when there are only a limited number of classifiers (decision variables) assigned to the sub-populations of the input data. We speak about regression when a continues range of numbers (classifiers) are assigned to the input data (similar to mathematical regression when we want to fit a line or a higher-dimensional hyper-plane to the data).

Some of the frequently used learning algorithms:
  • Decision Tree based algorithms (and Random Forest)
    - Relatively fast and human readable model (decision tree).
    - Simple input which can be numerical or textual.
    - Examples of usage: for many types of business process improvement decisions, many types of classification as e.g. classification of illnesses, animals, plants, knowledge management, etc.
  • Support Vector Machine (SVM) based algorithms
    - The model and the input parameters are more complex.
    - May also be used in case of more complex fully numerical input data.
    - Examples of usage: the same as in case of the decision trees but the data may be more complex (e.g. multidimensional), classifying signals, simple images, sales prices, etc.
  • Neural Networks based algorithms
    - This is the most complex model type using multi-layered neural networks.
    - The input may be very complex (both the input data and also the input parameters).
    - Examples of usage: image recognition, voice recognition, more complex input data which is not learned well by the former two algorithms, etc. Self driving cars are using this type of algorithms. Even several neural networks may be connected to each other to form very complex learning AI systems operated by specifically designed computer systems. Such complex AI systems will be implemented in hardware (in hardware embedded software) in the future instead of computer software because of its very high CPU and memory usage.
The rule of thumb when choosing the right algorithm (AI) is that use the decision tree based algorithms when possible, if that does not work well (e.g. low accuracy) then the SVM algorithm and if the former two do not work well then turn to the neural network based model. The complexity and the computational time (and computer memory used) is the minimum in case of the decision tree algorithms, similar or more with the SVM algorithms and the most in case of the neural network based algorithms. Obviously, in case if a model provides an unacceptable accuracy (the AI can not learn the phenomena/input data well) then turn to the other models. Often the accuracy of the different models is similar in case of problems to which all models are applicable, thus it does not have any sense to increase the complexity if it is not really necessary!


The AI-TOOLKIT: https://ai-toolkit.blogspot.com
Cloud Computing Software: Decision AI, a free Google Sheets add-on (part of the BPI Tools package).

Contact

Contact Person

Address

Antwerp, Belgium

You may use LinkedIn (phone number and email available) or the contact form to the right.

Helpdesk

You may contact the AI-TOOLKIT helpdesk:


Search This Website