| name | learning-visual-priors-llm-pretraining |
| title | Learning Visual Priors Before Seeing: Optimized VLM Pretraining |
| version | 0.0.2 |
| engine | skillxiv-v0.0.2-claude-opus-4.6 |
| license | MIT |
| url | https://arxiv.org/abs/2509.26625 |
| keywords | ["VLM","pretraining","data-mixture","visual-understanding","foundation-models"] |
| description | Decompose visual priors into perception and reasoning components, each optimized by distinct data types: reasoning from code/math corpora, perception from diverse modality-rich sources. Use to construct efficient VLM pretraining pipelines balancing multimodal perception with reasoning capability. |
Learning Visual Priors Before Seeing: Optimized VLM Pretraining
This research decomposes how Vision-Language Models develop visual understanding during text-only pretraining, identifying that perception and reasoning components arise from distinct data sources. By optimizing pretraining mixtures accordingly, practitioners can achieve competitive multimodal performance with reduced visual fine-tuning data.
Core Architecture
- Perception component: Emerges from diverse corpora (web text, books, scientific papers)
- Reasoning component: Scales with reasoning-focused data (code, mathematics)
- Mixture optimization: 60% reasoning + 15% visual-diverse content achieves balanced tradeoff
- Controlled experiments: 100+ systematic experiments identifying component origins
Implementation Steps
Design pretraining data mixture based on component analysis:
from vlm_mixture import DataMixture, PerceptionReasoningOptimizer
data_config = {
"reasoning_content": {
"code": 0.30,
"mathematics": 0.20,
"scientific": 0.10
},
"perception_content": {
"web_text": 0.15,
"books": 0.10,
"structured": 0.15
}
}
mixture = DataMixture(
config=data_config,
total_tokens=1_000_000_000,
adapter_architecture=
)