/ /ニューラルネットワークの公称値入力-人工知能、機械学習、ニューラルネットワーク

ニューラルネットワークの名目値入力 - 人工知能、機械学習、ニューラルネットワーク

トレーニングデータのセットがあり、各アイテムはセットは、4つの数値と、これらの値が計算されたメソッドの名前である1つの公称値で構成されます。 (8つの方法があります)

これらを使用してニューラルネットワークをトレーニングしています。 公称値を取り除くには、各メソッドに1〜8の値を割り当て、1つの入力を使用してニューラルネットワークに渡し、数値用に他の4つの入力を使用しました。それは一種の作業ですが、結果は私が望むほど驚くほどではありません。

私の質問は、このためかもしれません名目値への番号の単純な割り当て?または、実際には同じレベルではない2つの異なる入力カテゴリ(数値とメソッドタイプ)が混在していることが原因である可能性があります

回答:

回答№1は6

あなたは「多くの詳細を提供しないので、私の答えは非常に具体的ではありません。

一般的に言えば、ニューラルネットワークは変換によって変数に(おそらく)誤った順序付けが課されるため、名目値を数値としてコーディングするとパフォーマンスが低下します。さまざまなレベルの入力を混合すると、パフォーマンスが低下する傾向があります。

ただし、提供される情報はほとんどありませんここでは、これがネットワークのパフォーマンスが望みどおりに「驚くほどではない」理由であるかどうかを判断する方法はありません。十分なトレーニングデータがない場合や、トレーニングデータに多くのノイズが含まれている場合も同様です。データの事前スケーリングが必要な場合、ネットワークコードにエラーがある場合、学習アルゴリズムに不適切な定数の値を選択しました...

ニューラルネットワークが「機能しない」理由予想されるものは多種多様です(そのうち、不当に高い期待を抱いている)。多くの情報がなければ、問題が何であるかを知る方法はありません。


回答№2のための7

一般的な注意として、コーディングのより良い方法公称値は​​バイナリベクトルになります。あなたの場合、4つの連続値入力に加えて、8つのバイナリ入力ニューロンがあり、1つだけがアクティブ(1)で、他の7つは非アクティブです。

あなたがそれをした方法は、人工的なほぼ確実にアーティファクトである計算方法間の関係。たとえば、1と2は数値的に(そしてネットワークの観点から)1と8に近いです。しかし、メソッドnr。1と2はメソッド1と8よりも本当に似ている、または関連していますか?


回答№3の4

カテゴリを数値にマッピングすることは統計の優れた実践。特にニューラルネットワークの場合。ニューラルネットワークは、同様の入力を同様の出力にマップする傾向があることに注意してください。カテゴリAを1に、カテゴリBを2にマッピングすると(両方とも入力として)、NNは、互いに関係がない場合でも、両方のカテゴリに類似した値を出力しようとします。

スパース表現が推奨されます。 4つのカテゴリがある場合、次のようにマッピングします。

A-> 0001

B-> 0010

「サブジェクト:カテゴリのエンコード方法」をご覧ください。このリンクで: ftp://ftp.sas.com/pub/neural/FAQ2.html#A_cat