이 저장소에는 MagicLens 구현이 포함되어 있습니다. 여기의 코드는 Jax와 Flax를 사용합니다. 현재 구현에서는 아직 훈련을 지원하지 않습니다. 데이터세트 예시는 웹사이트를 참조하세요.
개방형 지침을 지원하는 일련의 자기 감독 이미지 검색 모델인 MagicLens를 소개합니다. MagicLens의 핵심 주제는 텍스트 명령을 통해 시각적 유사성을 넘어 더 풍부한 관계로 이미지를 검색할 수 있다는 것입니다. MagicLens는 핵심적이고 새로운 통찰력을 바탕으로 구축되었습니다. 동일한 웹 페이지에서 자연적으로 발생하는 이미지 쌍에는 광범위한 암시적 관계(예: 내부 보기)가 포함되어 있으며 대규모 다중 모드 모델을 통해 명령을 합성하여 이러한 암시적 관계를 명시적으로 가져올 수 있습니다( LMM) 및 대규모 언어 모델(LLM). 웹에서 마이닝된 풍부한 의미론적 관계가 있는 36.7M(쿼리 이미지, 명령, 대상 이미지) 삼중항으로 훈련된 MagicLens는 다양한 이미지 검색 작업의 8개 벤치마크에서 이전 SOTA(최신 기술) 방법과 비슷하거나 더 나은 결과를 얻습니다. . 놀랍게도 이전 SOTA보다 성능이 뛰어나지만 여러 벤치마크에서 모델 크기가 50배 더 작습니다. 보이지 않는 140만 개의 이미지 코퍼스에 대한 추가적인 인간 분석은 MagicLens가 지원하는 검색 의도의 다양성을 더욱 입증합니다.
conda create --name magic_lens python=3.9
conda activate magic_lens
git clone https://github.com/google-research/scenic.git
cd scenic
pip install .
pip install -r scenic/projects/baselines/clip/requirements.txt
# you may need to install corresponding GPU version of jax following https://jax.readthedocs.io/en/latest/installation.html
# e.g.,
# # CUDA 12 installation
# Note: wheels only available on linux.
# pip install --upgrade "jax[cuda12_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
# # CUDA 11 installation
# Note: wheels only available on linux.
# pip install --upgrade "jax[cuda11_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
다음을 통해 모델을 다운로드하세요:
cd .. # in main folder `magiclens`
# you may need to use `gcloud auth login` for access, any gmail account should work.
gsutil cp -R gs://gresearch/magiclens/models ./
또는 Google 드라이브를 통해
./data
의 각 데이터세트 폴더를 따라가세요. 현재 우리는 FIQ, CIRCO 및 DTIN을 성공적으로 테스트했습니다.
python inference.py
--model_size large
--model_path ./models/magic_lens_clip_large.pkl
--dataset circo
무게 변환으로 인해 성능이 약간 다를 수 있습니다.
CIRCO
에서
모델 | 지도@5 | 지도@10 | 맵@25 | 맵@50 |
---|---|---|---|---|
이전 SOTA | 26.8 | 27.6 | 30.0 | 31.0 |
베이스(원본) | 23.1 | 23.8 | 25.8 | 26.7 |
베이스(변환) | 22.3 | 23.2 | 25.0 | 26.0 |
대형(원본) | 29.6 | 30.8 | 33.4 | 34.4 |
대형(변환됨) | 29.5 | 30.8 | 33.2 | 34.3 |
여기에 인용 세부정보(보통 붙여넣을 수 있는 BibTeX 스니펫)를 추가하세요.
@inproceedings{zhang2024magiclens,
title = {{M}agic{L}ens: Self-Supervised Image Retrieval with Open-Ended Instructions},
author = {Zhang, Kai and Luan, Yi and Hu, Hexiang and Lee, Kenton and Qiao, Siyuan and Chen, Wenhu and Su, Yu and Chang, Ming-Wei},
booktitle = {Proceedings of the 41st International Conference on Machine Learning},
pages = {59403--59420},
year = {2024},
editor = {Salakhutdinov, Ruslan and Kolter, Zico and Heller, Katherine and Weller, Adrian and Oliver, Nuria and Scarlett, Jonathan and Berkenkamp, Felix},
volume = {235},
series = {Proceedings of Machine Learning Research},
month = {21--27 Jul},
publisher = {PMLR},
url = {https://proceedings.mlr.press/v235/zhang24an.html}
}
저작권 2024 DeepMind Technologies Limited
모든 소프트웨어는 Apache 라이센스 버전 2.0(Apache 2.0)에 따라 라이센스가 부여됩니다. Apache 2.0 라이센스를 준수하는 경우를 제외하고는 이 파일을 사용할 수 없습니다. https://www.apache.org/licenses/LICENSE-2.0에서 Apache 2.0 라이센스 사본을 얻을 수 있습니다.
다른 모든 자료는 Creative Commons Attribution 4.0 International License(CC-BY)에 따라 라이센스가 부여됩니다. 귀하는 https://creativecommons.org/licenses/by/4.0/legalcode에서 CC-BY 라이선스 사본을 얻을 수 있습니다.
해당 법률에서 요구하거나 서면으로 동의하지 않는 한, Apache 2.0 또는 CC-BY 라이센스에 따라 여기에서 배포되는 모든 소프트웨어 및 자료는 명시적이든 묵시적이든 어떠한 종류의 보증이나 조건 없이 "있는 그대로" 배포됩니다. 해당 라이선스에 따른 허가 및 제한 사항을 관리하는 특정 언어는 라이선스를 참조하세요.
이것은 공식 Google 제품이 아닙니다.