タグ付けされた質問 「conv-neural-network」

畳み込みニューラルネットワークは、ニューラルネットワークの一種であり、レイヤー間の可能な接続のサブセットのみが存在して、重複領域を作成します。それらは一般的に視覚的なタスクに使用されます。


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オプティマイザーの論文で誇張されているのか? 私が元の紙を理解しようと一生懸命努力したことは知っているが、元の紙を読んだり再読したりすることはほとんどない。私はこれらの質問のいくつかがそこで答えられるかもしれないと思いますが、答えを解析できないようです。

2
CNNザビエル重みの初期化
一部のチュートリアルで、「Xavier」の重みの初期化(論文:ディープフィードフォワードニューラルネットワークのトレーニングの難しさを理解する)がニューラルネットワークの重みを初期化する効率的な方法であると述べたことがわかりました。 完全に接続されたレイヤーの場合、これらのチュートリアルには経験則がありました。 Var(W)=2nin+nout,simpler alternative:Var(W)=1ninVar(W)=2nin+nout,simpler alternative:Var(W)=1ninVar(W) = \frac{2}{n_{in} + n_{out}}, \quad \text{simpler alternative:} \quad Var(W) = \frac{1}{n_{in}} ここで、は、正規分布で初期化されたレイヤーの重みの分散で、、は、親と現在のレイヤーのニューロンの量です。Var(W)Var(W)Var(W)ninninn_{in}noutnoutn_{out} 畳み込み層にも同様の経験則がありますか? 畳み込み層の重みを初期化するのに最適な方法を見つけるのに苦労しています。たとえば、重みの形状がであり(5, 5, 3, 8)、カーネルサイズがであるレイヤーでは5x5、3つの入力チャネル(RGB入力)をフィルタリングし、8特徴マップを作成します... 3入力ニューロンの量と見なされますか?またはむしろ75 = 5*5*3、入力は5x5各カラーチャネルのパッチなので、 問題を明確にする具体的な回答か、重みの適切な初期化を見つけ、できればソースをリンクする一般的なプロセスを説明する、より一般的な回答の両方を受け入れます。



5
ニューラルネット/ディープラーニングを設計および適用するための視覚的なツールはありますか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新することがありますので、話題のクロス検証済みのため。 9か月前に閉鎖。 caffe、Theano、TensorFlow、kerasなど、機械学習とディープラーニング用のライブラリはたくさんあることは知っていますが、私にとっては、使用したいニューラルネットのアーキテクチャを知っている必要があるようです。 さまざまなネットワーク設計を実験し、それらを独自のデータに適用できる(視覚的な)ツールはありますか? TensorFlow Playgroundのようなものを考えていますが、n次元のデータと異なるレイヤータイプを使用しています。 前もって感謝します!


4
CNNでは、アップサンプリングと転置畳み込みは同じですか?
「アップサンプリング」と「転置たたみ込み」の両方の用語は、「デコンボリューション」を行うときに使用されます(<-良い用語ではありませんが、ここで使用します)。もともと同じ意味だと思っていましたが、これらの記事を読んでみると違うようです。誰かが明確にしていただけますか? 転置畳み込み:畳み​​込みニューラルネットワークを介して損失を伝播するときに使用できるように見えます。 http://andrew.gibiansky.com/blog/machine-learning/convolutional-neural-networks/#Backward-Propagation https://github.com/vdumoulin/conv_arithmetic https://arxiv.org/pdf/1312.6034v2.pdf、セクション4「畳み込み層の場合...」 アップサンプリングは:私たちはconvnet-decovnet構造の大きな入力に小さい入力からアップサンプリングしたいときに我々はそれを使用するように思えます。 https://www.youtube.com/watch?v=ByjaPdWXKJ4&feature=youtu.be&t=22m

1
ディープラーニングのディープ残余ネットワークのコンテキストで、残余学習ブロックとは正確には何ですか?
私は「画像認識のためのディープ残差学習」という論文を読んでいて、残差ブロックが計算で必要とするものを100%確実に理解することが困難でした。彼らが図を持っている彼らの論文を読む2: これは、残差ブロックがどうあるべきかを示しています。残差ブロックの計算は単純に次と同じですか? y=σ(W2σ(W1x+b1)+b2+x)y=σ(W2σ(W1x+b1)+b2+x) \mathbf{y} = \sigma( W_2 \sigma( W_1 \mathbf{x} + b_1 ) + b_2 + \mathbf{x} ) それとも別のものですか? 言い換えれば、多分紙の表記法と一致しようとすることは、次のとおりです。 F(x)+x=[W2σ(W1x+b1)+b2]+xF(x)+x=[W2σ(W1x+b1)+b2]+x \mathcal F(x) + x = \left[ W_2 \sigma( W_1 \mathbf{x} + b_1 ) + b_2 \right] + \mathbf{x} 本当? 円の合計の後、ReLUという単語が用紙に表示されるため、残差ブロック()の出力は次のようになります。yy\mathbf{y} σ(F(x)+x)=σ([W2σ(W1x+b1)+b2]+x)σ(F(x)+x)=σ([W2σ(W1x+b1)+b2]+x) \sigma( \mathcal F(x) + x ) = \sigma( …

2
「畳み込みでさらに深くなる」のDepthConcat操作はどのように機能しますか?
畳み込みでさらに深く読む私は、さまざまなサイズの複数のテンソルの出力を組み合わせる提案された開始モジュールのビルディングブロックであるDepthConcatレイヤーに出くわしました。著者はこれを「フィルター連結」と呼んでいます。Torchの実装があるようですが、それが何をするのか私にはよくわかりません。誰かが簡単な言葉で説明できますか?

2
Google Inceptionモデル:複数のソフトマックスがあるのはなぜですか?
Google Inceptionモデルのトポロジは、次の場所にあります。GoogleInception Netowrk このモデルには3つのソフトマックスレイヤー(#154、#152、#145)があり、そのうちの2つはこのモデルの初期のエスケープです。 私が知っていることから、softmaxレイヤーは最終出力用ですが、なぜそれほど多くあるのですか?他の2つのレイヤーの目的は何ですか?

5
CNNの顔/非顔検出のバイナリ検出に使用する損失関数は何ですか?
ディープラーニングを使用して顔/非顔のバイナリ検出をトレーニングします。どの損失を使用する必要がありますか、それはSigmoidCrossEntropyLossまたはHinge-lossであると思います。 それは正しいですが、ソフトマックスを2つのクラスだけで使用する必要があるのでしょうか?

2
CNNがFCレイヤーで終了するのはなぜですか?
私の理解では、CNNは2つの部分で構成されています。最初の部分(conv / poolレイヤー)は特徴抽出を行い、2番目の部分(fcレイヤー)は特徴から分類を行います。 完全に接続されたニューラルネットは最良の分類子ではないため(つまり、ほとんどの場合、SVMとRFによってパフォーマンスが向上します)、SVMやRFではなく、なぜCNNがFCレイヤーで終了するのですか?

1
バッチ正規化を注意深く行う必要がある理由の例の説明は何ですか?
私はバッチ正規化ペーパー [1]を読んでいて、正規化を慎重に行う必要がある理由を示すために、例を示すセクションが1つありました。正直なところ、この例がどのように機能するのか理解できません。私ができる限り彼らの論文を理解することに本当に興味があります。最初にここで引用させてください: たとえば、学習バイアスbを追加し、トレーニングデータに対して計算されたアクティベーションの平均を減算することによって結果を正規化する入力uを含むレイヤーを考えます。ここで、 はトレーニングセットのの値のセットであり、です。勾配降下工程は、の依存性は無視された場合はで、それが更新され、。次に、です。したがって、への更新の組み合わせx^=x−E[x]x^=x−E[x]\hat{x} = x − E[x]x=u+b,X={x1...N}x=u+b,X={x1...N}x=u+b, X =\{x_1...N \}xxxE[x]=∑Ni=1xiE[x]=∑i=1NxiE[x] = \sum^N_{i=1} x_iE[x]E[x] E[x] bbbb←b+Δ>bb←b+Δ>bb ← b + \Delta > bΔb∝−∂l∂x^Δb∝−∂l∂x^\Delta b \propto -\frac{\partial l}{\partial \hat{x}} u+(b+Δb)−E[u+(b+Δb)]=u+b−E[u+b]u+(b+Δb)−E[u+(b+Δb)]=u+b−E[u+b]u+(b+\Delta b)−E[u+(b+\Delta b)] = u+b−E[u+b]bbb その後の正規化の変更により、レイヤーの出力も変更されず、その結果、損失も発生しませんでした。 私はメッセージを理解していると思います。正規化を適切に行わなければ、それは悪いことです。彼らが使用している例がこれをどのように描写しているかは私にはわかりません。 困惑している点について具体的に説明していないと、誰かを助けるのは難しいことは承知しているので、次のセクションで、説明について混乱していることを説明します。 私の混乱のほとんどは表記法かもしれないと思うので、はっきりさせておきます。 まず、筆者を混乱させるものの1つは、著者がネットワーク内にユニットを持つことの意味と、アクティベーションとは何かです。通常、アクティベーションは次のように考えます。 x(l)=a(l)=θ(z(l))=θ(⟨w(l),x(l−1)⟩+b(l))x(l)=a(l)=θ(z(l))=θ(⟨w(l),x(l−1)⟩+b(l)) x^{(l)} = a^{(l)} = \theta(z^{(l)}) = \theta( \langle w^{(l)}, x^{(l-1)} \rangle + …

2
CNNでフィルターサイズやストライドなどを選択しますか?
私はスタンフォード大学からのCS231N講義を見てきました。CNNアーキテクチャーのいくつかの問題に頭を抱えようとしています。私が理解しようとしているのは、畳み込みフィルターのサイズやストライドのようなものを選ぶための一般的なガイドラインがあるか、またはこれは科学というより芸術なのかということです。 私が理解しているプーリングは、主に何らかの形の翻訳不変性をモデルに誘導するために存在します。一方、歩幅のサイズの選び方については、よくわかりません。現在の層サイズを圧縮しようとすること、またはニューロンにより大きい受容野を達成しようとすることを除いて、他のガイドラインはありますか?これについて議論している良い論文や類似のものを知っている人はいますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.