ペナルティ、パス、正直なチューニング
ノイズの多い説明変数が60あると、通常の最小二乗法はノイズに当てはまってしまいます。ペナルティは大きな係数に代償を課します。Ridge(alpha) は二乗和に課金し、すべての係数が縮みますがゼロには届きません。Lasso(alpha) は絶対値の和に課金し、alpha を上げると係数が次々と厳密にゼロになるので、変数選択も行います。ElasticNet(alpha, l1_ratio) は両者の混合で、相関する説明変数のうちラッソが偶然1つを選んでしまうときに役立ちます。ペナルティが係数を公平に扱うのは列のスケールが揃っているときだけなので、先に標準化しますが、学習行の平均と標準偏差だけを使います。そうしないとテスト行がスケールに漏れます。alpha のグリッドを回し、生き残る係数の数やリッジ解の大きさを記録すれば、正則化パスになります。
どれだけのペナルティか。過去に最もよく当てはまるもの、つまり alpha がゼロ近くのものではありません。alpha はウォークフォワードで選びます。各分割で学習行を使って標準化し、そこで学習し、テスト行を予測し、予測と結果の順位相関(情報係数)で採点します。大きな alpha がすべての係数をゼロにすると予測が定数になり相関が定義できないので、0点とします。SPYの日次リターンを他の60資産の前日リターンで説明する場合、ラッソは α=10⁻⁵ で57個、10⁻⁴ で38個、3.2×10⁻⁴ で15個、10⁻³ で7個の係数を残し、リッジのノルムは 0.0043 から 0.0005 まで下がりますがゼロになる係数はありません。ウォークフォワードのICは α=3.2×10⁻⁴ で約 0.022 と最大になります。ペナルティなしの当てはめでは決して見えなかった、控えめで正直な数字です。
- リッジは縮め、ラッソは選び、エラスティックネットは両方:alphaのグリッドで各パスをたどる。
- 標準化は学習行だけで:ペナルティはスケールに依存し、テスト行がそれを決めてはいけない。
- alphaは標本外で調整:ウォークフォワードの順位相関で採点し、定数の予測は0とする。
ラボ:採点される内容
- のぞき見なしの標準化10点
- ラッソのパス15点
- リッジのパス10点
- ウォークフォワードのスコア25点
- alphaを選ぶ15点
- エラスティックネットが残すもの10点
- パス研究の全体15点