データ解析の基本的な流れにおいて、
基本的にクロスバリデーションしたときの推定性能が高くなるように、ハイパーパラメータを選択すると思います。
ハイパーパラメータの候補ごとにクロスバリデーションを行い、回帰分析であれば決定係数 r2 など、クラス分類であれば正解率などの指標が、最大になるような候補を選択します。ガウシアンカーネルを用いたときのサポートベクターマシン (Support Vector Machine, SVM) など、ハイパーパラメータの種類が複数あるときは、クロスバリデーションにグリッドサーチを組み合わせます。グリッドサーチの例はこちらをご覧ください。
クロスバリデーションも万能ではありませんので、モデルの推定性能が低くなってしまうハイパーパラメータの候補が選択されてしまう可能性もあります。テストデータで推定性能を検証する段階で、ハイパーパラメータの選択に失敗したときは、被害はその手法が選択されないだけで済みますが、問題はテストデータでの検証により選ばれた手法で、すべてのデータセットを用いて構築されたモデルを構築するときの失敗です。
トレーニングデータとテストデータに分けて、トレーニングデータのみでのクロスバリデーションでハイパーパラメータの選択に成功しても (その結果構築されたモデルでテストデータを良好に推定でき、その手法が選ばれたとしても)、すべてのデータセットでのクロスバリデーションで、ハイパーパラメータの選択に失敗する可能性があります。トレーニングデータにおける推定精度が (すらも) 低くなってしまったり、クロスバリデーションしたときの精度が低くなってしまったりです。
そのとき、クロスバリデーションで分割する数や、クロスバリデーションでランダムに分割する乱数の種を変えてみるとよいです。これにより、別のハイパーパラメータの候補が選択される可能性があります。
もう一つのやり方としては、トレーニングデータのみでのクロスバリデーションで選択されたハイパーパラメータの候補を用いるのは一つのやり方です。テストデータでの実績のあるハイパーパラメータの候補ですので、トレーニングデータとすべてのデータセットでモデル構築用のデータセットは異なりますが、試してみるとよいでしょう。
手法やデータセットによっては、ハイパーパラメータの選択がモデルの推定性能に大きく影響することもあります。注意してハイパーパラメータの候補を選びましょう。
以上です。
質問やコメントなどありましたら、twitter, facebook, メールなどでご連絡いただけるとうれしいです。