As technology develops, the rate of new terms can become overwhelming and, at times, challenging to understand. This can be compounded by variations in software, or even definitions between different sectors. You may remember that we previously shared an article called Automation, Robots and Autonomics — Know Your Terminology. In this blog, we are going to provide you with updates on terms within Intelligent Automation and Artificial Intelligence (AI), so that you can understand functionality and potential for your organisation.
Natural Language Classification (NLC)
Natural Language Classification is an approach taken to teach, or train, a machine in language which is traditionally domain specific.
If you take the word Ibiza, on its own a person reading would assume the word was referring to a location. However, used in the context of a vehicle manufacturer then the word has a different meaning. When using NLC, or ‘classifying data’, then words and information are labelled - for example the word ‘Ibiza’ in the above use case can be labelled as a ‘vehicle model’ so when read, the context of the word can be understood. The training process can be described in a similar way to how people learn - no one is born with domain specific knowledge, but once taught, they can understand and respond to different words dependant on their meaning.
Natural Language Generation (NLG)
Natural Language Generation is an approach of taking information such as statistics and structuring it in a way that is more easily readable. For example, financial results for a software company will contain lots of data around performance and stock value, which could be generated into a sentence using NLG.
For example; Company [company name] today issued its annual results as published in [insert link]. Currently trading on [Stock Market Name] it changes market position to [position level] achieving a new share price of [share price].
Whilst this is at the simpler end of what NLG can perform, the simpler side of NLG doesn’t always have to be powered by an AI to deliver an outcome. Providing a scale of application from simple structured generation without AI, to a complex application using AI to structure and understand data.
Natural Language Processing (NLP)
Natural Language Processing is one of the AI subgroups. It focuses on providing machines/software with a viable means of understanding language. In order to achieve this complex activity, algorithms are provided with a vast amount of data in order to be trained on the principles of human to human communication.
NLP is what underpins some of the capabilities in Chatbots and other virtual agents that engage in human conversations.
Neural Networks is an AI approach that gets its name from being modelled on the human brain. Nodes are compared to neurones within the brain, with nodes each having a relationship (synapses) to another node. Neural Networks can support multiple AI algorithms working together, with the output of one driving the input of another to perform complex tasks, work, or deep understanding.
Optical Character Recognition / Intelligent Optical Character Recognition (OCR / iOCR)
Information exists within organisations in a variety of different formats, sometimes its nicely stored and labelled within systems of records, but in others, key information resides within scanned documents such as PDFs. In the case of PDF documents, information cannot be easily searched and requires people to read the information to derive meaning.
Where information is statically positioned in a document, OCR (Optical Character Recognition) systems can be used to read the information from the page. For example; a utility bill where the Account Number is always positioned at the upper right part of the page. This extracted information can then be ‘used’, or pushed, into another system of record.
Where PDFs are not static and fluctuate due to seasons, locations of issue, or lack of general standardisation, OCR is less successful, either failing or causing exceptions — meaning a return to manual reading.
However, dependant on the level of variability of the tasks, iOCR (Intelligent OCR) can be a suitable solution. This is due to its ability to leverage pattern recognition and learn from the actions of people, making decisions about what information on a page is relevant.
iOCR does not require static rules to be in place which is a limitation of OCR. Instead, it is also able to recognise the format of key information and surrounding information on the page.
For example; being able to understand the format of a zip, or post code, or recognise the list of Product Names, irrespective of where the information resides on the page.
The key differentiator of iOCR is that it continually learns, based on user interactions with the systems (pointing out where it may have been incorrect in the identification of a field on the page), or tracking similarities in Account Numbers to locations - this makes it more robust in the real world of work.
In the management of automation, there are three key approaches taken; manual, scheduling and intelligent orchestration. Manual refers to jobs and tasks being triggered by an operator of the platform, this is akin to running a batch job.
Scheduling is the most common of management techniques, instructing a trigger to ‘fire’ at a certain time of day, e.g. execute tasks at 3PM, or execute a task every 60 seconds between the hours of 9AM and 6PM. Although scheduling is more autonomous than running a task manually, the impact is a high level of inefficiency as ‘robots’ can be scheduled to work on processes with no work to do or be blind to work building on another process they are not scheduled to work on.
Orchestration is often a general term which can encompass scheduling. However, intelligent orchestration drives its decision making from machine learning. By leveraging the latest development on data mining and cognitive algorithms, insight can be gained around the profile of different tasks - providing organisations with understanding of best time to perform tasks and the flow of work through the business without constant human intervention. With this information to hand, intelligent orchestration is able to manage workloads to the highest levels of efficiency.
Chatbots are now a common way to interact between machines (software) and humans in order to fulfil an outcome. The developments in language understanding (see Natural Language Process) means that software can not only understand the written/typed word but can also derive context for a message. For example, a resident complaining to their broadband provider about a repeat loss of service may express themselves in a variety of ways. In this situation, keyword searches for “unhappy”, “disappointed”, “failure” etc. would not suffice - instead an approach of understanding the language used is required.
Chatbots are traditionally mini web applications that connect to a repository of information (knowledge). This information is utilised in conjunction with an NLP engine to give understanding and a breadth of knowledge in conversations. Dependant on the maturity of the Chatbot, it can either interface in simple conversations, or have in-depth chats in a range of languages.
The knowledge available to Chatbot is what makes them effective, which is why it is often referred to as a ‘trained dataset’. Chatbots cannot inherently understand how to process energy meter readings, provide advice on council tax, nor do they understand the different broadband packages available in the market. They have all been trained to understand a specific domain, training which usually involves people at some point.
Danny Major, CTO, Thoughtonomy