作者johsieh (ii)
看板MATLAB
標題[討論] fitting
時間Fri Jul 25 08:11:06 2014
想請問一個fitting的問題
我有一組數據 如果是用 2-order exponential fitting的話可以fitting得很好
(a+b*exp(-x/c)+d*exp(-x/f))
但是 當我想要用100-order exponential fitting的時候 fitting結果卻很糟糕
(a+b0*exp(-x/c0)+b1*exp(-x/c1)+...+b100*exp(-x/c100))
這讓我百思不得其解
既然用二階的都可以fitting好 為什麼更高階的時候出來結果卻會這樣呢?
因為只需要exp項目裡面的值一樣 然後參數(b0, b1, ..b99) 值比較小就可以達到等同的效果才對
(好比說 2a*exp(c)=a*exp(c)+a*exp(c))
難道是我的starting value設定的不好嗎?
(問題是100 order exp fitting參數那麼多 不可能一個一個去猜想他可能會在哪一個值附近)
請問有解決的方法嗎?? 感謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 98.180.58.38
※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1406247068.A.AC3.html
推 DIDIMIN:樣本數多少?你這樣犧牲了不少自由度,配適度未必較高 07/26 17:25
推 jack10313:overfitting? 07/27 14:20
推 bxxl:overfitting. 你的資料量要遠大於參數個數,尤其是有雜訊時 07/28 09:53