將資料集分為訓練集和測試集,訓練集上網格搜尋調參,得到最優引數,能用到在訓練集交叉驗證上嗎?

時間 2021-10-23 13:47:06

1樓:liaoyanjun

我理解你的意思是先做網格搜尋,選擇一組引數,然後做交叉驗證是不。答案是完全可以,你得到的就是一組引數對應的交叉驗證的均值。交叉驗證的均值好,引數就說明優秀。

但是如果資料很大,程式會很慢。

2樓:哈哈祥

GridSearchCV,它存在的意義就是自動調參,只要把引數輸進去,就能給出最優化的結果和引數。但是這個方法適合於小資料集,一旦資料的量級上去了,很難得出結果。這個時候就是需要動腦筋了。

資料量比較大的時候可以使用乙個快速調優的方法——座標下降。它其實是一種貪心演算法:拿當前對模型影響最大的引數調優,直到最優化;再拿下乙個影響最大的引數調優,如此下去,直到所有的引數調整完畢。

這個方法的缺點就是可能會調到區域性最優而不是全域性最優,但是省時間省力,巨大的優勢面前,還是試一試吧,後續可以再拿bagging再優化。

通常演算法不夠好,需要除錯引數時必不可少。比如SVM的懲罰因子C,核函式kernel,gamma引數等,對於不同的資料使用不同的引數,結果效果可能差1-5個點,sklearn為我們提供專門除錯引數的函式grid_search。

Grid Search:一種調優方法,在引數列表中進行窮舉搜尋,對每種情況進行訓練,找到最優的引數;由此可知,這種方法的主要缺點是比較耗時

網格搜尋 GridSearchCV\訓練集、驗證集和測試集

在使用lenet網路訓練資料時,開始訓練集loss大於驗證集,最後驗證集loss大於訓練集,正常嗎?

seaning 訓練開始時,訓練資料集和驗證資料集的loss都比較大,隨著迭代次數的增加,訓練資料集和驗證資料集的loss都開始下降,最終訓練結束時如果訓練資料集的loss低於驗證資料集很有可能發生了過擬合現象。 不知道起啥名字 這個情況是正常的.首先說明一點,訓練集的loss跟驗證集的loss沒有...

為什麼測試集的loss大於訓練集的loss,這是正常的嗎?

愛吃牛油果的璐璐 可以試試調整學習率和batchsize,劃分資料集的時候如果不是時序資料,可以試試shuffle之後劃分訓練集和測試集,以及留出法看下loss有沒有變化。 胡衛雄 一般來說,模型訓練完成,測試集的誤差是應該略大於訓練集的誤差的,但也不排除一些偶爾的情況,神經網路本身的一些東西還是挺...

在深度學習中,如果訓練集和測試集的範圍不一致,該如何進行歸一化或者標準化處理?

王華 如果你的測試集和訓練集不能動。那就乾脆縮放吧,都縮放到0 1之間。雖說,前面有說訓練集和測試集要同分布,說的很堅決,必須要。我是不同意這種說法的,分布這種本身概念就很模糊。打過各種比賽,神經網路需要效果優先的,你可以試試縮放法。 華矩數診台 你可以使用歸一化,訓練集0 10,歸一化不就是X X...