AIに普遍的な機能を持たせるにはどうすればよいでしょうか?新しい研究: 寝かせる
ニューラル ネットワークは多くのタスクで人間を上回るパフォーマンスを発揮できますが、AI システムに新しい記憶を吸収するように依頼すると、以前に学習した内容を即座に忘れてしまう可能性があります。今回、新しい研究により、ニューラルネットワークが睡眠段階を通過し、この健忘症の予防に役立つ新しい方法が明らかになりました。
人工ニューラル ネットワークが直面する主な課題の 1 つは、「壊滅的な忘却」です。新しい仕事を学びに行くと、以前に学んだことを突然完全に忘れてしまう残念な傾向があります。
本質的に、ニューラル ネットワークによるデータの表現は、元のデータのタスク指向のデータ「圧縮」であり、新しく学習された知識が過去のデータを上書きします。
これは、人間のニューラル ネットワークと比較した現在のテクノロジーの最大の欠陥の 1 つです。対照的に、人間の脳は、新しいタスクを学習することができます。その寿命は、以前に記憶されたタスクを実行する能力には影響しません。その理由は完全にはわかっていませんが、人間の脳は学習ラウンドが睡眠に挟まれているときに最もよく学習することが長い研究で示されています。睡眠は明らかに、最近の経験を長期記憶バンクに組み込むのに役立ちます。
「記憶の再構成は、生物が睡眠段階を経る必要がある主な理由の 1 つである可能性があります」とカリフォルニア大学サンディエゴ校の計算神経科学者エリック・デラノイ氏は言う。
#AI も睡眠を学習できるのでしょうか?これまでの研究の中には、AI に睡眠をシミュレートさせることで壊滅的な健忘症に対処しようとしたものもあります。たとえば、ニューラル ネットワークが新しいタスクを学習するとき、インターリーブ トレーニングと呼ばれる戦略により、マシンが過去の知識を保持できるように、以前に学習した古いデータが同時にマシンに供給されます。このアプローチは以前、睡眠中の脳の働き、つまり常に古い記憶を再生する仕組みを模倣すると考えられていました。
しかし、科学者たちは、インターリーブトレーニングでは、何か新しいことを学習するたびに、古いスキルを学習するためにもともと使用していたすべてのデータをニューラルネットワークに供給する必要があるという仮説を立てていました。これには多くの時間とデータが必要なだけでなく、生物学的な脳が真の睡眠中に行うこととは異なるようです。生物には古いタスクを学習するために必要なすべてのデータを保持する能力も、時間もありません。寝ている間にすべてを再生します。
新しい研究で、研究者たちは壊滅的な物忘れの背後にあるメカニズムと、問題を防ぐ睡眠の有効性を分析しています。研究者らは、従来のニューラルネットワークを使用する代わりに、人間の脳に近い「スパイクニューラルネットワーク」を使用した。
人工ニューラル ネットワークでは、ニューロンと呼ばれるコンポーネントにデータが供給され、連携して顔の認識などの問題を解決します。ニューラル ネットワークは、シナプス (ニューロン間の接続) を繰り返し調整し、結果として生じる行動パターンがより適切に解決策につながるかどうかを確認します。時間が経つにつれて (継続的なトレーニング)、ネットワークは正しい結果を計算するのに最適なパターンを発見します。最後に、これらのモードをデフォルト モードとして採用します。これは、人間の脳の学習プロセスを部分的に模倣すると考えられています。
#この図は、抽象的なシナプス空間における記憶と、睡眠中と睡眠中以外のその進化を表しています。
人工ニューラル ネットワークでは、入力が変化するとニューロンの出力も連続的に変化します。対照的に、スパイキング ニューラル ネットワーク (SNN) では、ニューロンは、指定された数の入力信号の後でのみ出力信号を生成します。これは、実際の生物学的ニューロンの動作を忠実に再現するプロセスです。スパイキング ニューラル ネットワークはパルスをほとんど発しないため、一般的な人工ニューラル ネットワークよりも送信するデータが少なく、原理的に必要な電力と通信帯域幅が少なくなります。予想どおり、スパイク ニューラル ネットワークには、初期の学習プロセス中に壊滅的な忘却が発生するという特性があります。しかし、数回の学習ラウンドの後、一定期間が経過すると、セットは最初のタスクの学習に関与するニューロンが再活性化されます。これは、神経科学者が現在考えている睡眠プロセスに近いものです。
簡単に言うと、SNN を使用すると、以前に学習したメモリ トレースをオフライン処理スリープ中に自動的に再アクティブ化し、干渉することなくシナプスの重みを変更できます。 この研究では、強化学習を備えた多層 SNN を使用して、新しいタスクのトレーニングの期間と睡眠のような自律活動の期間をインターリーブすることで壊滅的な物忘れを回避できるかどうかを調査します。特に、この研究では、睡眠段階と同様に、新しいタスク中に強化学習を定期的に中断することで、壊滅的な物忘れを防止できることが示されました。 図 1A は、入力から出力までの信号をシミュレートするために使用されるフィードフォワード スパイキング ニューラル ネットワークを示しています。入力層 (I) と隠れ層 (H) の間にあるニューロンは教師なし学習 (報酬なし STDP を使用して実装) を受け、H 層と出力 (O) 層の間のニューロンは強化学習 (報酬付き STDP を使用して実装) を受けます。 STDP)。)。 教師なし学習により、隠れ層ニューロンは入力層のさまざまな空間位置からさまざまな粒子パターンを学習できますが、報酬 STDP により出力層ニューロンは検出された粒子に基づいて学習できます。入力レイヤー パーティクル パターン タイプのモーション決定。 #研究者らは、2 つの補完的な方法でネットワークをトレーニングしました。どちらのタスクでも、ネットワークは可能な限り多くの報酬を獲得することを目標に、報酬粒子パターンと罰粒子パターンを区別することを学習します。このタスクでは、確率 0.5 のパフォーマンスの尺度として、パターンの識別可能性 (ペナルティ パーティクルに対する消費された報酬の比率) が考慮されます。報告されたすべての結果は、異なるランダムなネットワーク初期化を用いた少なくとも 10 回の実験に基づいています。 トレーニング中と睡眠中のシナプスの重みのダイナミクスを明らかにするために、研究者らは次に「タスク関連」シナプス、つまり特定のタスクのトレーニング後の分布の上位 10% を追跡しました。シナプスを特定。最初にタスク 1 がトレーニングされ、次にタスク 2 がトレーニングされ、各タスクのトレーニング後にタスク関連のシナプスが特定されました。次に、トレーニング タスク 1 を再度継続しますが、睡眠時間とインターリーブします (インターリーブ トレーニング): T1→T2→InterleavedS,T1。タスク 1 - タスク 2 の連続トレーニングではタスク 1 が忘れられましたが、InterleavedS 後はタスク 1 が再学習され、タスク 2 も保持されました (図 4A および 4B)。 重要なのは、この戦略により、InterleavedS,T1 でのトレーニング後のシナプスの重みを、タスク 1 およびタスク 2 のみでのトレーニング後にタスク関連として特定されたシナプスの重みと比較できることです (図 4C)。 。タスク 1 のトレーニング後に形成されたタスク 1 関連のシナプスの分布構造 (図 4C、左上) は、タスク 2 のトレーニング後に破壊されました (中央上) が、InterleavedS、T1 トレーニング後に部分的に回復しました (右上)。タスク 2 トレーニング後のタスク 2 関連シナプスの分布構造 (中央下) は、タスク 1 トレーニング後 (左下) には存在しませんが、InterleavedS、T1 トレーニング後は部分的に保存されています (右下)。 この定性的パターンは、単一の試験内で明確に観察でき (図 4C、青いバー)、試験全体で一般化することもできる (図 4C、オレンジ色のワイヤー) ことに注意してください。したがって、sleep は、新しいシナプスをマージしながら、重要なシナプス # を保存できます。 図 4. 新しいタスクのトレーニングと睡眠を交互に繰り返すことで、新しいタスクに関連するシナプス情報の統合が可能になります。古いタスク情報。 「興味深いことに、睡眠中に人為的に記憶を再生して忘れないようにするために、初期の記憶に関連するデータを明示的に保存したわけではない」と研究の共著者であるサイード著者のパベル氏は述べた。サンダ氏は、チェコ科学アカデミーのコンピューターサイエンス研究所の計算神経科学者です。 壊滅的な物忘れを防ぐのに役立つ新しい戦略が発見されました。スパイクニューラルネットワークは、睡眠のような段階を経た後、両方のタスクを実行することができ、研究者らは、その戦略が古いタスクと新しいタスクに関連するシナプスパターンを保存するのに役立ったと考えています。 「私たちの研究は、生物学にヒントを得たソリューション開発の実用性を実証しています」と Delanois 氏は述べています。 研究者らは、彼らの発見がスパイクニューラルネットワークに限定されないことに注目しています。サンダ氏は、今後の研究で、睡眠に似た段階が「標準的な人工ニューラルネットワークにおける壊滅的な物忘れの克服」に役立つ可能性があることが示されたと述べた。 この研究は、11 月 18 日に PLOS Computational Biology 誌に掲載されました。 論文: 「睡眠は、結合シナプスの重み表現を形成することで、スパイクニューラルネットワークにおける壊滅的な物忘れを防ぐ」 #論文アドレス: https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010628
以上がAIに普遍的な機能を持たせるにはどうすればよいでしょうか?新しい研究: 寝かせるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Char Arrayは文字シーケンスをC言語で保存し、char array_name [size]として宣言されます。アクセス要素はサブスクリプト演算子に渡され、要素は文字列のエンドポイントを表すnullターミネーター「\ 0」で終了します。 C言語は、strlen()、strcpy()、strcat()、strcmp()など、さまざまな文字列操作関数を提供します。

Cスイッチステートメントでデフォルトに起因するエラーを回避するための戦略:定数の代わりに列挙を使用し、ケースステートメントの値を列挙の有効なメンバーに制限します。最後のケースステートメントでフォールスルーを使用して、プログラムが以下のコードを引き続き実行できるようにします。フォールスルーなしのスイッチステートメントの場合、エラー処理のためのデフォルトステートメントを常に追加するか、デフォルトの動作を提供します。

C言語に組み込みの合計機能はないため、自分で書く必要があります。合計は、配列を通過して要素を蓄積することで達成できます。ループバージョン:合計は、ループとアレイの長さを使用して計算されます。ポインターバージョン:ポインターを使用してアレイ要素を指し示し、効率的な合計が自己概要ポインターを通じて達成されます。アレイバージョンを動的に割り当てます:[アレイ]を動的に割り当ててメモリを自分で管理し、メモリの漏れを防ぐために割り当てられたメモリが解放されます。

デフォルトステートメントは、変数値がケースステートメントと一致しない場合にコードブロックが実行されることを保証するデフォルトの処理パスを提供するため、スイッチケースステートメントで重要です。これにより、予期しない動作やエラーが防止され、コードの堅牢性が向上します。

論理非操作者(!)には、括弧の横に優先順位があります。つまり、表現では、他のほとんどの演算子に先行します。優先順位を理解するには、暗記の暗記だけでなく、さらに重要なことに、複雑な表現での検出不可能なエラーを避けるために、その背後にある論理と潜在的な落とし穴を理解する必要があります。ブラケットを追加すると、表現の意図を明確にし、コードの明確さと保守性を向上させ、予期しない動作を防ぐことができます。

!X理解!Xは、C言語の論理的な非操作者です。 Xの値をブーリングします。つまり、虚偽の真の変化、trueへの誤った変更です。ただし、Cの真実と虚偽はブール型ではなく数値で表されていることに注意してください。非ゼロは真であると見なされ、0のみが偽と見なされます。したがって、!xは正の数と同じ負の数を扱い、真実と見なされます。

合計キーワードはC言語では存在せず、通常の識別子であり、変数または関数名として使用できます。しかし、誤解を避けるために、数学関連コードの識別子に使用しないようにすることをお勧めします。 array_sumやcalculate_sumなどのより記述的な名前を使用して、コードの読みやすさを向上させることができます。
