如何提取基於樹的Apache SparkML管道模型的功能信息

當您安裝基於樹的模型(例如決策樹,隨機森林或梯度增強樹)時,能夠查看功能重要性級別以及功能名稱,這是有幫助的。通常,SparkML中的模型是管道的最後階段。要使用樹模型從管道中提取相關特征信息,必須提取正確的管道階段。您可以從VectorAssembler目的:

pyspark.ml.feature進口StringIndexer,,,,VectorAssemblerpyspark.ml。分類進口決策者分類器pyspark.ml進口管道管道=管道((階段=[[索引器,,,,彙編器,,,,決策樹dtmodel=管道合身((火車VA=dtmodel階段[[-2這是給予的=dtmodel階段[[-1這是給予的展示((#Visalize決策樹模型打印((Todebugstring#打印決策樹模型的節點列表((壓縮((VAGetInputCols(),,功能率))

您還可以在管道的最後階段使用交叉驗證器調整基於樹的模型。要可視化決策樹並打印特征重要性級別,請提取BestModel來自交叉Validator目的:

pyspark.ml.tuning進口paramgridbuilder,,,,交叉Validator簡曆=交叉Validator((估計器=決策樹,,,,估計paramaps=paramgrid,,,,評估者=評估者,,,,數字=3管道=管道((階段=[[索引器,,,,彙編器,,,,簡曆dtmodelcv=管道合身((火車VA=dtmodelcv階段[[-2這是給予的treecv=dtmodelcv階段[[-1這是給予的BestModel展示((treecv#Visalize最佳決策樹模型打印((treecvTodebugstring#打印決策樹模型的節點列表((壓縮((VAGetInputCols(),,treecv功能率))

展示功能僅可視化決策樹模型。看機器學習可視化