2

機械学習のためのデータ前処理に関する質問があります。特に平均と単位分散がゼロになるようにデータを変換します。 私は2つのデータセットにデータを分割しました(私は3つが必要であることを知っていますが、簡単にするために私は2つを持っているとしましょう)。トレーニングデータセット全体に単位分散と平均があり、モデルをテストするときに各テスト入力ベクトルを変換して、それぞれのテスト入力ベクトルが単位分散とゼロ平均を提示するように、トレーニングデータセットを変換するか、データセット全体(traningとtesting)が一緒になって、全体がvarとzeroを意味するようになるでしょうか?私は、テストデータセットに卑劣な量のバイアスを導入しないように前者を行うべきだと私は信じています。しかし、私は専門家ではないので、私の質問です。機械学習データ前処理

+0

アフリカ人は、データセット全体に標準化を適用します。しかし、私は同様の質問[ここ](http://stats.stackexchange.com/questions/212597/standardization-in-neural-network-online-training)を尋ねました。なぜなら、オンライントレーニングのシナリオではそれほど簡単ではないからです。 – davidhigh

答えて

1

プリプロセッサをフィッティングすることは、トレーニングセットでのみ行う必要があり、平均と分散トランスフォーマはテストセットで使用されます。列車と試験でこれらの統計値を計算すると、試験セットに関する情報が漏れます。

私はディープラーニングにgood courseにあなたをリンクしてみましょう、あなたに(Andrej Karpathyからの両方)の引用を示しています。

共通の落とし穴。前処理について重要な点は、任意の前処理統計(例えば、データ平均)がトレーニングデータ上で計算され、次いで、検証/テストデータに適用されなければならないことである。例えば。平均を計算し、それをデータセット全体のすべてのイメージから減算し、次にデータを列/ val /テストスプリットに分割することは間違いです。代わりに、平均はトレーニングデータ上でのみ計算され、次にすべてのスプリット(列車/ val /テスト)から等しく減算されなければなりません。

+0

ブリリアント!それを通して読むでしょう。列車と検証データの分離に先立って標準化されたデータセットで訓練を受けたモデルが、テストセットの予測に98%の精度を混乱させた場合、リークが本当であると考えました。それは真実であるにはちょうど良い方法でした。 –