最先端研究動向

AI 分野の進展スピードはしばしば驚かされます。今日、学術論文で見かけた新しいアイデアが、半年後には誰もが使う製品機能になっているかもしれません。

Scaling Law、MoE 混合専門家モデル、長期コンテキスト技術、推論時計算拡張、マルチモーダル融合、AI Agent、少数サンプル学習、AI for Science——これらは実験室で探求されている方向性であり、次の10年の AI 製品の形を定義するでしょう。

このモジュールはすべての技術詳細を説明し尽くすことを追求するのではなく、最先端研究の全体像を把握するのに役立ちます。重要な方向性には何があるか、各方向性がどのような問題を解決しているか、現在どこまで進んでいるか、将来どこへ向かう可能性があるかを知ることができます。

最先端研究を理解する価値は、流行に追従することではなく、技術進化の流れを見極め、変化の中で不変の法則を見出すことにあります。。


Scaling Law(スケーリング則)

Scaling Law は、ここ数年における大規模モデル成功の中核的指導原則です——より大きなモデル、より多くのデータ、より強力な計算能力が、より良い性能をもたらします。

Scaling Law とは

簡単に言えば:一定の範囲内では、モデルの性能は計算量、データ量、パラメータ量の増加に伴って予測可能な形で向上します。。

これは農業のようなものです。合理的な範囲内であれば、肥料を多く施し、十分に水をやり、土地が肥沃であればあるほど、収穫は良くなります。

Scaling Law は、OpenAI が2020年の論文『Scaling Laws for Neural Language Models』で初めて体系的に提唱しました。

彼らは、モデルのパラメータ量、データ量、計算量をすべて N 倍にすると、モデルの損失値が log(N) の形で減少することを発見しました。つまり、限界効用は逓減するものの、継続的に投資し続ければ性能は向上し続けるということです。

Chinchilla 最適トレーニング則

2022年、DeepMind の論文『Training Compute-Optimal Large Language Models』(すなわち Chinchilla 論文)が重要な修正をもたらしました。

それまでの主流のやり方は、できるだけモデルを大きくし、比較的少ないデータでトレーニングするというものでした。

Chinchilla 論文は次のように指摘しました:以前のモデルは大きすぎ、データが少なすぎる。

彼らは、一定の計算予算が与えられた場合、モデルのパラメータ量とトレーニングデータ量を一定の比率で同時に拡大すべきだと提案しました。

具体的には、計算量が2倍になるとき、モデルのパラメータ量は約1.4倍、トレーニングデータ量も約1.4倍に拡大すべきです。

モデルパラメータ量トレーニングデータ量発表時期特徴
GPT-3175B300B tokens2020モデルが大きく、データが比較的少ない
Chinchilla70B1.4T tokens2022モデルはやや小さく、データははるかに多い
LLaMA 270B2T tokens2023Chinchilla の考え方を踏襲

Chinchilla の影響は深遠です。その後の主流モデルは、LLaMA から GPT-4 に至るまで、データ量の配分をより重視し、もはややみくもに超巨大なパラメータ量を追求していません。

Scaling Law の限界と論争

Scaling Law は万能ではありません。その限界はいくつかの側面に現れています:

まず第一に限界効用の逓減——性能を2倍にするには、10倍、あるいは100倍の計算投資が必要になるかもしれません。

第二に能力創発の予測不可能性——ある能力(例えば複雑な推論)は、モデルが小さいときにはまったく現れず、一定の規模に達すると突然創発しますが、次の能力がいつ創発するのか、何が創発するのかを正確に予測できる人はいません。

第三にデータのボトルネック——高品質なテキストデータの総量は限られており、現在の消費速度では、すぐにデータの天井に直面する可能性があります。

Scaling Law の核心的な示唆:規模は万能ではないが、規模なしでは何もできない。今日のモデルは依然としてより大きな規模の恩恵を受けていますが、研究者たちは「ただ規模を積むだけではない」新しい道も模索しています。


混合専門家モデル(MoE)

混合専門家モデル(Mixture of Experts、MoE)は、モデルを大きくしながらも推論コストを大幅に増やさないアーキテクチャ設計です。

稠密モデル vs スパースモデル

従来の大規模モデルは「稠密」です——各 token の入力時に、モデルのすべてのパラメータが使用されます。

MoE は「スパース」です——各 token はモデル内の一部のパラメータ(すなわちいくつかの「専門家」)のみを使用し、他のパラメータは休止状態にあります。

これは病院の診療のようなものです:

稠密モデル:診察に行くと、病院のすべての診療科の医師が集まって診察します——包括的ですが、コストが高すぎます。

MoE モデル:診察に行くと、受付が関連するいくつかの診療科(例えば内科+循環器内科)に振り分け、これらの診療科の医師だけが診断します——専門性を確保しつつ、コストも抑えられます。

特性稠密モデルMoE スパースモデル
総パラメータ数通常は小さい非常に大きくできる
token あたりの使用パラメータすべてのパラメータ一部の専門家のみ
推論コストパラメータ量に比例する比較的制御可能
トレーニングの難しさ比較的簡単負荷分散などの問題を解決する必要がある
代表モデルGPT-3、LLaMASwitch Transformer、Mixtral、GPT-4

ゲーティング機構(Gating)

MoE の核心はゲーティングネットワーク——それは各 token をどの専門家に送って処理すべきかを決定します。

ゲーティングネットワークの入力は現在の token の特徴であり、出力は各専門家の重みです。

通常の方法は、重みが最も高い Top-K 個の専門家(例えば K=2 や K=8)を選択し、その専門家にのみ token を送り、それらの出力を重みに応じて加重合計することです。

ゲーティングネットワーク自体は学習可能です——トレーニング過程で「どのようなタイプのコンテンツがどの専門家に適しているか」を徐々に学習します。

専門家ルーティングアルゴリズム

MoE には独特の課題があります:負荷分散。

ゲーティングネットワークが常に大多数の token を少数の専門家に割り当てると、他の専門家は十分にトレーニングされず、モデルの容量が無駄になります。

研究者たちはこの問題を解決するためにさまざまなルーティングアルゴリズムを提案しました:

一つは、ゲーティングネットワークの損失関数に「負荷分散損失」を追加し、各専門家が均等に使用されるように促す方法です。

もう一つは、より複雑なルーティング戦略を採用する方法です。例えば「容量制限」——各専門家には最大処理量があり、満杯になったら次に適切な専門家に割り当てます。

代表モデル:Mixtral

2023年末、Mistral AI が発表した Mixtral 8x7B により、MoE は真に主流となりました。

Mixtral は 7B パラメータの専門家を8つ持ち、各 token が Top-2 の専門家を選択するため、token あたり実際に使用されるのは約 14B パラメータですが、総パラメータ数は 47B です。

結果として、Mixtralの推論速度とコストは14B稠密モデルに匹敵しますが、性能は70Bモデルに近いものです。

この「少ないコストで大きなことを成し遂げる」特性により、MoEは業界の注目の的となっています。

トレーニングと推論の課題

MoEは魅力的ですが、追加の複雑さもあります:

訓練面:エキスパートの負荷分散、通信オーバーヘッド(多機種分散学習時)、エキスパートドロップアウトなどの問題に対処する必要があります。

推論面:各トークンで少数のエキスパートだけが活性化されますが、モデル全体をGPUメモリにロードする必要があります——これはメモリ容量に対するより高い要求を課します。

しかし研究者たちは、モデル並列や動的エキスパートオフロードなどの技術を用いてこれらの問題を軽減しています。

具体例

# ============================================
# シンプルなMoEゲーティング機構の概念デモ
# 入力に応じて適切なエキスパートを選択する方法を示す
# ============================================

import random
from typing import List, Tuple


class Expert:
    """シンプルなエキスパートモデル(概念デモ)"""

    def __init__(self, expert_id: int, specialty: str):
        self.expert_id = expert_id
        self.specialty = specialty  # 専門分野(例:「数学」、「コード」、「文学」)
        # エキスパートのパラメータを模擬(実際はニューラルネットワークの重み)
        self.weights = [random.random() for _ in range(10)]

    def forward(self, x: List[float]) -> float:
        """エキスパートが入力を受け取り出力を生成する"""
        # シンプルな加重和のシミュレーション(実際はニューラルネットワークの計算)
        return sum(x[i] * self.weights[i % 10] for i in range(len(x)))


class MoEGate:
    """MoEゲーティングネットワーク:各入力をどのエキスパートに割り当てるかを決定する"""

    def __init__(self, num_experts: int, top_k: int = 2):
        self.num_experts = num_experts
        self.top_k = top_k
        # ゲーティングネットワーク自身のパラメータ
        self.gate_weights = [[random.random() for _ in range(10)]
                             for _ in range(num_experts)]

    def compute_scores(self, x: List[float]) -> List[float]:
        各エキスパートの現在の入力に対するスコアを計算する
        scores = []
        for expert_weights in self.gate_weights:
            score = sum(x[i] * expert_weights[i] for i in range(len(x)))
            scores.append(score)
        return scores

    def select_experts(self, x: List[float]) -> List[Tuple[int, float]]:
        """Top-K個のエキスパートを選択し、(エキスパートインデックス, 重み)のリストを返す"""
        scores = self.compute_scores(x)

        # スコアが高い順にソート
        scored_experts = [(i, score) for i, score in enumerate(scores)]
        scored_experts.sort(key=lambda x: x[1], reverse=True)

        # Top-Kを選択
        top_experts = scored_experts[:self.top_k]

        # Top-Kの重みをsoftmaxで正規化する(簡易版)
        total = max(0.0001, sum(score for _, score in top_experts))
        return [(idx, score / total) for idx, score in top_experts]


class SimpleMoE:
    """簡略化された混合エキスパートモデル"""

    def __init__(self, num_experts: int = 8, top_k: int = 2):
        # 複数のエキスパートを作成
        specialties = ["数学", "コード", "文学", "歴史",
                      "科学", "芸術", "体育", "哲学"]
        self.experts = [Expert(i, specialties[i % len(specialties)])
                       for i in range(num_experts)]
        # ゲーティングネットワークを作成
        self.gate = MoEGate(num_experts, top_k)

    def forward(self, x: List[float]) -> float:
        """MoE順伝播"""
        # 1. ゲーティングネットワークがエキスパートを選択
        selected_experts = self.gate.select_experts(x)

        print(f"入力特徴: {[f'{v:.2f}' for v in x[:5]]}...")
        print(f"選択されたエキスパート:")
        for idx, weight in selected_experts:
            print(f" - エキスパート {idx} ({self.experts[idx].specialty}), 重み: {weight:.3f}")

        # 2. 選択されたエキスパートが入力を処理
        expert_outputs = []
        for idx, weight in selected_experts:
            output = self.experts[idx].forward(x)
            expert_outputs.append((output, weight))

        # 3. エキスパート出力を加重結合
        final_output = sum(output * weight for output, weight in expert_outputs)

        return final_output


# ============================================
# MoEのワークフローをデモ
# ============================================

# 8エキスパート、Top-2を選択するMoEモデルを作成
moe = SimpleMoE(num_experts=8, top_k=2)

# いくつかの異なるタイプの入力を模擬(ランダムベクトルで表現)
print("=" * 50)
print("サンプル MoE 概念デモ")
print("=" * 50)

# 入力1:「数学」タイプの入力を模擬
input1 = [0.9, 0.8, 0.1, 0.1, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1]
output1 = moe.forward(input1)
print(f"MoE 出力: {output1:.4f}")
print()

# 入力2:「コード」タイプの入力を模擬
input2 = [0.1, 0.2, 0.9, 0.8, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]
output2 = moe.forward(input2)
print(f"MoE 出力: {output2:.4f}")
print()

# 入力3:「文学」タイプの入力を模擬
input3 = [0.1, 0.1, 0.1, 0.1, 0.9, 0.8, 0.1, 0.1, 0.1, 0.1]
output3 = moe.forward(input3)
print(f"MoE 出力: {output3:.4f}")

print()
print("=" * 50)
print("ヒント:実際のMoEでは、ゲーティングネットワークは学習によって徐々に")
print("   どのタイプの入力がどのエキスパートに適しているかを学びます。")
print("=" * 50)

MoEの核心的な洞察:すべてのパラメータが同時に動作する必要はない。各エキスパートが得意分野に集中させ、ゲーティングネットワークでスケジューリングすることで、総容量を拡大しつつ推論コストを制御できます。


長期コンテキスト技術

初期のGPT-3のコンテキストウィンドウはわずか2Kトークン(約1500漢字)でしたが、今日の主流モデルは8K、32K、128K、さらには1Mトークンに達しています。

長コンテキストは単に「ウィンドウを伸ばす」だけではありません——一連の技術的な課題を解決する必要があります。

長期コンテキストの核心のな課題

最も直接的な問題は計算複雑度。

Transformerの自己注意機構の複雑度はO(n²)です——コンテキスト長が2倍になると、計算量は4倍になります。

ウィンドウを2Kから128Kに引き伸ばすと、計算量は4096倍になります——これは計算上実行不可能です。

2つ目の課題は位置エンコーディング。

元のTransformerが使用する正弦位置エンコーディングや学習可能な位置エンコーディングは、学習長を超えると外挿能力が非常に低くなります——まるで100メートル走路だけで訓練した人が突然1000メートルを走らされると、とても適応できないのと同じです。

3つ目の課題は記憶効果。

技術的には長文を処理できても、モデルは「見たら忘れてしまう」可能性があります——途中の内容を効果的に活用するのは難しいです。

RoPE 外挿手法(YaRN / LongRoPE)

回転位置エンコーディング(Rotary Position Embedding、RoPE)は、現在最も人気のある位置エンコーディング方式の1つです。

RoPEの核心的な考え方は:位置情報を回転角度としてエンコードする。

この利点は:相対位置関係が自然にエンコードされることです——2つのトークンがk位置離れている場合、それらの回転角度はk単位分異なります。

しかし元のRoPEは、学習長を超えると外挿効果がやはり低下します。

研究者たちは改良案を提案しました:

YaRN(Yet Another RoPE Scaling)——RoPEのスケーリング係数を細かく調整することで、モデルが学習長を超えても良好な性能を維持できるようにします。

LongRoPE——Metaが提案した手法で、漸進的拡張とファインチューニングにより、LLaMA 2モデルのコンテキストウィンドウを4Kから128K、さらには256Kに拡張します。

これらの技術に共通する考え方は:モデル全体を再学習せず、位置エンコーディングの一部のパラメータだけを調整する、それだけでコンテキストウィンドウの大幅な拡張を実現できます。

スパースアテンション(Sliding Window / Longformer)

O(n²)複雑度を解決するもう1つの考え方は:各トークンが他のすべてのトークンに注目するのではなく。

スライディングウィンドウ注意(Sliding Window Attention)——各トークンは、その前後の固定ウィンドウ内のトークンだけに注目します(例:前後4096個)。

これは小説を読むとき、直近の数ページの内容だけを覚えていて、一字読むごとに本全体を思い出すことはないのと同じです。

Longformer——スライディングウィンドウとグローバル注意を組み合わせ、一部の特別なトークン(例:<[BOS_never_used_51bce0c785ca2f68081bfa7d91973934]>、要約マーカー)はすべてのトークンに注目でき、他のトークンは局所的にのみ注目します。

これにより、長文を処理できると同時に、グローバル情報が失われないことを保証できます。

状態空間モデル:Mamba

2023年末、Mambaの登場はまったく新しい考え方をもたらしました。

Mambaは状態空間モデル(State Space Model、SSM)の範疇に属し、その複雑度はO(n)です——コンテキスト長が2倍になっても、計算量も2倍になるだけです。

Mambaの核心的な革新は選択的状態空間——モデルが入力内容に応じて、どの情報を記憶する必要があり、どの情報を無視できるかを動的に決定することです。

これはノートを取るようなものです:すべての文字を書き留めるのではなく、要点を選択的に記録します。

Mambaの利点は:

1. 理論上、無限に長いコンテキストを処理できる

2. 推論速度が速く、GPUメモリ使用量が少ない

3. 長いシーケンスタスクで優れた性能を発揮する

ただしMambaにも限界があります:現時点では短いテキストタスクでは成熟したTransformerにわずかに及ばず、エコシステムも比較的不完全です。

技術方式複雑度代表モデル適用シーン
全注意TransformerO(n²)GPT-3、LLaMA短~中程度の長さのテキスト
RoPE外挿O(n²)Claude、GPT-4中程度の長さのテキスト
スパース注意O(n) または O(n log n)Longformer、Mistral文書レベルの長文
状態空間モデルO(n)Mamba、Hyena超長シーケンス(コード、ゲノムなど)

長コンテキスト技術の進化の方向性:性能、速度、GPUメモリの三者間で最適なバランスを見つける。異なるシーンでは異なる技術方式が必要になる場合があります。


推論時計算拡張

従来の大規模モデルの学習と推論は分離されている——学習時には大量の計算を行い、推論時には固定のフォワード計算を使用する。

推論時の計算拡張の考え方は:モデルが推論時にもっと多くの「思考」ステップを実行できるようにする追加の計算と引き換えに、より良い結果を得る。

o1 / DeepSeek-R1 の考え方

2024年、OpenAI の o1 と DeepSeek の DeepSeek-R1 は、この方向における重要なブレークスルーを代表するものだ。

これらのモデルの中核は次の通りだ:モデルにまず「推論の思考連鎖(Chain of Thought)」を実行させてから、最終的な答えを出す。

具体的には:

1. モデルは問題を受け取ると、直接答えるのではなく、まず一連の「思考プロセス」を生成する(ユーザーに見える場合も隠される場合もある)

2. 思考プロセスの中で、モデルは異なるアプローチを試したり、自分の誤りを修正したり、複雑な問題を分解したりできる

3. 十分に考えた後、最終的な答えを出す

これは数学の問題を解くのと同じだ:いきなり答えを書くのではなく、まず下書き用紙で一歩ずつ導出し、正しいことを確認してから解答を整理する。

遅い思考 vs 速い思考

この方向性は、心理学者カーネマンの「二重過程理論」と呼応している:

システム1(速い思考)——直感的で、速く、労力を要しない。従来のモデルの一回の順伝播に相当する。

システム2(遅い思考)——分析的で、遅く、努力を要する。推論時の複数ステップの思考に相当する。

これまでの大規模モデルは主に「システム1」だったが、o1 のようなモデルは「システム2」の能力を導入し始めている。

注意すべき点は:遅い思考はより多くの時間とコストを必要とする——10秒間思考するリクエストのコストは、即時回答の10倍になる可能性がある。

Best-of-N サンプリング

もう一つのより単純な推論時スケーリングは Best-of-N(Self-Consistency とも呼ばれる)だ。

やり方は非常に直接的だ:

1. モデルに同じ問題に対して N 個の異なる答えを生成させる

2. 何らかの方法で最良のものを選ぶ(例:多数決、モデルによる自己評価、外部検証)

これは試験で選択問題を解くのと同じだ:一度だけ推測するのではなく、複数の解き方を試し、最も整合性のある答えを選ぶ。

Best-of-N の利点は、シンプルで汎用性が高く、追加のトレーニングがほとんど不要なことだ——ただし欠点はコストが高いことだ(N 回生成する必要がある)。

Monte Carlo Tree Search in LLM

もう一つの活発な研究方向は、強化学習におけるモンテカルロ木探索(MCTS)を大規模モデルに導入することだ。

AlphaGo は MCTS を使って人間を超えるパフォーマンスを実現した。

MCTS の考え方は次の通りだ:

1. 問題を「探索木」と見なす——各ノードは思考状態、各エッジは思考ステップである

2. 複数回のシミュレーションを通じて、異なる思考経路を探索する

3. 探索結果に基づいて、最も有望な経路を選択する

MCTS と LLM を組み合わせることは、非常に有望な方向性だ——LLM の豊富な知識を活用しつつ、MCTS の計画能力を発揮できる。

手法中心となる考え方利点欠点
思考の連鎖(CoT)モデルに一歩ずつ考えさせるシンプルで効果的トークン消費が増加する
o1 / R1 スタイル深い思考の連鎖 + 強化学習推論能力が強いトレーニングが複雑
Best-of-N複数から一つを選ぶシンプルで汎用的コストが高い
MCTS + LLM最適な思考経路を探索する計画能力が強い実装が複雑

推論時計算スケーリングの核心的なトレードオフ:より良い答えを得るために、どれだけの時間とコストを費やす用意があるか?異なるシナリオ(雑談 vs 数学の証明)では、異なる設定が必要になるかもしれない。


マルチモーダル大規模モデルの最新動向

GPT-4V から Gemini、そして GPT-4o へと、マルチモーダル能力は急速に進化している——現在のモデルはテキストを読むだけでなく、画像を見たり、動画を理解したり、音声を聞いたり、さらにはマルチメディアコンテンツを生成したりできる。

GPT-4o / Gemini 1.5 Pro

2024年の新しい世代のマルチモーダルモデルには、いくつかの顕著な特徴がある:

よりスムーズなインタラクション——GPT-4o は音声対話に対応し、画像や動画をリアルタイムに理解でき、インタラクション体験はより実在の人間に近い。

より強力な動画理解——Gemini 1.5 Pro は最大1時間の動画を処理でき、動画の内容に関する質問に正確に答えることができる。

ネイティブなマルチモーダル生成——モデルはもはや「見てから答える」のではなく、複数のモダリティのコンテンツを同時に処理・生成できる。

これらのモデルの能力はしばしば人々を驚嘆させる:手書きのスケッチを与えると、実装コードを書いてくれる;物理問題の写真を与えると、ステップごとに解説してくれる;動画を与えると、登場人物の感情やプロットの展開を分析してくれる。

ネイティブマルチモーダルトレーニング

初期のマルチモーダルモデルは通常「寄せ集め」だった——言語モデルを事前学習し、ビジュアルエンコーダーを訓練し、最後にそれらを組み合わせる。

新しい世代のモデルは、次の方向に向かっているネイティブなマルチモーダルトレーニング——トレーニングの最初からテキスト、画像、音声など複数のモダリティを同時に処理する。

これにはいくつかの利点がある:

1. より密接なクロスモーダル関連付け——モデルは「この単語は画像のこの領域に対応する」ことを真に理解できる

2. より自然なマルチターンインタラクション——テキストと画像を交互に提示し、一貫した対話を形成できる

3. 創発する新しい能力——例えば「画像を見て物語を語る」「音声を聞いて物体を識別する」など

動画理解のブレークスルー

動画理解は、この一年で急速に進展している分野だ。

初期の手法は、動画を独立したフレームに分割し、各フレームを個別にエンコードするものだった——これでは時間的な連続性が失われる。

新しいアプローチには以下が含まれる:

時系列アテンションモデルに空間のな内容だけでなく、時間のな変化も追跡させる。

均一サンプリング——長い動画の中でキーフレームを均一にサンプリングし、全体をカバーしつつ計算量を抑える。

動画のトークン化——動画を一種の「言語」と見なし、テキストと同様の方法で処理する。

現在のモデルはすでに次のことを実現できる:複雑なビデオチュートリアルの理解、スポーツ試合の重要な場面の分析、さらには動画から操作スキルを学ぶこと。

モデル能力の重点リリース時期
GPT-4V画像理解2023
Gemini 1.0マルチモーダルネイティブ2023
Claude 3視覚推論2024
Gemini 1.5 Pro長尺動画の理解2024
GPT-4oリアルタイムマルチモーダルインタラクション2024

マルチモーダルの将来の方向性:「見たり聞いたりできる」から「真に理解する」へ。次の段階の課題は、物理推論、因果理解、そしてマルチモーダルにおける抽象的思考だ。


AI Agent 研究の最前線

AIエージェント(智能体)の目標は、AI が人間のように「行動できる」ようにすることだ——目標を持ち、計画し、実行し、振り返ることができる。

世界モデル(World Model)

世界モデルはエージェントの中核コンポーネントだ——それはエージェントの世界に対する「心的モデル」である。

簡単に言えば、世界モデルはエージェントに次の問いに答えさせる:

「もし私がこれをしたら、次に何が起こるだろうか?」

これはチェスと同じだ:いきなり駒を動かすのではなく、まず頭の中で数手を読み、相手の反応を予測する。

世界モデルの研究方向には以下が含まれる:

事前学習された世界モデル——大量のインタラクションデータで事前学習し、エージェントに常識的な物理知識を持たせる。

想像による計画——エージェントに「想像」の中で複数のプランを試させ、最良のものを選択させる。

因果理解——エージェントに「何が起こったか」だけでなく、「なぜ起こったか」も理解させる。

身体性知能(Embodied AI)

具現化知能が注目するのは:物理世界または仮想世界において「身体」を持つ AI。

例えば:

——ロボットが現実世界で物体を掴んだり、ナビゲーションしたりする

——AI が Minecraft で複雑な建築物を建てる

——デジタルヒューマンが仮想環境で環境とインタラクションする

具現化知能の課題は次の点にある:物理世界は連続的で、予測不可能で、ノイズがある——これはテキストの離散的な世界とは大きく異なる。

しかし、まさにこの「現実感」こそが、具現化知能を常識を学ぶための重要な手段にしている。

コード実行能力の重要性

現代のエージェントの重要な能力の一つは:コードを書くことができ、コードを実行できること。

コードはエージェントの「万能ツール」だ:

——計算が必要な時は、Python コードを書く

——データ分析が必要な時は、SQL や Pandas を書く

——タスクの自動化が必要な時は、スクリプトを書いて各種 API を呼び出す

——複雑な推論が必要な時は、コードを書いてアルゴリズムを実装する

コード実行能力は本質的に「拡張性」だ——それによりエージェントは必要に応じて新しいツールを作り出せ、事前に設定された能力に制限されない。

これが、Claude や GPT-4 などのモデルがコード能力の強化に多大な力を注いでいる理由でもある。

AIエージェントの核心的な課題:大規模モデルの「知識」を現実世界の「行動」にどう変換するか。これには計画能力、ツール使用能力、そして試行錯誤から学ぶ能力が必要だ。


少数サンプル学習とゼロサンプル学習

従来の機械学習は、1つのタスクをうまく学習するために大量のラベル付きデータを必要とする。

大規模モデルがもたらしたパラダイムシフトは次の通りだ:いくつかの例を与えるだけで、あるいは指示だけを与えるだけで、モデルは新しいタスクを学習できる。

In-Context Learning の原理

In-Context Learning(インコンテキスト学習)は、大規模モデルの最も驚くべき能力の1つだ。

簡単に言えば、モデルのパラメータを修正する必要はなく、入力にいくつかの例を与えるだけで、モデルは新しいタスクを学習できる。

例えば:

入力:

リンゴ → 果物

ニンジン → 野菜

バナナ → ?

モデルは自動的に規則を理解し、「果物」と出力する。

しかし、In-Context Learningは一体どのように機能するのだろうか?

研究者たちはいくつかの説明を提案している:

暗黙の勾配降下法——文脈の例はある種の「勾配更新」を行っているのに相当するが、推論時のみ有効である。

タスク検索——モデルは学習データから類似のタスクを検索し、そのタスクの解法を再利用する。

ベイズ推論——モデルは例に基づいて、可能な仮説空間の中でベイズ更新を行う。

現在のところ完全に一致した答えはないが、1つ確かなことがある:モデルは事前学習で「学び方」を学んでいる。

Instruction Tuning の影響

Instruction Tuning(命令チューニング)は、モデルが人間の指示により良く従うようにするための重要な技術だ。

やり方は簡単だ:大量の「指示-タスク」ペアを収集し、それらを使ってモデルを微調整する。

例えば:

指示:次の文をフランス語に翻訳してください

入力:Hello, how are you?

出力:Bonjour, comment ça va?

Instruction Tuningを経た後、モデルはより「素直」になり——指示の要求に従って行動する可能性が高く、適当に生成することは減る。

さらに重要なことに、Instruction Tuningは次のことをもたらした汎化能力——モデルは見たことのあるタスクでは良い性能を発揮し、まったく見たことのない新しいタスクでも良い性能を発揮できる。

これはまるで優秀な学生のようだ:彼は丸暗記するのではなく、「指示を理解して実行する方法」を学んでいる。

学習パラダイム必要なデータ代表的な手法適用シーン
従来の教師あり学習大量のラベル付きデータモデル全体の微調整高価値タスク、データが十分にある場合
少数ショット学習(Few-shot)いくつかの例In-Context Learning新しいタスクの迅速な試行
ゼロショット学習(Zero-shot)指示のみInstruction Tuning簡単で低リスクなタスク
思考の連鎖(CoT)推論ステップ付きの例Step-by-stepプロンプト複雑な推論タスク

少数ショット学習の核心的な価値:AI応用のハードルを下げること。今や、機械学習の専門家である必要はなく、大量のデータを収集する必要もない——プロンプトを書くことができれば、AIに作業を手伝ってもらえる。


AI と科学的発見

AIは私たちの生活を変えているだけでなく、科学研究そのものも変えている——タンパク質構造から数学の定理まで、創薬から材料設計まで、AIは科学者の強力なアシスタントになりつつある。

AlphaFold の意義

2020年、AlphaFoldはマイルストーンとなった:それは生物学界を50年間悩ませてきた「タンパク質フォールディング問題」を解決した。

簡単に言えば、タンパク質はアミノ酸の鎖だが、複雑な3D構造に折りたたまれる——そしてこの構造がその機能を決定する。

以前は、1つのタンパク質構造を解析するのに数年と大量の実験費用が必要になることがあった。

今では、AlphaFoldは数分以内に正確な3D構造を予測できる。

AlphaFoldの影響は計り知れない:

——病気のメカニズムの理解を助ける

——創薬を加速する

——全く新しいタンパク質を設計する

さらに重要なことに、AlphaFoldは次のことを証明した:AIは人類の知識の最前線で実質的な貢献ができる。

AI for Mathematics

数学研究は人類の知性の頂点と考えられている——しかし、AIもこの分野で頭角を現し始めている。

最近の進展には以下が含まれる:

定理証明支援ツール——Lean、Isabelleなどの証明支援ツールと大規模モデルを組み合わせることで、数学者の形式証明を支援できる。

予想の発見——AIは数学的対象の中からパターンを発見し、新しい予想を提案できる。

記号的推論——AIは記号演算、簡約化、導出を行うことができる。

例えば、DeepMindのAlphaTensorはより効率的な行列乗算アルゴリズムを発見し、MetaのAIは数学者がトポロジーの分野で新しい発見をするのを助けた。

現在のAIはまだ独立して数学研究を行うことはできないが、すでに数学者の「協働パートナー」になることはできる。

Drug Discovery

創薬は長期にわたり費用のかかるプロセスだ——平均で10年の時間と10億ドルが必要である。

AIはこの状況を変えつつある:

標的の発見——AIが生物学的データを分析し、疾患関連のタンパク質標的を見つけ出す。

分子生成——AIが全く新しい候補分子を生成し、それらの性質を予測する。

ADMET予測——AIが薬物の吸収、代謝、毒性などを予測する。

合成ルート設計——AIが有機合成の最適ルートを設計する。

複数のAI創薬企業がすでに臨床試験段階に入っている——AIが発見した薬はまだ上市されていないが、この方向性の可能性は莫大だ。

科学分野AIの応用代表的な成果
構造生物学タンパク質構造予測AlphaFold、RoseTTAFold
数学定理証明、予想の発見AlphaTensor、Lean AI
化学分子生成、反応予測AlphaFold for ligands
創薬標的発見、候補化合物の設計複数の企業が臨床試験に参入
材料科学新材料の設計電池材料、触媒

AIが科学的発見を促進する核心的な洞察:科学研究は本質的に「膨大な可能性の空間の中での探索」である——そしてAIが得意とするのは、まさに膨大なデータと高次元空間の中でパターンを見つけることだ。

その他の拡張