| | ---
|
| | license: cc-by-nc-sa-4.0
|
| | language:
|
| | - en
|
| | pipeline_tag: image-feature-extraction
|
| | tags:
|
| | - pathology
|
| | - foundation_model
|
| | - vit
|
| | ---
|
| |
|
| | # SP85M
|
| |
|
| | ViT-base (85M parameters) trained on 423,000 H&E slides from the Mount Sinai Health System.
|
| |
|
| | ## Model Usage
|
| |
|
| | To get started, first clone the repository with this command:
|
| | ```bash
|
| | git clone --no-checkout https://huggingface.co/MountSinaiCompPath/SP85M && cd SP85M && git sparse-checkout init --no-cone && git sparse-checkout set '/*' '!*.bin' && git checkout
|
| | ```
|
| |
|
| | Now you can use the following code:
|
| | ```python
|
| | from PIL import Image
|
| | import numpy as np
|
| | import vision_transformer
|
| | import torch
|
| | import torch.nn as nn
|
| | import torchvision.transforms as transforms
|
| | from huggingface_hub import PyTorchModelHubMixin
|
| |
|
| | class SP85M(nn.Module, PyTorchModelHubMixin):
|
| | def __init__(self):
|
| | super().__init__()
|
| | self.encoder = vision_transformer.vit_small(num_classes=0)
|
| |
|
| | def forward(self, x):
|
| | return self.encoder(x)
|
| |
|
| | # Download up model
|
| | model = SP85M.from_pretrained("MountSinaiCompPath/SP85M")
|
| |
|
| | # Set up transform
|
| | transform = transforms.Compose([
|
| | transforms.ToTensor(),
|
| | transforms.Normalize((0.485, 0.456, 0.406), (0.229, 0.224, 0.225))
|
| | ])
|
| |
|
| | # Image
|
| | img = np.random.randint(0, 256, size=224*224*3).reshape(224,224,3).astype(np.uint8)
|
| | img = Image.fromarray(img)
|
| | img = transform(img).unsqueeze(0)
|
| |
|
| | # Inference
|
| | with torch.no_grad():
|
| | h = model(img)
|
| | ``` |