Intellicus Enterprise Reporting and Business Insights 18.1

Running Reports

0 views June 28, 2020 0

In Intellicus, Data Science engine step can be added at Query object level and Data Science tasks can also be performed at Report level. If you add a Data Science engine step at Query Object level, you will be able to see predictions once you run the report.

To create Intellicus reports you can refer the below manuals –

“DesigningAdhocReports”

“WorkingwithSmartView”

“DesktopStudio-ATour”

Once you create the necessary steps for a report to be generated with the Data Science engine step at Query Object level, you can run the report and visualize your data with predictions.

You will see the following options once you run the report:

Machine Learning Operations
Figure 7: Machine Learning Operations toolbar while running a report in Smart View

Note: The Machine Learning Operations will be visible if you add Data Science engine step with the necessary modular script at Query Object level.

You can choose between Prediction only or Training and Prediction from here. Prediction only will use a last trained model to bring out predictions, whereas, Training and Prediction will perform retraining based on the latest datasets before giving prediction.  After selecting your choice, click Apply.

You can save your choice as default option every time you run a report by checking the box for Save Values for Next Run. Once you apply the setting you will be able to view predictions in your reports. 

Performing Predictive Analytics

With Intellicus, business users can perform predictive analytics to get predictions on their data. Predictive Analytics helps you to input your script directly at report level and bring out predictions on your data. Adding script at report level is most useful when your predictions are not forming new variables or columns in your data reports.

Turn on the edit mode to view option for Predictive Analytics. You can perform predictive Analytics in Smart View Reports.

Predictive Analytics tabs
Figure 8: Tabs for Predictive Analytics and What-If Analysis

Predictive Analytics box will give you the options as shown in the image below:

Performing predictive analytics
Figure 9: Performing predictive analytics

Fields

This will show the fields present in your report and you can choose on which fields you want predictions. Clicking any field will give you the ability to write Data Science script for that field.

Prediction Script

Here you can write the script for the field(s) you choose.

What-if Variable Source

Here you can select if you want the Data Science engine to analyze the variations in independent variables itself by selecting Auto or you can provide the data by selecting Data Source. Independent variables help to bring out predictions on dependent variables.

For example, if you want to predict Sales (dependent variable) your company would achieve in the coming years, you will have to provide marketing expenditure (independent variable), investment in infrastructure (independent variable), number of probable hires (independent variable) etc.

You can select Auto to let the Data Science engine learn the trend by reading your historic data and predict the values of independent variables. If you have pre-decided values, you can provide it using the Data Source option.

Auto

In Auto, you need to give the prediction data point in numeric value, for instance if you keep the value as 4, the predictions will be made for 4 units as per the intervals in your chart.

auto
Figure 10: Select Auto in What-if variable source

Data Source

Here you need to specify the query object that has the prediction data (Independent variable values), to get predictions for the fields you want and provide script for the same.

Data Source
Figure 11: Options if you select Data Source

Upon adding the script, you can verify if the script is error free. Click OK if the verification process succeeds.

Guidelines for writing script at Report level

  • The script needs to have Meta section for declaring independent variables, and sections for Training and Prediction. These sections should start with #. These place holders should be surrounded by <%%> for Intellicus to be able to parse and understand the modularization. For e.g., #<% TRAINING.SECTION %>
  • Designer/ Data Scientist should specify comma separated independent variables in the comment section at the top of the script (line starting with #) under META.SECTION.
  • Appropriate aggregation functions need to be defined while defining the independent variables. E.g. #SUM(Marketing_Spent),SUM(R&D_Spent)
  • Independent Variables can either be numeric or categorical data. In case of categorical data, designers/ data scientists should write the script to handle the categorical data (encoding, feature scaling and decoding) in training as well as prediction script.
  • If the encoders created in case of categorical data need to persist, the same has to be written by the designer/ data scientist in the script.
  • The order of specifying Independent Variables should be considered as the schema of the dataset being used for training and prediction. User should consider this order while writing the script (in case of indexes and ‘.’).
  • The first line of the Training and Prediction script should be for reading the CSV. Argument passed in the reading section should be <%ThisControl.ReadData%> Ex. Read.csv(‘<%ThisControl.ReadData %>’)
  • The model created is by default saved as ‘myModel.’ This is a mandatory name to the model you create.
  • The training will only happen if the training script is provided, otherwise it will be assumed that a trained model is used.
  • If a trained model is used, it is mandatory for user to provide a prediction script.

Once you have added a script, you can Verify if it is appropriately written and click on ok.
An example script for your reference –

#<%META.SECTION%>

SUM(RnD Spent)

#<%TRAINING.SECTION%>

dataset = read.csv(‘<%ThisControl.ReadData%>’)

for(i in 1:(ncol(dataset))){dataset[is.na(dataset[,i]), i] <-mean(dataset[,i], na.rm = TRUE)}

library(randomForest)

#myModel = randomForest(x = dataset[1:ncol(dataset)-1], y = dataset$Temperature,ntree = 1)

myModel = lm(Target.Profit~RnD.Spent,data=dataset)

What-if Analysis

With Intellicus you can perform What-if analysis to view predictions of different fields based on various business scenarios. For instance, if you want to know how much power will be consumed at a certain temperature, you can adjust the temperature value accordingly to get the prediction. This will help you to make planned decisions of your future actions for your business and help you in taking any other operational decision based on the predictions you derive.

To do What-if analysis, select Filters option and select What-if tab.

What-if analysis
Figure 12: What-if analysis tab

You can use the slider to define the percentage values of different independent variables or manually set them. The values can be positive or negative, which implies the quantity you are increasing or decreasing from the current value. For example, if your current temperature is showing 20 degrees, setting a positive value by 20 percent will mean that the temperature will increase by 20 percent on 20 degrees and similarly decrease by the percentage you set for a negative value.

Click Apply once you have set the desired values and you will be able to view the predictions based on the values you have set.

An example of predictions achieved with the above use-case is shown below:

Predictive Report
Figure 13: Predictive Report with What-if Analysis

Note: You can see the values of independent variables on the chart tooltip.