あなたはここにいくつかの良い質問を持ち出します。それぞれを順番にカバーできるよう頑張ります。完全な治療ではありませんが、うまくいけば...
1.カテゴリを正規化する方法。
最初に、カテゴリ変数をゼロ分散(たとえば、1つのカテゴリのみを持つすべてのレコード)と見なすか、ほぼゼロ分散(非常に少数のカテゴリに属するレコードの大多数のレコード)と見なすことができるかどうかを評価します。これを識別するための基本的な頻度分布を作成します。
ニューラルコンテキスト自体ではそれほど重要ではありませんが、モデルから低分散変数をフィルタリングすることを検討することをお勧めします。ゼロに近い分散変数を削除すると、赤ちゃんをお風呂の水で捨てる可能性があるので注意してください。
以前にニューラルネットを使用したことがあるので、カテゴリを数値に変換する必要があることがわかります。尋ねる良い質問は、与えられたカテゴリー値が本質的に序数であるかどうか(たとえば、リッカートスケールが1〜5)であり、順序性を維持するかどうかです。これにより、Pinto da CostaとCardosoが説明しているような領域(https://www.researchgate.net/publication/221112186_Classification_of_Ordinal_Data_Using_Neural_Networks)が表示されます。
2.欠損データの扱い方。
欠落している連続値について話していると仮定すると、属性全体に存在する値に基づいて、これらの数値をまとめて計算する必要があります。ここで使用する方法はいくつかありますが、分散が重要です。基本的な意味では、属性が外れ値によって歪められている場合は、平均ベースの計算を避け、中央値ベースのアプローチを採用する必要があります。
3.「デフォルト」がデータの最大5%であるという事実への対処方法。
これは、(50,000のデータセット内の)「デフォルト」を意味するものの例が2500あることを考えると、当面の懸念事項ではありません。ここでの健全なアプローチは、K分割交差検証スキーム(たとえば10分割)を使用して、トレーニングとテストを本当にランダム化していることを確認することです。これは、過剰適合からあなたを保護するのに役立ちます。繰り返しますが、これはかなり高レベルのガイダンスですが、賢明です。
追加のクレジット:
連続属性の正規化など、他の標準的な手法には慣れていませんが、モデルをより一般化するためにそこまでの速度を上げたいと思うかもしれません(同時に、データでのダイナミクスの理解を深めることもできます) )。これは、他のアルゴなどを試すように指示する可能性があります。