建立迴歸樹的範例
此範例顯示如何在 ADULT 範例資料集上建置迴歸樹。
您可以將 ADULT 範例資料集分割成訓練資料集及驗證資料集,如下所示:
CREATE VIEW CUSTOMER_DATA AS SELECT DURATION, IN_B2B_INDUSTRY, TOTAL_BUY, ANNUAL_REVENUE_MIL, CUST_ID AS ID from SAMPLES.CUSTOMER_CHURN;
CALL IDAX.SPLIT_DATA('intable=customer_data, traintable=customer_train, testtable=customer_test, id=id, fraction=0.65');
如果要建置迴歸樹,您可以在樹狀結構的不同參數上使用限制項。最常見的限制項是樹狀結構的深度、每個樹狀結構節點的最小記錄數,以及每個樹狀結構節點的最小不純度提升。
下列呼叫會對 ADULTTRAIN 資料集執行演算法,並建置迴歸樹。
CALL IDAX.GROW_REGTREE('model=customer_regt, intable=customer_train, id=ID, target=duration, maxdepth=8, minsplit=10, minimprove=0.01');
迴歸樹具有下列屬性:
- 樹狀結構最多有八個層次
- 每個非葉節點至少有 10 筆記錄
- 其不純度比其子節點的不純度至少高 1% 的非葉節點
若要刪改模型的過適節點,您可以將此模型套用至驗證資料集。
下列呼叫顯示如何刪改迴歸樹的過適節點。
CALL IDAX.PRUNE_REGTREE('model=customer_regt, valtable=customer_test');
藉由刪改過適節點,adult_regt 模型的迴歸樹中的節點數會從 171 降低至 99。
若要檢查建置模型,請使用 PRINT_MODEL 儲存程序,如下列範例所示:
CALL IDAX.PRINT_MODEL('model=customer_regt');
PREDICT_REGTREE 儲存程序預測 AGE 直欄的值。
下列呼叫顯示如何使值與新交易相關聯。
CALL IDAX.PREDICT_REGTREE('model=customer_regt, intable=customer_test, outtable=customer_regt_out');