robustfitの反復はどのような条件の時に終了しますか?
5 ビュー (過去 30 日間)
古いコメントを表示
採用された回答
Kazuya
2018 年 11 月 12 日
ヘルプページには明記されていないですね。
edit robustfit
で関数の中身を確認すると、実際の処理は statrobustfit.m で実行されていることが分かります。。
edit statrobustfit
で中身を見ると(R2018b では・・ですが)
% Perform iteratively re-weighted least squares to get coefficient estimates
D = sqrt(eps(class(X)));
iter = 0;
iterlim = 50;
wxrank = xrank; % rank of weighted version of x
while((iter==0) || any(abs(b-b0) > D*max(abs(b),abs(b0))))
が見つかりますが、、この while 文の条件がお探しの条件かと見ていますが、、どうでしょう?基本的には 計算結果 b が変化しなくなるまで、といった条件みたいですが、反復回数は 50 回までという条件も見られます。
2 件のコメント
Kazuya
2018 年 11 月 12 日
オリジナルのロバスト回帰を実装するような課題ですか?
statrobustfit 関数は private 関数なので
edit statrobustfit
では、開けませんね。
robustfit.m 内で statrobustfit 関数が実行されている箇所にて右クリック、メニューの中から「"statrobustfit" を開く」を選んで開いてみてください。
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!