私は、156000行と37列の大きなデータセットを持っています。列は保険の属性を表します。属性は、数値、カテゴリ、英数字の3種類に分類できます。この属性はニューラルネットワークの入力値ですが、NNTは数値データのみを受け入れます。私は、カテゴリと英数字の値をエンコードする必要があります。いくつかの異なる値を含むカテゴリ属性の場合、私は1つのホットメソッドを使用します。カテゴリに1つの列があり、行にその列のカテゴリが含まれている場合は各セルに1または0が入ります。大きなデータセットを持つカテゴリデータのエンコーディング
代わりに、次のコマンドを使用して、あまりにも多くの列数を増加させないように、多くの異なる値が含まれているカテゴリ属性の:
df["ATT1"] = df["ATT1"].astype('category')
df["ATT2"] = df["ATT2"].astype('category')
df["ATT1"] = df["ATT1"].cat.codes
df["ATT2"] = df["ATT2"].cat.codes
は、カテゴリ属性にオブジェクトの属性を変換し、各カテゴリについて私は整数値を関連付けます。 TensorFlowでモデルを起動すると、繰り返しごとに関数の損失が0になり、精度は1で一定に保たれます。
私はカテゴリ属性をエンコードするのが間違っていると思います。モデルは正しい方法で構築されています。損失関数、精度、出力が正しいということは、別のデータベースを使ってモデルを作成するときです。さまざまな価値のあるカテゴリデータのエンコード方法がありますか?
@ jigasse:埋め込み方法を試すことができます。あなたはTFでワイド・アンド・ディープ・メソッドを見ることができます。 – Beta