參數(parameters)和超參數(hyperparameters)
在機器學習或者深度學習領域,參數和超參數是一個常見的問題,個人根據經驗給出了一個很狹隘的區分這兩種參數的方法。
參數:就是模型可以根據資料可以自動學習出的變量,應該就是參數。比如,深度學習的權重,偏差等
超參數:就是用來确定模型的一些參數,超參數不同,模型是不同的(這個模型不同的意思就是有微小的差別,比如假設都是CNN模型,如果層數不同,模型不一樣,雖然都是CNN模型哈。),超參數一般就是根據經驗确定的變量。在深度學習中,超參數有:學習速率,疊代次數,層數,每層神經元的個數等等。
深度學習 調參數
這次活動的主題是 hyperparameter optimization 和 bayesian optimization,簡單說就是如何更有效率地調參,或者。。如何調得一手好參。這個方向近幾年論文出來不少,研究潛力不小;而且實用性很強,不僅可用在深度學習中,也可用于其他機器學習方法的調參。選幾篇論文讨論清楚,我想無論對學術還是工程都會有不小幫助。
主要讨論以下幾篇論文:
1. Algorithms for Hyper-Parameter Optimization, by James Bergstra,可以說是深度學習興起後最早讨論調參的論文之一,其中第三節提到用Gaussian Process建立超參數與驗證集錯誤率之間的關系,實際上就是BO的思想,後面幾節還讨論了另外幾種調參的方法和技巧 2. Random Search for Hyper-Parameter Optimization, by James Bergstra,提出在選擇超參數時,random search的政策比grid search要好,并從理論和實驗兩方面進行分析 3. Making a Science of Model Search: Hyperparameter Optimization in Hundreds of Dimensions for Vision Architectures, by James Bergstra,我們很關心的視覺神經網絡的調參 4. Practical Bayesian Optimization of Machine Learning Algorithms, by Jasper Snoek,專門讨論如何在機器學習調參中應用BO 5. Bayesian Optimization in High Dimensions via Random Embeddings, by Ziyu Wang,對在高維問題中應用BO提出一種解決方法 6. Bayesian Optimization Explains Human Active Search, by Ali Borji,主要是通過一系列實驗,說明BO與人類思維活動和搜尋政策的異同,内容比較有趣
代碼: http://hyperopt.github.io/hyperopt/ https://github.com/JasperSnoek/spearmint
對這個方向感興趣的朋友,可以持續關注James Bergstra、Jasper Snoek、Nando De Freitas組的研究。