全部產品
Search
文件中心

Platform For AI:預測

更新時間:Jul 13, 2024

本文為您介紹Designer提供的預測演算法。使用Designer中的傳統資料採礦演算法得到的模型,如果沒有同名配套的預測組件,通常都可以採用這個通用預測組件來做預測。該組件的輸入為訓練模型和預測資料,輸出為預測結果。

組件配置

您可以使用以下任意一種方式,配置預測組件參數。

方式一:可視化方式

Designer工作流程頁面配置組件參數。

頁簽

參數

描述

欄位設定

特徵列

參與預測的特徵列,預設選擇所有列。

原樣輸出資料行

建議添加標籤列,便於評估。

輸出結果列名

輸出表的結果列。

輸出分數列名

輸出i表的分數列。

輸出詳細列名

輸出表的詳細列。

疏鬆陣列

使用KV格式表示稀疏資料。

key與value分隔字元

預設為英文冒號(:)。

kv對間的分隔字元

預設為英文逗號(,)。

執行調優

核心數

與參數每個核的記憶體大小搭配使用,取值範圍為正整數。

每個核的記憶體大小

與參數核心數搭配使用,單位為MB。

方式二:PAI命令方式

使用PAI命令方式,配置該組件參數。您可以使用SQL指令碼組件進行PAI命令調用,詳情請參見SQL指令碼

pai -name prediction
    -DmodelName=nb_model
    -DinputTableName=wpbc
    -DoutputTableName=wpbc_pred
    -DappendColNames=label;

參數

是否必選

描述

預設值

inputTableName

輸入表的名稱。

featureColNames

輸入表中,參與預測的特徵列,多個列以英文逗號(,)分隔。

所有列

appendColNames

輸入表中,附加至輸出表的預測列。

inputTablePartitions

輸入表中,參與訓練的分區。支援以下格式:

  • Partition_name=value

  • name1=value1/name2=value2:多級格式

說明

如果指定多個分區,則使用英文逗號(,)分隔。

全表

outputTablePartition

結果輸出至輸出表的分區。

resultColName

輸出表的預測結果,即所有可能結果中,預測機率最高的結果。

prediction_result

scoreColName

輸出表的預測結果的機率,即預測機率最高結果對應的預測機率值。

prediction_score

detailColName

輸出表的詳細列,即所有可能結果及其預測機率詳情。

prediction_detail

enableSparse

輸入資料是否為稀疏格式,取值範圍為{true,false}

false

itemDelimiter

稀疏格式KV對之間的分隔字元。

英文逗號(,)

kvDelimiter

稀疏格式keyvalue之間的分隔字元。

英文冒號(;)

modelName

輸入的聚類模型。

outputTableName

輸出表。

lifecycle

輸出表的生命週期。

coreNum

節點個數。

系統自動分配

memSizePerCore

每個節點的記憶體,單位為MB。

系統自動分配

樣本

  1. 使用SQL語句,產生測試資料。

    create table pai_rf_test_input as
    select * from
    (
    select 1 as f0,2 as f1, "good" as class
    union all
    select 1 as f0,3 as f1, "good" as class
    union all
    select 1 as f0,4 as f1, "bad" as class
    union all
    select 0 as f0,3 as f1, "good" as class
    union all
    select 0 as f0,4 as f1, "bad" as class
    )tmp;
  2. 使用PAI命令,構建模型(以隨機森林演算法為例)。

    PAI -name randomforests
       -project algo_public
       -DinputTableName="pai_rf_test_input"
       -DmodelName="pai_rf_test_model"
       -DforceCategorical="f1"
       -DlabelColName="class"
       -DfeatureColNames="f0,f1"
       -DmaxRecordSize="100000"
       -DminNumPer="0"
       -DminNumObj="2"
       -DtreeNum="3";
  3. 使用PAI命令,提交預測組件參數。

    PAI -name prediction
        -project algo_public
        -DinputTableName=pai_rf_test_input
        -DmodelName=pai_rf_test_model
        -DresultColName=prediction_result
        -DscoreColName=prediction_score
        -DdetailColName=prediction_detail
        -DoutputTableName=pai_temp_2283_76333_1
  4. 查看輸出結果表pai_temp_2283_76333_1預測組件結果其中:

    • prediction_result:為所有可能結果中,預測機率最高的結果。

    • prediction_score:為機率最高結果的具體預測機率值。

      當可能的結果包括bad和good時,每次預測的prediction_score值既可能是bad的機率,也可能是good的機率,根據每次預測為bad或good的機率值比較結果為準,prediction_score為機率值最高的結果值。

    • prediction_detail:所有可能的結果和其對應的預測機率值詳情。