Midnight
模型简介
该模型专注于组织病理学图像特征提取,采用改进的DINOv2框架,适用于计算病理学领域
模型特点
小数据高效训练
仅使用12k全切片图像(WSI)训练,数据量比同类模型减少100倍
高分辨率后训练
通过高分辨率后训练提升嵌入质量,特别适合病理图像分析
领域优化架构
针对病理学特点改进DINOv2框架,包含色彩增强和分块过滤等技术
模型能力
病理图像特征提取
组织学分类
病理图像分割
基因表达预测
使用案例
医疗诊断
乳腺癌分类
对乳腺癌组织切片进行分类分析
在BreaKHis数据集上达到0.840准确率
结直肠癌检测
识别结直肠癌组织特征
在CRC数据集上达到0.967准确率
医学研究
基因表达预测
从病理图像预测基因表达模式
在HEST基准上达到0.412性能
🚀 Kaiko midnight
Midnight - 用少几个数量级的数据训练最先进的病理学基础模型
本仓库包含了论文 "Training state-of-the-art pathology foundation models with orders of magnitude less data" 中提出的 Midnight-12k 模型的检查点。尽管我们的模型在训练时使用的全切片图像(WSIs)数量显著减少,但与领先的病理学基础模型(FMs)相比,仍能取得有竞争力的性能。
🚀 快速开始
本仓库提供了 Midnight-12k 模型的检查点,可用于病理学相关任务。在使用模型前,请确保按照以下步骤准备好数据集。
✨ 主要特性
- 提出了一种基于 DINOv2 的改进自监督训练框架,针对计算病理学优化了模型性能。
- 训练了三种新颖的病理学基础模型,使用的数据量显著减少(最多减少 100 倍的 WSIs)。
- 引入高分辨率后训练,提高了嵌入质量。
📦 安装指南
文档未提及安装步骤,故跳过此章节。
💻 使用示例
基础用法
from transformers import AutoImageProcessor, AutoModel
from PIL import Image
import requests
from torchvision.transforms import v2
url = 'https://upload.wikimedia.org/wikipedia/commons/8/80/Breast_DCIS_histopathology_%281%29.jpg'
image = Image.open(requests.get(url, stream=True).raw)
transform = v2.Compose(
[
v2.Resize(224),
v2.CenterCrop(224),
v2.ToTensor(),
v2.Normalize(mean=(0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5)),
]
)
model = AutoModel.from_pretrained('kaiko-ai/midnight')
高级用法
提取用于分类的嵌入
对于分割任务,模型输出对应 16x16 的补丁令牌(由 224/14 = 16 得出)。
import torch
def extract_classification_embedding(tensor):
cls_embedding, patch_embeddings = tensor[:, 0, :], tensor[:, 1:, :]
return torch.cat([cls_embedding, patch_embeddings.mean(1)], dim=-1)
batch = transform(image).unsqueeze(dim=0)
embedding = extract_classification_embedding(model(batch).last_hidden_state)
print(f"Embedding shape: {embedding[0].shape}")
提取用于分割的嵌入
import math
import torch
def extract_segmentation_embedding(tensor):
features = tensor[:, 1:, :].permute(0, 2, 1)
batch_size, hidden_size, patch_grid = features.shape
height = width = int(math.sqrt(patch_grid))
return features.view(batch_size, hidden_size, height, width)
batch = transform(image).unsqueeze(dim=0)
embedding = extract_segmentation_embedding(model(batch).last_hidden_state)
print(f"Embedding shape: {embedding[0].shape}")
📚 详细文档
模型亮点
- Midnight-12k:仅在公开可用的 TCGA 数据集(12k WSIs)上进行训练。
- Midnight-92k:在 TCGA 数据集和荷兰癌症研究所(NKI-80k)的专有数据集上进行训练。
- Midnight-92k/392:我们表现最佳的模型,经过高分辨率后训练进行微调。
模型权重
- Midnight-12k:根据宽松的 MIT 许可证,可在 此处 公开获取。
- Midnight-92k 和 Midnight-92k/392:在专有数据集上进行训练,访问受限。
训练数据集
属性 | 详情 |
---|---|
数据集 | TCGA:公开,仅 FFPE;NKI-80k:专有,10,141 名患者,31 个器官 |
WSIs 数量 | TCGA:12k;NKI-80k:80k |
训练组件
- DINOv2:使用 DINOv2 进行自监督训练。
- KDE 正则化器:替换 DINOv2 中的 KoLeo,以确保嵌入多样性和训练稳定性。
- 在线打补丁:高效实时提取信息丰富的图块。
- 颜色增强(HED):提高对染色变化的鲁棒性。
- 图块过滤:去除低信息含量的组织区域。
评估
使用两组开源基准对模型进行了全面评估:
我们表现最佳的模型 Midnight-92k/392 始终优于或与 Virchow2 和 UNI-2 等领先模型相匹配。
结果总结
模型 | 平均值 | PCam 10 次采样 | BACH | BRACS | BreaKHis | CRC | Gleason | MHIST | PCam | Cam16(小) | Panda(小) | CoNSeP | MoNuSAC | HEST |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Midnight-92k/392 | 0.778 | 0.900 | 0.904 | 0.646 | 0.802 | 0.966 | 0.807 | 0.828 | 0.951 | 0.868 | 0.651 | 0.662 | 0.708 | 0.415 |
UNI-2 | 0.776 | 0.885 | 0.924 | 0.651 | 0.863 | 0.970 | 0.777 | 0.829 | 0.951 | 0.873 | 0.666 | 0.626 | 0.644 | 0.431 |
Midnight-92k | 0.767 | 0.882 | 0.889 | 0.615 | 0.793 | 0.967 | 0.823 | 0.831 | 0.948 | 0.872 | 0.643 | 0.629 | 0.656 | 0.425 |
Virchow2 | 0.766 | 0.835 | 0.890 | 0.633 | 0.818 | 0.966 | 0.791 | 0.865 | 0.938 | 0.860 | 0.646 | 0.640 | 0.674 | 0.403 |
Midnight-12k | 0.763 | 0.803 | 0.907 | 0.639 | 0.840 | 0.967 | 0.790 | 0.815 | 0.931 | 0.869 | 0.656 | 0.625 | 0.664 | 0.412 |
Kaiko-B8 | 0.757 | 0.799 | 0.876 | 0.641 | 0.842 | 0.960 | 0.761 | 0.830 | 0.920 | 0.836 | 0.650 | 0.644 | 0.686 | 0.391 |
H-Optimus-0 | 0.755 | 0.831 | 0.752 | 0.620 | 0.813 | 0.962 | 0.769 | 0.850 | 0.943 | 0.847 | 0.672 | 0.644 | 0.687 | 0.425 |
Prov_GigaPath | 0.752 | 0.853 | 0.794 | 0.626 | 0.846 | 0.959 | 0.727 | 0.831 | 0.944 | 0.812 | 0.657 | 0.628 | 0.688 | 0.405 |
Hibou-L | 0.751 | 0.825 | 0.792 | 0.643 | 0.767 | 0.954 | 0.766 | 0.850 | 0.949 | 0.852 | 0.654 | 0.646 | 0.668 | 0.397 |
UNI | 0.749 | 0.833 | 0.797 | 0.613 | 0.808 | 0.954 | 0.759 | 0.841 | 0.937 | 0.854 | 0.662 | 0.627 | 0.662 | 0.391 |
Phikon | 0.724 | 0.826 | 0.744 | 0.579 | 0.715 | 0.946 | 0.743 | 0.824 | 0.919 | 0.822 | 0.648 | 0.624 | 0.644 | 0.377 |
Phikon-v2 | 0.718 | 0.756 | 0.737 | 0.607 | 0.725 | 0.953 | 0.753 | 0.796 | 0.900 | 0.807 | 0.634 | 0.626 | 0.645 | 0.391 |
Lunit | 0.714 | 0.763 | 0.785 | 0.627 | 0.759 | 0.943 | 0.758 | 0.785 | 0.905 | 0.759 | 0.604 | 0.600 | 0.630 | 0.362 |
vitg14 (nat. img.) | 0.674 | 0.721 | 0.724 | 0.578 | 0.783 | 0.943 | 0.740 | 0.855 | 0.881 | 0.500 | 0.509 | 0.565 | 0.614 | 0.351 |
vitg14 (initial) | 0.493 | 0.652 | 0.474 | 0.413 | 0.425 | 0.754 | 0.459 | 0.578 | 0.763 | 0.526 | 0.304 | 0.462 | 0.432 | 0.166 |
🔧 技术细节
文档未提及具体技术实现细节(>50 字),故跳过此章节。
📄 许可证
本项目采用 MIT 许可证。
引用
@article{KDK2025,
title={Training state-of-the-art pathology foundation models with orders of magnitude less data},
author={Mikhail Karasikov and Joost van Doorn and Nicolas Känzig and Melis Erdal Cesur and Hugo Mark Horlings and Robert Berke and Fei Tang and Sebastian Otálora},
year={2025},
journal={arXiv preprint arXiv:2504.05186},
url={https://arxiv.org/abs/2504.05186},
}
Nsfw Image Detection
Apache-2.0
基于ViT架构的NSFW图像分类模型,通过监督学习在ImageNet-21k数据集上预训练,并在80,000张图像上微调,用于区分正常和NSFW内容。
图像分类
Transformers

N
Falconsai
82.4M
588
Fairface Age Image Detection
Apache-2.0
基于Vision Transformer架构的图像分类模型,在ImageNet-21k数据集上预训练,适用于多类别图像分类任务
图像分类
Transformers

F
dima806
76.6M
10
Dinov2 Small
Apache-2.0
基于DINOv2方法训练的小尺寸视觉Transformer模型,通过自监督学习提取图像特征
图像分类
Transformers

D
facebook
5.0M
31
Vit Base Patch16 224
Apache-2.0
基于ImageNet-21k预训练和ImageNet微调的视觉变换器模型,用于图像分类任务
图像分类
V
google
4.8M
775
Vit Base Patch16 224 In21k
Apache-2.0
基于ImageNet-21k数据集预训练的视觉Transformer模型,用于图像分类任务。
图像分类
V
google
2.2M
323
Dinov2 Base
Apache-2.0
基于DINOv2方法训练的视觉Transformer模型,通过自监督学习提取图像特征
图像分类
Transformers

D
facebook
1.9M
126
Gender Classification
一个基于PyTorch和HuggingPics构建的图像分类模型,用于识别图像中的性别
图像分类
Transformers

G
rizvandwiki
1.8M
48
Vit Base Nsfw Detector
Apache-2.0
基于Vision Transformer (ViT)架构的图像分类模型,专门用于检测图像是否包含NSFW(不安全)内容。
图像分类
Transformers

V
AdamCodd
1.2M
47
Vit Hybrid Base Bit 384
Apache-2.0
混合视觉变换器(ViT)模型结合了卷积网络和Transformer架构,用于图像分类任务,在ImageNet上表现出色。
图像分类
Transformers

V
google
992.28k
6
Gender Classification 2
这是一个基于PyTorch框架和HuggingPics工具生成的图像分类模型,专门用于性别分类任务。
图像分类
Transformers

G
rizvandwiki
906.98k
32
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98