• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ニューラルネットワークについて)

ニューラルネットワークの学習で自由度を上げても誤差が改善しない

このQ&Aのポイント
  • ニューラルネットワークの学習について勉強中。
  • 最近、準ニュートン法での学習について考えている。
  • 中間層のユニット数を大きくしても誤差が変わらない結果が出た。

質問者が選んだベストアンサー

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

 中間層をたっぷり取ってメチャクチャ過剰学習させても、また多層にしても、なお出力を教師信号と一致させられないということは生じうる。その残差が特に大きいのはどんな入力であるか、というのをリストアップしてみれば、何か見つかるかも。  というのは、極めて近い(あるいは全く同じ)入力に対して全然違う幾つかの出力を要求すれば、当然残差が大きくなっちゃう。言い換えれば、(汎化能力のある)滑らかな関数によって出力の違いを説明するには入力ベクトルの情報が決定的に足りない(肝心な成分が抜けている)ってことですね。  ところで、準ニュートン法は、どこから出発するかによって挙動が変わるのが難点であり、だから、大体このあたりで収束しそうだなという所までは他の(のろくても着実な)手段で探る方が良いかも。

regulusdaora
質問者

お礼

返答有難うございます。 入力が同じなのに出力が異なるといったパターンが含まれていたようです(扱うデータの特性上、そうなっちゃってるみたいです・・・)。 準ニュートンは初期値にやっぱり依存しすぎますよね。最初は最急降下か何かであたりをつけて、ある程度行ったら切り替え、みたいな方が良いのでしょうか・・・

その他の回答 (1)

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.1

結局の所、 ローカルミニマムに引っかかっている んです。 3層のモデルですか? ニューラルネットワークは、実用上は、なかなか、うまく学習することは難しいです。はっきり言って、バックプロパゲーションを超えるうまい方法は知られていません。 とくに、入力データの非線形が強い場合には、相当難しいです。 中間層のニューロンを増やすと、自由度が増えるので、逆に学習がうまくいかない原因にもなります。 もちろん、中間層に十分な数のニューロンがないと、そもそも学習不能になる可能性もあります。 これが原因で、機械学習におけるニューラルネットワークの適用はSVMなんかに押されて一時期かなり下火になりました。 ところが、最近、強い非線形のデータを学習したい場合には、3層モデルで中間層のニューロン数を増やす、のではなく、多層(10層など)のネットワークにするという話が出て、機械学習におけるニューラルネットワークが復権してきています。 入力に近い層から各層毎に学習していく、Deep Learningという手法なんかが有名です。 (「googleの猫認識」で有名)

関連するQ&A

専門家に質問してみよう