Building an AI system is different from traditional computer programming where software doesn’t automatically improve itself.
The principles behind a good AI engine:
Also, it is essential to realise that building AI systems have become not only much less complex but also much cheaper. Amazon Machine Learning is one example. It helps automatically classify products in your catalogue using product description data as a training set.
Trending AI Articles:
1. Basics of Neural Network
2. Bursting the Jargon bubbles — Deep Learning
3. How Can We Improve the Quality of Our Data?
4. Machine Learning using Logistic Regression in Python with Code
Case in point: Imagine you used 20 hours of computing time generating your models and you obtained 890000 real-time predictions over one month. This would have cost you only $100.
To scope this short writing, we shall focus on Machine Learning (ML) as it is the area that receives most applications. One important point to note is a good understanding of statistics is a beneficial start in AI.
Steps to design an AI system
- Identify the problem.
- Prepare the data.
- Choose the algorithms.
- Train the algorithms.
- Choose a particular programming language.
- Run on a selected platform.
1. Identify the problem
First and foremost, the most important questions to ask are (1) “what are you attempting to solve for?” (2) “What is the desired outcome?”
However, we must continuously remind ourselves that AI cannot be the panacea in itself. It’s a tool, not the entire solution itself. There are several techniques and many different problems to solve with AI.
Think about this analogy that helps to explain the above. If you want to cook a tasty dish you have to know exactly what you are going to cook and all the ingredients that you need.
2. Prepare the data
We have to look at the data. Data is divided into two categories, structured and unstructured.
Structured data conforms to a rigid format to ensure consistency in processing and also ease of analytics. i.e. customer record with a first name, last name, date of birth, address, and so on.
Unstructured data is everything else. Data is maintained in the not uniformed pattern. It can include audio, pictures, imagery, words and infographics. — examples like emails, a phone conversation, a WhatsApp, WeChat message.
One of the greatest utilities and breakthrough of AI was to allow computers to analyze unstructured data and access a much larger universe of information than the world of structured data.
Often, we think that the key elements of AI are complex algorithms. But in fact, the most crucial parts of the AI tool kits is cleaning the data. It is quite normal for data scientists to spend 80% of their time cleaning, moving, checking, organising data before even actually using or writing a single algorithm.
Enterprise and big firms have massive proprietary databases data may not be ready for AI, and it is very prevalent that data is stored in silos. That may result in duplication of information, some which may correspond, some may contradict. Data silos could eventually limit the firm to get quick insights from their internal data.
Before running the models, we must make sure that the data has been organised and cleaned up. In practice, we have to check consistency, define a chronological order, add labels where necessary, and so on.
In general, the more we massage the data, we are more likely to deliver the outcome to solve our defined problem.
3. Choose the algorithm
We shall not go into technical details (out of the scope of this writing), but it is essential at least to understand the different common types of algorithms that are also dependent on the type of learning that you choose.
- Supervised learning
Fundamentally, classification is about predicting a label and regression is about predicting a quantity.
Example of employing classification algorithm would probably be a scenario if you want to understand whether a loan was likely to default.
Example of employing regression algorithm would probably be a scenario if you want to quantify how much the expected loss would be for those defaulted loans. In this context, you are looking for value. What’s the dollar amount that I’m expecting to lose if the loan defaults?
Once we have identified the problem, we can select the algorithm.
These examples are simplistic and are in practice far from reality. There are other algorithms which we can choose from in Supervised Learning such as random forest, naïve Bayes classification, support vector machine and logistic regression.
Nonetheless, these examples help you understand the types of algorithms in AI.
2. Unsupervised learning & Reinforcement Learning
Types of algorithms would be different, and we could classify them in several different categories such as clustering where the algorithm tries to group objects together, association when it finds links between objects, dimensionality reduction where it reduces the number of variables to decrease the noise.
4. Train the algorithms
After selecting the algorithms, we need to train the model where we input the data into the model. A critical step here is model accuracy. While there are no widely accepted or internationalised thresholds, it is vitally important to establish model accuracy within your selection framework. Setting a minimum acceptable threshold and applying a great statistical discipline is key, we have to retrain the model as it is natural the models may need some fine-tuning. Consider an event where model predictability is reduced. You, therefore, need to rework on the model and check all the different steps that we previously mentioned.
5. So, what’s the best programming language for AI?
A short answer is that this depends on your needs and a variety of factors. As you know, there are many programming languages out there from the classic C++ and Java to Python an, R. Python and R are the more popular coding languages as they offer a strong set of tools including extensive Machine Learning libraries to the users. One of the very useful libraries is NLTK — the natural language tool kit written in Python instead of programming it all by yourself.
6. Selected Platforms
Choose a platform that provides all of the services instead of buying your own service, database, etc.
Ready-made platform — Machine Learning as a Service — has been one of the most useful pieces of infrastructure that have helped the spread of Machine Learning. These platforms are built to simplify and facilitate Machine Learning, often offer cloud-based advanced analytics which can be used with and incorporate multiple algorithms and multiple languages.
Rapid deployment is also key to the success of MLaS. Platforms typically help with such issues as data pre-processing, model training, evaluation prediction, but they do vary, and some pre-evaluation is key.
The more popular platforms include Microsoft Azure Machine Learning, Google Cloud Prediction API, TensorFlow, Ayasdi, and so on.