[問題] 回歸分析的問題已回收

看板MATLAB作者 (游擊第一人)時間15年前 (2009/02/09 17:57), 編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/1
function E = fun_e10(theta, data) x = data(:,1); y = data(:,2); a = data(:,3); b = data(:,4); w = data(:,5); d = data(:,6); j = data(:,7); aa=(a.^2+b.^2); bb=cos((w.*(j-d./1500))/180*pi); cc=exp((-theta(1))*w.*d./(2*pi*1500)); dd=aa.*bb.*cc dd(1)=aa(1)*bb(1)*cc(1); xx(1)=dd(1); xx(2:2048)=(dd(2:2048)+dd(1:2047)); model_y = 1/2*xx; E = sum((y-model_y).^2); 請問板上的高手 我想用最小二乘方法求回歸係數 其中m檔案的模式有問題 模式的方程式為 medel=1/2*sum((a.^2+b.^2).*exp((-theta(1))*w.*d./(2*pi*1500)) .*cos((w.*(j-d./1500))/180*pi)) 只是matlab 似乎只會使最後ㄧ個數據的誤差接近0 因此求出來的誤差還是很大 不知道是否有高人可以指點一下 該如何修改m檔案的模式 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.88.49

02/10 11:15, , 1F
你說最後一點誤差接近0,是說你已經用最小二乘法了?
02/10 11:15, 1F

02/10 11:15, , 2F
可否說一下你的二乘法,否則不知道怎幫助你
02/10 11:15, 2F

02/11 16:33, , 3F
我是用matlab裡面的 theta = fminsearch 去做的
02/11 16:33, 3F

02/11 16:34, , 4F
這應該就是用最小二乘方法去求回歸係數 不知是否正確
02/11 16:34, 4F

02/12 00:48, , 5F
fminsearch是局部搜尋法,只能保證是局部最佳解,改用
02/12 00:48, 5F

02/12 00:49, , 6F
其他隨機多點的最佳化方法試試看,說不定能找到更好的
02/12 00:49, 6F

02/12 00:49, , 7F
係數
02/12 00:49, 7F

02/13 22:28, , 8F
那請問其他隨機多點的最佳化方法 是使用哪個指令
02/13 22:28, 8F
文章代碼(AID): #19Z_trHV (MATLAB)