/ Модель

Характеристики

Лицензия
Своя лицензия
Опубликована
11 сен 2026

Andrew

Эмбеддинги изображенийИзображение → embedding

Набор энкодеров для извлечения признаков из изображений гистологии простаты на уровне тайла и целого слайда для последующих MIL-задач.

0скачиваний за 30 дней0лайковвеса обновлены11 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Репозиторий содержит два энкодера для гистопатологических изображений простаты, разработанных для извлечения признаков в проекте andrew-prostate-pathology и последующих задач MIL. Энкодер andrew-tile построен на ViT-H/14 с обучением DINOv2 и основан на paige-ai/Virchow; для каждого тайла он объединяет CLS-токен и среднее патч-токенов в эмбеддинг размерности 2560. Энкодер andrew-slide основан на PRISM с архитектурой в стиле CoCa, дообучен и агрегирует эмбеддинги тайлов в вектор уровня всего слайда.

Модель предназначена для извлечения векторных признаков из тайлов и целых слайдов гистологии простаты, чтобы использовать их в последующих MIL-сценариях. В репозитории указаны веса Safetensors в формате timm для andrew-tile и файл состояния PyTorch для andrew-slide. Лицензия обозначена как other; конкретные условия использования в предоставленных данных не раскрыты.

Сценарии применения

  • извлечение эмбеддингов из тайлов гистологических изображений простаты
  • агрегация признаков тайлов в вектор целого гистологического слайда
  • подготовка признаков для MIL-классификации гистологических слайдов простаты

Ограничения

Модель специализирована на гистопатологических изображениях простаты и может быть неприменима к другим тканям или типам изображений. Для двух энкодеров README указывает разные форматы весов, поэтому способ загрузки зависит от компонента.

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

andrew-pathology encoders

Two prostate-histopathology encoders that produce the pre-extracted features used by the downstream MIL tasks in the andrew-prostate-pathology repo:

modelrolearchderived fromfiles
andrew-tiletile / patch encoderViT-H/14 (DINOv2-trained)paige-ai/Virchowandrew-tile/
andrew-slideslide encoderPRISM (CoCa-style)paige-ai/Prismandrew-slide/

Pipeline: each tile → andrew-tile → concat([CLS, mean(patch tokens)]) = 2560-dim embedding → andrew-slide aggregates the tile embeddings into one slide-level vector.

Repository layout

andrew-tile/
  model.safetensors     # ViT-H/14 weights (timm format)
  config.json           # timm model config
andrew-slide/
  andrew-slide.model.pth # fine-tuned PRISM state_dict

Usage

andrew-tile (patch encoder)

import timm, torch
from huggingface_hub import hf_hub_download
from safetensors.torch import load_file

cfg = hf_hub_download("EstelleXIA/andrew", "andrew-tile/config.json")
wts = hf_hub_download("EstelleXIA/andrew", "andrew-tile/model.safetensors")

model = timm.create_model("vit_huge_patch14_224", pretrained=False,
                          img_size=224, patch_size=14, embed_dim=1280, depth=32,
                          num_heads=16, mlp_ratio=5.3375, global_pool="",
                          num_classes=0, reg_tokens=0, init_values=1e-5)
model.load_state_dict(load_file(wts))
model.eval()

# x: [B, 3, 224, 224], normalized with mean=std=0.5
with torch.inference_mode():
    tokens = model(x)                     # [B, 257, 1280]
    emb = torch.cat([tokens[:, 0], tokens[:, 1:].mean(dim=1)], dim=-1)  # [B, 2560]

andrew-slide (slide encoder)

import torch
from huggingface_hub import hf_hub_download
from transformers import AutoModel

model = AutoModel.from_pretrained("paige-ai/Prism", trust_remote_code=True)
ckpt = hf_hub_download("EstelleXIA/andrew", "andrew-slide/andrew-slide.model.pth")
state = torch.load(ckpt, map_location="cpu")
state = state.get("model_state_dict", state)
model.load_state_dict(state, strict=False)
model.eval()

License

Released for non-commercial academic research only, as derivatives of paige-ai/Virchow and paige-ai/Prism. You must comply with the original Virchow and PRISM licenses. No commercial use; no redistribution of the weights.

Citation

If you use these weights, please cite the andrew-prostate-pathology repository and the original Virchow / PRISM / DINOv2 works.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · image-feature-extraction

Можно запустить

Подбираем GPU…

Ревизия весов
b76a30d

0 моделей