タグ付けされた質問 「adam」

6
指数関数的減衰を伴うAdamオプティマイザー
ほとんどのTensorflowコードで、Adam Optimizerが一定の学習率1e-4(つまり0.0001)で使用されているのを見ました。通常、コードは次のようになります。 ...build the model... # Add the optimizer train_op = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy) # Add the ops to initialize variables. These will include # the optimizer slots added by AdamOptimizer(). init_op = tf.initialize_all_variables() # launch the graph in a session sess = tf.Session() # Actually intialize the variables sess.run(init_op) # now …

1
確率的勾配降下のAdamメソッドはどのように機能しますか?
ニューラルネットワークをトレーニングするための基本的な勾配降下アルゴリズムに精通しています。Adam:ADAM:A METHOD for SCHOCASTIC OPTIMIZATIONを提案している論文を読みました。 (少なくとも)確かにいくつかの洞察を持っていますが、この論文は私にとって全体的に高すぎるようです。たとえば、コスト関数は多くの異なる関数の合計であることが多いため、その値を最適化するには膨大な量の計算が必要です。確率的勾配降下-トピックを理解している限り-これらの関数のサブセットについてのみ最適化を計算します。私には、Adamがこれをどのように行い、これにより全体のトレーニングエラーが減少する理由は不明です。J(θ)J(θ)J(\theta)J(θ)J(θ)J(\theta) Adamは以前の勾配を考慮して勾配を更新すると思います。彼らはそれを勢いを利用するようなものと呼んでいますか?この勢いは正確に何ですか?論文の2ページ目のアルゴリズムによると、「通常の」勾配の1次モーメントと2次モーメントの推定値のような、ある種の移動平均ですか? 実際には、Adamを使用すると、勾配を小さくするために大きな有効ステップサイズを使用できるため、確率的近似と組み合わせてトレーニングエラーが発生すると考えられます。したがって、結果として得られる更新ベクトルは、通常の勾配降下アルゴリズムのように曲線を記述するのではなく、空間次元でさらに「ジャンプ」する必要があります。 誰かがアダムの仕組みを分かりやすく説明できますか?特にそれがどのように収束するのか、特にアダムの方法が機能する理由と正確な利点は何ですか?

3
Adam Optimizerがそのハイパーパラメーターの値に対して堅牢であると考えられる理由は何ですか?
私はディープラーニング用のAdamオプティマイザーについて読んでいて、Bengio、Goodfellow、Courvilleの新しい本Deep Learningで次の文章を見つけました。 Adamは通常、ハイパーパラメーターの選択に対してかなり堅牢であると見なされていますが、学習率を推奨されるデフォルトから変更する必要がある場合があります。 ディープラーニングシステムの統計的パフォーマンスにおいて(少なくとも私の経験では)ハイパーパラメーター検索が非常に重要になる可能性があるため、これが事実であれば大したことです。したがって、私の質問は、なぜそのような重要なパラメーターに対してアダムがロバストなのですか?特別および?β1β1\beta_1β2β2\beta_2 私はAdamの論文を読みましたが、なぜそれらのパラメーターで機能するのか、なぜ堅牢なのかについては説明していません。彼らは他の場所でそれを正当化しますか? 私は紙を読んでも、ために、彼らは非常に小さくしようとしたハイパーパラメータの数、ということらしいわずか2とするためにβ 2、それが唯一の2x3のハイパーパラメータで動作している場合にのみ3.どのようにこれは徹底的に実証研究することができ?β1β1\beta_1β2β2\beta_2

2
Adam Optimizerを使用したトレーニング損失と反復のスパイクの説明
私はi)SGDとii)Adam Optimizerを使用してニューラルネットワークをトレーニングしています。通常のSGDを使用すると、下に示すように(赤い曲線)、スムーズなトレーニングロス対反復曲線が得られます。ただし、Adam Optimizerを使用した場合、トレーニング損失曲線にはいくつかのスパイクがあります。これらのスパイクの説明は何ですか? モデルの詳細: 14入力ノード-> 2非表示レイヤー(100-> 40ユニット)-> 4出力ユニット 私はアダムのためのデフォルトパラメータを使用していますbeta_1 = 0.9、beta_2 = 0.999、epsilon = 1e-8とbatch_size = 32。 i)SGDを使用 ii)Adamを使用

1
ディープラーニングのAdamオプティマイザーにバイアス補正用語を含めることが重要なのはなぜですか?
私はディープラーニングのAdamオプティマイザーについて読んでいて、Begnio、Goodfellow、Courtville の新しい本Deep Learningで次の文章に出会いました。 Adamは、原点での初期化を説明するために、1次モーメント(運動量項)と(非中心化)2次モーメントの両方の推定値に対するバイアス補正を含めます。 これらのバイアス補正項を含める主な理由は、mt=0mt=0m_t = 0およびvt=0vt=0v_t = 0の初期化のバイアスを何らかの形で除去するためだと思われます。 私はそれが何を意味するのか100%確信していませんが、おそらく1番目と2番目の瞬間がゼロから始まり、何らかの形でゼロから始まることはトレーニングに不公平な(または有用な)方法で値をゼロに近づけることを意味するようです? 私はそれがもう少し正確に何を意味するのか、そしてそれがどのように学習にダメージを与えるのかを知りたいのですが。特に、オプティマイザーにバイアスをかけないことは、最適化に関してどのような利点がありますか? これは、ディープラーニングモデルのトレーニングにどのように役立ちますか? また、偏りがない場合はどういう意味ですか?偏りのない標準偏差の意味はよく知っていますが、この文脈でそれが何を意味するのかは明確ではありません。 バイアス補正は本当に大したことなのか、それともAdamオプティマイザーの論文で誇張されているのか? 私が元の紙を理解しようと一生懸命努力したことは知っているが、元の紙を読んだり再読したりすることはほとんどない。私はこれらの質問のいくつかがそこで答えられるかもしれないと思いますが、答えを解析できないようです。

1
RMSPropとAdamとSGD
RMSProp、Adam、SGDのネットワークを使用して、EMNIST検証セットの実験を行っています。SGD(学習率0.1)とドロップアウト(0.1ドロップアウト確率)、およびL2正則化(1e-05ペナルティ)で87%の精度を達成しています。同じ正確な構成をRMSPropとAdamでテストし、初期学習率0.001をテストすると、85%の精度と大幅に滑らかでないトレーニングカーブが得られます。この動作を説明する方法がわかりません。トレーニング曲線が滑らかでなく、精度が低く、エラー率が高い理由は何ですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.