1. 程式人生 > >實驗結果小記

實驗結果小記

首先,步長要小於0.003,否則會出現以下現象,再大就會無法收斂,造成記憶體溢位,那麼繼續減小步長,會對結果有什麼影響? 這裡寫圖片描述

學習率 | 迴圈次數 | 房價預測結果 | $R^2 $ ----|------- 0.003 |2000| 294631.58 4387.54760441.45|0.71392655 0.001|2000|287257.7622517.55727070.50|0.70517853 0.0008|2000|284299.5033414.92707968.15|0.69839348 0.0006|2000|279788.6350670.57677832.63|0.68453488 0.0004|2000|272824.6577973.78630262.41|0.65473442

由上表結果可得:在迴圈次數不變的情況下,減小學習率,R2R^2 會相應減小,原因可能是因為步長太小,以至於2000的迴圈次數迭代完之後任然離最小值比較遠,所以減小步長相應要增加迴圈次數,下面進行驗證

學習率 | 迴圈次數 | 房價預測結果 | $R^2 $ ----|------- 0.003 |20000| 327361.0010233.13772449.34|0.72012177 0.001|20000|304086.705933.67764135.22|0.71682817 0.0008|20000|301470.775450.44763200.75|0.71612385 0.0006|20000|298797.694956.85762245.53|0.71533436 0.0004|20000|296061.564471.73761236.07|0.71444961

結果很明顯,對比兩個表格來看,步長相等時,迴圈次數越大,R2R^2 的值越高,說明越接近谷底,只能說更接近,隨著迭代次數越來越大的時候,也許能夠接近完美值,但是個人覺得,步長過於小了就必然要執行更多的多次的迴圈,執行時間過長,所以取折中一些的資料就好

關於λ\lambda 的取值對R2R^2 的影響 以步長為0.003,迴圈2000次為例:

λ\lambda | 迴圈次數 | 房價預測結果 | $R^2 $ ----|------- 500|2000|282973.86102356.45609060.43|0.64421777 200|2000|289264.9140919.88702126.89|0.69810316 100 |2000| 294631.584387.54760441.45|0.71392655 80|2000|296097.75-4799.49775314.42|0.71572473 50|2000|298632.98-20172.41800345.779|0.71668505 10|2000|302789.07-44322.71839970.57|0.71288439 1|2000|303871.86-50448.17850070.21|0.71086923 0.1|2000|303983.51-51076.45851107.12|0.71063822 0.05|2000|303989.73-51111.44851164.87|0.71062523

我將λ\lambda的取值和R2R^2 的關係畫了一張圖,如下

這裡寫圖片描述