データをトレーニングデータと評価データに分割する - Amazon Machine Learning

Amazon Machine Learning サービスの更新や、その新しいユーザーの受け入れは行っていません。このドキュメントは既存のユーザー向けに提供されていますが、更新は終了しています。詳細については、「Amazon Machine Learning とは」を参照してください。

データをトレーニングデータと評価データに分割する

ML の基本的な目標は、モデルのトレーニングに使用するデータインスタンスを超えて一般化することです。トレーニングされていないデータに対してモデルがパターンを一般化する品質を評価する必要があります。しかし、将来のインスタンスには未知のターゲット値があり、将来のインスタンスの予測の精度を今確認することはできないため、将来のデータのプロキシとして、すでに回答が分かっているデータの一部を使用する必要があります。トレーニングに使用されたのと同じデータを持つモデルを評価することは有用ではありません。なぜなら、トレーニングデータを一般化するのではなく、トレーニングデータを「覚える」モデルに有利になるからです。

一般的な戦略は、利用可能なすべてのラベル付きデータをトレーニングと評価のサブセットに分割することで、通常、トレーニングの方を 70〜80%、評価の方を 20〜30% とします。ML システムは、トレーニングデータを使用してモデルがパターンを理解するようにし、評価データを使用してトレーニングモデルの予測品質を評価します。ML システムは、さまざまなメトリクスを使用して、評価データセットでの予測を true 値と比較する (グランドトゥルースと呼ばれる) ことによって、予測パフォーマンスを評価します。通常は、ターゲット回答が分からない将来のインスタンスの予測を作成するために、評価サブセットの「最適な」モデルを使用します。

Amazon ML は、モデルのトレーニング用に Amazon ML コンソールを通じて送信されたデータを、トレーニング用に 70%、評価用に 30% に分割します。デフォルトでは、Amazon ML は入力データの最初の 70% をトレーニングデータソースのソースデータに表示されている順序で使用し、評価データソースにデータの残り 30%を使用します。Amazon ML では、最初の 70% を使用する代わりに、ソースデータの 70% をトレーニング用にランダムに選択し、このランダムなサブセットの残りを評価用に使用することもできます。Amazon ML API を使用してカスタム分割比率を指定し、Amazon ML の外で分割されたトレーニングおよび評価データを提供することができます。Amazon ML には、データを分割する方法もあります。分割する方法の詳細については、「データの分割」を参照してください。