meta-learning-in-context-brain-decoding-v5

star 2

BrainCoDec v5 — Foundation framework for training-free cross-subject brain decoding using meta-learning in-context approach. Enables zero-shot visual decoding from fMRI without subject-specific training. Activation: brain decoding, meta-learning, in-context, cross-subject, fMRI decoding, zero-shot brain decoding.

hiyenwong By hiyenwong schedule Updated 6/3/2026

name: meta-learning-in-context-brain-decoding-v5 description: "BrainCoDec v5 — Foundation framework for training-free cross-subject brain decoding using meta-learning in-context approach. Enables zero-shot visual decoding from fMRI without subject-specific training. Activation: brain decoding, meta-learning, in-context, cross-subject, fMRI decoding, zero-shot brain decoding."

BrainCoDec v5: Meta-learning In-Context for Training-Free Cross-Subject Brain Decoding

Overview

This skill implements the methodology from "Meta-learning In-Context Enables Training-Free Cross Subject Brain Decoding" (arXiv:2604.08537, accepted to CVPR 2026). The framework achieves generalizable, cross-subject visual decoding from fMRI signals without requiring subject-specific training or fine-tuning.

Core Innovation

Problem: Traditional brain decoding approaches require training separate models for each subject due to substantial variability in neural representations across individuals.

Solution: A meta-optimized approach that:

  • Uses in-context learning to rapidly infer unique neural encoding patterns
  • Conditions on a small set of image-brain activation examples from new subjects
  • Performs hierarchical inference by inverting the encoder
  • Achieves cross-subject and cross-scanner generalization without retraining

Activation Keywords

  • brain decoding
  • meta-learning in-context
  • cross-subject fMRI
  • training-free brain decoding
  • zero-shot brain decoding
  • visual decoding fMRI
  • hierarchical encoder inversion
  • BrainCoDec

Methodology

Step 1: Multi-Region Per-Voxel Encoder Estimation

For multiple brain regions, estimate per-voxel visual response encoder parameters by constructing a context over multiple stimuli and responses.

# Pseudocode for encoder estimation
def estimate_voxel_encoder(context_stimuli, context_responses, brain_regions):
    """
    Estimate per-voxel encoding parameters using context.
    
    Args:
        context_stimuli: Set of visual stimuli (images)
        context_responses: Corresponding fMRI voxel responses
        brain_regions: List of brain regions to model
    
    Returns:
        encoder_params: Per-voxel encoding parameters per region
    """
    encoder_params = {}
    for region in brain_regions:
        # Construct context: (stimulus, response) pairs
        context = [(s, r) for s, r in zip(context_stimuli, context_responses[region])]
        
        # Meta-learned encoder inference
        encoder_params[region] = meta_optimal_encoder(context)
    
    return encoder_params

Step 2: Hierarchical Functional Inversion

Construct a context consisting of encoder parameters and response values over multiple voxels to perform aggregated functional inversion for visual decoding.

def hierarchical_visual_decoding(encoder_params, target_response, candidate_images):
    """
    Decode visual stimulus from neural response.
    
    Args:
        encoder_params: Estimated encoding parameters from Step 1
        target_response: fMRI response to decode
        candidate_images: Candidate image set for retrieval
    
    Returns:
        decoded_image: Most likely visual stimulus
    """
    # Level 1: Per-region encoding
    regional_predictions = {}
    for region, params in encoder_params.items():
        predicted_response = encode_with_params(candidate_images, params)
        regional_predictions[region] = predicted_response
    
    # Level 2: Cross-voxel aggregation
    aggregated_context = {
        'encoder_params': encoder_params,
        'responses': target_response,
        'predictions': regional_predictions
    }
    
    # Inversion: Find stimulus maximizing P(image | response, context)
    decoded_image = invert_encoder_hierarchical(aggregated_context)
    
    return decoded_image

Step 3: Meta-Learning Optimization

The model is meta-trained to optimize in-context learning performance across diverse subjects.

# Meta-learning training loop
def meta_train_step(subjects_batch, model):
    """
    Meta-training step optimizing for in-context adaptation.
    """
    meta_loss = 0
    
    for subject in subjects_batch:
        # Sample context set (k-shot)
        context_stimuli, context_responses = sample_context(subject, k=10)
        
        # Sample query set
        query_stimuli, query_responses = sample_query(subject)
        
        # In-context adaptation
        encoder_params = model.estimate_encoder(context_stimuli, context_responses)
        
        # Decode query
        predictions = model.decode(encoder_params, query_responses)
        
        # Compute loss
        loss = decoding_loss(predictions, query_stimuli)
        meta_loss += loss
    
    # Update meta-parameters
    meta_loss.backward()
    optimizer.step()

Key Features

Feature Description Benefit
Training-Free No fine-tuning required for new subjects Rapid deployment
Cross-Subject Generalizes across individuals Universal applicability
Cross-Scanner Works across different MRI scanners Platform independence
No Anatomical Alignment Does not require spatial normalization Simplified preprocessing
No Stimulus Overlap Can decode novel stimuli Open-set decoding
Hierarchical Inference Two-level encoding + inversion Improved accuracy

Implementation Requirements

Data Format

# Required data structure
{
    "subject_id": str,
    "brain_regions": {
        "V1": {
            "voxel_coords": np.array[N, 3],  # 3D coordinates
            "responses": np.array[N, T],      # T time points
            "roi_mask": np.array[...]
        },
        "V2": {...},
        "V4": {...},
        "IT": {...}
    },
    "stimuli": {
        "images": np.array[M, H, W, C],  # M images
        "image_ids": List[str],
        "categories": List[str]
    },
    "trials": [
        {"stimulus_id": str, "onset_time": float, "duration": float}
    ]
}

Model Architecture

The framework uses diverse visual backbones (CLIP, DINO, etc.) as stimulus encoders combined with subject-agnostic neural response predictors.

class BrainCoDec(nn.Module):
    """
    BrainCoDec: Meta-learned in-context brain decoder.
    """
    def __init__(self, visual_encoder, neural_encoder_dim=512):
        super().__init__()
        self.visual_encoder = visual_encoder  # Pre-trained visual backbone
        self.neural_encoder = NeuralEncoder(neural_encoder_dim)
        self.inversion_network = InversionNetwork()
        
    def forward(self, context_stimuli, context_responses, query_response):
        # Encode visual stimuli
        visual_features = self.visual_encoder(context_stimuli)
        
        # Estimate subject-specific encoding
        encoding_params = self.neural_encoder.infer_from_context(
            visual_features, context_responses
        )
        
        # Decode query
        decoded_features = self.inversion_network(
            query_response, encoding_params
        )
        
        return decoded_features

Validation Results

The methodology demonstrates:

  • Strong cross-subject generalization: Outperforms subject-specific baselines
  • Cross-scanner robustness: Works across different MRI platforms
  • Diverse visual backbone compatibility: CLIP, DINO, supervised CNNs
  • Efficient few-shot adaptation: 5-10 context examples sufficient

Applications

1. Brain-Computer Interfaces

# Real-time visual decoding for BCI
bci_decoder = BrainCoDec.load_pretrained()

# Collect few calibration examples
context = collect_calibration_trials(subject, n_trials=10)

# Start decoding
while running:
    fmri_response = acquire_fmri_volume()
    decoded_image = bci_decoder.decode(fmri_response, context)
    display(decoded_image)

2. Cognitive Neuroscience Research

  • Study neural representations across individuals
  • Compare encoding models across brain regions
  • Investigate individual differences in visual processing

3. Clinical Applications

  • Locked-in syndrome communication
  • Neural prosthetics control
  • Cognitive state monitoring

Workflow for Researchers

Step 1: Prepare Data

# Organize fMRI data
python prepare_data.py \
  --fmri-dir /data/fmri/ \
  --stimuli-dir /data/images/ \
  --output /data/processed/

Step 2: Meta-Training (Optional)

# Train on your dataset (or use pretrained)
python meta_train.py \
  --data /data/processed/ \
  --backbone clip \
  --output checkpoints/braincodec.pt

Step 3: Decode New Subject

# Training-free decoding
python decode.py \
  --model checkpoints/braincodec.pt \
  --subject-data /data/new_subject/ \
  --context-size 10 \
  --output results/decoded_images.pkl

Comparison with Prior Work

Method Subject-Specific Training Anatomical Alignment Cross-Scanner Performance
Traditional Encoding Required Required No Baseline
Subject-Transfer Required (fine-tuning) Required Limited Moderate
BrainCoDec (Ours) Training-Free Not Required Yes SOTA

Limitations

  1. Context Size: Requires 5-10 example pairs for new subjects
  2. Stimulus Domain: Current evaluation on visual stimuli
  3. fMRI Modality: Optimized for BOLD fMRI; M/EEG extension future work
  4. Temporal Dynamics: Static image decoding; video decoding future work

Future Directions

  • Extension to other modalities (auditory, language)
  • Integration with real-time neurofeedback
  • Multi-modal fusion (fMRI + MEG + EEG)
  • Dynamic scene and video decoding

References

@inproceedings{nan2026metalearning,
  title={Meta-learning In-Context Enables Training-Free Cross Subject Brain Decoding},
  author={Nan, Mu and Yu, Muquan and Mai, Weijian and Prince, Jacob S. and Adeli, Hossein and Zhang, Rui and Cao, Jiahang and Becker, Benjamin and Pyles, John A. and Henderson, Margaret M. and Song, Chunfeng and Kriegeskorte, Nikolaus and Tarr, Michael J. and Hu, Xiaoqing and Luo, Andrew F.},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2026}
}

Tools Used

  • PyTorch: Deep learning framework
  • nibabel: Neuroimaging data I/O
  • nilearn: fMRI preprocessing and analysis
  • transformers: Pre-trained visual encoders

Related Skills

  • brain-dit-fmri-foundation-model: Brain-DiT universal fMRI foundation model
  • meta-learning-ict-brain-decoding-v4: Previous version of this methodology
  • visual-imagery-decoding-fmri: Latent functional alignment for visual decoding
  • eeg-visual-attention-decoding: EEG-based attention decoding

Last updated: 2026-04-30 Paper: arXiv:2604.08537 (CVPR 2026)

Install via CLI
npx skills add https://github.com/hiyenwong/ai_collection --skill meta-learning-in-context-brain-decoding-v5
Repository Details
star Stars 2
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator