【ファイナンス機械学習の勉強メモ】RANSAC (Random Sample Consensus) とは

ざっくりした理解

外れ値を含む回帰問題などに使うようだ。
通常の最小二乗法だと結果が外れ値に引っ張られてしまい、サンプルが本来持っている特徴を表現できない。

このように外れ値を含む場合の回帰に使うロバスト推定には、色々なアルゴリズムがあるようだが、その一つがRANSAC。

方法としては、データから一部をランダムに抽出してモデルをフィットさせ、そのモデルのフィット具合で外れ値と正常データを仕分けるイメージだ。

アルゴリズムの概要は以下。
(1)データから一部をランダムにサンプル抽出する
(2)サンプルに対してモデルをフィットさせ、パラメーターを推定
(3)抽出されなかったその他データ1つ1つに対してモデルの当てはまりを確認
(4)データ1つ1つに対してモデルの誤差が事前に設定した水準以内であれば、「このデータは外れ値ではない」と判断し、(2)の教師データに追加する
(5)(4)をサンプル以外の全データに行った結果、教師データの要素数が閾値を超えていれば、(4)で追加後の教師データ全体に対してモデルをフィットさせ、当てはまりを確認
(6)(1)から(5)を規定の回数だけ繰り返し、(5)の当てはまりが最良のパラメーターを最終結果とする

ポイントは、なんとかして外れ値を除去して正常データだけで回帰しよう、という点である。そのために、データの全てをパラメーター推定に使うのではなく、一部だけを使う。一部のデータにフィットさせた結果が、教師データ以外のデータにも当てはまっているなら、そのデータは外れ値ではないとみなして教師データに加える。このようにして「外れ値ではないと思われるデータ」を抽出し、それら全体にモデルをフィットさせる。以上の処理を繰り返し、当てはまりが最も良かった教師データが「正常データ全体」とみなして、それにモデルをフィットさせた結果を出力する。

しかし方法としてはかなり試行錯誤的なので効率が悪いため、計算高速化のための改善版アルゴリズムがあれこれ提案されているようだ。

ゆるふわ理解をしたい人向け参考資料

Random Sample Consensus (RANSAC) のお勉強 – Mugichoko’s blog (hatenablog.com)

ロバスト推定 (robust estimation) (sanko-shoko.net)

RANSAC (Random Sample Consensus) (sanko-shoko.net)

【お勉強してみた】RANSACのおはなし – Qiita

あわせて読みたい

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる(1/10) | Quant College

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる(2/10) | Quant College

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる (3/10) | Quant College

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる (4/10) | Quant College

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる (5/10) | Quant College

【ファイナンス機械学習 解説】著者の解説スライドを日本語でまとめてみる (6/10) | Quant College

【ファイナンス機械学習】著者によるNumerai解説スライドを日本語でまとめてみる | Quant College

『アセットマネージャーのためのファイナンス機械学習』の詳細目次 | Quant College