樸素貝葉斯
樸素貝葉斯是一種基于獨(dú)立假設(shè)的貝葉斯定理的概率分類(lèi)算法。使用Designer(原Studio)的樸素貝葉斯組件,您能有效處理多樣的分類(lèi)問(wèn)題。本文為您介紹樸素貝葉斯組件的配置方法。
使用限制
支持的計(jì)算引擎為MaxCompute。
組件配置
您可以使用以下任意一種方式,配置樸素貝葉斯組件參數(shù)。
方式一:可視化方式
在Designer工作流頁(yè)面配置組件參數(shù)。
頁(yè)簽 | 參數(shù) | 描述 |
字段設(shè)置 | 特征列 | 默認(rèn)為除標(biāo)簽列外的所有列,支持DOUBLE、STRING及BIGINT數(shù)據(jù)類(lèi)型。 |
排除列 | 不參與訓(xùn)練的列,不能與選擇特征列同時(shí)使用。 | |
強(qiáng)制轉(zhuǎn)換列 | 解析規(guī)則如下:
說(shuō)明 如果需要將BIGINT類(lèi)型的列解析為CATEGORICAL,則必須使用forceCategorical參數(shù)指定類(lèi)型。 | |
標(biāo)簽列 | 輸入表的標(biāo)簽列,只能選擇非特征列。支持STRING、DOUBLE及BIGINT類(lèi)型。 | |
輸入數(shù)據(jù)是否為稀疏格式 | 使用KV格式表示稀疏數(shù)據(jù)。 | |
當(dāng)輸入為稀疏時(shí),K:V間的分隔符 | 默認(rèn)為半角逗號(hào)(,)。 | |
當(dāng)輸入為稀疏時(shí),key和value的分隔符 | 默認(rèn)為半角冒號(hào)(:)。 | |
是否生成PMML | 選中該復(fù)選框,即可生成PMML模型。如果未設(shè)置工作流數(shù)據(jù)存儲(chǔ)路徑,您需要單擊點(diǎn)擊前往,設(shè)置工作流數(shù)據(jù)存儲(chǔ)路徑。 | |
執(zhí)行調(diào)優(yōu) | 計(jì)算核心數(shù) | 默認(rèn)為系統(tǒng)自動(dòng)分配。 |
每個(gè)核心內(nèi)存數(shù) | 默認(rèn)為系統(tǒng)自動(dòng)分配。 |
方式二:PAI命令方式
使用PAI命令方式,配置該組件參數(shù)。您可以使用SQL腳本組件進(jìn)行PAI命令調(diào)用,詳情請(qǐng)參見(jiàn)SQL腳本。
PAI -name NaiveBayes -project algo_public
-DinputTablePartitions="pt=20150501"
-DmodelName="xlab_m_NaiveBayes_23772"
-DlabelColName="poutcome"
-DfeatureColNames="age,previous,cons_conf_idx,euribor3m"
-DinputTableName="bank_data_partition";
參數(shù) | 是否必選 | 描述 | 默認(rèn)值 |
inputTableName | 是 | 輸入表的表名。 | 無(wú) |
inputTablePartitions | 否 | 輸入表中,參與訓(xùn)練的分區(qū)。 | 所有分區(qū) |
modelName | 是 | 輸出的模型名稱。 | 無(wú) |
labelColName | 是 | 輸入表中,標(biāo)簽列的名稱。 | 無(wú) |
featureColNames | 否 | 輸入表中,用于訓(xùn)練的特征列名。 | 除標(biāo)簽列外的所有列 |
excludedColNames | 否 | 用于反選特征列,該參數(shù)不能與featureColNames同時(shí)使用。 | 空 |
forceCategorical | 否 | 解析規(guī)則如下:
說(shuō)明 如果需要將BIGINT類(lèi)型的列解析為CATEGORICAL,則必須使用forceCategorical參數(shù)指定類(lèi)型。 | INT為連續(xù)類(lèi)型 |
coreNum | 否 | 計(jì)算的核心數(shù)。 | 系統(tǒng)自動(dòng)分配 |
memSizePerCore | 否 | 每個(gè)核心的內(nèi)存,取值范圍為1 MB~65536 MB。 | 系統(tǒng)自動(dòng)分配 |
示例
準(zhǔn)備訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)。
使用MaxCompute客戶端創(chuàng)建表train_data和test_data,分別用來(lái)存放訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)。其中列字段和數(shù)據(jù)類(lèi)型為
id bigint、y bigint、f0 double、f1 double、f2 double、f3 double、f4 double、f5 double、f6 double、f7 double
。關(guān)于MaxCompute客戶端的安裝及配置請(qǐng)參見(jiàn)使用本地客戶端(odpscmd)連接,如何創(chuàng)建表,請(qǐng)參見(jiàn)創(chuàng)建表。將以下訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)分別導(dǎo)入到表train_data和test_data中。如何導(dǎo)入數(shù)據(jù),請(qǐng)參見(jiàn)導(dǎo)入數(shù)據(jù)。
訓(xùn)練數(shù)據(jù)
id
y
f0
f1
f2
f3
f4
f5
f6
f7
1
-1
-0.294118
0.487437
0.180328
-0.292929
-1
0.00149028
-0.53117
-0.0333333
2
+1
-0.882353
-0.145729
0.0819672
-0.414141
-1
-0.207153
-0.766866
-0.666667
3
-1
-0.0588235
0.839196
0.0491803
-1
-1
-0.305514
-0.492741
-0.633333
4
+1
-0.882353
-0.105528
0.0819672
-0.535354
-0.777778
-0.162444
-0.923997
-1
5
-1
-1
0.376884
-0.344262
-0.292929
-0.602837
0.28465
0.887276
-0.6
6
+1
-0.411765
0.165829
0.213115
-1
-1
-0.23696
-0.894962
-0.7
7
-1
-0.647059
-0.21608
-0.180328
-0.353535
-0.791962
-0.0760059
-0.854825
-0.833333
8
+1
0.176471
0.155779
-1
-1
-1
0.052161
-0.952178
-0.733333
9
-1
-0.764706
0.979899
0.147541
-0.0909091
0.283688
-0.0909091
-0.931682
0.0666667
10
-1
-0.0588235
0.256281
0.57377
-1
-1
-1
-0.868488
0.1
測(cè)試數(shù)據(jù)
id
y
f0
f1
f2
f3
f4
f5
f6
f7
1
+1
-0.882353
0.0854271
0.442623
-0.616162
-1
-0.19225
-0.725021
-0.9
2
+1
-0.294118
-0.0351759
-1
-1
-1
-0.293592
-0.904355
-0.766667
3
+1
-0.882353
0.246231
0.213115
-0.272727
-1
-0.171386
-0.981213
-0.7
4
-1
-0.176471
0.507538
0.278689
-0.414141
-0.702128
0.0491804
-0.475662
0.1
5
-1
-0.529412
0.839196
-1
-1
-1
-0.153502
-0.885568
-0.5
6
+1
-0.882353
0.246231
-0.0163934
-0.353535
-1
0.0670641
-0.627669
-1
7
-1
-0.882353
0.819095
0.278689
-0.151515
-0.307329
0.19225
0.00768574
-0.966667
8
+1
-0.882353
-0.0753769
0.0163934
-0.494949
-0.903073
-0.418778
-0.654996
-0.866667
9
+1
-1
0.527638
0.344262
-0.212121
-0.356974
0.23696
-0.836038
-0.8
10
+1
-0.882353
0.115578
0.0163934
-0.737374
-0.56974
-0.28465
-0.948762
-0.933333
構(gòu)建如下工作流,并運(yùn)行組件,詳情請(qǐng)參見(jiàn)算法建模。
在Designer左側(cè)組件列表中,分別搜索讀數(shù)據(jù)表組件(2個(gè))、樸素貝葉斯組件、預(yù)測(cè)組件、多分類(lèi)評(píng)估組件,并拖入右側(cè)畫(huà)布中。
參照上圖,通過(guò)連線的方式,將各個(gè)節(jié)點(diǎn)組織構(gòu)建成為一個(gè)有上下游關(guān)系的工作流。
配置組件參數(shù)。
在畫(huà)布中單擊讀數(shù)據(jù)表-1組件,在右側(cè)表選擇頁(yè)簽,配置表名為train_data。
在畫(huà)布中單擊讀數(shù)據(jù)表-2組件,在右側(cè)表選擇頁(yè)簽,配置表名為test_data。
在畫(huà)布中單擊樸素貝葉斯-1組件,在右側(cè)配置如下表中的參數(shù),其余參數(shù)使用默認(rèn)值。
頁(yè)簽
參數(shù)
描述
字段設(shè)置
特征列
在訓(xùn)練表中,選擇f0、f1、f2、f3、f4、f5、f6及f7列。
標(biāo)簽列
在訓(xùn)練表中,選擇y列。
在畫(huà)布中單擊預(yù)測(cè)-1組件,在右側(cè)字段設(shè)置頁(yè)簽,選擇原樣輸出列為id和y。其余參數(shù)使用默認(rèn)值。
在畫(huà)布中單擊多分類(lèi)評(píng)估-1組件,在右側(cè)字段設(shè)置頁(yè)簽,選擇原分類(lèi)結(jié)果列為y。其余參數(shù)使用默認(rèn)值。
參數(shù)配置完成后,單擊運(yùn)行按鈕,運(yùn)行工作流。
工作流運(yùn)行成功后,右鍵單擊預(yù)測(cè)-1組件,在快捷菜單,選擇
,查看預(yù)測(cè)結(jié)果。
相關(guān)文檔
運(yùn)行樸素貝葉斯組件生成PMML類(lèi)型的模型后,您可以將模型部署為在線服務(wù)。具體操作,請(qǐng)參見(jiàn)單模型部署在線服務(wù)。
關(guān)于Designer組件更詳細(xì)的內(nèi)容介紹,請(qǐng)參見(jiàn)Designer概述。
Designer預(yù)置了多種算法組件,你可以根據(jù)不同的使用場(chǎng)景選擇合適的組件進(jìn)行數(shù)據(jù)處理,詳情請(qǐng)參見(jiàn)組件參考:所有組件匯總。