取消
顯示的結果
而不是尋找
你的意思是:

Pyspark。如何獲得最佳參數網格搜索

pmezentsev
新的因素

你好!

我在python中使用火花2.1.1

(python 2.7中執行jupyter筆記本)

線性回歸和試圖讓網格搜索參數。

我的代碼是這樣的:

從pyspark.ml。優化進口CrossValidator ParamGridBuilder pyspark。毫升=進口管道管道管道(階段= [sql_transformer、彙編、lr]) paramGrid = ParamGridBuilder () .addGrid (lr)。解算器,[“l-bfgs”、“正常”]).build()求值程序= RegressionEvaluator () crossval = CrossValidator(估計量=管道,estimatorParamMaps = paramGrid numFolds = 3) cvModel = crossval.fit cvModel.avgMetrics(火車)
出[]> [887.3183210064692,787.3183297841774]

我的問題是:我如何能找到,這組參數查詢裝備指標對應?

我如何可以得到參數的最佳訓練模型?

7回複7

Joseph_B
新的貢獻者三世
新的貢獻者三世

匹配的指標參數的設置:

“paramGrid”是一個參數列表地圖;“avgMetrics”指標的列表。這兩個列表有相同的訂單,所以你可以壓縮在一起:

郵政編碼(cvModel。avgMetrics paramGrid)

找到最好的一組參數:

如果你有CrossValidatorModel(配件CrossValidator後),然後你可以得到最好的模型稱為bestModel。然後,您可以使用extractParamMap得到最好的模型的參數:

bestPipeline = cvModel。bestModel bestLRModel = bestPipeline。階段[2]bestParams = bestLRModel.extractParamMap ()

keerthana151094
新的貢獻者二世

上麵的代碼,bestParams還顯示了一個空列表嗎?任何想法嗎?

AldySyahdeini
新的貢獻者二世

試著這段代碼,但extractParamMap(),它顯示了一些參數,但不能顯示paramGrid內的最佳參數。

Joseph_B
新的貢獻者三世
新的貢獻者三世

這在Apache火花tripwire已得到改進https://issues.apache.org/jira/browse/spark - 10931該參數的值複製到Python包裝器Scala類型。extractParamMap()提取所有參數;你必須在其中尋找網格的參數你真正關心的。

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map