Yes, AI Is Happening on IBM i, and It’s Happening Now
October 20, 2021 Alex Woodie
Artificial intelligence is often thought of as a futuristic technology that may have repercussions for IBM i, but only in the future. Maybe AI will be important to IBM i about the same time when we have flying cars and moving sidewalks. But as a recent POWERUp presentation by an IBM cloud and AI architect shows, AI is already happening on the IBM i server, and it’s happening today.
Benoit Marolleau, who is the cloud and AI architect for the IBM Client Center Montpellier (France), made a compelling case for IBM i shops to start exploring how they can potentially employ AI technology to enhance their applications in his POWERUp presentation, titled “Smarter IBM i Applications Made Easy with AI.”
First, Marolleau sought to dispel the notion that AI is some fancy futuristic technology. In fact, it is all around us, he says. “It is everywhere,” he says. “When you use any application, there are recommendation engines that customize your experience. . . . The goal here is really to enhance the user experience.”
Anybody who has searched for a show on Netflix or used Waze to avoid getting a speeding ticket has been a beneficiary of AI. Of course, Netflix and Google (which owns Waze) are giant technology firms that can afford the best data scientists that money can buy. Surely AI is beyond the realm of your average small-to-midsize IBM i customer, right?
Not so fast. While there is a fair bit of magic going on in AI — for instance, nobody can fully explain exactly how the biggest neural network models actually work — the barrier of entry for AI is surprisingly low. That’s due in part to all the work that has gone into AI tech before us, and the miracle of open source. We truly are lucky to be standing on the shoulders of AI giants.
“On IBM i, we’ve got all the technology that is needed to run AI,” Marolleau says. “We have the data, in Db2 for i. We have core business applications…We’ve got more and more open source technologies on the IBM i, on Power Systems, technologies to build these AI models, these predictive models. And lately we announced Power10 servers,” which sports something called Matrix Math Acceleration (MMA) that can goose ML training workloads by 5x or more.
There are many ways to apply AI in the IBM i realm, which has always valued practicality of applying information technology rather than applying IT for its own sake. “It’s a way to do more with less,” Marolleau says.
Examples of AI applications that could be relevant to IBM i shops include fraud detection, churn prediction, and predictive maintenance. In these cases, machine learning models can be trained on highly structured tabular data housed in ERP and CRM databases. These are classic machine learning applications, but there are other examples of AI that use less structured data.
For instance, there is natural language processing (NLP), which is a form of AI that uses deep learning techniques to glean the ability to understand human-written sentences and even compose some words of its own. One way to apply NLP is to create a knowledgebase that’s based on all the knowledge a company has stored in its databases and file systems, and then expose that knowledge base to the ERP or business application, Marolleau says.
Another way to harness NLP is through the humble chatbot, which is a basically a program that exposes that knowledgebase to the outside world. With the chatbot, the AI magic is happening both through the ability to understand the essence of a customer’s query, and then serving the response back to the user, which is pretty much your classic search engine use case. “We have many customers with chatbots,” Marolleau says.
Computer vision is the other main form of AI that’s using deep learning. In essence, computer vision is AI applied to images taken from a camera for the purpose of object detection and identification. Facial recognition is another form of computer vision that is popular today.
During his presentation, Marolleau performed a short demo of what it takes to develop an AI application. He clearly is familiar with the tools and made it look somewhat easy. But the key message that he got across was that the tools are readily available to the average IBM i professional and they are not that difficult to work with. Above all, machine learning is not rocket science. (It’s actually just data science.)
“Just to remind you, machine learning is not new,” Marolleau says. “It was born in the ‘50s. It learns from data, as I said. You’ve got to have many examples, examples of your rows in your database, and many columns, because you are observing complex phenomenon. Your business is complex in general.”
The good news is that much of the software required to develop machine learning on IBM i is free and it’s open source. And while knowledge of your data and some expertise is required, you don’t have to be a full-blown Netflix-level data scientist to apply machine learning to your business.
“Don’t worry — most of the time, you don’t implement the machine learning algorithms. You use libraries in Python,” Marolleau says. “It’s just an algorithm that will use your experience at training time, and based on that, once trained, the model is operational and ready to be integrated in your existing applications.”
IBM i already supports many of the Python libraries that contain many of the most common machine learning algorithms that can be deployed out-of-the box. Scikit-learn is probably the most well-known Python data science library. Others include NumPy and SciPy. These tools have been available on the platform since 2018.
Marolleau recommends that developers use Juypter notebooks to play around with their IBM i data and use them to build machine learning models. “You can use the Python Package Manager to install Juypter,” he says. “This is a way to graphically code, to have an integrated IDE for Python on IBM i.”
Another path to developing machine learning models is to use an autoML tool, Marolleau says. AutoML tools handle a lot of the details, such as parameter tuning and feature selection, for the user. There are several AutoML offerings that work with Power Systems, including the Driverless AI package from H2O.ai (H2O also develops one of the most popular open source machine learning libraries). IBM also offers Watson Studio with AutoAI. The analytics powerhouse SAS also develops Power Systems-compatible AutoML capabilities with its Viya offering.
Users can train their new models on IBM i, but many will choose some other platform to do it (such as Linux). The new Power10 chips have on-board MMA accelerators to reduce the training time; GPUs are also sought-after resources for training machine learning models, in particular deep learning models that require very large data sets.
Once the training is done, the finished model can be transferred to the IBM i, where it can be used for inference. “Inference is model execution, prediction in production,” Marolleau says. “There are many ways to do that. You could normally run PASE. If you have an ILE application, you can use to synchronously interact with the model’s REST API, or it could be through the database. It could be just a program code invocation form an existing programs. It could also be more complex scenarios with asynchronous technologies like data queues, like Kafka, like ActiveMQ, MQTT, available on IBM i as well.”
AI is expected to generate trillions of dollars in value in the years to come. While IBM i pros are accustomed to deterministic programming, they will need to make the shift to probabilistic programming if they want to take advantage of the opportunities that AI provides. The good news is that the folks at IBM and the wider IBM i community are doing the work to bring AI tools to the platform. It’s a good start, and now it’s up to the IBM i user base to begin familiarizing themselves with the emerging AI paradigm and to start integrating it with the line of business applications that have served the community so well.