私は現在、p(x,y) = a(1)*x^2+a(2)*y^2+a(3)*x*y+a(4)
という2変数多項式でフィッティングしているデータz(0), z(1), z(2)...,z(n)
を持っています。私はi=1,...,n
(x(i),y(i))
の座標を私がp(x(i),y(i))=z(i)
とすることがあります。このようにして、私はEigen SVDを使って解決できるオーバー決定システムを持っています。私は最小正方形の頑強な回帰(hereのように)のような外れ値を扱うことができるより洗練された方法を探していますが、2つの変数のC++実装が見つかりませんでした。私はGSLを見ましたが、2つの可変機能のための何もないようです。私が考えることができる唯一の他の解決策は、ROOTのTGraph2Dを使用することです。あなたは他の解決策を知っていますか?数値レシピは?私はC++のコードを書いているので、CやC++の実装が好きです。最小二乗法ロバスト回帰C++
1
A
答えて
0
未回答ですが、まだこの問題に取り組んでいますので、ここで進捗状況を共有します。
クラスTLinearFitterあなたは堅牢なフィッティングを選択することができますフィットの方法がある - 最小トリム二乗回帰(LTS):
https://root.cern.ch/root/html532/TLinearFitter.html
もう1つの可能な解決策、より多くの時間かもしれないがかかりますが、多分詳細長期的には最小限に抑えるために私自身の関数を書くことが効率的です。それを最小限にするには です。このアプローチではより大きな「ステップ」がありますが。私はライブラリの使い方を知らず、理解していないチュートリアルもありました。
ここで:https://wis.kuleuven.be/stat/robust/software PROGRESSというLMedSアルゴリズムのFortran実装があります。したがって、このソフトウェアをC/C++に移植してライブラリを作成することも可能です。
関連する問題
- 1. Octaveでロバストな最小二乗
- 2. scipy最小二乗法による直交回帰フィッティング
- 3. Vowpal Wabbitでの普通最小二乗回帰
- 4. 部分最小二乗回帰のデータをR
- 5. 線形回帰vsクローズドフォームPythonの普通の最小二乗
- 6. 最小限でも速い重み付け - 最小二乗回帰
- 7. Pythonの最小二乗法
- 8. サークルのための最小二乗C++
- 9. キャレットでstats :: nls非線形最小二乗回帰を使用するには?
- 10. 最小二乗フィット2Dライン
- 11. 最小二乗平均
- 12. 加重最小二乗 - R
- 13. MATLAB fitlm:OLSとロバスト回帰
- 14. 再帰最小二乗(RLS)アルゴリズムの複雑さ
- 15. C/C++の部分最小二乗実装ですか?
- 16. より良い線形回帰のためのJavaライブラリがありますか? (例:反復最小二乗法)
- 17. MATLABで最小二乗回帰直線の傾きと切片を取得する方法は?
- 18. AMPL非線形最小二乗
- 19. ブロードキャストされたlstsq(最小二乗)
- 20. 交互最小二乗の入力
- 21. python:最小二乗推定ですか?
- 22. 最小二乗法が回転変換に制限されている
- 23. SparkR MLlib&spark.ml:最小二乗法とglm最適化
- 24. は、私は、データセットを持って反復再重み付き最小二乗回帰
- 25. 最小二乗回帰係数の非線形関数の標準誤差と信頼区間
- 26. Excelソルバー:C#で非線形最小二乗法に相当する
- 27. how to:ソルバ基礎二次最小二乗
- 28. 線形最小二乗法球の点への適合
- 29. 最小二乗法で円に合わせる
- 30. OpenCV:赤いレーザーに最小二乗法を使用する
最後に私はTLinearFitter :: EvalRobustメソッドを使用します。それはうまく動作します、それはもちろん主要な欠点はパフォーマンスです。 SVDは非常に高速です。 – BiA