The section gives a general economic and financial overview of the banking industry—which rarely happens in an IT programming book. It exists to give both technologists and business professionals a taste of both sides.
Artificial intelligence, commonly known as AI, is a very powerful technology. A thoughtful implementation of AI can do wonders in automating business functions. AI has the power to transform a wide variety of industries through its application. As computer systems have evolved over time, they have become very powerful. Consequently, machines have also become very powerful and can perform many complicated tasks with ease. For example, Optical Character Recognition (OCR) is a task that even personal computers can perform easily with the help of software. However, OCR requires intelligence to translate dots from an image into characters. So, in an ideal case, OCR will be considered an area of AI. However, because of the power of machines, we tend to not consider it as an application of AI.
In this chapter, our focus is to understand what AI is and its application in banking. Banking is an industry or domain that is extremely diversified and complex. To simplify complex banking functions, the banking industry requires a constant supply of advanced technological solutions. As shown in a recent analysis conducted by Forbes (https://www.forbes.com/sites/forbestechcouncil/2018/12/05/how-artificial-intelligence-is-helping-financial-institutions/#2e989fae460a), the implementation of AI in various banking processes will save the industry more than $1 trillion by 2030. Consequently, the banking industry will benefit the most from AI systems in the near future.
We will begin with a brief introduction to AI and banking as an industry. Here, we will define the methods of implementing AI in software systems. We will also learn how the banking industry can benefit from the application of AI. There will be many more topics to cover before we complete this chapter. So, instead of simply discussing what you can expect from this chapter, let's jump straight into it!
In this chapter, we'll focus on the following topics:
- What is AI?
- Understanding the banking sector
- Importance of accessible banking
- Application of AI in banking
What is AI?
AI, also known as machine intelligence, is all about creating machines that demonstrate the intelligence that is usually displayed by humans in the form of natural intelligence. John McCarthy coined the termartificial intelligence in 1955.
AI has witnessed two winters so far: once in the 1970s with the reduction of funding by the Defense Advanced Research Projects Agency or DARPA (https://www.darpa.mil/), then known as ARPA, and another time with the abandonment of an expert system by major IT corporates such as Texas Instruments (http://www.ti.com/) and Xerox (https://www.xerox.com/).
In a way, AI aids in the process of transferring decision making from humans to machines, based on predefined rules. In the field of computer science, AI is also defined as the study of intelligent agents. An intelligent agent is any device that learns from the environment and makes decisions based on what it has learned to maximize the probability of achieving its predefined goals.
AI is capable of solving an extremely broad range of problems. These problems include, but are not limited to, simple mathematical puzzles, finding the best route from one location to another, understanding human language, and processing huge amounts of research data to produce meaningful reports. The following is a list of capabilities that the system must have in order to solve these problems along with a brief description of what each means:
- Reasoning: The ability to solve puzzles and make logic-based deductions
- Knowledge representation: The ability to process knowledge collected by researchers and experts
- Planning: The ability to set goals and define ways to successfully achieve them
- Learning: The ability to improve algorithms by experience
- Natural Language Processing (NLP): The ability to understand human language
- Perception: The ability to use sensors and devices, such as cameras, microphones, and more, in order to acquire enough input to understand and interpret different features of the environment
- Motion: The ability to move around
How does a machine learn?
Let's take a quick look at the basics of machine learning. There are three methods that a machine can use in order to learn: supervised learning, unsupervised learning, and reinforcement learning, as described in the following list:
- Supervised learning is based on the concept of mining labeled training data. The training data is represented as a pair consisting of the supplied input (also known as a feature vector—this is a vector of numbers that can represent the inputted data numerically as features) and the expected output data (also known as labels). Each pair is taggedwith a label. Thefollowing diagram illustrates the supervised learning method:
- Unsupervised learning is based on a situation where the training data is provided without any underlying information about the data, which means the training data is not labeled. The unsupervised learning algorithm will try to find the hidden meaning for this training data. The following diagram illustrates the unsupervised learning method:
- Reinforcement learning is a machine learning technique that does not have training data. This method is based on two things—an agent and a reward for that agent. The agent is expected to draw on its experience in order to get a reward. The following diagram depicts the reinforcement learning method:
Software requirements for the implementation of AI
The open source movement (which will be discussed in the Importance of accessible banking section) propels software development. The movement is coupled with the improvement of hardware (for example, GPU, CPU, storage, and network hardware). It is also supported by countless heroes who work on improving hardware performance and internet connectivity. These technicians have developed the AI algorithm to the point where it delivers near-human performance.
The following diagram depicts the typical technology stack that we should consider whenever we implement software to pe...