開始使用免費開始

視覺化 Coarse to Fine

你將進行 Coarse to Fine 搜尋的第一步。這包含先分析在大型搜尋空間上進行的初始隨機搜尋結果,接著決定下一步該如何把超參數搜尋縮小得更精細。

你手邊有:

  • combinations_list — 隨機搜尋所使用的所有可能超參數組合的清單。
  • results_df — 一個 DataFrame,包含每個超參數組合與 500 次試驗得到的準確率。每個超參數是一個欄位,欄名為超參數名稱。
  • visualize_hyperparameter() — 一個函式,輸入 DataFrame 的某個欄位名稱(字串),會產生該欄位數值相對於準確率的散佈圖。例如可呼叫 visualize_hyperparameter('accuracy')

如果你想查看 visualize_hyperparameter() 的函式定義,可以執行以下程式碼:

import inspect
print(inspect.getsource(visualize_hyperparameter))

本練習屬於課程

Python 超參數調校

檢視課程

練習說明

  • 先列印 combinations_list 的大小,確認為何需要先從隨機搜尋開始。
  • 依照準確率排序 results_df,並列印前 10 列。是否有明顯洞見?注意樣本數偏小!
  • 列印此次搜尋用到的超參數,這些就是 results_df 的欄位名稱。
  • 依序以每個超參數呼叫 visualize_hyperparameter()max_depthmin_samples_leaflearn_rate)。是否出現任何趨勢?

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Confirm the size of the combinations_list
print(____(____))

# Sort the results_df by accuracy and print the top 10 rows
print(results_df.____(by=____, ascending=False).head(____))

# Confirm which hyperparameters were used in this search
print(results_df.____)

# Call visualize_hyperparameter() with each hyperparameter in turn
visualize_hyperparameter(____)
visualize_hyperparameter(____)
visualize_hyperparameter(____)
編輯並執行程式碼