機械学習におけるデータセット


データセット分類


監視(supervise)のある機械学習では、データセットは、トレーニングセット(train set)検証セット(validation set)テストセット(test set)の2~3つに分けられることが多い.
トレーニングセットはモデルを推定するために使用され、検証セットはネットワーク構造または制御モデルの複雑さのパラメータを決定するために使用され、テストセットは最終的に最適なモデルを選択した性能を検証する.Ripley,B.D(1996)は彼の古典的な専著Pattern Recognition and Neural Networksでこの3つの語の定義を与えた.
Training set:
 A set of examples used for learning, which is to fit the parameters [i.e., weights] of the classifier. 
Validation set: 
A set of examples used to tune the parameters [i.e., architecture, not weights] of a classifier, for example to choose the number of hidden units in a neural network. 
Test set:
 A set of examples used only to assess the performance [generalization] of a fully specified classifier.

明らかに、training setは、ANNの重み値など、モデルを訓練したり、モデルパラメータを決定したりするために使用される.validation setはモデル選択(model selection)を行うために使用され、すなわちANNの構造のようなモデルの最終的な最適化と決定を行う.test setは純粋に訓練されたモデルの普及能力をテストするためだ.もちろんtest setはモデルの正確性を保証するものではありません.彼は似たようなデータがこのモデルで似たような結果を出すと言っただけです.しかし、実際の応用では、データセットをtraining setとtest setの2つに分類するのが一般的であり、多くの文章ではvalidation setには触れていない.

トレーニングセットとテストセットの選択


典型的な区分の1つは、トレーニングセットが全サンプルの50%を占め、他の各25%を占め、3つの部分はサンプルからランダムに抽出される.サンプルが少ない場合、上の区分は適切ではありません.よく使われるのは、テストセットの一部を残すことです.次に,残りのN個の試料に対してK折交差検証法を用いた.サンプルを乱し,その後均一にK部に分け,そのうちK−1部を順番に選択し,残りの1部を検証し,予測誤差二乗和を計算し,最後にK次の予測誤差二乗和を平均化して最適モデル構造を選択する根拠とした.特別なKはNを取って、1法(leave one out)を残します.

データ正規化の問題


データ正規化はデータの前処理に属する.sigmoid関数は異なる変換に従って0〜1または−1〜1の間に出力されるため,正規化しないとサンプル出力がニューラルネットワーク出力の範囲を超えてしまう.最大値maxと最小値minを選択し、次のように変換します.
x=(x-min)/(max-min)

正規化です.maxおよびminは、xの最大値および最小値として直接選択すべきではないことに注意してください.なぜなら、サンプルは限られた観測にすぎず、より大きくまたはより小さい観測がある可能性があるため、適切な選択はmaxがxmaxより大きく、minがxminより小さいものを選択すべきである.正規化は必ずしも適切な前処理ではない.分布非対称の試料をより対称にすることができず、標準化がよりよいからである.また,主成分分析が降次元の役割を果たす場合もある.