ROC Curve (legacy)

This node draws ROC curves for two-class classification problems. The input table must contain a column with the real class values (including all class values as possible values) and a second column with the probabilities that an item (=row) will be classified as being from the selected class. Therefore only learners/predictors that output class probabilities can be used.
In order to create a ROC curve for a model, the input table is first sorted by the class probabilities for the positive class i.e. rows for which the model is certain that it belongs to the positive class are sorted to front. Then the sorted rows are checked if the real class value is the actually the positive class. If so, the ROC curve goes up one step, if not it goes one step to the right. Ideally, all positive rows are sorted to front, so you have a line going up to 100% first and then going straight to right. As a rule of thumb, the greater the area under the curve, the better is the model.
You may compare the ROC curves of several trained models by first joining the class probability columns from the different predictors into one table and then selecting several column in the column filter panel.
The light gray diagonal line in the diagram is the random line which is the worst possible performance a model can achieve.

Options

Class column
Select the column that contains the two classes that the model was trained on.
Positive class value
Select the value from the class column that stands for the "positive" class, i.e. the value high probabilities in the probability column (see below) are assigned to.
Limit data points for each curve to
By default each curve shows at most 2,000 different data points regardless how may rows are in the input. If you want to see more or less points in the curve, adjust this value. Lower values make rendering the curves faster but this is only an issue if you have many different curves. A value of -1 disables the limit and shows all input data points.
Columns containing the positive class probabilities
Select the column(s) that contain the probabilities for the a row being from the positive class.

Input Ports

Icon
Input data with actual values and class probabilities

Output Ports

Icon
A one-column table with the area(s) under the ROC curve(s)

Views

ROC Curves
ROC curves

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.