'>1
EXECUTE IMMEDIATE v_stmt;
FOR i IN 1..p_max_lag LOOP
v_stmt:=
'SELECT CORR(' || p_base_col || ', lag_val) ' ||
'FROM (SELECT ' || p_base_col || ',' ||
'LAG(' || p_lag_col || ',' || i || ') ' ||
'OVER(ORDER BY ' || p_seq_col || ') lag_val ' ||
'FROM ' || p_in_table || ')';
EXECUTE IMMEDIATE v_stmt INTO v_corr;
v_stmt:='INSERT INTO ' || p_out_table ||
' (lag_num, correlation) VALUES(:v1, :v2)';
EXECUTE IMMEDIATE v_stmt using i, v_corr;
END LOOP;
END;
/
SHOW ERRORS;
CREATE VIEW airline_lag AS |
CREATE VIEW airline_train AS
SELECT month, tp, L1, L2, L3, L4, L5, L6, L7, L8, L9, L10, L11, L12 FROM airline_lag a WHERE month > 13 AND month < 132; |
BEGIN
DBMS_DATA_MINING.CREATE_MODEL( model_name => 'airline_SVM', mining_function => dbms_data_mining.regression, data_table_name => 'airline_train', case_id_column_name => 'month', target_column_name => 'tp');
END;
|
SELECT month, passengers,
PREDICTION(airline_svm USING a.*) pred FROM airline_lag a; |
CREATE TABLE airline_pred AS
SELECT month, passengers, power(10, pred) pred FROM (SELECT month, passengers, pred + LAG(lp,1) OVER (ORDER BY month) pred FROM (SELECT month, passengers, LOG(10, passengers) lp, (PREDICTION(airline_SVM USING a.*) * 0.046271162 + 0.003919158) pred FROM airline_lag a)); |
Model
|
RMSE Training
|
MAE Training
|
RMSE Test
|
MAE Test
|
SVM
|
3.7
|
3.2
|
18.9
|
13.4
|
AR
|
10.1
|
7.7
|
19.3
|
15.9
|