問題タブ [feed-forward]
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 - 入力層にバイアス ニューロンを含める必要がありますか?
私は疑問に思っていました:多層フィードフォワードニューラルネットワークでは、入力層にバイアスニューロンを含める必要がありますか?それとも、これは隠れ層でのみ役立ちますか? もしそうなら、なぜですか?
artificial-intelligence - OCRのフィードフォワードニューラルネットワークのトレーニング
現在、ニューラルネットワークについて学習しており、手書き文字を認識するようにトレーニングできるアプリケーションを作成しようとしています。この問題では、フィードフォワードニューラルネットワークを使用しており、1、2、または3つの異なる文字を認識するようにトレーニングすると機能するようです。しかし、ネットワークに3文字以上を学習させようとすると、40〜60%のエラー率で停滞します。
複数の層と少ない/多いニューロンで試しましたが、正しく理解できないようです。フィードフォワードニューラルネットワークがそれだけの情報を認識できるかどうか疑問に思っています。
いくつかの統計:
ネットワークタイプ:フィードフォワードニューラルネットワーク
入力ニューロン: 100(10 * 10)グリッドを使用して文字を描画します
出力ニューロン:再生成する文字の量
誰かが私のアーキテクチャで考えられる欠陥が何であるか知っていますか?入力ニューロンが多すぎませんか?フィードフォワードニューラルネットワークは文字の再認識ができませんか?
java - Java でのニューラル ネットワークの実装: トレーニングとバックプロパゲーションの問題
Java でフィードフォワード ニューラル ネットワークを実装しようとしています。NNeuron、NLayer、および NNetwork の 3 つのクラスを作成しました。「単純な」計算は問題ないように見えますが (正しい合計/アクティベーション/出力が得られます)、トレーニング プロセスに関しては、正しい結果が得られないようです。誰でも、私が間違っていることを教えてください。NNetwork クラスのコード全体は非常に長いので、問題の原因となっている部分を投稿します: [編集]: これは実際にはほとんどすべての NNetwork クラスです。
一部のメソッドの名前 (戻り値/型を含む) は、各レイヤーの合計 (各ニューロンの合計 (x_i*w_i)) を返す「this.getAllSums」、返す「this.getAllOutputs」など、一目瞭然です。各層の出力 (各ニューロンの sigmoid(sum)) と、i 番目の層の j 番目のニューロンを返す「this.getNeuron(i,j)」。
よろしくお願いします:)
neural-network - PyBrain net.activate からの結果を解釈する方法は?
分類のために PyBrain でネットワークをトレーニングし、特定の入力で発射する準備が整いました。しかし、私がするとき
さすがに「出力」は数値が出ますが、予測クラスラベルを直接求める方法はありますか?存在しない場合でも、「出力」の値をクラスラベルにマップするにはどうすればよいですか? ご協力ありがとうございました。
python - ニューラル ネットワークのバックプロパゲーション - Python
Python でニューラル ネットワークを実行するプログラムを作成しています。バックプロパゲーション アルゴリズムを設定しようとしています。基本的な考え方は、5,000 のトレーニング例を調べてエラーを収集し、シータをどの方向に移動する必要があるかを見つけてから、その方向に移動するというものです。トレーニングの例があります。次に、1 つの非表示レイヤーを使用し、次に出力レイヤーを使用します。ただし、移動する必要があるため、シータを正しく移動していないため、ここで勾配/微分/エラーが間違っています。今日はこれに 8 時間費やしましたが、何が間違っているのかわかりません。ご協力いただきありがとうございます!!
c++ - ニューラル ネットワークは sin x を学習しますが、cos x は学習しません
私は独自のニューラルネットを構築しましたが、奇妙な問題があります。
ネットは非常に単純なフィードフォワード 1-N-1 ネットであり、逆伝播学習が行われます。シグモイドは活性化関数として使用されます。
私のトレーニング セットは、[-PI, PI] と [0,1] スケーリングされた正弦値の間のランダムな値で生成されます (これは、「シグモイド ネット」が [0,1] とスケーリングされていない正弦関数の間の値のみを生成するためです)。 [-1,1] の間の値を生成します)。
そのトレーニング セットと、学習率 0.5 でネットを 1-10-1 に設定すると、すべてがうまく機能し、ネットは必要に応じて sin 関数を学習します。しかし.. COSINE 関数に対してまったく同じ方法ですべてを実行すると、ネットはそれを学習しません。隠れ層のサイズや学習率の設定はありません。
何か案は?何か不足していますか?
編集:私の問題は、このアプレットで見られるものと似ているようです。最初に重みに対して「より簡単な」何かが教えられない限り、正弦関数を学習しないようです(2次関数の1400サイクルなど)。アプレットの他のすべての設定は、最初のままにしておくことができます。したがって、正弦または余弦の場合、解を見つける前に、重みを少なくとも部分的に正しい方向にブーストする必要があるようです。どうしてこれなの?
python - Pybrainフィードフォワードニューラルネットワークトレーニングエラーが完全にスタック
やあみんな私は私のpybrainコードで少し助けが必要です。すべてが正常にロードされますが、最初にトレーニングした後、トレーニングエラーは減少しません。実際、それはちょうど13.3484055174でそこに留まっています。私は自分のコードを何度もチェックして他の例と比較してきましたが、一貫して同じ問題が発生します。また、隠しユニットの数、学習率、勢い、体重減少を無駄に変更しようとしました。パラメータを確認しましたが、[-1から1]で始まり、その後、〜240-250に膨れ上がります。なぜそれが機能しないのか誰かがわかるのだろうかと思っていました。私が見逃しているのは本当にシンプルな1ライナーだと確信しています。
私はkaggleの0〜9桁の分類データセットに取り組んでいます。私はすでにランダムフォレストを機能させていますが、このニューラルネットワークも機能させたいと思っています。どんな助けでも大歓迎です。
machine-learning - ゲーム チェッカー向けのニューラル ネットワークの理想的な入力
私はニューラル ネットワークの初心者で、フィード フォワード ニューラル ネットワークを設計して、ゲーム チェッカーのプレイ方法を学習しています。インプットとしてボードを与え、アウトプットで勝敗のチャンスを与える必要があります。しかし、チェッカー ボードを入力用の数字の列に理想的に変換するにはどうすればよいでしょうか? 32 の可能な正方形と、各正方形に 5 つの異なる可能性 (キングまたは白または黒のプレイヤーのピースとフリー ポジション) があります。各正方形の可能な値ごとに入力単位を指定すると、32 * 5 になります。別のオプションは次のとおりです。
この場合、入力の長さはちょうど 64 になりますが、どちらがより良い結果をもたらすかわかりません。
java - 人工ニューラル ネットワーク PSO トレーニング
PSO を使用してトレーニングしている FF ニューラル ネットワーク (分類問題に使用) に取り組んでいます。隠れ層は 1 つしかなく、その層のニューロンの量を変えることができます。
私の問題は、NN は線形分離可能な問題を非常に簡単に学習できるが、線形分離できない問題 (XOR など) を学習できるはずのように学習できないことです。
PSO が各粒子の誤差関数を最小化しようとしていることがわかるため (トレーニング セットの平均二乗誤差を使用)、私の PSO は正しく機能していると思います。
同様の(悪い)結果を持つシグモイドおよび線形活性化関数を使用してみました。バイアスユニットもあります(これもあまり役に立ちません)。
私が知りたいのは、この種の問題を引き起こす可能性のある間違ったことをしている可能性がある特定の何かがあるかどうか、またはエラーがどこにあるのかを調べる必要があるかどうかです。
現時点では少し迷っています
ありがとう
matlab - Matlab でのフィードフォワードネット モデルの作成
次のように機能するモデルを実装したいと思います。たとえば、1、2、3 などの 3 つの入力を取得し、0 から 1 (0 と 1 を含む) の数値である 1 つの出力を提供します。モデルはフィードフォワードネットです。最初は「トレーニング」します。入力と結果を取得し、トレーニングに基づいて、入力のみが与えられた場合に結果を返すことができます。 ,3 で結果: 0、2 回目は 2,3,4、結果: 0、3 回目は 3,4,5、結果: 1. 4 回目は 4,5,6 でしたが結果はありません。彼の知識とアルゴリズムに基づいて、彼は結果を出すでしょう。たとえば、0.45 としましょう。
私の問題は、入力のベクトルのサイズと結果のベクトルのサイズが等しくなければならないことです。そのため、結果のベクトルには、必要な要素が 1 つだけの場合に 3 つの要素が含まれている必要があります。したがって、すべての要素を同じにしました。意味: [1 1 1] または [0 0 0] を取得します (ネットワークを台無しにしていないことを願っています)。とにかく、これは私のモデルのコードです - うまく実装できましたか? よくわからないので...