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

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

2
フィルターとアクティベーションマップは、畳み込みニューラルネットワークでどのように接続されますか?
特定のレイヤーのアクティベーションマップは、そのレイヤーのフィルターにどのように接続されていますか?フィルターとアクティベーションマップの間でたたみ込み演算を行う方法については質問していません。これら2つが持つ接続の種類について質問しています。 たとえば、完全な接続を実行したいとします。特定のレイヤーにf個のフィルターとn個のアクティベーションマップがあります。次のレイヤーでf * n個のアクティベーションマップを取得すると、新しいレイヤーごとにアクティベーションマップの数が増加します。これは、私が想定している方法です。 または、各フィルターが1つのアクティベーションマップのみに接続されていると言うこともできます。この場合、フィルターの数はアクティベーションマップの数と等しくなり、すべてのレイヤーは同じ数のフィルターとアクティベーションマップを持ちます。これは私のネットワークの現在のアーキテクチャであり、うまく学習しているようです。 私の混乱の主な原因は、私がオンラインで見るconvnetsの図を見ていることです。それらのいくつかは、次のように、フィルターとアクティブ化マップの間に「完全な接続」 を持っています- 最初のレイヤーには、4つのアクティブ化マップと、おそらく2つのフィルターがあります。各マップは各フィルターで畳み込まれ、次のレイヤーに8つのマップが作成されます。素晴らしく見える。 しかし、ここには私には意味をなさないアーキテクチャがあります- 最初のレイヤーの6つのマップから2番目のレイヤーの16のマップにどのように進むのですか?6枚から16枚の地図を取得する方法は考えられますが、意味がありません。

3
畳み込みニューラルネットワークの最終Softmax層の前の非線形性
私は畳み込みニューラルネットワークを調査して実装しようとしていますが、この質問は一般に多層パーセプトロンに当てはまると思います。 ネットワークの出力ニューロンは、各クラスのアクティブ化を表しています。最もアクティブなニューロンは、特定の入力の予測クラスに対応しています。トレーニングのクロスエントロピーコストを検討するために、各ニューロンの活性化値が確率値として解釈されるように、ネットワークの最後にsoftmaxレイヤーを追加しています。 私の質問は、出力層のニューロンが非線形関数を入力に適用する必要がありますか?私の直感はそれが必要ではないということです: 入力場合番目の出力ニューロンはドット積であるX T θ IベクトルとX(前のレイヤからの)と重みがθ Iをそのニューロンため、iiixTθixTθix^T\theta_ixxxθiθi\theta_i シグモイドやReLUのような単調な非線形関数を使用する場合 次いで、より大きな活性化出力は、依然として最大に対応するように非線形関数が予測を変更しないであろうこのような観点から、。xTθixTθix^T\theta_i この解釈に何か問題がありますか?出力の非線形性を必要とする、見落としているいくつかのトレーニング要素はありますか? max(0,xTθi)max(0,xTθi)\max(0,x^T\theta_i) 編集 答えが基本的に「依存する」であったカレルの答えを参照して、ここに私のネットワークと疑問のより詳細な説明があります: N個の非表示レイヤーがあり、出力レイヤーがクラスを表すニューロンのセットの単なるソフトマックスレイヤーであるとします(したがって、期待される出力は、入力データが各クラスに属する確率です)。最初のN-1層に非線形ニューロンがあると仮定すると、N番目の隠れ層で非線形ニューロンと線形ニューロンを使用することの違いは何ですか?

1
畳み込みニューラルネットワークのトレーニング
現在、畳み込みニューラルネットワークを使用して顔を認識する顔認識ソフトウェアに取り組んでいます。私の測定値に基づいて、トレーニング中の時間を節約するために、畳み込みニューラルネットワークが重みを共有していることを集めました。しかし、畳み込みニューラルネットワークで使用できるように、逆伝播をどのように適応させるのでしょうか。逆伝播では、これに似た式を使用して重みをトレーニングします。 New Weight = Old Weight + LEARNING_RATE * 1 * Output Of InputNeuron * Delta ただし、畳み込みニューラルネットワークでは重みが共有されているため、各重みは複数のニューロンで使用されるので、どのニューロンを使用するかをどのように決定しOutput of InputNeuronますか? つまり、重みは共有されているので、重みをどれだけ変更するかをどのように決定すればよいのでしょうか。

2
たたみ込み層の複数のフィルターは、トレーニング中に同じパラメーターを学習しませんか?
私が学んだことに基づいて、CNNのConv Layerで複数のフィルターを使用して、さまざまな特徴検出器を学習します。しかし、これらのフィルターは同様に適用される(つまり、スライドして入力の領域に乗算する)ため、トレーニング中に同じパラメーターを学習するだけではないでしょうか。したがって、複数のフィルターを使用すると冗長になりますか?

3
CIFAR-10は60%を超える精度を得ることができない、Tensorflowバックエンドを使用するKeras [終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新することがありますので、話題のクロス検証済みのため。 昨年休業。 CIFAR-10データセットで15エポック後にトレーニングを行うと、検証損失が減少せず、1.4程度に留まるようになります(60%の検証精度)。トレーニングセットをシャッフルし、255で割って、float32としてインポートしました。Conv2Dレイヤーにドロップアウトがある場合とない場合の両方で、多数のアーキテクチャーを試しましたが、何も機能しないようです。同じアーキテクチャは、MNISTのテストセットで99.7%の精度を達成します。以下のアーキテクチャをご覧ください。 (注:過剰適合を防ぐために、Adamオプティマイザーのドロップアウトを増やし、学習率を上げたり下げたりしてみましたが、これはすべて過剰適合を防ぐことですが、トレーニングとテストセットの両方で約60%の同様の低い精度になっています)。 with tf.device('/gpu:0'): tf.placeholder(tf.float32, shape=(None, 20, 64)) #placeholder initialized (pick /cpu:0 or /gpu:0) seed = 6 np.random.seed(seed) modelnn = Sequential() neurons = x_train_reduced.shape[1:] modelnn.add(Convolution2D(32, 3, 3, input_shape=neurons, activation='relu', border_mode='same')) modelnn.add(Convolution2D(32, 3, 3, activation='relu', border_mode='same')) modelnn.add(MaxPooling2D(pool_size=(2, 2))) modelnn.add(Dropout(0.2)) modelnn.add(Convolution2D(64, 3, 3, activation='relu', border_mode='same')) modelnn.add(Convolution2D(64, 3, 3, …

1
減量減量とは何ですか?
私はディープラーニングから始めて、答えが見つからなかった、おそらく適切に検索できなかったという質問があります。私はこの答えを見ましたが、重量減衰損失とは何か、そしてそれが損失関数とどのように関連しているかはまだはっきりしていません。

2
たたみ込みニューラルネットワークは、異なるサイズの入力画像として使用できますか?
私は画像認識のための畳み込みネットワークに取り組んでおり、さまざまなサイズの画像を入力できるかどうかは疑問に思っていました(ただし、それほど大きくはありません)。 このプロジェクト:https : //github.com/harvardnlp/im2markup 彼らが言う: and group images of similar sizes to facilitate batching したがって、前処理を行った後でも、画像のサイズは異なります。これは、式の一部を切り取らないため意味があります。 異なるサイズの使用に問題はありますか?ある場合、どのようにこの問題に取り組むべきですか(式がすべて同じ画像サイズに収まらないため)? どんな入力でも大歓迎です

1
ニューラルネットワークは通常、トレーニング中に「キックイン」するのにしばらく時間がかかりますか?
バックプロパゲーションを使用して、分類用のディープニューラルネットワークをトレーニングしようとしています。具体的には、Tensor Flowライブラリを使用して、画像分類に畳み込みニューラルネットワークを使用しています。トレーニング中に私は奇妙な行動を経験しており、これが典型的であるのか、それとも私が何か間違ったことをしているのかと思っています。 したがって、私の畳み込みニューラルネットワークには8つのレイヤーがあります(5つの畳み込み、3つが完全に接続されています)。すべての重みとバイアスは、小さな乱数で初期化されます。次に、ステップサイズを設定し、Tensor FlowのAdam Optimizerを使用して、ミニバッチでトレーニングを進めます。 私が話している奇妙な振る舞いは、私のトレーニングデータの最初の約10ループでは、トレーニング損失は一般に減少しないということです。ウェイトは更新されていますが、トレーニングロスはほぼ同じ値のままで、ミニバッチ間で上昇または下降する場合があります。しばらくこのままで、損失は減らないという印象を常に持っています。 その後、突然、トレーニングロスが劇的に減少します。たとえば、トレーニングデータの約10ループ内で、トレーニングの精度は約20%から約80%になります。それ以降、すべてがうまく収束します。トレーニングパイプラインを最初から実行するたびに同じことが起こります。以下は、実行例を示すグラフです。 だから、私が疑問に思っているのは、これがディープニューラルネットワークのトレーニングによる通常の動作であり、「キックイン」に時間がかかるかどうかです。それとも、この遅延を引き起こしている何か間違っていることがあるのでしょうか? どうもありがとう!

1
CNNの畳み込み演算子の数を決定する方法は?
オブジェクト分類などのコンピュータービジョンタスクでは、畳み込みニューラルネットワーク(CNN)を使用して、ネットワークが魅力的なパフォーマンスを提供します。しかし、畳み込みレイヤーでパラメーターを設定する方法がわかりません。たとえば、グレースケール画像(480x480)では、最初のたたみ込み層はのようなたたみ込み演算子を使用できます11x11x10。ここで、10はたたみ込み演算子の数を意味します。 問題は、CNNの畳み込み演算子の数をどのように決定するかです。

4
ニューラルネットワークとディープラーニングの違い
ニューラルネットワークとディープラーニングの違いに関しては、より多くのレイヤーが含まれている、大規模なデータセット、強力なコンピューターハードウェアなど、複雑なモデルのトレーニングを可能にするいくつかの項目をリストできます。 これらに加えて、NNとDLの違いに関する詳細な説明はありますか?

2
WaveNetは拡張された畳み込みではありませんか?
最近のWaveNetの論文では、著者はモデルを拡張された畳み込みの層が積み重なっていると言及しています。彼らはまた、「通常の」畳み込みと拡張された畳み込みの違いを説明する次のチャートを作成します。 通常の畳み込みは次のようになります。 これは、フィルターサイズが2でストライドが1の畳み込みで、4層で繰り返されます。 次に、モデルで使用されるアーキテクチャを示します。これは、拡張畳み込みと呼ばれます。こんな感じです。 彼らは、各層の膨張が(1、2、4、8)増加していると言います。しかし、私にとってこれは、フィルターサイズが2でストライドが2の通常の畳み込みのように見え、4つのレイヤーで繰り返されます。 私が理解しているように、フィルターサイズが2、ストライドが1、拡張が(1、2、4、8)の拡張畳み込みは次のようになります。 WaveNetダイアグラムでは、どのフィルターも使用可能な入力をスキップしません。穴はありません。私の図では、各フィルターは(d-1)の利用可能な入力をスキップします。これは、拡張が機能しないことになっていますか? だから私の質問は、次の命題のどれが(もしあれば)正しいですか? 拡張された畳み込みや定期的な畳み込みが理解できません。 Deepmindは実際には拡張された畳み込みを実装していませんが、ストライドされた畳み込みを実装していましたが、拡張という単語を誤用していました。 Deepmindは拡張された畳み込みを実装しましたが、チャートを正しく実装しませんでした。 TensorFlowコードを十分に理解していないため、コードが正確に何をしているのかを理解できませんが、この質問に答えられるコードが含まれているStack Exchangeに関連する質問を投稿しました。

3
たたみ込みニューラルネットワーク(CNN)では、画像をたたみ込むときに、ドット積または要素ごとの乗算の合計を使用する演算ですか?
以下の例は、deeplearning.aiの講義から抜粋したもので、結果は要素ごとの積(または「要素ごとの乗算」)の合計であることを示しています。赤い数字はフィルターの重みを表しています。 (1 ∗ 1 )+ (1 ∗ 0 )+ (1 ∗ 1 )+ (0 ∗ 0 )+ (1 ∗ 1 )+ (1 ∗ 0 )+ (0 ∗ 1 )+ (0 ∗ 0 )+ (1 ∗ 1 )=1+0+1+0+1+0+0+0+1=4(1∗1)+(1∗0)+(1∗1)+(0∗0)+(1∗1)+(1∗0)+(0∗1)+(0∗0)+(1∗1)=1+0+1+0+1+0+0+0+1=4(1*1)+(1*0)+(1*1)+(0*0)+(1*1)+(1*0)+(0*1)+(0*0)+(1*1) = 1+0+1+0+1+0+0+0+1 = 4 ただし、ほとんどのリソースでは、使用されているのはドット積であるとしています。 「…ニューロンの出力をとして表すことができます。ここで、はバイアス項です。つまり、bがバイアス項である場合、y = f(x * w)によって出力を計算できます。つまり、入力と重みのベクトルのドット積を実行し、バイアス項を追加してロジットを生成し、変換関数を適用することにより、出力を計算できます。」 ブドゥマ、ニキル; ロカスシオ、ニコラス。ディープラーニングの基礎:次世代のマシンインテリジェンスアルゴリズムの設計(p。8)。O'Reilly Media。キンドル版。 …

1
相互に排他的でないカテゴリを分類できる深層学習モデル
例:仕事の説明に「英国のJavaシニアエンジニア」という文があります。 私は2つのカテゴリとして、それを予測することは、深い学習モデルを使用したい:English とIT jobs。従来の分類モデルを使用する場合softmax、最後のレイヤーで機能を持つ1つのラベルのみを予測できます。したがって、2つのモデルのニューラルネットワークを使用して、両方のカテゴリで「はい」/「いいえ」を予測できますが、さらに多くのカテゴリがあると、コストがかかりすぎます。では、2つ以上のカテゴリを同時に予測するためのディープラーニングまたは機械学習モデルはありますか? 「編集」:従来のアプローチによる3つのラベルでは、[1,0,0]によってエンコードされますが、私の場合、[1,1,0]または[1,1,1]によってエンコードされます 例:3つのラベルがあり、文がこれらすべてのラベルに収まる場合。したがって、softmax関数からの出力が[0.45、0.35、0.2]である場合、3つのラベルまたは2つのラベルに分類する必要がありますか、それとも1つにすることができますか?それを行うときの主な問題は、1、2、または3つのラベルに分類するための適切なしきい値は何ですか?
9 machine-learning  deep-learning  natural-language  tensorflow  sampling  distance  non-independent  application  regression  machine-learning  logistic  mixed-model  control-group  crossover  r  multivariate-analysis  ecology  procrustes-analysis  vegan  regression  hypothesis-testing  interpretation  chi-squared  bootstrap  r  bioinformatics  bayesian  exponential  beta-distribution  bernoulli-distribution  conjugate-prior  distributions  bayesian  prior  beta-distribution  covariance  naive-bayes  smoothing  laplace-smoothing  distributions  data-visualization  regression  probit  penalized  estimation  unbiased-estimator  fisher-information  unbalanced-classes  bayesian  model-selection  aic  multiple-regression  cross-validation  regression-coefficients  nonlinear-regression  standardization  naive-bayes  trend  machine-learning  clustering  unsupervised-learning  wilcoxon-mann-whitney  z-score  econometrics  generalized-moments  method-of-moments  machine-learning  conv-neural-network  image-processing  ocr  machine-learning  neural-networks  conv-neural-network  tensorflow  r  logistic  scoring-rules  probability  self-study  pdf  cdf  classification  svm  resampling  forecasting  rms  volatility-forecasting  diebold-mariano  neural-networks  prediction-interval  uncertainty 

3
セマンティックセグメンテーションの損失関数
技術用語の誤用を謝罪します。私は、畳み込みニューラルネットワーク(CNN)によるセマンティックセグメンテーションのプロジェクトに取り組んでいます。タイプEncoder-Decoderのアーキテクチャを実装しようとしているため、出力は入力と同じサイズです。 ラベルはどのようにデザインしますか?どの損失関数を適用する必要がありますか?特にクラスの不均衡が激しい状況では(ただし、クラス間の比率はイメージごとに異なります)。 問題は2つのクラス(対象オブジェクトと背景)を扱います。Kerasをtensorflowバックエンドで使用しています。 これまでのところ、予想される出力をピクセル単位のラベリングを適用して入力画像と同じ次元になるように設計しています。モデルの最終層には、ソフトマックスアクティベーション(2つのクラスの場合)またはシグモイドアクティベーション(ピクセルがオブジェクトクラスに属する確率を表すため)があります。次のタイプのタスクに適した目的関数の設計に問題があります。 function(y_pred,y_true)、 Kerasとの合意による。 関係するテンソルの寸法(モデルの入力/出力)を具体的に示してください。どんな考えや提案も大歓迎です。ありがとうございました !

2
画像分類のための非正方形画像
ワイド画像のデータセットがあります:1760x128。私はチュートリアルと本を読みましたが、それらのほとんどは入力画像が正方形である必要があると述べており、そうでない場合は、すでに訓練された(正方形の画像で)cnnsで訓練するために正方形に変換されます。正方形以外の画像に対してcnnをトレーニングする方法はありますか、またはパディングとして別のオプションを探す必要がありますか?

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