PSRben/VisionHOPE

Official PyTorch implementation of VisionHOPE: Visual Backbones as Self-Modifying Learning Systems.

What it solves

VisionHOPE is a visual backbone designed to move beyond static architectures. It addresses the limitation of traditional visual models by allowing the model's memory and the rules for updating that memory to evolve dynamically as it processes an image, creating a self-modifying learning system within a single forward pass.

How it works

VisionHOPE utilizes a mechanism called self-referential nested learning (SRNL). The system employs five coupled memories that co-evolve to store content, generate key-value representations, and control learning rates and retention. To ensure stability, it uses a soft injection cap and a spectral clamp to prevent expansion during memory recurrences. For image processing, it performs four directional scans using row- and column-aligned chunks, which are then spatially restored and fused via learned channel-wise fusion.

Who it’s for

This project is designed for computer vision researchers and developers building high-performance visual backbones for tasks like image classification, object detection, and semantic segmentation.

Highlights

  • Self-Modifying Learning: Adapts both its memory and update rules dynamically during image processing.
  • Spatially Aligned Scans: Uses four-directional scanning to capture visual context.
  • Comprehensive Task Support: Pretrained weights and implementations provided for ImageNet-1K classification, COCO detection/segmentation, and ADE20K semantic segmentation.
  • Inference Optimization: Includes a prepare_for_inference function to fuse parameters for faster execution.

Related

  • Project
  • Project
  • Project
  • Project