ニューラルネットワークとディシジョンフォレストのデータを正規化する方法


10

20000サンプルのデータセットがあり、それぞれに12の異なる機能があります。各サンプルは、カテゴリ0または1のいずれかにあります。ニューラルネットワークと決定フォレストをトレーニングしてサンプルを分類し、結果と両方の手法を比較できるようにします。

最初に遭遇したのは、データの適切な正規化です。一つの特徴は、範囲内にある、で別の[ 30 40 ]、ほとんどが、私は異なるソースに読み取るように、入力データの適切な正規化を時々値8と7を取ることが一つの特徴がありますニューラルネットワークにとって重要です。私が知ったように、データを正規化する多くの可能な方法があります、例えば:[0106][3040]

  1. ミニマックス正規化:入力範囲は直線区間に変換され(または[ - 1 1 ]、その問題していますか?)[01][11]
  2. Zスコアの正規化:データは平均がゼロで分散が単位に変換されます:
    yew=yold平均Var

どの正規化を選択する必要がありますか?意思決定フォレストにも正規化が必要ですか?Zスコアの正規化では、テストデータのさまざまな機能が同じ範囲内にありません。これは問題でしょうか?すべての機能を同じアルゴリズムで正規化して、すべての機能にMin-Maxを使用するか、すべての機能にZスコアを使用するかを決定する必要がありますか?

データがマップされる組み合わせがあるまた、ゼロ平均(データの非線形変換を意味し、したがって分散の変化と入力データの他の特徴であろう)を有しているが。[11]

これらの質問に答える参考文献が見つからないので、少し迷っています。

回答:


21

他のコメントには同意しません。

まず、デシジョンツリーのデータを正規化する必要はありません。決定木は、データのそれぞれ異なる区分に対するスコア(通常はエントロピー)を計算することにより動作。データの順序を変更しない変換をデータに適用しても、違いはありません。バツバツバツ>バツ

ランダムフォレストは単なる決定木の束なので、この根拠は変わりません。

ニューラルネットワークは別の話です。まず、予測に関しては、違いはありません。ニューラルネットワークは、重みをスケーリングしてバイアスを変更するだけなので、正規化に簡単に対抗できます。大きな問題はトレーニングです。

弾力性のあるバックプロパゲーションなどのアルゴリズムを使用してニューラルネットワークの重みを推定する場合違いはありません。その理由は、エラーを最小限に抑える方向に重みを変更するときに、大きさではなく勾配の符号を使用するためです。neuralnetちなみに、これはR のパッケージのデフォルトのアルゴリズムです。

いつ違いが生まれますか?シグモイドアクティベーション関数で従来の逆伝播を使用している場合、シグモイド導関数が飽和する可能性があります。

シグモイド関数(緑)とその導関数(青)を考えます。

シグモイド

s9999=0

バツバツ最高バツバツ0.5

実際の正規化は、最適化プロセスの初期反復にのみ影響を与えるため、それほど重要ではありません。データが中央に配置されていて、ほとんどのデータが1未満である限り、同じ結果を得るには、反復回数をわずかに増減する必要がある可能性があります。しかし、私が述べた飽和の問題を回避する限り、結果は同じになります。

ここで説明されていないものは正則化です。あなたの目的関数に正則を使用する場合は、あなたがあなたのデータを正規化する方法がします結果として得られるモデルに影響を与えます。あなたはすでにこれに精通していると思います。1つの変数が過剰適合を引き起こす傾向があることがわかっている場合は、データの正規化でこれを考慮する必要があります。これはもちろん、使用されているニューラルネットワークから完全に独立しています。


2
  1. 明確な答えはありません。私がお勧めするのは、さまざまなアプローチを使用してデータをスケーリングし、同じモデルを使用してホールドアウトセットの結果を予測することです(RFはここで正常に機能します)。これにより、予測問題に最適なスケーリングアプローチが少なくとも示されます。
  2. ランダムフォレストのデータをスケーリングする必要はありません
  3. 最初から一貫してスケーリングされている限り、個々の範囲は問題になりません。これは、以前よりもコンパクトなスケールで、変数間に違いがあることを示しています。
  4. はい -すべてのデータは同じアプローチでスケーリングする必要があります。そうでない場合、変換されたデータセットの値は、データ自体ではなく、スケーリングに使用されるアルゴに関連している可能性があります。

うまくいけば、これが役立ちます。


1
すばらしい回答です。これは、処理しているデータの特定の分布と、外れ値を削除するかどうかによって多少異なることを付け加えておきます。標準化すると、通常のデータは非常によく見えます。ただし、最小/最大正規化を使用すると、均一な分布の方がはるかによく見える場合があります。さらに、最小値/最大値を正規化すると、sigma = 10の対数正規分布は、ゼロに近い興味深い動作の多くを隠す可能性があります。
AN6U5

@ AN6U5-非常に良い点。正直に言って、スケーリングがさまざまな基礎となる分布/外れ値に与える影響についてはあまり考えませんでした。今朝それを読むかもしれません!
plumbus_bouquet 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.