0

私は1900行22列のデータセットを持っています。 21列は単なる数値ですが、私がデータを訓練したいと考える一つの重要な点は、a、b、cの3段階です。小規模なデータセットでのマルチクラス決定フォレスト/ニューラルネットワークの設定

私はデシジョンツリー/ジャングルとニューラルネットワークの両方を試しましたが、どのようにセットアップしても、55%以上の精度は得られません。

通常は約50%の精度で、これまでに得られた最高のものは全体の精度が55%、平均が約70%でした。

このような小さなデータセットでもNNを使用する必要がありますか?私が言ったように、私は他のMLアルゴリズムを試しましたが、何も得られません。

+1

22列の1900行は、NNモデルの実際のデータセットではありません...しかし、まずPCAのような次元削減技術を試してみましたか?あなたはおそらく列を4または5に減らすためにそれを行うことができます...その場合、おそらく良いモデルを見つけることができます... – Gaurav

答えて

1

あなたの質問には明確な答えはないと思います。精度の低いスコアには、いくつかの理由が考えられます。 - 低精度はmetaparametersの誤った設定の結果であるかもしれない(で木のツリーまたは数の最大の高さのような

  1. あなたは決定木/ニューラルネットワークを使用する場合:私は、以下の点でそれらのいくつかを述べるだろうDTまたはNN症例における誤ったトポロジーまたはデータ準備)。私がお勧めするのは、NNとDTの両方にグリッドやランダムな検索を使用して、アルゴリズムの最適なメタパラメータを探すことです(Rのh20やScikit-Pythonのような "静的な"ニューラルネットワークの場合には、データを適切に正規化することができます(例えば、データの平均値を減算し、標準偏差で除算します)。
  2. データセットが矛盾する可能性があります。たとえばあなたのデータには、xyの間に機能的な依存関係が存在するという性質がありません。つまり、y = f(x)fです。トレーニングセッション中に学習されるのは、与えられた確率xです。あなたの例は、指定されたクラスに属します。この不一致は、あなたの正確さに深刻な影響を与える可能性があります。このケースで私がアドバイスをしているのは、その現象が起こっているかどうかを明示してみることです。データをセグメント化して問題を解決してください。
  3. データセットが小さすぎる可能性があります。この場合、より多くのデータを取得してください。
+0

私はあなたとGauravが提案したが運がないものを試しました。私はちょうど約60%で立ち往生し続けています(私はもっと大きなデータセットを持っていて、今は少ない列です)。誰かがここでデータを見てみることができますかhttp://www.zippyshare.com/v/LqqORkx5/file.htmlもし80%まで上げることが可能なら、それは素晴らしいことです。 –

関連する問題