Skip to content
srikanthIBM edited this page Sep 19, 2018 · 19 revisions

Welcome to the invoke-wml-using-cognos-custom-control wiki!

Short Name

Invoke machine learning model from cognos dashboard

Short Desription

This code pattern demonstrates step by step details of invoking the machine learning or predictive models dynamically from cognos dashboard & captures the output of the model and displays within the cognos dashboard. Also, this will be useful to retain the telecom customers based on the predictions.

Offering Type

Analytics

Introduction

In this pattern, we will demonstrate to build custom widget, integration of the custom widget in Cognos and to invoke the Machine learning model from the Cognos Dashboard. The dataset considered here is Telecom sample customer data, using that data we Predict behaviour to retain the customers. You can analyse all relevant customer data and develop focused customer retention programs. For this, one need to build a custom widget using Java Script to get inputs and to show outputs as d3 chart. Then this widget can be imported into Cognos dashboard and gets real time output.

Author

By [email protected], [email protected] and [email protected]

Code

https://github.com/invoke-wml-using-cognos-custom-control/

Demo

Will be uploaded soon

Video

Will be uploaded soon

Overview

This code pattern details about invoking the watson machine learning or the predictive models hosted on IBM cloud from IBM Cognos report/dashboard. Many of the cognos users get the requirements to dynamically get scores/prediction results of the ml models from within the cognos console. But, with older version versions of cognos application we do not have straight forward solution or option to invoke these models directly. Here is a good news for all those users. Now, with the latest versions of the release(for demo purpose used cognos 11.0.11), we could use custom widget built using Java scripts/D3 charts to invoke models hosted on cloud platform. While users get insights from the cognos dashboard, we can include another tab or a dashboard within the same application where once can input the model required parameters and get instant predicted outputs.

Flow

WRML_Cognos

  1. Create the forms using js and charts using D3js.
  2. Create Watson Machine Learning or the predictive Model.
  3. Launch Cognos either on Google chrome or mozilla firefox.
  4. From the cognos dashboard, pass the input parameters in the form and click submit button.
  5. Invokes ML models based on the input paramaeters.
  6. Gets output from the model and sends to the cognos dashboard to display

Included Components

  • JavaScript - Develop forms to capture user inputs, later these forms can be imported to cognos dashboards.

  • d3js - Develop charts like pie, bar, or some fancy charts sunburst etc which can later be imported to cognos application.

  • Cognos (version 11.0.11) BI server - On Prim version of Cognos.

Featured technologies

  • Cognos Analytics - For the business user who needs to easily create compelling visualizations and dashboards. For the business leader who needs a proven, self-service analytics solution they can trust. For the enterprise that needs the scalability and analytics governance the business demands -- whether on-prem or on cloud -- only IBM Cognos Analytics delivers it all.

Blog

In scenarios where there is a need to see a real time Machine Learning model output from Cognos Dashboard then we need to have an external mechanism to invoke the model & pass the parameters and finally the scores are written back to the database. Cognos reads the latest scores from the database and displays on the dashboard. This is a tedious process of displaying the machine learning model outputs on the dashboard dynamically.

The latest version(11.0.11) of Cognos comes with Custom control feature which is too cool and very helpful. It gives the capability to create a real time dashboard where one can pass the inputs through a custom widget which internally invokes the model through REST API, gets the output and displays on the dashboard. This Custom control widget is built using JavaScript and d3js.

Links