IV algorithm

Updated at:

Information Value (IV) measures the predictive power of a feature variable in machine learning classification problems. A higher IV score indicates stronger predictive capability.

Use cases

IV is designed for large-scale feature selection in risk control scenarios, where datasets may contain thousands or tens of thousands of candidate features. Manually identifying predictive features at that scale is impractical. IV ranks features by their ability to discriminate between outcome classes, letting you quickly filter out weak predictors before model training.

Syntax

CREATE FEATURE feature_name WITH ( feature_class = '', x_cols = '', y_cols = '', parameters=()) AS (SELECT select_expr [, select_expr] ... FROM table_reference)

Parameters

Parameter Description
feature_name The name of the feature.
feature_class The type of the feature. Set the value to iv.
x_cols The list of independent variables. Separate multiple variables with commas (,).
y_cols The dependent variable.
parameters Custom parameters for creating the feature. The IV method supports only categorical features. The value can only be set to categorical_features. Separate multiple features with commas(,).
select_expr The name of the column used to create the feature.
table_reference The name of the table containing the column used to create the feature.

Limitations

  • The IV method supports only categorical features. All features listed in x_cols that require categorical treatment must be declared in parameters.

  • parameters accepts only categorical_features as a value.

Example

The following example creates an IV feature named iv_001 on the airlines_test_1000 table. Seven columns are specified as independent variables, five of which are declared as categorical features. Delay is the dependent variable.

/*polar4ai*/CREATE FEATURE iv_001 WITH ( feature_class = 'iv',x_cols='Airline,Flight,AirportFrom,AirportTo,DayOfWeek,Time,Length',y_cols='Delay',parameters=(categorical_feature='Airline,Flight,AirportFrom,AirportTo,DayOfWeek')) AS (SELECT * from airlines_test_1000);