0

私は、合理的に長い特徴ベクトル (30 ~ 200k) を持つ単層パーセプトロンを構築しており、すべて正規化されています。

クラスの予測に多少役立つ 30,000 の機能があるとしますが、優れた予測因子である 100 の機能をさらに追加します。予測の精度はごくわずかです。ただし、100 個の優れた機能の重みを手動で増やすと (たとえば 5 倍)、精度が数パーセント向上します。

トレーニング プロセスの性質上、より優れた機能には自然に高い重みを与えるべきだというのが私の印象でした。ただし、最高の機能が悪い機能によって「かき消されている」ようです。

より多くの反復で実行しようとしましたが、それは役に立ちませんでした。

合理的に単純な方法で、アルゴリズムをより適切な重み付け機能に適応させるにはどうすればよいですか? また、かなり速い方法です。機能が少ない場合は、一度に 1 つずつ除外してアルゴリズムを実行するのは簡単ですが、30k では実際には実現可能ではありません。

4

1 に答える 1

0

パーセプトロン ベースのネットワークの実装に関する私の経験では、何かを学習するには多くの反復が必要です。xor関数を学習するために、各サンプルを約1k回使用したと思います(入力が4つしかない場合)。したがって、200k の入力がある場合、ネットワークのトレーニングに多くのサンプルと時間がかかります。

いくつか提案があります。

  • 入力のサイズを小さくしてみてください (複数の入力を 1 つに集約するか、重複を一度削除してみてください)。

  • 各サンプルをより多く使用してみてください。先ほど言ったように、単純な関数でさえ学習するには多くの反復が必要になる場合があります

お役に立てれば。

于 2012-04-19T06:20:12.530 に答える