Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

model architectures and pretrained models to support #2

Open
9 of 66 tasks
dmarx opened this issue Apr 9, 2022 · 36 comments
Open
9 of 66 tasks

model architectures and pretrained models to support #2

dmarx opened this issue Apr 9, 2022 · 36 comments

Comments

@dmarx
Copy link
Owner

dmarx commented Apr 9, 2022

installable

installable with extra effort

  • https://github.com/Sense-GVT/DeCLIP
    • installs into a generic "prototype" package that could conflict with other packages using the same "spring" starter template
    • dataclasses==0.8 in requirements.txt throws version conflict

Not installable

Not released


References for more variants:

https://paperswithcode.com/paper/learning-transferable-visual-models-from

Potentially in scope, lower priority

Older stuff

VQA is sort of a generalization of vision language co-training... TBD.

MAGMA could be another useful approach to promote multi-lingual support

https://github.com/Aleph-Alpha/magma

@dmarx
Copy link
Owner Author

dmarx commented Apr 17, 2022

https://github.com/navervision/KELIP

@apolinario
Copy link
Collaborator

LiT: they released some models last week https://github.com/google-research/vision_transformer#lit-models

Audio: besides AudioCLIP there's also wav2clip with a different approach: https://github.com/descriptinc/lyrebird-wav2clip
image

@dmarx
Copy link
Owner Author

dmarx commented Apr 19, 2022

https://github.com/allenai/reclip

@dmarx
Copy link
Owner Author

dmarx commented Apr 19, 2022

https://github.com/facebookresearch/Detic

@dmarx
Copy link
Owner Author

dmarx commented Apr 19, 2022

https://github.com/sallymmx/ActionCLIP

@dmarx
Copy link
Owner Author

dmarx commented Apr 19, 2022

https://github.com/ChenRocks/UNITER

@dmarx
Copy link
Owner Author

dmarx commented Apr 20, 2022

https://github.com/raoyongming/DenseCLIP

@dmarx
Copy link
Owner Author

dmarx commented Apr 20, 2022

https://github.com/ttlmh/Bridge-Prompt

@apolinario
Copy link
Collaborator

https://github.com/sonoisa/clip-japanese

@dmarx
Copy link
Owner Author

dmarx commented Apr 29, 2022

SLIP demo install using dapm and loading weights using old strategy from DD: alembics/disco-diffusion@c509aa1

!wget https://dl.fbaipublicfiles.com/slip/slip_base_100ep.pt
!pip install napm

import napm
url = 'https://github.com/facebookresearch/SLIP'
napm.pseudoinstall_git_repo(url, add_install_dir_to_path=True)

import torch
import napm
import SLIP
from SLIP.models import SLIP_VITB16, SLIP, SLIP_VITL16

sd = torch.load('slip_base_100ep.pt', map_location=torch.device('cpu') )
real_sd = {}
for k, v in sd['state_dict'].items():
  new_key = '.'.join(k.split('.')[1:]) # strips "module" prefix. sure, why not.
  #print(k, new_key) 
  real_sd[new_key] = v
del sd

SLIPB16model = SLIP_VITB16(ssl_mlp_dim=4096, ssl_emb_dim=256)
SLIPB16model.load_state_dict(real_sd)

@dmarx
Copy link
Owner Author

dmarx commented Apr 29, 2022

CLOOB demo using dapm

!pip install git+https://github.com/openai/CLIP
import napm

url = "https://github.com/crowsonkb/cloob-training"
napm.pseudoinstall_git_repo(url, package_name='cloob')

import cloob
from cloob.cloob_training import model_pt, pretrained

config = pretrained.get_config('cloob_laion_400m_vit_b_16_16_epochs')
model = model_pt.get_pt_model(config)
checkpoint = pretrained.download_checkpoint(config)
model.load_state_dict(model_pt.get_pt_params(config, checkpoint), )
#model.eval().requires_grad_(False).to('cuda')

@dmarx
Copy link
Owner Author

dmarx commented May 5, 2022

CoCa https://arxiv.org/abs/2205.01917

@dmarx
Copy link
Owner Author

dmarx commented May 8, 2022

OTTER https://github.com/facebookresearch/OTTER

@dmarx
Copy link
Owner Author

dmarx commented May 9, 2022

ruDOLPH

@dmarx
Copy link
Owner Author

dmarx commented May 11, 2022

https://socraticmodels.github.io/

@dmarx
Copy link
Owner Author

dmarx commented May 14, 2022

https://github.com/yxuansu/MAGIC

@apolinario
Copy link
Collaborator

https://github.com/rinnakk/japanese-clip (not the same as this)

@apolinario
Copy link
Collaborator

This is a very large and seemingly very good CLIP in Chinese that @Dango233 has shown me: https://wukong-dataset.github.io/wukong-dataset/benchmark.html

One problem though: It's pre-trained weights are on Mindspore (Huawei's PyTorch) so someone would need to convert that...

@Dango233
Copy link

https://github.com/mindspore-ai/models/tree/master/research/mm/wukong

@dmarx
Copy link
Owner Author

dmarx commented May 29, 2022

maybe just the fine tuned model?

https://github.com/j-min/clip-caption-reward

@apolinario
Copy link
Collaborator

A new (better, it seems) Multilingual CLIP https://github.com/FreddeFrallan/Multilingual-CLIP

@rom1504
Copy link
Collaborator

rom1504 commented Jun 2, 2022

@apolinario indeed and now it's packaged properly on pypi as multilingual-clip

it's also available for easy testing at https://rom1504.github.io/clip-retrieval/?useMclip=true&query=%E9%BB%84%E8%89%B2%E3%81%84%E7%8C%AB&back=https%3A%2F%2Fknn5.laion.ai&index=laion5B

@dmarx
Copy link
Owner Author

dmarx commented Jun 3, 2022

@rom1504 @apolinario the m-clip release gave me a thought: maybe we could host mmc on pypi with essentially none of the other perceptors installed at all. Simple instructions for "finalizing" the mmc install could live in the README (as well as one-liners for specific perceptors PRN), and we could add a warning on import too. maybe we could ship an update script or a CLI command.

My thinking here is if we ship the core tooling as a bare library, then anyone could attach the mocking utilities upstream to quickly make new perceptors drop-in-able if they aren't already, which conversely would make them trivial to add to mmc (since they'd already be hooked into a conformant API one way or another).

Actually, it might be cleaner and simpler to isolate a simple mocking wrapper and package that for pypi?

I'm mostly just thinking out-loud now. Thoughts?

@apolinario
Copy link
Collaborator

I like the idea and spirit and I feel eventually if MMC gets way too many perceptors making some optional make a lot of sense. Now starting with all optional, I'm not sure - regardless I think your idea holds - just not sure if we ship empty or with some basics (OpenAI + OpenCLIP for e.g.) and let users further install from then on

@apolinario
Copy link
Collaborator

apolinario commented Jun 5, 2022

(New perceptor: https://github.com/microsoft/UniCL)

@apolinario
Copy link
Collaborator

https://github.com/goel-shashank/CyCLIP

@dmarx
Copy link
Owner Author

dmarx commented Jun 10, 2022

https://github.com/facebookresearch/omnivore

@dmarx
Copy link
Owner Author

dmarx commented Jun 23, 2022

https://github.com/microsoft/GLIP

@dmarx
Copy link
Owner Author

dmarx commented Jun 25, 2022

https://github.com/microsoft/RegionCLIP

@rom1504
Copy link
Collaborator

rom1504 commented Jun 25, 2022 via email

@dmarx
Copy link
Owner Author

dmarx commented Jun 30, 2022

https://github.com/Lednik7/CLIP-ONNX/tree/main/clip_onnx

@dmarx
Copy link
Owner Author

dmarx commented Jun 30, 2022

https://github.com/OFA-Sys/OFA

@apolinario
Copy link
Collaborator

Turkish CLIP https://github.com/yusufani/TrCLIP

@dmarx
Copy link
Owner Author

dmarx commented Sep 26, 2022

https://github.com/salesforce/LAVIS

@dmarx
Copy link
Owner Author

dmarx commented Dec 9, 2022

EVA-CLIP - https://github.com/baaivision/EVA/blob/master/clip/README.md

basically already api compliant

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants