The content discusses model evaluation in unified regression with pivoted input data. It mentions that the evaluation results are provided in the form of a statistics table. The table is generated during both the training and scoring procedures. The evaluation only works if the PARTITION_METHOD is set to 1 or 2. The statistics without "TEST_" are calculated using the original algorithm on all training data, while the statistics with "TEST_" are calculated using the partitioned test data. It is recommended to use the latter for model evaluation.
------

SET SCHEMA DM_PAL;

DROP TABLE META_DATA_TAB;
CREATE COLUMN TABLE META_DATA_TAB(
    "VARIABLE_NAME" NVARCHAR(50),
    "VARIABLE_TYPE" NVARCHAR(50)
);

INSERT INTO META_DATA_TAB VALUES ('OUTLOOK',  'CATEGORICAL');
INSERT INTO META_DATA_TAB VALUES ('CLASS',    'TARGET');
INSERT INTO META_DATA_TAB VALUES ('TEMP',     'CONTINUOUS');
INSERT INTO META_DATA_TAB VALUES ('HUMIDITY', 'CONTINUOUS');
INSERT INTO META_DATA_TAB VALUES ('WINDY',    'CATEGORICAL');

DROP TABLE PAL_DATA_TBL;
CREATE COLUMN TABLE PAL_DATA_TBL(
    "ID" INT,
    "VARIABLE_NAME" NVARCHAR(50),
    "VALUE" NVARCHAR(50), 
    "PURPOSE" INT
);
INSERT INTO PAL_DATA_TBL VALUES (0,     'OUTLOOK',      'Sunny',    1);
INSERT INTO PAL_DATA_TBL VALUES (0,     'TEMP',         '75',       1);
INSERT INTO PAL_DATA_TBL VALUES (0,     'HUMIDITY',     '70',       1);
INSERT INTO PAL_DATA_TBL VALUES (0,     'WINDY',        'Yes',      1);
INSERT INTO PAL_DATA_TBL VALUES (0,     'CLASS',        '1',        1);
INSERT INTO PAL_DATA_TBL VALUES (1,     'OUTLOOK',      'Sunny',    1);
INSERT INTO PAL_DATA_TBL VALUES (1,     'TEMP',         '80',       1);
INSERT INTO PAL_DATA_TBL VALUES (1,     'HUMIDITY',     '90',       1);
INSERT INTO PAL_DATA_TBL VALUES (1,     'WINDY',        'Yes',      1);
INSERT INTO PAL_DATA_TBL VALUES (1,     'CLASS',        '0',        1);
INSERT INTO PAL_DATA_TBL VALUES (2,     'OUTLOOK',      'Sunny',  	1);
INSERT INTO PAL_DATA_TBL VALUES (2,     'TEMP',         '85',    	1);
INSERT INTO PAL_DATA_TBL VALUES (2,     'HUMIDITY',     '85',    	1);
INSERT INTO PAL_DATA_TBL VALUES (2,     'WINDY',        'No',   	1);
INSERT INTO PAL_DATA_TBL VALUES (2,     'CLASS',        '0',    	1);
INSERT INTO PAL_DATA_TBL VALUES (3,     'OUTLOOK',      'Sunny',    2);
INSERT INTO PAL_DATA_TBL VALUES (3,     'TEMP',         '72',  	    2);
INSERT INTO PAL_DATA_TBL VALUES (3,     'HUMIDITY',     '95',  	    2);
INSERT INTO PAL_DATA_TBL VALUES (3,     'WINDY',        'No',  	    2);
INSERT INTO PAL_DATA_TBL VALUES (3,     'CLASS',        '0',   	    2);
INSERT INTO PAL_DATA_TBL VALUES (4,     'OUTLOOK',      'Sunny',  	1);
INSERT INTO PAL_DATA_TBL VALUES (4,     'TEMP',         '69',   	1);
INSERT INTO PAL_DATA_TBL VALUES (4,     'HUMIDITY',     '70',   	1);
INSERT INTO PAL_DATA_TBL VALUES (4,     'WINDY',        'No',   	1);
INSERT INTO PAL_DATA_TBL VALUES (4,     'CLASS',        '1',    	1);
INSERT INTO PAL_DATA_TBL VALUES (5,     'OUTLOOK',      'Overcast', 1);
INSERT INTO PAL_DATA_TBL VALUES (5,     'TEMP',         '72',   	1);
INSERT INTO PAL_DATA_TBL VALUES (5,     'HUMIDITY',     '90',   	1);
INSERT INTO PAL_DATA_TBL VALUES (5,     'WINDY',        'Yes',  	1);
INSERT INTO PAL_DATA_TBL VALUES (5,     'CLASS',        '1',    	1);
INSERT INTO PAL_DATA_TBL VALUES (6,     'OUTLOOK',      'Overcast',	1);
INSERT INTO PAL_DATA_TBL VALUES (6,     'TEMP',         '83',   	1);
INSERT INTO PAL_DATA_TBL VALUES (6,     'HUMIDITY',     '78',   	1);
INSERT INTO PAL_DATA_TBL VALUES (6,     'WINDY',        'No',   	1);
INSERT INTO PAL_DATA_TBL VALUES (6,     'CLASS',        '0',    	1);
INSERT INTO PAL_DATA_TBL VALUES (7,     'OUTLOOK',      'Overcast',	1);
INSERT INTO PAL_DATA_TBL VALUES (7,     'TEMP',         '64',      	1);
INSERT INTO PAL_DATA_TBL VALUES (7,     'HUMIDITY',     '65',      	1);
INSERT INTO PAL_DATA_TBL VALUES (7,     'WINDY',        'Yes',     	1);
INSERT INTO PAL_DATA_TBL VALUES (7,     'CLASS',        '1',       	1);
INSERT INTO PAL_DATA_TBL VALUES (8,		'OUTLOOK',       'Overcast',1);
INSERT INTO PAL_DATA_TBL VALUES (8,     'TEMP',          '81',  	1);
INSERT INTO PAL_DATA_TBL VALUES (8,     'HUMIDITY',      '75',  	1);
INSERT INTO PAL_DATA_TBL VALUES (8,     'WINDY',         'No',  	1);
INSERT INTO PAL_DATA_TBL VALUES (8,     'CLASS',         '1',   	1);
INSERT INTO PAL_DATA_TBL VALUES (9,     'OUTLOOK',      'Rain', 	2);
INSERT INTO PAL_DATA_TBL VALUES (9,     'TEMP',         '71',   	2);
INSERT INTO PAL_DATA_TBL VALUES (9,     'HUMIDITY',     '80',   	2);
INSERT INTO PAL_DATA_TBL VALUES (9,     'WINDY',        'Yes',  	2);
INSERT INTO PAL_DATA_TBL VALUES (9,     'CLASS',        '0',    	2);
INSERT INTO PAL_DATA_TBL VALUES (10,    'OUTLOOK',      'Rain', 	1);
INSERT INTO PAL_DATA_TBL VALUES (10,    'TEMP',         '65',   	1);
INSERT INTO PAL_DATA_TBL VALUES (10,    'HUMIDITY',     '70',   	1);
INSERT INTO PAL_DATA_TBL VALUES (10,    'WINDY',        'Yes',  	1);
INSERT INTO PAL_DATA_TBL VALUES (10,    'CLASS',        '0'	,       1);
INSERT INTO PAL_DATA_TBL VALUES (11,    'OUTLOOK',      'Rain', 	1);
INSERT INTO PAL_DATA_TBL VALUES (11,    'TEMP',         '75',   	1);
INSERT INTO PAL_DATA_TBL VALUES (11,    'HUMIDITY',     '80',   	1);
INSERT INTO PAL_DATA_TBL VALUES (11,    'WINDY',        'No',   	1);
INSERT INTO PAL_DATA_TBL VALUES (11,    'CLASS',        '1',    	1);
INSERT INTO PAL_DATA_TBL VALUES (12,    'OUTLOOK',      'Rain', 	2);
INSERT INTO PAL_DATA_TBL VALUES (12,    'TEMP',         '68',   	2);
INSERT INTO PAL_DATA_TBL VALUES (12,    'HUMIDITY',     '80',   	2);
INSERT INTO PAL_DATA_TBL VALUES (12,    'WINDY',        'No',   	2);
INSERT INTO PAL_DATA_TBL VALUES (12,    'CLASS',        '1',    	2);
INSERT INTO PAL_DATA_TBL VALUES (13,    'OUTLOOK',      'Rain', 	2);
INSERT INTO PAL_DATA_TBL VALUES (13,    'TEMP',         '70',   	2);
INSERT INTO PAL_DATA_TBL VALUES (13,    'HUMIDITY',     '96',   	2);
INSERT INTO PAL_DATA_TBL VALUES (13,    'WINDY',        'No',   	2);
INSERT INTO PAL_DATA_TBL VALUES (13,    'CLASS',        '0',    	2);

DROP TABLE PAL_PARAMETER_TBL;
CREATE COLUMN TABLE PAL_PARAMETER_TBL (
    "PARAM_NAME" VARCHAR (256),
    "INT_VALUE" INTEGER,
    "DOUBLE_VALUE" DOUBLE,
    "STRING_VALUE" VARCHAR (1000)
);

INSERT INTO PAL_PARAMETER_TBL VALUES ('FUNCTION',null,null,'DT'); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('MODEL_FORMAT', 1, NULL, NULL); -- JSON
INSERT INTO PAL_PARAMETER_TBL VALUES ('SPLIT_THRESHOLD', NULL, 1e-5, NULL);
INSERT INTO PAL_PARAMETER_TBL VALUES ('MIN_RECORDS_PARENT', 2, NULL, NULL);
INSERT INTO PAL_PARAMETER_TBL VALUES ('MIN_RECORDS_LEAF', 1, NULL, NULL);
INSERT INTO PAL_PARAMETER_TBL VALUES ('PARTITION_METHOD',1,null,null); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('OUTPUT_PARTITION_RESULT',1,null,null); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('THREAD_RATIO', null,0.5,null);
--INSERT INTO PAL_PARAMETER_TBL VALUES ('LABEL', null,null,'OUTLOOK');--Throw error

CALL _SYS_AFL.PAL_UNIFIED_REGRESSION_PIVOT(META_DATA_TAB, PAL_DATA_TBL, PAL_PARAMETER_TBL, ?, ?, ?, ?, ?, ?); 
