1. 概要

このチュートリアルでは、機械学習における2つの交差検定手法について説明します。k-foldメソッドとleave-one-outメソッドです。 そのためには、トレインテストの分割から始めて、最初に交差検定が必要な理由を説明します。 次に、2つの交差検定手法について説明し、それらを比較して長所と短所を説明します。

2. トレインテスト分割法

開発時の重要な決定機械学習モデルは、その最終的なパフォーマンスを評価する方法です。 モデルのパフォーマンスの偏りのない推定値を取得するには、トレーニングに使用しなかったデータでモデルを評価する必要があります。

データを分割する最も簡単な方法は、train-testsplitメソッドを使用することです。 データセット全体の事前定義されたパーセンテージがトレーニングセットに含まれるように、データセットを2つのサブセット(トレーニングセットとテストセットと呼ばれる)にランダムに分割します。

次に、トレーニングセットで機械学習モデルをトレーニングし、テストセットでそのパフォーマンスを評価します。 このように、トレーニングに使用されたサンプルが評価に使用されていないこと、およびその逆が常に確実です。

視覚的には、これがtrain-testsplitメソッドの仕組みです。

 

3. 相互検証の概要

ただし、train-splitメソッドには特定の制限があります。 データセットが小さい場合、メソッドは分散が大きくなる傾向があります。ランダムなパーティションのため、テストセットごとに結果が完全に異なる可能性があります。 なんで? 一部のパーティションでは、分類が容易なサンプルがテストセットに含まれる一方で、他のパーティションでは、テストセットが「難しい」サンプルを受け取るためです。

この問題に対処するために、相互検証を使用して機械学習モデルのパフォーマンスを評価します。相互検証では、データセットをトレーニングセットとテストセットに1回だけ分割しません。 代わりに、データセットを小さなグループに繰り返し分割してから、各グループのパフォーマンスを平均します。 このようにして、結果に対するパーティションのランダム性の影響を減らします。

多くの交差検定手法は、手元のデータセットを分割するさまざまな方法を定義します。 最も頻繁に使用される2つの方法であるk-foldとleave-one-outの方法に焦点を当てます。

4. K分割交差検定

k分割交差検定では、最初にデータセットをk個の等しいサイズのサブセットに分割します。 次に、k個のサブセットの1つがテストセットとして使用され、残りのk-1個のサブセットがトレーニングセットとして一緒に使用されるように、train-testメソッドをk回繰り返します。最後に、 k回の試行にわたってスコアを平均することにより、モデルのパフォーマンス推定値の推定値を計算します。

たとえば、6つのサンプルを含むデータセットがあり、3分割交差検定を実行するとします。

まず、ランダムに3つのサブセットに分割します。 例えば:

次に、機械学習モデルを3回トレーニングして評価します。 毎回、2つのサブセットがトレーニングセットを形成し、残りの1つはテストセットとして機能します。 この例では:

最後に、全体的なパフォーマンスは、これら3つのテストセットでのモデルのパフォーマンススコアの平均です。

   

5. Leave-One-Out相互検証

Leave-one-out(LOO)交差検定では、データセットのサイズに合わせて機械学習モデルの時間をトレーニングします。 毎回、1つのサンプルのみがテストセットとして使用され、残りはモデルのトレーニングに使用されます。

LOOがk-foldの極端なケースであることを示します。前の例にLOOを適用すると、6つのテストサブセットがあります。

それらを繰り返し、反復のトレーニングデータとして使用し、モデルを次のように評価します。

最終的なパフォーマンスの見積もりは、6つの個別のスコアの平均です。

   

6. 比較

k分割法とLOO交差検定法のどちらかを選択する際の重要な要素は、データセットのサイズです。

サイズが小さい場合、各反復でより多くのトレーニングサンプルを使用するため、LOOがより適切です。 これにより、モデルはより適切な表現を学習できるようになります。

逆に、 LOOはデータのサンプルごとに1つずつモデルをトレーニングするため、大規模なデータセットでモデルをトレーニングするためにk分割交差検定を使用します。 データセットに多くのサンプルが含まれている場合、非常に多くのモデルのトレーニングに時間がかかりすぎます。 したがって、k分割交差検定がより適切です。

また、大規模なデータセットでは、推定が十分に正確になるようにテストフォールドが十分に大きいため、フォールド未満を使用するだけで十分です。

7. 結論

この記事では、2つの交差検定手法を紹介しました。k分割法とLeave-one-out(LOO)法です。 後者は、機械学習モデルをより多く検証し、非常に正確な指標を提供します。 ただし、大規模なデータセットの場合、k分割交差検定により、十分に正確な推定値が得られますが、モデルのトレーニングに費やす時間は少なくなります。