問題タブ [conv-neural-network]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
neural-network - Region CNN (R-CNN) を使用して ImageNet モデルをトレーニングしようとしています
caffeで数か月作業した後、自分のモデルをうまくトレーニングすることができました。たとえば、私自身のモデルよりもさらに、1000 個のクラスで ImageNet をトレーニングできました。
現在、私のプロジェクトでは、関心のあるクラスの領域を抽出しようとしています。その後、Fast R-CNNのデモをコンパイルして実行しましたが、正常に動作しましたが、サンプル モデルには 20 個のクラスしか含まれておらず、たとえばすべてのクラスなど、さらに多くのクラスが必要です。
ImageNetのバウンディング ボックスと実際の画像を既にダウンロードしました。
今、私は空白になりました。次のステップを理解できず、その方法を説明したドキュメントもありません。私が見つけた唯一のことは、INRIA 人物モデルをトレーニングする方法であり、データセット + 注釈 + python スクリプトを提供します。
私の質問は次のとおりです。
- 見逃したチュートリアルやガイドはありますか?
- 画像を分類してバウンディング ボックスを抽出できる 1000 クラスでトレーニングされたモデルは既にありますか?
事前にどうもありがとうございました。
よろしく。
ラファエル。
machine-learning - Caffe での畳み込みカーネルの可視化
ここでは Caffe の例に従って、ConvNet から畳み込みカーネルをプロットしています。以下にカーネルの画像を添付しましたが、例のカーネルとはまったく異なります。私は例に正確に従っていますが、問題が何であるか知っている人はいますか?
私のネットは一連のシミュレートされた画像 (2 つのクラス) でトレーニングされており、ネットのパフォーマンスはかなり良好で、約 80% のテスト精度です。
neural-network - このオートエンコーダー ネットワークを適切に機能させることができません (畳み込みレイヤーと maxpool レイヤーを使用)
オートエンコーダーネットワークは、通常の分類子 MLP ネットワークよりも複雑なようです。ラザニアを使用して何度か試みた後、再構成された出力で得られるものはすべて、入力数字が実際に何であるかを区別せずに、 MNISTデータベースのすべての画像のぼやけた平均によく似たものです。
私が選択したネットワーク構造は、次のカスケード層です。
- 入力レイヤー (28x28)
- 2D 畳み込み層、フィルター サイズ 7x7
- 最大プーリング層、サイズ 3x3、ストライド 2x2
- 密な (完全に接続された) 平坦化層、10 単位 (これがボトルネックです)
- 高密度 (全結合) レイヤー、121 ユニット
- レイヤーを 11x11 に変形
- 2D 畳み込み層、フィルター サイズ 3x3
- 2D アップスケーリング レイヤー係数 2
- 2D 畳み込み層、フィルター サイズ 3x3
- 2D アップスケーリング レイヤー係数 2
- 2D 畳み込み層、フィルター サイズ 5x5
- 機能最大プーリング (31x28x28 から 28x28 へ)
すべての 2D 畳み込み層には、バイアスが解かれ、シグモイド活性化と 31 個のフィルターがあります。
すべての全結合層にはシグモイド活性化があります。
使用される損失関数は二乗誤差であり、更新関数はadagrad
です。学習用のチャンクの長さは、1000 エポックを掛けた 100 サンプルです。
完全を期すために、次のコードを使用しました。
このネットワークを改善して、合理的に機能するオートエンコーダーを取得する方法についてのアイデアはありますか?
theano - RELUアクティベーション関数を使用する際の重みの初期化方法
Convネットワークを作りたい、RELU活性化機能を使いたい。誰かが重みを初期化する正しい方法の手がかりを教えてください (私は Theano を使用しています)
ありがとう
neural-network - Caffe でレイヤーを組み合わせて使用する場合の形状の不一致
畳み込みニューラル ネットワーク (CNN) のトレーニングに Caffe ライブラリを使用しています。ただし、concat レイヤーを使用して 2 つの畳み込みレイヤーからの出力を結合してから、inner_product レイヤーに適用すると、次のエラーが発生します。
私の知る限り、BVLC_GoogLeNetとまったく同じ方法で連結レイヤーを使用しています。concat レイヤーは、名前の下のpastebincombined
にある私の train.prototxt にあります。入力ブロブのサイズは で256x8x7x24
、Caffe のデータ形式は ですbatch_size x channels x height x width
。pycaffe インターフェイスとコンソールの両方を使用してトレーニングを試みました。同じエラーが発生します。以下は、コンソールを使用したトレーニングのコードです。
このエラーの意味は何ですか? そして、それはどのように解決できますか?
アップデート
コメントで述べたように、ログにはエラー以外は何も含まれていません。エラーのスタック トレースは次のとおりです。
私のソルバーとコードは、ネットワークに沿って 1 つの「パス」のみを使用して、つまり CONCAT レイヤーを使用せずに、まったく同じ CNN をトレーニングする場合に正常に機能することにも注意してください。
neural-network - Neural Net ConvNetJs - 収束できない理由
まず... これは ConvNetJs の問題ではなく、ニューラル ネットワークの理解の問題だと思います。
与えられた 2 つの乱数を加算した結果が偶数かどうかを検出します。
例:
[4,6] = 真
[3,4] = 偽
私のセットアップ:
次に、10,000回の反復で(乱数を使用して)トレーニングしました。近づくことはありません。せいぜい約 56% の精度です。
同じセットアップを使用しても問題は異なります。
最初の数値が 2 番目の数値よりも大きい。1,000 回未満の反復で 99% の精度を達成します。
私が試したこと: より多くのレイヤー より多くのニューロン svm vs softmax
これが「分類できない」問題なのかどうか疑問に思っています。
matrix - TypeError: タイプ TensorType(float64, vector) (Variable Subtensor{int64:int64:}.0) をタイプ TensorType(float64, matrix) に変換できません
私は theano とその LeNet チュートリアルを使用して、ストリート ビューの Google 画像のデータセットで CNN をトレーニングしています。
データセットをロードします。
寸法を印刷します:
次に、チュートリアルのようにします:
印刷された結果:
ここで問題が発生します (これは定義された最初の関数であり、次は検証とトレーニングです。名前が混乱しないようにするためであり、同様のトレーニング関数と検証関数ですべてがうまくいったとは思わないでください):
モデルが犯した間違いを計算する関数を作成する
正確には、次の行にエラーがあります。
エラー自体は、(afaiu) smth を行列に変換しようとしていると言っています。これはどこで起こっているのだろうか?
私の知る限り、y と test_set_y の次元は一致しています。私のコードでは、どちらも 1D ベクトルです。 スライスによってエラーが発生するのはなぜですか? スライスはマトリックスを作成しますか? さらに重要なことに、この問題を解決するにはどうすればよいですか? 前もって感謝します!
よろしくお願いします。
deep-learning - 超新星発見のためのCNN(ニューラルネットワーク)
私は物理学と CS を専攻している学生です。私の仕事の 1 つは、超新星を見つけることです。超新星の発見は退屈で大変です。現在と以前の画像を比較すると、画像上に明るい点が見られる場合があり、それが超新星である可能性があります。このように、
画像にはノイズが多く、機器の不安定性や他の光が錯覚を起こすため、常に多くのゴーストスポットが発生します。
しかし、超新星にはいくつかの明らかな特徴があり、常に恒星の周りに現れます。光の形は円です。etc.すでにいくつかの従来の方法が使用されています。しかし、彼らは良いパフォーマンスを持っていません。
だからCNNでやってみる価値はあるのかな。CNN がうまく処理できるのは、どのような種類のデータですか?
ありがとう。
python - ラザニア 1D 畳み込みエラー
ラザニアを使用して CNN を構築しようとしていますが、119 個の機能変数があります。Lasagne を使用して MLP を正常に構築できましたが、次のコードを使用して (1D 畳み込みを使用して) 畳み込みレイヤーを追加しようとすると、エラーが発生します。私は何か間違ったことをしていますか?Lasagne の 1D 畳み込みはテストされましたか?
ファイル "/Users/adityanagarajan/anaconda/lib/python2.7/site-packages/lasagne/layers/dense.py"、63 行目、__init__ super(DenseLayer, self).__init__(incoming, **kwargs) ファイル" /Users/adityanagarajan/anaconda/lib/python2.7/site-packages/lasagne/layers/base.py"、35 行目、__init__ self.input_shape = incoming.output_shape ファイル"/Users/adityanagarajan/anaconda/lib/python2 .7/site-packages/lasagne/layers/base.py", line 49, in output_shape return self.get_output_shape_for(self.input_shape) File "/Users/adityanagarajan/anaconda/lib/python2.7/site-packages/lasagne /layers/conv.py"、237 行目、get_output_shape_for output_length = conv_output_length(input_shape[2]、IndexError: タプル インデックスが範囲外です