超參數 (機器學習)

機器學習中,超參數(英語:Hyperparameter)是事先給定的,用來控制學習過程的參數。而其他參數(例如節點權重)的值是通過訓練得出的。

超參數可分為模型超參數(Model Hyperparameters)和演算法超參數(Algorithm Hyperparameters)。模型超參數主要用於模型選擇,其無助於學習訓練集特徵;而演算法超參數理論上對模型的效能沒有影響,而會影響學習的速度和質素。一個典型的模型超參數是神經網絡的拓撲結構及大小;而學習率和批次大小(Batch size)、小批次大小(Mini-Batch size)則是典型的演算法超參數。

不同的模型訓練演算法需要用到不同的超參數,一些簡單的演算法(如普通最小二乘回歸)不需要超參數。給定超參數,訓練演算法會從數據中學習參數。例如,LASSO演算法在普通最小二乘回歸中加入正則化超參數,在通過訓練演算法估計參數之前,必須先設置這個超參數。[1]

考慮因素

對模型的訓練和測試所需的時間可能取決於其超參數的選擇。[2]

一個超參數通常是實數或是整數,因此存在混合型的最佳化問題。[2]一些超參數的選取依賴於其他參數的值(例如神經網絡每個隱藏層的大小可以與層的數量相關)。[2]

難度可學習的參數

超參數通常並不能使用梯度類演算法(例如梯度下降、LBFGS)來學習;這些梯度類演算法通常用於學習其它參數。這些用於描述模型的超參數通常不能用一般的最佳化方法學習,然而它們仍然會影響損失函數。例如支持向量機中錯誤的容忍度超參數。

不可訓練的參數

部分超參數不能從訓練數據中學習,因為對部分超參數的學習過程通常會過分增加模型容量,並使損失函數趨於不希望的小值(即過擬合),而不是正確對映數據的結構。例如,如果我們將擬合回歸模型的多項式方程的度數作為一個可訓練參數,多項式的度數會增加到模型可以完全擬合數據,此時訓練誤差極低,但泛化效能差。

可調性

效能變化往往歸因於個別幾個超參數。[3]演算法、超參數或相互作用超參數的可調性用于衡量對其調整可以獲得多少效能的標準。[4]對於LSTM來說,學習率和網絡大小是關鍵的超參數,[5]而批次(Batching)和動量(Momentum)則對其效能沒有顯著影響。[6]

部分研究主張小批次大小(Mini-Batch size)應該為數千,而其他研究表明,小批次大小在2到32之間的效能最好。[7]

穩健性

學習中存在的隨機性表明經驗性的超參數選取並不一定反應其真實效能。[8]如果方法對超參數、亂數種子、甚至演算法的不同實現方式的簡單變化不具有穩健性,則在不進行簡化和穩健化前,不能被整合到關鍵任務的控制系統中。[9]

強化學習演算法不僅需要在大量的隨機種子上測量它們的效能,還需要測試對超參數選擇的敏感性。由於變異性,僅用少量的隨機種子進行的評估並不能充分反應出效能。部分強化學習方法(例如Deep Deterministic Policy Gradient,DDPG)對超參數的選擇比其他演算法更敏感。[9]

最佳化

超參數最佳化找到一個超參數的元組(Tuple),產生一個最佳模型,使得給定測試數據集的損失函數最小。目標函數接收超參數的元組,並返回對應的損失。[8]

可重複性

除超參數的調整外,機器學習還涉及到參數和結果的儲存和組織,並確保它們是可重複的。[10]

參考文獻

  1. ^ Yang, Li; Shami, Abdallah. On hyperparameter optimization of machine learning algorithms: Theory and practice. Neurocomputing. 2020-11-20, 415: 295–316. ISSN 0925-2312. S2CID 220919678. arXiv:2007.15745 . doi:10.1016/j.neucom.2020.07.061 (英語). 
  2. ^ 2.0 2.1 2.2 Claesen, Marc, and Bart De Moor. "Hyperparameter Search in Machine Learning." arXiv preprint arXiv:1502.02127 (2015).. Bibcode:2015arXiv150202127C. arXiv:1502.02127 . 
  3. ^ Leyton-Brown, Kevin; Hoos, Holger; Hutter, Frank. An Efficient Approach for Assessing Hyperparameter Importance: 754–762. January 27, 2014 [2022-11-09]. (原始內容存檔於2022-05-20) –透過proceedings.mlr.press. 
  4. ^ Probst, Philipp, Bernd Bischl, and Anne-Laure Boulesteix. "Tunability: Importance of Hyperparameters of Machine Learning Algorithms." arXiv preprint arXiv:1802.09596 (2018).. Bibcode:2018arXiv180209596P. arXiv:1802.09596 . 
  5. ^ Greff, K.; Srivastava, R. K.; Koutník, J.; Steunebrink, B. R.; Schmidhuber, J. LSTM: A Search Space Odyssey. IEEE Transactions on Neural Networks and Learning Systems. October 23, 2017, 28 (10): 2222–2232. PMID 27411231. S2CID 3356463. arXiv:1503.04069 . doi:10.1109/TNNLS.2016.2582924. 
  6. ^ Breuel, Thomas M. "Benchmarking of LSTM networks." arXiv preprint arXiv:1508.02774 (2015).. Bibcode:2015arXiv150802774B. arXiv:1508.02774 . 
  7. ^ Revisiting Small Batch Training for Deep Neural Networks (2018).. Bibcode:2018arXiv180407612M. arXiv:1804.07612 . 
  8. ^ 8.0 8.1 Claesen, Marc, and Bart De Moor. "Hyperparameter Search in Machine Learning." arXiv preprint arXiv:1502.02127 (2015).. Bibcode:2015arXiv150202127C. arXiv:1502.02127 . 
  9. ^ 9.0 9.1 Mania, Horia, Aurelia Guy, and Benjamin Recht. "Simple random search provides a competitive approach to reinforcement learning." arXiv preprint arXiv:1803.07055 (2018).. Bibcode:2018arXiv180307055M. arXiv:1803.07055 . 
  10. ^ Greff, Klaus, and Jürgen Schmidhuber. "Introducing Sacred: A Tool to Facilitate Reproducible Research." (PDF). 2015 [2022-11-09]. (原始內容存檔 (PDF)於2018-04-07).