メインコンテンツへスキップ

ネスト学習:破滅的忘却への対処法

破滅的忘却は継続学習を難しくします。ネスト学習が複数の時間スケールを用いて、新しいタスクを学びながら既存の知識を維持する方法を見ていきます。
更新 2026年7月27日  · 11 分 読む

AIで探索

ChatGPTで開くClaudeで開くPerplexityで開く

ニューラルネットワークを学習させたことがあれば、optimizer.step() を何千回と呼び出してきたはずです。勾配を使ってモデルの重みを更新し、学習損失を減らす——たいていはそれで話は終わります。

しかしネスト学習は、オプティマイザを別の視点から見ることを求めます。Adam のような適応的オプティマイザを、それ自体が状態を進化させる学習プロセスとして解釈します。ネスト学習は、Google Research による NeurIPS 2025 論文「Nested Learning: The Illusion of Deep Learning Architectures」で提案されました。

この記事では、ネスト学習とは何か、その仕組みと重要性、そして Hope アーキテクチャがどのように実践へ落とし込むのかを解説します。これまでに Adam や SGD でモデルを学習させたことがあれば、十分についていけます。

要点

  • ネスト学習は Google Research による機械学習パラダイムで、1つのアーキテクチャを別個のオプティマイザで学習させるのではなく、異なる速度で学ぶ入れ子状の最適化問題の集合としてモデルを捉えます。
  • 主眼は破滅的忘却への対処です。新しいデータでファインチューニングすると、既存の知識が上書きされてしまう問題で、これが継続学習を難しくしている主因です。
  • 中核となる発想転換は、アーキテクチャとオプティマイザを同種のもの——異なる更新速度を持つ学習レベル——として扱うことです。これにより、新しい情報は高速に更新されるコンポーネントから取り込まれ、遅く安定した知識を消さずにすみます。
  • Hope は論文の概念実証アーキテクチャで、自己修正型の Titans 変種に Continuum Memory System(CMS)を組み合わせます。短期/長期という固定的な二分ではなく、メモリモジュールがさまざまな速度で更新されます。
  • 論文の評価では、Hope は言語モデリングと常識推論で Titans、Samba、標準的な Transformer といったベースラインを上回り、長文コンテキストの検索や継続学習でも健闘しました。
  • まだ初期段階の研究です。公式実装も pip install もなく、あるのはコミュニティによる GitHub での再現実装のみです。すぐに本番投入できるものではなく、今後に注目すべき方向性と捉えてください。

ネスト学習とは?

ネスト学習は、単一のモデルを、別個のオプティマイザで学習される一つのアーキテクチャとしてではなく、それぞれが独自の速度で学ぶ入れ子状の最適化問題の集合として扱う機械学習パラダイムです。モデルのアーキテクチャと学習アルゴリズムを同種のもの、すなわち同時に動作し適応する複数レベルの学習として捉え直します。

これは、機械学習システムを異なる時間スケールで動作する複数の学習レベルに編成します。

  • パラメータ層は、数千ステップにわたりゆっくり学習します。
  • メモリ層は、直近の入力にわたって保持すべき情報を選びます。
  • オプティマイザ層は、その下位レベルをどのように更新するかを学習します。

上位レベルは下位レベルのふるまいに影響を与えられるため、単なるモジュール構造ではなく階層構造になります。

ネスト学習の基本原則

ネスト学習は次の4つの原則に従います。

  • アーキテクチャと最適化は同じ学習システムの一部。 ネスト学習では、オプティマイザ自体が学習プロセスの一部となり、時間とともに適応できます。
  • コンポーネントごとに学習速度が異なる。 モデルの中核パラメータは何千もの例にわたってゆっくり更新される一方、短期のコンテキスト機構は新しい入力ごとに更新され、メモリシステムはその中間の速度で更新されます。
  • 深さは入れ子の学習プロセスから生まれる。 伝統的なディープラーニングはレイヤを重ねて深さを作ります。ネスト学習は、パラメータ、メモリシステム、オプティマイザ、更新機構がそれぞれ異なる時間スケールで学ぶ複数レベルを積み重ねることで深さを生みます。
  • デプロイ後も学習が続く。 メモリシステムや学習機構のようなコンポーネントは、推論中にも適応を続けられます。

ネスト学習 vs 従来のディープラーニング

長年、私たちはディープラーニングのアーキテクチャに依存してきました。データはニューラルネットワークを流れ、モデル予測の誤り(損失)を測り、誤差を減らすようにオプティマイザがパラメータを調整します。

これをモデルが十分良くなるまで繰り返し、パラメータを固定してデプロイします。その後は新しい入力から学習せず、データの変化にも適応せず、使えば使うほど良くなることもありません。

ネスト学習はこれを変えます。モデルのパラメータに加えて、メモリモジュールやオプティマイザなどのコンポーネントも時間とともに学習を続けます。

観点

従来のディープラーニング

ネスト学習

深さ

レイヤを積み重ねることで深さを生む。

学習プロセスを入れ子にすることで深さを生む。

学習

主に学習時に起こる。

学習時に起こり、デプロイ後も続く。

オプティマイザ

モデル重みを更新する固定的な道具。

自ら学習し、更新規則を変えられる適応的コンポーネント。

メモリ

モデルのパラメータと短期コンテキストに符号化される。

複数のレベルと時間スケールにまたがって存在する。

推論

モデル重みは固定。

コンポーネントによっては推論中も適応を続ける。

ネスト学習が重要な理由

モデルはパラメータを更新して新しい情報を学びますが、その更新が以前に学んだ知識を上書きしてしまうことがあります。これは破滅的忘却として知られています。

研究者たちは、レイヤの凍結、Elastic Weight Consolidation(EWC)のような正則化、リプレイバッファなど、過去の知識を保ちながら新しいタスクを学習する手法を提案してきました。ですが、これらは忘却を抑えるための工夫であって、学習のあり方自体を根本から変えるものではありません。

ネスト学習は、この単一の時間スケールに依存する発想こそが、継続学習を難しくしている一因だと主張します。単一のパラメータ集合にすべての新情報を吸収させるのではなく、適応を複数の学習レベルに分散させるのです。

各レベルが異なる速度で適応することで、過去の知識を書き換え続けることなく新しい情報を取り込めます。この考え方は人間の認知から部分的に着想を得ています。すべての学習が同じペースで進むわけではありません。

  • 反射はほぼ瞬時に適応します。
  • 短期記憶は数分から数時間で形成されます。
  • 信念、習慣、専門性は数ヶ月から数年かけて身につきます。

ネスト学習の仕組み

ネスト学習はシステムを複数のレベルに編成します。各レベルは役割と更新速度が異なる独立の学習プロセスです。それぞれを順に見て、どう結びつくかを理解しましょう。

ネスト学習:複数レベルでの学習

パラメータ層

パラメータは、学習データからモデルが学んだ内容を蓄えるニューラルネットワーク内部の重みです。学習中、オプティマイザは各バッチ後に勾配を用いてこれらの重みを更新します。

各更新は小さく、有意な変化は多くのステップを経て徐々に起こります。結果として、パラメータ層は安定した長期知識を学びますが、新情報への適応は遅くなります。

メモリ層

メモリ層は、パラメータ層では学習が遅すぎる直近の入力から情報を取り込みます。

すべてを保存するのではなく、有用な情報だけを保持し、それ以外は捨てます。これにより、長期知識をすぐに更新せずとも新しい文脈に適応できます。

オプティマイザ層

オプティマイザは、学習時にモデルのパラメータをどう更新すべきかを決めます。モデルの予測から計算された勾配を用いて、各更新の大きさと方向を定めます。

Adam のような適応的オプティマイザは、現在の勾配を使うだけではありません。最近の勾配の履歴も追跡し、次のパラメータ更新の計算に利用します。

Adam もそれをしているのに、ネスト学習は何を加えるのでしょうか?

違いは、何が学習可能かにあります。標準的なディープラーニングでは、Adam が自身の状態をどう更新するかを定める規則は学習開始前に固定され、その後は変わりません。Adam はパラメータを適応させますが、Adam 自体を適応させるものはありません。

ネスト学習は、オプティマイザの上位にメタ学習プロセスを導入し、オプティマイザの性能を評価して規則を時間とともに修正できるようにします。オプティマイザは固定のインフラではなく、それ自体が改善可能な存在になります。

レベル間の相互作用

これらのレベルは独立して機能するわけではありません。情報は相互に流れ、各レベルが他のレベルの学習に影響を与えます。

  • パラメータ層は学習を通じて長期知識を徐々に構築します。
  • メモリ層は直近の文脈を与え、新情報への素早い対応を助けます。
  • オプティマイザパラメータの更新方法を決定します。

これらを組み合わせることで、短期適応と長期学習のバランスを取れます。

Hope アーキテクチャ

Hope は論文の概念実証アーキテクチャで、ネスト学習が実際に機能するかを検証するために Google が構築した Titans の自己修正型バリアントです。将来の更新規則を自ら書き換えられるメモリと Continuum Memory System を組み合わせ、学習後に凍結するのではなく複数の速度で学習を続けられるようにします。

自己修正型 Titans

Titans には、モデルが驚きや重要だと判断した情報を保存するメモリモジュールが含まれます。パラメータだけに頼るのではなく、モデルはこれらのメモリモジュールを通じて有用な情報を先へ持ち越します。

Hope はさらに一歩進みます。新しいデータが入ると、メモリモジュールは更新を続け、将来の更新に使う規則も調整されます。これが自己修正型と呼ばれる理由です。

Continuum Memory System

多くのメモリアーキテクチャは、メモリを短期と長期の2つに分けます。情報は高速な一時ストアに置かれるか、安定した長期ストレージに統合されるかのどちらかです。Hope はその二分法をやめ、更新速度が異なるメモリモジュールのスペクトラム、すなわち連続体へと置き換えます。

一部のメモリコンポーネントは素早く更新され直近の情報を捉え、他はよりゆっくり変化して長期にわたり蓄積された安定知識を保持します。つまり、新しい情報は高速更新の層から取り込まれ、より遅く安定したメモリをすぐには乱しません。

Continuum Memory SystemHope の性能

論文は、言語モデリング、長文コンテキスト推論、継続学習、知識取り込みで Hope を評価し、タスクに応じて異なるベースラインを用いました。言語モデリングと常識推論は Titans、Samba、標準的な Transformer と比較し、長文検索タスクでは Hope と Titans を TTT および Mamba2 と比較しました。

言語モデリングと常識推論のベンチマークでは、Hope はいずれのベースラインよりも低いパープレキシティと高い精度を達成しました。

棒グラフ:Hope モデルが Titans、Samba、Transformer を言語モデリングと常識推論の両指標で上回ることを示す。

より示唆的だったのは、長いコンテキストの中に埋もれた特定情報を取り出すタスクです。論文では難易度を上げた複数のバリアント(パスキー検索、数値検索、最難の単語レベル検索)を評価しました。Hope は全バリアントでベースラインを上回り、特に CMS の設計が長文コンテキストでの向上に寄与しました。

また、継続学習のベンチマークでも好成績です。通常は破滅的忘却を引き起こすタスク列で学習させても、Hope は論文で比較されたモデルより多くの既習知識を保持しました。

ネスト学習と他の継続学習手法の比較

ネスト学習は破滅的忘却に挑む最初の試みではありません。長年にわたり、研究者は新タスクを学びつつ既習知識を保つための継続学習手法を提案してきました。提案手法の違いを見ていきましょう。

アプローチ

Elastic Weight Consolidation(EWC)

Progressive Neural Networks

Experience Replay

ネスト学習

中核メカニズム

過去タスクで重要だった重みの更新を遅らせる正則化項を追加。

新タスクごとに専用ネットワークを追加し、既学習ネットワークへの横方向接続で知識を前方移転。

過去タスクのサンプルを保存し、新タスクと並行してリプレイ。

異なる時間スケールで動作する複数の相互作用するレベルに学習を編成

忘却の抑制方法

過去タスクの重みを保護し、新タスク学習中も既存知識を保持。

既存ネットワークは凍結して保存。新タスクは独自ネットワークにより干渉を回避。

過去の例を現在の学習に混ぜる。

レベルごとに更新頻度が異なるため、新情報は高速コンポーネントから入り、遅いコンポーネントの安定知識をすぐには置換しない。

計算オーバーヘッド

低〜中

中〜高(リプレイバッファの規模に依存)

評価途上

スケーラビリティ

中。時間とともに多くのパラメータを保護すると新タスク学習能力が低下しうる。

新タスクごとにモデルが肥大化するため限定的。

有効だが、リプレイバッファの維持が必要。

スケールを想定して設計。ただし初期段階の研究。

成熟度

確立済み

確立済み

広く使用

初期段階の研究

EWC、Progressive Neural Networks、Experience Replay のような手法は、学習中の忘却を遅らせるためのニューラルネットワークです。根底のアーキテクチャは大きくは変わりません。

ネスト学習はアーキテクチャそのものを捉え直し、複数レベル・複数時間スケールで学習が行われるようにします。急速に変化するメモリが最近の体験を扱い、ゆっくり変化するパラメータが長期知識を捉えます。

実践におけるネスト学習

GitHub では非公式のコミュニティ再現が登場し始めており、研究者がこのアーキテクチャを試し、公開結果の再現に挑戦できるようになっています。

とはいえ、ネスト学習は主要なディープラーニングフレームワークに公式統合されておらず、pip install でインストールして既存の PyTorch や JAX プロジェクトに追加する、といったことはできません。これらのモデルの構築と評価には、依然として研究コードを直接扱う必要があります。

ただし方向性はコミュニティ導入に向いています。Hope や Continuum Memory System(CMS)モジュールが主流フレームワークに統合され、本番システムに採用される動きに注目してください。

まとめ

ネスト学習は、現代のディープラーニングを支える前提の一つに異議を唱えます。レイヤを重ねることでモデルを強化するのではなく、異なる時間スケールで動作する複数の学習プロセスから知性が生まれるかを探ります。

この発想転換は、最適化の捉え方も変えます。伝統的なディープラーニングは、モデルのアーキテクチャと学習アルゴリズムを別個のコンポーネントとして扱います。ネスト学習は両者をより密接に結びつけ、学習そのものを階層化することを目指します。

まだ黎明期にあります。ネスト学習は活発な研究領域であり、その多くのアイデアは、主流の機械学習に取り込まれるまでに広範な検証が必要です。ネスト学習の背景となる概念(ニューラルネットワーク、最適化、メモリ機構)をより強固に身につけたい場合は、包括的な Deep Learning in Python トラックをぜひご覧ください。

ネスト学習に関するFAQ

LLM における継続学習とは?

LLM における継続学習とは、過去の知識を忘れずに新しいデータから学び続ける能力のことです。ほとんどの LLM は素の状態ではこれが得意ではありません。新情報でファインチューニングすると、古い知識を上書きしがちです。継続学習の研究は、まさにこの問題の解決を目指しています。

ネスト学習には複数の機械学習モデルが必要ですか?

必須ではありません。ネスト学習は、複数モデルの使用というより、学習タスクを複数レベルに編成することに重きがあります。単一モデルで入れ子の学習段階や階層表現を用いる実装もあれば、特化モデルを組み合わせる実装もあります。

ネスト学習は計算コストが高いですか?

その可能性はありますが、常に顕著というわけではありません。追加コストは、モデルの通常学習に加えて上位の学習プロセスを維持・更新する点から生じます。Hope のような近年のネスト学習アーキテクチャは効率を意識して設計されており、多くの研究環境で実用的です。ただし、本番環境への展開は依然として未踏の領域です。

どのような場合にネスト学習を避けるべきですか?

データ分布が変化せず、固定のベンチマークで高性能を出せばよいだけなら、ネスト学習は複雑さを増やすだけで得るものは多くありません。また、解釈可能性が非常に重要な場合も避ける価値があります。学習プロセスが自己適応するほど、モデルが実際に何をなぜ行っているのかを説明しにくくなります。

ネスト学習と転移学習はどう選べばよいですか?

解こうとしている問題が異なります。転移学習は、ある領域で学んだことを別の領域に適用するもので、一度きりの適応です。ネスト学習は、新情報が到来するたびにシステムが適応を続けることを目指します。固定のターゲットタスクがあるなら転移学習の方が簡単で概して十分です。環境が動的でモデルを最新状態に保つ必要があるなら、ネスト学習がより適しています。

トピック

ディープラーニングおすすめ講座

Tracks

深層学習(Deep Learning) Pythonで

18時間
機械学習の旅をディープラーニングへと進めましょう。 PyTorchライブラリを使って、さまざまなデータ型をモデル化するニューラルネットワークを作成します。
詳細を見るRight Arrow
コースを開始

Courses

PyTorchによる中級ディープラーニング

4時間
28.1K
画像データや時系列データのモデリングに用いられる、CNN(畳み込みニューラルネットワーク)、RNN(再帰型ニューラルネットワーク)、LSTM(長短期記憶ネットワーク)、GRU(ゲート再帰ユニット)といった基本的な深層学習アーキテクチャについて学びましょう。
もっと見るRight Arrow