フィードバック付き同期インパルスニューラルネットワークのバリアント

警告



私はあなたに警告します、現時点での推論は純粋に理論的です。 しかし、それは非常に美しい理論です。 または私は夢中になりますか。 私の推論についてのあなたの意見は興味深いです-実際の実装を始める価値はありますか?

率直に言って、さらにすべての推論が生まれた理由は、私が悪いアイデアの1つであるテトリスを単独でプレイするニューラルネットワークを教えることに成功しなかったからです。 教師とネットワークを学習することは、長い間非現実的です。なぜなら、 先生は私であり、テトリスで人物を動かすための明確な正しい選択肢はありません。 ネットワークを訓練するための遺伝的アルゴリズムが適用されました。 私の人口が進化と自然選択の仮想プロセスの日に学んだ最大のことは、落下する数字を3列に並べることです(実際、彼女は数字を「垂直」よりも「水平」にするように回転することを学びましたが、今では数字を回転させる方法を学びます行が削除されるように-それは不可能でした)。



古典的なニューラルネットワーク(パーセプトロンなど)について好きではないこと



原則として、ニューラルネットワークのさまざまなアプリケーションを検討する場合、パーセプトロンなどのアナログニューラルネットワークの使用を意味します。

このようなニューラルネットワークは、実際の生物から最も表面的な形と本質だけを取り入れました。 飛行機は鳥の翼のアイデアを取り入れたようです。 それらは完全に異なる方法で使用されますが(同じ目的のため)。 実際、異なるパーセプトロンのバリエーションは、同じ非線形関数y = k1 * f(k2 * f(...)+ k3 * f(....)+ ...)の合計の非線形関数であり、学習アルゴリズムは単に値を選択します係数k。

実際のニューラルネットワークと人工的なニューラルネットワークの違いが大きすぎるため、ネットワークをトレーニングするためのさまざまな代替方法を考案する必要があります。 当然のことながら、「エラーの逆伝播の方法による」トレーニングネットワークは、最も純粋な形で「教師なしのトレーニング」が存在しないように、自然界のどこにもありません。

より妥当なニューラルネットワークを実装し、実験してみたいと思います。

「私の」ニューラルネットワークの機能の基本原理





神経科学者が実際のニューラルネットワークの機能について現在知っていることに関する私の知識に従って、基本原則は次のようになります。

  1. パルス形式の情報の送信
  2. 情報のコーディング-周波数(振幅が変調されている場合があります)
  3. 新しいシナプス接続の作成による自己組織化機能
  4. 指定された基準に従って学習する能力
  5. 遺伝的アルゴリズムによる最適化のためにいくつかのネットワークパラメーターを使用する機能
  6. 実ネットワークの3種類の既知のメモリ(短期、中期、長期)をすべて実装する機能




ポイントを説明します。

1.パルス形式の情報の送信


私は誰もがこれを知っていると思います-生きているニューロン間の信号はパルスの形で送信されます。

2.周波数コーディング情報


受容体からの信号の強度は、さらに、生きているニューラルネットワークでは、パルスの周波数によってエンコードされます。 たとえば、舌の味覚が強いほど、対応する受容体からの衝動が頻繁に発生します。 これらのインパルスの振幅は、刺激の強度に依存しません(ただし、神経系の「疲労」に依存します)。

つまり ニューロン自体に加えて、受容体およびいわゆる「化学シナプス」は、ニューラルネットワークの重要な部分です。 受容体はADCのアナログであり、効果の強度は特定の周波数のパルスにエンコードされます。 化学シナプスはDACに類似しており、パルスの周波数に応じて、血管を拡張または収縮させるなど、多かれ少なかれ異なる物質を分泌します。 ここで、ADCとDACという用語はまったく正確ではなく、AFCとChAP(アナログ周波数および周波数アナログコンバーター)と言う必要があります。

3.自己組織化して新しいシナプス接続を作成する機能


生体では、新しいシナプス接続が絶えず作成されていることが知られています。 私たちの国のニューロンの数は、自然から与えられる量であり、「成長しなくなります」が、脳はシナプス接続の数を増やすことができます。 さらに、これらの接続が表示される場所と場所は事前に指定されていません。 特に、これはメモリのメカニズムの1つです。

4.指定された基準に従って学習する能力


動物が試行錯誤によって学習すると主張する人はいません。 これは、教師と一緒に学ぶことと教師なしで学ぶことのクロスです。 実際、教師は特定の行動の効果です。 発明されたニューラルネットワークは自己学習できるはずです。 いくつかの基準はもちろん事前定義されていますが、非常に一般的な基準のみです。 本能のようなもの。

5.遺伝的アルゴリズムによる最適化のためにいくつかのネットワークパラメータを使用する機能


遺伝的記憶は存在することが知られています。 少なくとも、出生時から肺を制御することができます。 呼吸する。 これは、教師の有無にかかわらず学習しません。 これは遺伝的記憶です。 ネットワークは、いくつかの基本情報を子孫に送信できる必要があります。

6.実ネットワークの3種類の既知のメモリすべてを実装する機能-短期、中期、長期


ここでは、瞬間記憶もあり、最大1秒持続すると言わなければなりません。 しかし、インスタントメモリーは受容体ニューロンのメモリーであり、設計されたネットワークと特別な関係はありません。

ただし、3つの主要なタイプのメモリを実装する必要があります。

短期記憶(人間の場合-数十秒)-ネットワーク内のフィードバックの存在、およびニューロンが閉じたサイクルを形成するため、パルスが「円形に」移動します。

中期記憶(人間の場合-数日)-衝動の繰り返し通過によるシナプス結合の強化による。 このタイプのメモリは、さまざまなタイプの学習を行う古典的な人工ニューラルネットワークでも実現されます。

長期記憶(人間の場合-長期間、場合によっては生涯)-新しいシナプス接続の形成と、以前に使用されていないニューロンの関与による。

ROMの一種である超長期の「消えない」メモリがあるという理論がまだあります。 つまり 決して忘れられない思い出。 おそらく、そのメカニズムは、シナプス接続を優先するときのニューロンの内部構造の変化に関連しています。 それに「追加のアンプ」を接続します。これは二度と削除されません。 簡単にするために、超長期記憶なしで実行できます。



ネットワークの一般的なスキーム



一般的なネットワーク操作アルゴリズムは次のとおりです。

1.初期化。 ニューロンのみがあります。 接続はありません。

2.入力としていくつかの(任意の)ニューロンを選択します。 それらは常に入力信号を提供します(周波数コード化)。

3.週末としていくつかの(任意の)ニューロンを選択します。 それらから常に出力を削除します。

4.ループ内:

4.1。 ネットワークの別のサイクル(パルスの送信)。

4.2。 新しい関係を作成する必要性を確認し、必要に応じて作成します。

4.3。 未使用のリンクを削除する必要性とその削除を確認します(使用するリソースを削減します)。



徐々に、新しいシナプス接続が表示され、いくつかの情報が出口に届きます。



ネットワークが同期と呼ばれる理由を説明すると便利です。

同期操作では、ニューロンの出力で値を計算しますが、現時点では、出力を新しい状態に設定するのではなく、覚えているだけです。 すべてのニューロンを処理した後、コマンドを実行して、すべてのニューロンの出力に新しい値を設定します。

非同期操作-ニューロンの出力で、計算後に新しい値を設定します。

原則として、非同期ネットワークはより現実に近いものです。 しかし実際には、それらをハードウェアでのみ実装するのが理にかなっています。 各ニューロンが独自の計算ユニットを持っている場合。



パルスニューラルネットワークトレーニング





そのため、前の段階で作成したネットワークを立ち上げました。 彼女はいくつかの混乱した情報を提供し始めました。 そして、とにかく私たちはまだ言うことができません-私たちは彼女に何を望んでいます。 このようなニューラルネットワークをトレーニングする方法は?

ここには3つの方法があります。それは、教師と一緒に学ぶこと、教師なしで学ぶことの類似物であり、組み合わせたものは「自分に対する教師」です。

接続パラメーターの調整と新しい接続の出現により、ネットワークの内部自己学習が自動的かつ継続的に行われることに注意してください。

だから、そのようなネットワークを訓練する方法。

教員養成


教師は、ネットワークに適切に動作するかどうかを理解させることができます。 彼女から受け取りたい出力を生成しますか。 関数の形で実装できますが、その近似アルゴリズムは非常に単純です。

パラメーター-教師の感情。 パラメータの範囲は-1〜1です。-1=非常に悪い、1 =非常に良い、0 =評価なし。

すべての接続に対して、接続の重みW = W + W *教師の感情* kを設定します。ここで、kは学習係数です(たとえば、遺伝的に調整できます)。

それだけです

画像

したがって、TEACHER EMOTIONパラメーターの値が正の場合、結合が強化され、強い結合(正しい結果につながる)がさらに強化されます。 TEACHER EMOTIONパラメーターの値が負の場合、結合が弱くなり、強い結合(間違った結果につながる)がさらに弱くなります。

教師なし学習


この概念はまだ完全には開発されていませんが、注意事項があります。 興味深い場合は、次の記事で説明します。

先生自身


この自己学習の方法は、しばらくの間教師とネットワークをトレーニングした後に可能になります。 簡単に実装されます。

ネットワークの追加出力を作成し、INTERNAL_EMOTIONと呼び、TEACHER_EMOTIONが移動する同じ入力にフィードします(それらを要約します)。 そして、教師と一緒に学習する過程で、ネットワークの内部感情を監視します。 ネットワークが正しいアクションを実行し、内部の感情がなかった場合、教師が+0.5(肯定的な感情)の信号を発するとします。 ネットワークが正しいアクションを実行した場合、教師は信号0を出しますが、ネガティブな感情があり、ネットワークが正しいアクションを実行し、肯定的な感情があった場合、教師は信号1(非常に良い)を与えます。 つまり さらに、「正しい行動は良い内部感情です」というルールでネットワークをトレーニングします。

EXTERNAL_EMOTION出力を、教師の感情が提供された同じ入力に接続し、同時に「良いことと悪いこと」を教えたので、ネットワークは教師の参加なしでも理論的にそれ以上の学習を管理します。

画像



これで入門編は終わりです。

これらの考えが誰にとっても興味深いものである場合、詳細がさらに提供されます。



All Articles