eldr.ai | Working with Multiple Outputs
If you haven't already, please have a look at the
Quick Start
guide before going through this tutorial as
this guide is an extension of that.
In the Quick Start we looked at a Customer Data example where we had one output, Churn, which
was essentially a true/false, yes/no, or 1/0 classifier with one output - perfectly valid for a lot of cases.
However, there may be instances where we need to consider more than one output possibility e.g. if there are three potential customer outcomes
(1)Customer returns next day, (2)Customer returns next week, (3) Customer never returns
Moreover, what if we need to predict which product or webpage a customer is going to look at next and we have 100 or 1000+ products?
Or, what if we're interested in diverse behavioural outcomes and we need to predict the next step of a customer, patient, staff member or criminal?
All these examples require multiple outputs.
With that in mind, let's get ELDR AI to learn using the customer data, but with multiple output options
(1) Download and have a look at the Multi Output Customer Data example
Click here to download a small CSV file (3Kb, 150 rows)
containing multi output Customer Data that we want ELDR AI to learn from.
You will see the data looks very similar to to the customer data from the Quick Start guide with ips and ipcs - however we now have three outputs (op) : OneDayReturn,
OneWeekReturn and NeverReturn - one for each of our potential outputs.
Notice how the output data is structured - we simply use 1 in the op column we're selecting and 0 in the op column we're ignoring. This is called One Hot Encoding
and is used heavily in AI/Machine Learning to encode multiple options.
(2) Create ELDR AI Data
Now you're familiar with ELDR AI multi output data structure, let's go ahead and use the example data you have just downloaded.
From the Dashboard, sidebar or nav menu in ELDR AI, go to Create Data.
Enter "Customer Multi Output" in the Name field and select CSV from the Data Type dropdown as show below:
Select the example you have just downloaded in step(1) and upload it by pressing "Create" and hopefully you will be greeted with a success message.
From the Dashboard, sidebar or nav menu in ELDR AI, go to View Data where you will be able to view your newly-created data:
(3) Create an ELDR AI Model
Now you have your data ready to go, let's create an AI Model so ELDR AI can learn from it.
From the Dashboard, sidebar or nav menu in ELDR AI, go to Create Model.
For this quick start demo, you only need to enter a Name of Customer Multi Output and make sure your Data Source
is CSV|Customer Multi Output (or whatever you called the Customer Data example).
There are plenty of other parameters you can use when you get to know ELDR AI (all of which are detailed in these Docs),
but for this example, leave the default values (shown in the images for reference and familiarisation) and click Create to create an ELDR AI Model.
You should hopefully receive a success message:
From the Dashboard, sidebar or nav menu in ELDR AI, go to View Models where you will be able to view your newly-created Model
(4) Train your ELDR AI Model
You can get to the Training screen multiple ways, however for this quick start demo we will click the Training Action icon
(graduation cap, highlighted with the green arrow) from the View Models page from above:
All you need to do now is click the green Train Model button, which will change to
During and after training (which for this quick demo should take a matter of seconds, but for larger data-sets cans take minutes or hours)
useful information will be displayed in the form of a pseudo-server readout, graphs and charts -
as you get to know ELDR AI, this will be useful for optimisation:
After training has completed you will get an alert message giving you an outcome of the training.
If you have followed this example to the letter,
you will hopefully see a success message looking like this:
Note the Accuracy here. After training, ELDR AI automatically passes all the inputs in again and compares its predicted output
with output columns specified in the data. The result of this test is the accuracy.
(5) Get Predictions and Recommendations
You have successfully trained your ELDR AI Model and you now want ELDR AI to start giving you some useful information.
With ELDR AI you can get predictions and recommendations in many ways including via an online form, API or via CSV. For this demo, we'll
use the online form functionality.
You can get to the Ask ELDR screen multiple ways, however for this quick start demo we will click the Ask ELDR icon
(question mark, highlighted with the green arrow) from the View Models page from above:
You will be taken to the Ask ELDR page, where the Form option is open by default.
On the left of the form are your inputs. These are what you supply to ELDR AI to get outputs (predictions)
and recommendations on the right.
To start with, in the input fields, put values in taken directly from the input data so we can confirm ELDR AI has learnt what we told it. e.g.
above we have taken from the csv data line 30 "WA1,3,40,Chocolate,AmazonPay" and we are expecting a "NeverReturn = ~1" as the output value after pressing
"Ask ELDR(Form)" button. In this case we can see (blue box) ELDR AI has successfully learnt to give the correct outputs with these input values.
Now have a play around with the inputs using other values that you have and haven't told ELDR AI about - these will produce
predictions. Some fields
will influence the output (prediction) more than others - this is what ELDR AI has found out for us.
You can send in multiple requests in one go by creating additional forms using the "plus" button highlighted with the purple box.
Please note the green box. These are our recommendations and in this case ELDR AI has learnt that
customers who live in WA1 are similar to those who reside in DT1 and LA13, and customers who buy chocolate are also likely to buy crisps and biscuits.
You will see in the recommendations section that ELDR AI makes recommendations for all ipc (cat/category)
fields. This is discussed below in Insights.
Important: Compared to the Quick Start task where we only had one output, there are some key things to note now we have multiple
outputs (in this case, three):
(1) Outputs (blue box) - These are the outputs in the same order as dictated by your AI Data
(2) Ordered Outputs (orange box) - These are the outputs ordered with the highest output value first - this is because generally speaking
you will likely only be interested in the value closest to 1. E.g. in this case we can see that this customer is likely to fall in the category of "NeverReturn".
Although we won't discuss it in this quick tutorial, while you're on the Ask page it could be useful for you (depending on how you intend to use ELDR AI)
to have a look at the other ways of asking ELDR AI - e.g. API, URL, CSV, Text and Chart. Click on each of the headings to have a look.
These are discussed in more detail in the docs.
(6) View Insights
It's useful to be able to get an overall view of how ELDR AI interprets the overall data it has learnt from
(or how it holds information in its artificial neurons).
For example, to get a single prediction from ELDR AI we need to pass in all input values, however we might also need to know how each individual input influences
the overall output, independently of the others. You may have found when playing around with the Ask ELDR AI predictions page that some
inputs influence the output more than others.
This is where ELDR AI Insights comes in to play - we are able to isolate each field to see the individual trends and similarities.
You can get to the Insights screen multiple ways, however for this quick start demo we will click the Insights icon
(lightbulb, highlighted with the green arrow) from the View Models page from above:
Clicking on the Insights icon will take you to the Insights page:
The Insights page is split into two sections (graphs for trends, and heatmaps for similarities) which load independently:
Graphs are used to spot trends for each input e.g. how each input on its own influences each of the outputs.
ELDR AI does this by automatically generating multiple predictions where the subject input value increases and all other inputs are turned off.
Heatmaps are used to display similarities between ipc/categorical
inputs after ELDR AI has learnt how they influence the entire model.
When the similarity is greater than 75% (as seen above with Biscuits and Chocolate) ELDR AI classes this as a recommendation e.g.
in this instance ELDR AI has spotted a high similarity between customer profiles who buy Biscuits and Chocolate (87%), whereas there is no similarity between
customer profiles who buy biscuits and those who purchase fruit.
That concludes the ELDR AI Multi Output guide