
Titans - Googleが描く「長期記憶型AI」 :Titans: Learning to Memorize at Test Time を斜め読み

Transformerは、自然言語処理や画像認識など多くの分野で活用されていますが、長い文脈を扱う際には計算コストが増大し、処理が困難になるという課題があります。これは、Transformerのアテンション機構(Attention)が入力の全体を考慮するため、入力長に対して計算量が二次的に増加するためです。
一方、現実の人間は、Transformerでは処理が難しいような長文であっても、情報の洪水に飲み込まれることなく、自然に理解することができます。これは、人間の記憶が短期記憶と長期記憶に分かれており、すぐに忘れても問題ない情報を短期記憶、重要な情報を長期記憶に保存し、必要なときに取り出して活用できるためです。
Titansでは、この人間の記憶の仕組みを取り入れることで、情報をより効率的に処理し、長期的な依存関係にも柔軟に対応できるアーキテクチャを実現しています。
【図1】 Memory as a Context
Titans アーキテクチャの概要
Titansは、短期記憶と長期記憶の両方を組み合わせた新しいアーキテクチャです。
以下の3つのコンポーネントで構成されています。
1. Core(短期記憶):従来のAttention機構を用いて、現在の文脈を処理
→パラメータは固定されるが、直近の入力に応じて動的に更新される
2. Contextual Memory(長期記憶):過去の重要な情報を保存し、必要に応じて参照
→テスト時でも更新可能(=記憶の上書き/追加ができる)
→コンテキストサイズを超える記憶保持が可能
→surprise metric(予期しない入力か否か)などに基づいて記憶内容を更新
3. President Memory(永続的記憶):タスクに依存しない知識を保持し、モデルの一般化
能力を向上
→コンテキストサイズを超える記憶保持が可能
→推論時は更新されない
この構造により、Titansは短期的な情報と長期的な情報の両方を実現します。
▍ 3つのコンポーネント、動き方のイメージ
- 入力が入ってきたとき、Persistent Memory(永続記憶)に格納されたタスク固有の
知識を参照し、文脈に応じた情報を取得。 - 次に、Core(短期記憶)モジュールが現在の文脈を処理しながら、Contextual Memory(長期記憶)に保存された過去の知識との関連性を評価。
- surprise metric(予期しない入力か否か)などに基づいて、Contextual Memoryへ
新たな情報を追加(人間のように学習する)。 - 推論結果を出力。
▍Titansアーキテクチャの動作イメージデモ
Titansアーキテクチャの各記憶の動作イメージを分かりやすくするために、デモを作成
しました。
デモの流れは下記のようになっており、シナリオモードでは自動で下記を一通り実行し、
インタラクティブモードでは手入力で下記手順をなぞります。
1. 短期記憶をユーザが入力
2. 短期記憶が容量以上になったときは重要度に基づき長期記憶に情報を移動する
3. 短期記憶・長期記憶・永続的記憶(モデルがもともと持っている記憶)の内容を
もとに結果を推論
【デモイメージ】
【デモ手順】
1. 前提
<環境>
Ubuntu22.0
Gemini(gemini-2.0-flash)
<構成>
demo.py
.env(” 2.APIキーの設定ファイルの作成”で生成)
2. APIキーの設定ファイル作成
# echo API_KEY='YOUR_GEMINI_API_KEY_HERE' >> .env |
3. 依存関係のインストール
# pip install google-generativeai matplotlib seaborn numpy python-dotenv |
4. 実行
# python demo.py |
一般的なモデルのアーキテクチャとの違い
・Gemini
超長文の入力を一度に処理できるよう設計された大規模Transformerベース。
主に巨大なContext Windowによって長文理解を実現。
・Titans
長期記憶(external memory)をテスト時に動的に更新できるアーキテクチャのため、
Context Windowに依存しない学習型記憶アクセスで長期的な理解を実現。
観点 | Transformerベースのモデル | Titans |
長文処理の方法 | 巨大なContext Windowを使って、 一度にすべての情報をAttentionで 処理 | 長期記憶に外部ストレージを使い、 重要情報を圧縮・蓄積して、必要時に 参照 |
記憶の構造 | 一時的 入力終了後は破棄される | 永続的に蓄積・検索できる構造(動的記憶)を持つ |
テスト時の学習 | 原則的に「推論のみ」 テスト時には学習しない | テスト時にもメモリを動的に更新・ 最適化していく(「テスト時学習」) |
主な利点 | 入力全体の一括理解が可能 データの因果関係なども高精度に 捉えやすい | 文脈を超えて、断続的に出現する知識や概念を保持し、継続的に利用できる |
主な課題 | Contextが大きくなると計算量が急増 | 記憶管理が複雑。参照の精度や更新の妥当性に注意が必要 |
このため、Geminiのような巨大Contextモデルは「一気にすべてを処理したい」場合に
強く、Titansは 「場面をまたいで意味や知識を記憶したい」「セッションを超えた知識再利用をしたい」ときに強い。
Titansの活用が期待される分野
今後、Titansは以下のような分野での活用が期待されています。
- 自然言語処理: 長文の要約や質問応答など、長い文脈を必要とするタスク。
- 時系列予測::金融データやセンサーデータの解析など、過去の情報が重要なタスク。
- ゲノム解析:DNA配列の解析など、長い配列データを扱うタスク。
まとめ
Titansは、人間のように短期記憶と長期記憶の仕組みを模倣することで、AIの長期的な
依存関係の処理能力を向上させる新しいアーキテクチャです。
今までのGeminiのようなTransformerを活用したモデルは、「100万字の論文をその場で
読んで答える」力に優れ、Titansは「以前の会話や文書から学んで、次にまた使う」の
ような「持続的な知性」に近い使い方ができます。
セッションを越えた知識共有など、従来のモデルの限界を克服し、さまざまな分野での
応用が期待されています。

2019年に新潟県にある長岡技術科学大学 情報経営システム工学専攻 修士課程を修了。 半導体企業を経て、2024年より株式会社調和技研で従事。 Deep Learningを使用したテキスト解析やAIアクセラレータ開発、カメラ映像を使用した 画像処理などを経験。 現在はLLMを活用したシステム開発、言語系を中心とした研究開発に従事。
関連記事


LLM:量子化とファインチューニング
- 生成系AI
- ChatGPT
- 言語系AI

AI導入を成功させる!データ準備の完全ガイド

【MoA】 ローカルモデルを組み合わせてgpt-4o-miniと同等の性能?「Mixture of Agents」を試してみる
- 生成系AI
- ChatGPT
- 言語系AI

「Gemini 2.0 Flash Thinking」の画像入力を試してみる
- 生成系AI
- ChatGPT
- 言語系AI

人間のフィードバックによる強化学習とデータセット構築
- 生成系AI
- ChatGPT
- 言語系AI

OpenAI Canvas - AIと共同作業を加速する新たな作業空間 -
- 生成系AI
- ChatGPT
- 言語系AI

AI Agent Vol.3【Agent の 学習と評価】
- ChatGPT
- 生成系AI
- 言語系AI

Google のLLM「Gemini 2.0 Flash Thinking」を試してみる
- 生成系AI
- ChatGPT
- 言語系AI

【GroqCloud】 爆速回答!?GroqCloudの実力とは

【まとめ】GPT-4.5 登場!史上最強のAIモデルがリサーチプレビューを公開
- ChatGPT
- インタビュー
- 生成系AI
- 言語系AI

AI Agent Vol.2【Agent の 4つの要素】
- ChatGPT
- 生成系AI
- 言語系AI

Google のLLM「Gemini 2.0 Flash」を試してみる
- 生成系AI
- ChatGPT
- 言語系AI

2024年 年末のAI関連発表について
- ChatGPT
- 生成系AI
- 言語系AI

OpenAIが公開したLLMの事実性を評価する指標「SimpleQA」でモデルを測定してみた
- 生成系AI
- 言語系AI
- ChatGPT

AI導入に必須!PoC(概念実証)を成功させる進め方とポイント

The AI Scientist:AIによる論文の自動生成|さまざまな研究テーマを提案させてみる
- 生成系AI
- ChatGPT
- 言語系AI

AI Agent Vol. 1【Single AgentとMulti Agent】
- ChatGPT
- 生成系AI
- 言語系AI

AI活用成功に導く「AI導入アセスメント」とは――数理最適化AI事例をもとにポイントを解説

Llama 3 の日本語継続事前学習モデル「Llama-3-ELYZA-JP-8B」を試してみる
- 生成系AI
- 言語系AI
- ChatGPT

「戻れない変化」を生み出し続ける。コンサルを通して見極める業界DX実現への道筋
- インタビュー
- 生成系AI
- ChatGPT

サステナビリティ領域で活躍するAI―SDGs×AI活用事例
- 数値系AI
- 画像系AI

MetaのオープンLLM「Llama3.2 3B-Instract」の精度を検証してみた|GPT4o-miniとの比較あり
- 生成系AI
- 言語系AI

OpenAIの軽量モデル「GPT-4o mini」を試してみる
- 生成系AI
- 言語系AI
- ChatGPT

Microsoft「GraphRAG」とLangchainの知識グラフを活用したRAGを比較
- ChatGPT
- 言語系AI
- 生成系AI

Langchain+Neo4j で「GraphRAG」を実装してみる
- ChatGPT
- 生成系AI
- 言語系AI

数理最適化ソルバー活用事例|組合せ最適化で社内交流会の班分けを自動化
- 数値系AI

GoogleのマルチモーダルLLM「Gemini.1.5 Flash」の精度を検証してみる
- ChatGPT
- 生成系AI
- 言語系AI

3次元点群データを用いた物体検出
- 画像系AI

GPT-4oを活用した画像検索システムの構築方法
- 画像系AI
- ChatGPT

Pythonコーディングを簡単に|LangChainで効率化【LLMことはじめ Vol.2】
- ChatGPT
- 言語系AI
- 生成系AI

Microsoft 365 Copilot:AIによる業務効率化の革新
- ChatGPT
- 生成系AI
- 言語系AI

Google のオープンLLM「Gemma」を試してみる|GPT-3.5 Turboとの比較あり
- ChatGPT
- 生成系AI
- 言語系AI

3次元点群データとAIを用いたオガ粉の体積計測
- 画像系AI

Llama 3 の日本語継続事前学習モデル「Llama 3 Youko 8B」を試してみる|他LLMとの比較あり
- ChatGPT
- 言語系AI
- 生成系AI

RAG(Retrieval Augmented Generation)を「Command R+」で試してみた|精度をGPT-4 Turboと比較
- ChatGPT
- 生成系AI
- 言語系AI

Wood Powder Volume Calculation using Point Cloud Data and AI
- 画像系AI

Dify(ディファイ)をGoogle Cloudにデプロイしてみた
- 生成系AI

“Azure OpenAI”で始めるPythonプログラミング【LLMことはじめ Vol.1】
- 生成系AI
- 言語系AI
- ChatGPT

Combating the Malicious Use of AI-Powered Image Editing: A Deep Technical Dive
- 生成系AI
- 画像系AI

最新版「GPT-4 Turbo」を試してみた|GPT-4oとの比較あり(5/14追記)
- ChatGPT

PrecisionとRecallを何度も調べ直さないために
- 言語系AI

Stable Diffusion+LoRAを使って異常画像データを生成できるか検証してみた
- 生成系AI
- 画像系AI

大規模言語モデルによるソースコード生成:GitHub CopilotからCopilot Xへの進化と未来
- 生成系AI
- 言語系AI

AI導入の前に知っておくべき基礎知識(後編)――効率的に自業務にAIを導入するための4ステップ
- 数値系AI
- 画像系AI
- 言語系AI

配達ルート最適化AIにより作業時間80%削減を実現。成功の鍵は“人とAIの調和”
- インタビュー
- 数値系AI

AI画像生成の法的リスク(後編):著作権侵害を回避するために
- 生成系AI
- 画像系AI

AI画像生成の法的リスク(前編):著作権法の基本を学ぼう
- 画像系AI
- 生成系AI

AIというツールを使い 「生命たらしめるもの」が何かを見つけたい【調和技研✖️AIの旗手 Vol.4】
- インタビュー

AI導入の前に知っておくべき基礎知識(前編)――AIのキホンと活用事例
- 数値系AI
- 画像系AI
- 言語系AI

AIアルゴリズムの構築には、 課題の本質を見極めることが重要 【調和技研✖️AIの旗手 Vol.3】
- インタビュー

CNNで浮世絵画風変換はできるのか――Ukiyolator開発ストーリー Vol.2
- 画像系AI
- 生成系AI

住宅写真という資産をAIで利活用し、工務店とお客様をつなぐ新たなビジネスを創造
- インタビュー
- 画像系AI
- ChatGPT

シフト最適化への応用が期待される強化学習を用いた組合せ最適化の解法
- 数値系AI

多彩なサービスと紐づく「交通」の課題解決で地域の活性化や住みやすさの向上を【調和技研×AIの旗手 Vol.2】
- インタビュー

AIプロダクトを開発する際に考えるべき品質保証のキホン
- 数値系AI
- 生成系AI
- 画像系AI
- 言語系AI

Microsoft GuidanceでのFunction Calling機能の使い方とその特徴
- ChatGPT
- 言語系AI

Segment Anything Model(SAM)を使いこなそう!パラメータ設定のポイントも徹底解説
- 画像系AI

Stable Diffusionを使って異常画像データを生成できるか検証してみた
- 画像系AI
- 生成系AI

基礎から解説!数値系異常検知の概要と代表的な手法
- 数値系AI

実践!ChatGPT×Slackの具体的な連携方法と日常業務での効果的な活用事例
- ChatGPT
- 言語系AI
- 生成系AI

最先端AI技術で浮世絵を現代に再現する――Ukiyolator開発ストーリー Vol.1
- 画像系AI
- 生成系AI

PaDiMとPatchCoreどちらを選ぶべき?異常検知モデルの選択肢を見極めるポイント
- 画像系AI

社内の暗黙知を可視化するナレッジネットワークでイノベーションが生まれやすい環境に
- インタビュー
- 言語系AI

人の幸せや社会の豊かさに、AIをいかに「調和」させるか【調和技研×AIの旗手 Vol.1】
- インタビュー