資料檢視演算法在機器學習中是指對資料集進行可視化和探索性分析的方法。它通過圖表、表格或其他視覺化檢視展示資料的結構、分布和關係,協助使用者理解資料特徵、識別模式和發現異常。此演算法在資料預先處理和特徵工程階段尤為重要,有助於為後續的建模和分析提供直觀的參考。
組件配置
方式一:可視化方式
在Designer工作流程頁面添加資料檢視組件,並在介面右側配置相關參數:
參數類型 | 參數 | 描述 |
欄位設定 | 選擇特徵列 | 指定要進行可視化或分析的特徵列,以便在圖表或表格中展示這些特徵的分布和關係。 |
選擇目標列 | 指定用於預測或分析的目標變數(通常是標籤或響應變數)。 | |
枚舉特徵 | 勾選的特徵將被視作枚舉特徵處理。 | |
k:v,k:v稀疏資料格式 | 是否採用KV格式的稀疏資料。 | |
參數設定 | 連續特徵離散區間數 | 用於將連續型特徵劃分為有限個離散區間,以便於可視化和分析。 |
執行調優 | 計算核心數 | 計算的核心數,取值範圍為正整數。 |
每個核心記憶體 | 每個核心的記憶體,取值範圍為1 MB~65536 MB。 |
方式二:PAI命令方式
使用PAI命令配置資料檢視組件參數。您可以使用SQL指令碼組件進行PAI命令調用,詳情請參見情境4:在SQL指令碼組件中執行PAI命令。
PAI
-name fe_meta_runner
-project algo_public
-DinputTable="pai_dense_10_10"
-DoutputTable="pai_temp_2263_20384_1"
-DmapTable="pai_temp_2263_20384_2"
-DselectedCols="pdays,previous,emp_var_rate,cons_price_idx,cons_conf_idx,euribor3m,nr_employed,age,campaign,poutcome"
-DlabelCol="y"
-DcategoryCols="previous"
-Dlifecycle="28"-DmaxBins="5" ;
參數名稱 | 是否必選 | 預設值 | 描述 |
inputTable | 是 | 無 | 輸入表的名稱。 |
inputTablePartitions | 否 | 無 | 輸入表中,參與訓練的分區。系統支援以下格式:
說明 指定多個分區時,分區之間使用英文逗號(,)分隔,例如name1=value1,value2。 |
outputTable | 是 | 無 | 輸出表名稱。 |
mapTable | 是 | 無 | 輸出映射表,資料檢視對String類字串會做一個統計,映射成數字(轉換成Int方便機器學習識別和訓練) |
selectedCols | 是 | 無 | 輸入表選擇列名類型。 |
labelCol | 否 | 無 | 標籤列。 |
categoryCols | 否 | 無 | 把Int或者Double欄位當做枚舉特徵。 |
maxBins | 否 | 100 | 連續性特徵等距離劃分最大區間數。 |
isSparse | 否 | false | 輸入資料是否為稀疏格式,取值範圍為{true,false}。 |
itemSpliter | 否 | 英文逗號(,) | 當輸入表資料為稀疏格式時,KV對之間的分隔字元。 |
kvSpliter | 否 | 英文冒號(:) | 當輸入表資料為稀疏格式時,key和value之間的分隔字元。 |
lifecycle | 否 | 28 | 表的生命週期。 |
coreNum | 否 | 系統自動分配 | 計算的核心數,取值範圍為正整數。取值範圍[1, 9999]。 |
memSizePerCore | 否 | 系統自動分配 | 每個核心的記憶體,取值範圍為1 MB~65536 MB。 |
樣本
產生如下測試資料。
age
workclass
fwlght
edu
edu_num
married
c
family
race
sex
gail
loss
work_year
country
income
39
State-gov
77516
Bachelors
13
Never-married
Adm-clerical
Not-in-family
White
Male
2174.0
0.0
40.0
United-States
<=50K
50
Self-emp-not-inc
83311
Bachelors
13
Married-civ-spouse
Exec-managerial
Husband
White
Male
0.0
0.0
13.0
United-States
<=50K
38
Private
215646
HS-grad
9
Divorced
Handlers-cleaners
Not-in-family
White
Male
0.0
0.0
40.0
United-States
<=50K
53
Private
234721
11th
7
Married-civ-spouse
Handlers-cleaners
Husband
Black
Male
0.0
0.0
40.0
United-States
<=50K
28
Private
338409
Bachelors
13
Married-civ-spouse
Prof-specialty
Wife
Black
Female
0.0
0.0
40.0
Other
<=50K
37
Private
284582
Masters
14
Married-civ-spouse
Exec-managerial
Wife
White
Female
0.0
0.0
40.0
United-States
<=50K
49
Private
160187
9th
5
Married-spouse-absent
Other-service
Not-in-family
Black
Female
0.0
0.0
16.0
Jamaica
<=50K
52
Self-emp-not-inc
209642
HS-grad
9
Married-civ-spouse
Exec-managerial
Husband
White
Male
0.0
0.0
45.0
United-States
>50K
31
Private
45781
Masters
14
Never-married
Prof-specialty
Not-in-family
White
Female
14084.0
0.0
50.0
United-States
>50K
42
Private
159449
Bachelors
13
Married-civ-spouse
Exec-managerial
Husband
White
Male
5178.0
0.0
40.0
United-States
>50K
添加讀資料表、資料檢視組件,並進行連線。
在資料檢視的欄位設定頁簽,選擇income為目標列,其他14個欄位為特徵列,其中BIGINT類型的edu_num欄位作為枚舉值處理。
單擊左上方,運行工作流程。
待運行結束,按右鍵步驟 2的組件,選擇查看資料,查看訓練結果:
輸出:為了方便資料被機器學習演算法訓練,將STRING欄位的family、race、sex及income等映射成數值(某種程度有資料格式轉換的功能)。
String欄位特徵值對應表
說明如果沒有選擇STRING類型的特徵列,則輸出結果中String欄位特徵值對應表內容為空白。
輸出Meta表其中:distribute_info表示將最大值和最小值區間等距劃分,然後統計每個區間裡的資料條數。