最佳實踐:Hyperparameter Hyperopt調優
最佳實踐
貝葉斯方法可以更有效比網格搜索和隨機搜索。因此,Hyperopt Parzen樹估計(TPE)算法,您可以探索更多的hyperparameters和更大的範圍。使用領域知識限製搜索域可以調優和優化產生更好的結果。
當你使用
hp.choice ()
,Hyperopt返回選擇的索引列表。因此參數登錄MLflow也是該指數。使用hyperopt.space_eval ()
獲取參數值。模型訓練周期長,開始嚐試小數據集和許多hyperparameters。使用MLflow識別表現最好的模型和確定哪些hyperparameters可以固定。通過這種方式,您可以減少參數空間準備大規模調整。
利用條件維度和hyperparameters Hyperopt支持。例如,當你評估多個口味的梯度下降法,而不是限製hyperparameter空間共同hyperparameters,可以有條件hyperparameters-the Hyperopt包括那些隻適合口味的一個子集。關於使用條件參數的更多信息,請參閱定義一個搜索空間。
當使用
SparkTrials
,適當配置並行處理器僅僅與GPU-enabled集群。在磚,CPU和GPU集群使用不同數量的人均節點執行人線程。CPU使用多個集群每個節點執行人線程。GPU集群使用每個節點隻有一個執行人線程來避免衝突在多個火花任務試圖使用相同的GPU。雖然這是通常最優庫編寫的GPU,這意味著GPU集群的最大並行度下降,所以要注意有多少GPU每個試驗可以用在選擇GPU實例類型。看到GPU-enabled集群獲取詳細信息。不要使用
SparkTrials
在自動定量集群。Hyperopt選擇執行開始時的並行性價值。如果集群後自動定量,Hyperopt將無法利用新集群的大小。