🚀 LSNet:见大察微
LSNet是受人类视觉系统动态异尺度能力启发而设计的轻量级视觉模型家族,即“见大察微”。该模型在各类视觉任务中实现了最先进的性能与效率平衡。
🚀 快速开始
环境准备
推荐使用conda
虚拟环境:
conda create -n lsnet python=3.8
pip install -r requirements.txt
数据准备
从 http://image-net.org/ 下载并解压 ImageNet 的训练集和验证集图像。训练数据和验证数据应分别存放在 train
文件夹和 val
文件夹中:
|-- /path/to/imagenet/
|-- train
|-- val
训练模型
在 8 块 GPU 的机器上训练 LSNet-T:
python -m torch.distributed.launch --nproc_per_node=8 --master_port 12345 --use_env main.py --model lsnet_t --data-path ~/imagenet --dist-eval
测试模型
python main.py --eval --model lsnet_t --resume ./pretrain/lsnet_t.pth --data-path ~/imagenet
也可以从 🤗 自动下载模型:
import timm
model = timm.create_model(
f'hf_hub:jameslahm/lsnet_{t/t_distill/s/s_distill/b/b_distill}',
pretrained=True
)
✨ 主要特性
- 受人类视觉系统动态异尺度能力启发,提出“见大察微”策略。
- 引入 LS(大 - 小)卷积,结合大核感知和小核聚合,能有效捕捉广泛的感知信息并实现精确的特征聚合。
- 在各类视觉任务中实现了性能与效率的平衡。
💻 使用示例
基础用法
import timm
import torch
from PIL import Image
import requests
from timm.data import resolve_data_config, create_transform
model = timm.create_model(
'hf_hub:jameslahm/lsnet_b',
pretrained=True
)
model.eval()
url = 'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
img = Image.open(requests.get(url, stream=True).raw)
config = resolve_data_config({}, model=model)
transform = create_transform(**config)
input_tensor = transform(img).unsqueeze(0)
with torch.no_grad():
output = model(input_tensor)
probabilities = torch.nn.functional.softmax(output[0], dim=0)
top5_prob, top5_catid = torch.topk(probabilities, 5)
📚 详细文档
论文链接
LSNet: See Large, Focus Small
代码仓库
https://github.com/jameslahm/lsnet
分类任务(ImageNet-1K)
模型指标
- * 表示使用蒸馏的结果。
- 吞吐量在 Nvidia RTX3090 上使用 speed.py 进行测试。
模型 |
前 1 准确率 |
参数数量 |
浮点运算次数 |
吞吐量 |
模型权重 |
日志文件 |
LSNet-T |
74.9 / 76.1* |
11.4M |
0.3G |
14708 |
T / T* |
T / T* |
LSNet-S |
77.8 / 79.0* |
16.1M |
0.5G |
9023 |
S / S* |
S / S* |
LSNet-B |
80.3 / 81.6* |
23.2M |
1.3G |
3996 |
B / B* |
B / B* |
下游任务
🔧 技术细节
视觉网络设计,包括卷积神经网络和视觉变换器,极大地推动了计算机视觉领域的发展。然而,它们复杂的计算给实际部署带来了挑战,特别是在实时应用中。为了解决这个问题,研究人员探索了各种轻量级和高效的网络设计。然而,现有的轻量级模型主要利用自注意力机制和卷积进行令牌混合。这种依赖在轻量级网络的感知和聚合过程中带来了有效性和效率的限制,阻碍了在有限计算预算下性能和效率之间的平衡。
在本文中,我们从高效的人类视觉系统固有的动态异尺度视觉能力中获得灵感,提出了一种用于轻量级视觉网络设计的“见大察微”策略。我们引入了 LS(大 - 小)卷积,它结合了大核感知和小核聚合。它可以有效地捕捉广泛的感知信息,并为动态和复杂的视觉表示实现精确的特征聚合,从而实现对视觉信息的高效处理。基于 LS 卷积,我们提出了 LSNet,一个新的轻量级模型家族。大量实验表明,LSNet 在各种视觉任务中比现有的轻量级网络具有更优越的性能和效率。
📄 许可证
本项目采用 MIT 许可证。
📚 引用
如果我们的代码或模型对您的工作有帮助,请引用我们的论文:
@misc{wang2025lsnetlargefocussmall,
title={LSNet: See Large, Focus Small},
author={Ao Wang and Hui Chen and Zijia Lin and Jungong Han and Guiguang Ding},
year={2025},
eprint={2503.23135},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2503.23135},
}
🙏 致谢
图像分类(ImageNet)代码部分基于 EfficientViT、LeViT、PoolFormer 和 EfficientFormer 构建。
目标检测和分割管道来自 MMCV(MMDetection 和 MMSegmentation)。
感谢这些优秀的实现!