Artificial Intelligence in IT Today
Many IT departments have implemented software solutions that go beyond simple transaction and analytical processing. These packages contain models that describe certain data behaviors, and these models consume current data to see if these patterns of data behavior exist. If so, operational systems can use this information to make decisions. A good example of this is fraud detection. IT data engineers use analytics on historical data to determine when fraud occurred, code this into a model, and deploy the model as a service. Then, any operational system can invoke the model, pass it current data and receive a model “score” that represents the probability that a transaction may be fraudulent.
The general term for these new packages is artificial intelligence (AI). They consist of a combination of search, optimization and analytics algorithms, statistical analysis techniques and template processes for ingesting data, executing these techniques and making the results available as services called models. The subset of AI that deals with model creation and implementation is sometimes called machine learning (ML).
Machine Learning and Artificial Intelligence
IT departments implement ML and AI solutions in the broader context of their data and processing footprint. This is usually depicted as the following four-layer hierarchy.
Layer 1: The Data.
This layer contains the data distributed across the enterprise. It includes mainframe and distributed data such as product and sales databases, transactional data and analytical data in the data warehouse and any big data applications. It also may include customer, vendor and supplier data, perhaps at remote sites, and even extends to public data such as twitter, news feeds and survey results. Another possible source of data is server performance logs that include resource usage history.
Note that these data exist across diverse hardware platforms including on-premises and cloud-based. As such, various data elements can exist in multiple forms and formats (e.g. text, ASCII, EBCDIC, UTF-8, XML, images, audio clips, etc.). In addition, at this level will exist hardware and software that manage the data, including high-speed data loaders, data purge and archive processes, publish-and-subscribe processes for data replication, as well as those for standard backup and recovery and disaster recovery planning.
Layer 2: The Analytics Engines.
In this layer exist a mixture of hardware and software that executes business analytics against the data layer. There are several common players in this space. They include:
- The IBM Db2 Analytics Accelerator (IDAA) than can be implemented as standalone hardware or fully integrated within certain z14 servers;
- Spark on z/OS;
- Spark Anaconda on z/OS;
- Spark clusters on distributed platforms.
Just as the data layer occurs across multiple hardware platforms and distributed sites, so will the analytics engines layer. The major function of this layer is to provide an optimized data access layer against the underlying data as a service for AI and operational applications.
Layer 3: The Machine Learning Platform.
IT implements machine learning software in this layer. It accesses the data through one or more of the analytics engines. It is in this layer that IBM delivers its latest offering, Watson Machine Learning for z/OS (WMLz). WMLz provides a basic machine learning workflow consisting of the following steps:
- Data Ingestion and Preparation — Inputting data, filling in missing values, encoding category data, creating indexes and normalizing numeric values;
- Model Building and Training — An interface for the data scientist to create a model of data behavior based on historical analytics, train the model to detect data patterns and validate the model;
- Model Deployment — Implement the model as a production process, including procedures for updating models in-place and monitoring model results;
- Feedback Loops — Processes that allow automated model learning by feeding model results back into the model training process to update models or produce new ones.
Data scientists know that one of the greatest benefits of machine learning is to use the results in operational systems; for example, having an ML model analyze financial data to determine the possibility of fraud. This means that you will achieve best performance when you deploy ML in the hardware environment where transaction processing occurs. For many large organizations this means the IBM zServer environment.
Layer 4: Machine Learning Solutions.
Now that we have the machine learning platform available as ML services, we can create combined AI/ML solutions that invoke those services. IBM has several ready-made solutions for this layer, including the following:
- Db2 AI for z/OS (Db2ZAI) — Using Db2 SMF data for analysis, Db2ZAI monitors and analyzes Db2 operations in a Z/OS environment. It can provide improved query access path information to the Db2 optimizer to increase SQL performance, diagnose Db2 performance abnormalities and recommend corrective action and detect Db2 statistics anomalies and provide performance tuning recommendations;
- IBM Z Operations Analytics (IZOA) — This product analyzes z/OS SMF data and detects changes in subsystem use and forecasts changes that may be required in the future, does automatic problem analysis and provides problem insights from known problem signatures.
Watson Machine Learning on Z
Let’s take a deeper dive into how Watson Machine Learning on Z (WMLz) works and what services it can provide.
Key Performance Indicators (KPIs). WMLz does not inherently know what performance factors are important to you. However, once these KPIs are defined (either by a user or by implementing one of the machine learning solutions noted above), WMLz can analyze KPI data to look for correlations. For example, when one KPI (say, I/O against a critical database) goes up, another KPI (say CPU usage) may go up as well. As another example, several KPIs may be behaviorally similar, so WMLz can cluster them as a group and perform further analysis across groups. WMLz can also determine KPI baseline behaviors based on time-of-day, time zone of transactions or seasonal activity.
Anomaly Detection. Once correlations are discovered, WMLz can look opposite effects and report them as anomalies. In our I/O example above, an anomaly would be reported if I/O against a critical database increased but CPU usage decreased.
Pattern Recognition. As with many machine learning engines, WMLz will look for patterns among KPIs and data identifiers. For example, CPU may increase when processing certain categories of transactions.
KPI prediction. An extension of basic KPI processing, WMLz can use the past behaviors of groups of KPIs to predict the future. Consider our I/O example once again. The product may detect that certain transactions become more numerous during a particular time period, and these transactions consume significantly more CPU cycles. The product may then predict future CPU spikes.
Batch workload analysis. Many IT shops have a large contingent of batch processing that is tightly scheduled and includes job and resource dependencies. Some jobs must wait for their predecessors to complete, some use significant shared resources (such as tape drives or specialty hardware) and some are so resource-intensive that then cannot be executed at the same time. WMLz can analyze the workload data, including resource usage, and provide recommendations for balancing resources or tuning elapsed times.
MLC cost pattern analysis and cost reduction. Some IBM software license charges are billed monthly, and the license amount may depend upon maximum CPU usage during peak periods. WMLz can analyze CPU usage across time, look for patterns and make predictions and recommendations for software license cost reduction.
Watson Machine Learning for z/OS — Features
IBM’s Watson Machine Learning for z/OS allows IT its choice of development environments to develop models including IBM SPSS Modeler. These environments assist data scientists by using notebooks, data visualization tools and wizards to speed the development process. Several quick-start application templates are also incorporated in the toolset for common business requirements such as fraud detection, load approval and IT operational analytics. The latest version of WMLz (version 2.1.0) includes support for Ubuntu Linux on Z, java APIs, simplified Python package management and several other features.
Interested readers should reference the links below for more detailed technical information.
# # #
Machine Learning and Artificial Intelligence
Data and AI on IBM Z
Using Anaconda with Spark — Anaconda 2.0 documentation
Watson Machine Learning – Overview
Watson Machine Learning – Resources