Uni3D:探索规模化统一3D表示
周俊生1,2*,王金生1*,马宝瑞1*,刘雨生2,黄铁军1,3,王鑫龙1
1北京智源人工智能研究院,2清华大学,3北京大学
* 同等贡献
ICLR 2024(聚光灯论文)
我们提出了Uni3D,这是一个统一且可扩展的3D预训练框架,用于大规模3D表示学习,并探索其在十亿参数规模下的极限。Uni3D使用2D初始化的ViT进行端到端预训练,将3D点云特征与图像-文本对齐的特征对齐。通过简单的架构和预训练任务,Uni3D可以利用大量2D预训练模型作为初始化,并将图像-文本对齐模型作为目标,从而释放2D模型和扩展策略在3D领域的巨大潜力。我们高效地将Uni3D扩展到十亿参数规模,并在广泛的3D任务上创造了新纪录。
进度安排
我们致力于开源Uni3D相关材料,包括:
- 将Uni3D扩展为3D评估指标(Uni3D-score),以增强文本到3D任务中的语义一致性。详情请参见GeoDream。
- 参数范围从6M到1B的模型权重。
- 评估代码
- 评估数据
- 预训练代码
- 预训练数据
我们希望通过开源和促进合作来推动我们社区的发展👬。让我们一起朝着多模态智能迈进🍻。
安装
克隆此仓库并安装所需的包:
git clone https://github.com/baaivision/Uni3D.git
cd Uni3D
conda create -n uni3d python=3.8
conda activate uni3d
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
pip install -r requirements.txt
# 从https://github.com/erikwijmans/Pointnet2_PyTorch安装pointnet2扩展
pip install "git+git://github.com/erikwijmans/Pointnet2_PyTorch.git#egg=pointnet2_ops&subdirectory=pointnet2_ops_lib"
核心包:
- Pytorch 版本 2.0.1
- open-clip-torch 版本 2.20.0
- timm 版本 0.9.7
- DeepSpeed 版本 0.10.3
- Open3D 版本 0.17.0
模型库
模型 | 训练数据 | Objaverse-LVIS Top1(Top5) | ModelNet40 Top1(Top5) | ScanObjectNN Top1(Top5) |
---|---|---|---|---|
Uni3d-B | 集成(不含LVIS) | 45.9 (74.8) | 86.1 (98.7) | 61.7 (89.5) |
Uni3d-B | 集成 | 51.7 (80.8) | 86.3 (97.9) | 63.8 (90.2) |
Uni3d-L | 集成(不含LVIS) | 46.2 (74.7) | 86.6 (97.8) | 58.4 (90.1) |
Uni3d-L | 集成 | 53.1 (81.5) | 86.3 (98.3) | 58.2 (89.4) |
Uni3d-g | 集成(不含LVIS) | 47.2 (76.1) | 86.8 (98.4) | 66.5 (90.1) |
Uni3d-g | 集成 | 53.5 (82.0) | 87.3 (99.2) | 63.9 (91.7) |
Uni3d-g 🔥 | 集成 | 55.3 (82.9) | 88.2 (99.3) | 65.3 (92.7) |
零样本3D分类评估
我们在三个数据集上评估零样本3D分类性能:Objaverse-LVIS、ModelNet40和ScanObjectNN。
- 请参考DATASETS.md进行评估数据集准备。
- [推荐🤗] 下载clip模型并将其放在
/path/to/clip_model
文件夹中。 - 下载模型库权重并将它们放在
/path/to/checkpoints
文件夹中。 - 运行
bash scripts/inference.sh [scale]
来评估上述数据集上的模型,例如,bash scripts/inference.sh giant
。
预训练
- 请参考DATASETS.md进行预训练数据集准备。
- [推荐🤗] 下载clip模型并将其放在
/path/to/clip_model
文件夹中。 - [推荐🤗] 下载初始化模型并将其放在
/path/to/init_model
文件夹中。 - 运行
bash scripts/pretrain.sh
在集成数据集上预训练模型。
可视化
开放世界理解
单样本部件分割
点云绘画
跨模态检索
致谢
Uni3D基于出色的EVA、OpenCLIP、timm、DeepSpeed、ULIP和OpenShape构建。
引用
@inproceedings{zhou2023uni3d,
title={Uni3d: Exploring unified 3d representation at scale},
author={Zhou, Junsheng and Wang, Jinsheng and Ma, Baorui and Liu, Yu-Shen and Huang, Tiejun and Wang, Xinlong},
booktitle={International Conference on Learning Representations (ICLR)},
year={2024}
}