The content discusses the compatibility between the unified regression interface and the original PAL procedures. It states that the unified regression interface can use models generated from the original PAL procedures for prediction and scoring without any additional processing. The table provided shows the compatibility and whether the model needs to undergo remove processing when using different model sources and destinations. Two examples are also given to demonstrate the usage of a unified regression model in an original SVM prediction procedure and the usage of an origin training model in a unified regression prediction procedure.
------

SET SCHEMA DM_PAL;
-------------------------Unified Regression Training Procedure------------------------
--Data Table
DROP TABLE PAL_DATA_TBL;
CREATE COLUMN TABLE PAL_DATA_TBL ( 
    ID INTEGER, 
    ATTRIBUTE1 DOUBLE, 
    ATTRIBUTE2 DOUBLE, 
    ATTRIBUTE3 DOUBLE,
    ATTRIBUTE4 VARCHAR(10),
    LABEL INTEGER
);

INSERT INTO PAL_DATA_TBL VALUES(0,1,10,100,'A',1);
INSERT INTO PAL_DATA_TBL VALUES(1,1.1,10.1,100,'A',1);
INSERT INTO PAL_DATA_TBL VALUES(2,1.2,10.2,100,'A',1);
INSERT INTO PAL_DATA_TBL VALUES(3,1.3,10.4,100,'A',1);
INSERT INTO PAL_DATA_TBL VALUES(4,1.2,10.3,100,'AB',1);

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,'SVM'); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('PARTITION_METHOD',2,null,null); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('KEY',1,null,null); 
INSERT INTO PAL_PARAMETER_TBL VALUES ('RANDOM_SEED',2,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);


--Model Table
DROP TABLE PAL_DATA_MODEL_TBL;
CREATE COLUMN TABLE PAL_DATA_MODEL_TBL(
     "ROW_INDEX" INTEGER,
     "PART_INDEX" INTEGER,
     "MODEL_CONTENT" VARCHAR (5000)
);

DO BEGIN
  data_tab = SELECT * FROM PAL_DATA_TBL; 
  control_tab = SELECT * FROM PAL_PARAMETER_TBL; 
  CALL _SYS_AFL.PAL_UNIFIED_REGRESSION(:data_tab, :control_tab, model_tab, stats_tab, optimal_parameter_tab, partition_result, place_holder_1_tab, place_holder_2_tab); 
  INSERT into PAL_DATA_MODEL_TBL SELECT * FROM :model_tab; 
END
--select * from PAL_DATA_MODEL_TBL;

-------------------------Origin SVM Procedure------------------------
DROP TABLE PAL_ORIGIN_MODEL_TBL; 
CREATE COLUMN TABLE PAL_ORIGIN_MODEL_TBL (
"ROW_INDEX" INTEGER,
"MODEL_CONTENT" VARCHAR (5000)
); 

------------------Remove Processing-----------------------
INSERT INTO PAL_ORIGIN_MODEL_TBL(ROW_INDEX,MODEL_CONTENT) SELECT ROW_INDEX, MODEL_CONTENT from PAL_DATA_MODEL_TBL;   
--select * from PAL_ORIGIN_MODEL_TBL;

DROP TABLE PAL_SVM_PREDICT_DATA_TBL;
CREATE COLUMN TABLE PAL_SVM_PREDICT_DATA_TBL( 
    ID INTEGER, 
    ATTRIBUTE1 DOUBLE, 
    ATTRIBUTE2 DOUBLE, 
    ATTRIBUTE3 DOUBLE,
    ATTRIBUTE4 VARCHAR(50)
);
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(0,1,10,100,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(1,1.1,10.1,100,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(2,1.2,10.2,100,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(3,1.3,10.4,100,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(4,1.2,10.3,100,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(5,4,40,400,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(6,4.1,40.1,400,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(7,4.2,40.2,400,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(8,4.3,40.4,400,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(9,4.2,40.3,400,'AB');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(10,9,90,900,'B');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(11,9.1,90.1,900,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(12,9.2,90.2,900,'B');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(13,9.3,90.4,900,'A');
INSERT INTO PAL_SVM_PREDICT_DATA_TBL VALUES(14,9.2,90.3,900,'A');

DROP TABLE #PAL_PARAMETER_TBL;
CREATE LOCAL TEMPORARY COLUMN TABLE #PAL_PARAMETER_TBL (
    "PARAM_NAME" NVARCHAR(256),
    "INT_VALUE" INTEGER,
    "DOUBLE_VALUE" DOUBLE,
    "STRING_VALUE" NVARCHAR (1000)
);
INSERT INTO #PAL_PARAMETER_TBL VALUES('THREAD_RATIO',NULL,0.1,NULL);

CALL _SYS_AFL.PAL_SVM_PREDICT(PAL_SVM_PREDICT_DATA_TBL, PAL_ORIGIN_MODEL_TBL, #PAL_PARAMETER_TBL,?);
