
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
CHIEF(Clinical Histopathology Imaging Evaluation Foundation Model)是一个用于癌症诊断、分子谱评估和预后预测的病理基础模型。传统人工智能方法在病理图像分析中多针对单一诊断任务优化专用模型,虽取得一定成效,但对不同数字化协议生成的图像或不同人群样本的泛化能力有限。为解决这一问题,研究团队开发了CHIEF,这是一个通用弱监督机器学习框架,可提取病理影像特征用于系统性癌症评估。
CHIEF采用双预训练方法提取多样化病理表征:无监督预训练用于补丁级(tile-level)特征识别,弱监督预训练用于全切片(whole-slide)模式识别。模型基于60,530张覆盖19个解剖部位的全切片图像(WSIs)开发,通过在44TB高分辨率病理影像数据集上预训练,可提取用于癌细胞检测、肿瘤起源识别、分子谱表征及预后预测的微观特征。
该模型已通过19,491张全切片图像(来自32个独立数据集、24家国际医院及队列)验证,性能较现有深度学习方法提升最高达36.1%,能有效解决不同人群样本及不同切片制备方法导致的域偏移问题,为癌症患者的高效数字病理评估提供通用基础。
CHIEF模型权重需申请获取(非商业学术用途),Docker镜像已包含必要环境,无需额外下载。
shelldocker pull docker.xuanyuan.run/chiefcontainer/chief:v1.11 docker run --rm -it --entrypoint /bin/bash docker.xuanyuan.run/chiefcontainer/chief:v1.11
进入容器后,根目录下可见CHIEF文件夹,包含模型代码及相关工具。
用于提取病理图像补丁(patch)特征,适用于细粒度分析(如癌细胞检测)。
创建模型
pythonimport torch, torchvision import torch.nn as nn from docker.xuanyuan.run/torchvision import transforms from docker.xuanyuan.run/PIL import Image from docker.xuanyuan.run/models.ctran import ctranspath # 图像预处理 mean = (0.485, 0.456, 0.406) std = (0.229, 0.224, 0.225) trnsfrms_val = transforms.Compose([ transforms.Resize(224), transforms.ToTensor(), transforms.Normalize(mean=mean, std=std) ]) # 初始化模型并加载预训练权重 model = ctranspath() model.head = nn.Identity() # 移除分类头,保留特征提取层 td = torch.load(r'./model_weight/CHIEF_CTransPath.pth') model.load_state_dict(td['model'], strict=True) model.eval() # 切换至评估模式
提取补丁特征
准备输入图像(如.tif格式),运行以下代码获取特征:
pythonimage = Image.open("./exsample/exsample.tif") # 输入补丁图像路径 image = trnsfrms_val(image).unsqueeze(dim=0) # 预处理并增加批次维度 with torch.no_grad(): # 关闭梯度计算,加速推理 patch_feature_emb = model(image) # 提取特征,形状为[1, 768] print(patch_feature_emb.size()) # 输出特征维度
运行示例脚本
shellpython3 Get_CHIEF_patch_feature.py
用于提取全切片图像(WSI)级特征,适用于宏观分析(如肿瘤起源分类、预后预测)。需先下载预提取的补丁特征(见"评估与复现"部分),并放置于指定路径。
创建模型
pythonimport torch import torch.nn as nn from docker.xuanyuan.run/models.CHIEF import CHIEF # 初始化模型并加载预训练权重 model = CHIEF(size_arg="small", dropout=True, n_classes=2) td = torch.load(r'./model_weight/CHIEF_pretraining.pth') model.load_state_dict(td, strict=True) model.eval() # 切换至评估模式
提取WSI级特征
输入预提取的补丁特征文件路径及解剖部位信息,运行以下代码:
python# 输入补丁特征路径(需提前下载并放置于指定目录) full_path = r'./Downstream/Tumor_origin/src/feature/tcga/TCGA-LN-A8I1-01Z-00-DX1.F2C4FBC3-1FFA-45E9-9483-C3F1B2B7EF2D.pt' features = torch.load(full_path, map_location=torch.device('cpu')) # 加载特征 anatomical = 13 # 解剖部位编号 with torch.no_grad(): x, tmp_z = features, anatomical result = model(x, torch.tensor([tmp_z])) wsi_feature_emb = result['WSI_feature'] # 提取WSI特征,形状为[1, 768] print(wsi_feature_emb.size())
运行示例脚本
单样本提取:
shellpython3 Get_CHIEF_WSI_level_feature.py
批量提取:
shellpython3 Get_CHIEF_WSI_level_feature_batch.py
以肿瘤起源分类任务为例,微调步骤如下:
shellcd ./Downstream/Tumor_origin/src
训练/验证/测试数据拆分文件位于 ./Downstream/Tumor_origin/src/csv。
执行微调命令:
shellCUDA_VISIBLE_DEVICES=0 python3 train_valid_test.py --classification_type='tumor_origin' --exec_mode='train' --exp_name='tcga_only_7_1_2'
参数说明:--classification_type指定分类任务类型,--exec_mode为执行模式(train/eval),--exp_name为实验名称。
复现论文结果需先下载预提取特征(见"模型获取"部分),Docker镜像已包含环境,无需额外配置。
shell# 结肠癌细胞检测 CUDA_VISIBLE_DEVICES=0 python3 classification_eval.py --config_path configs/colon.yaml --dataset_name Dataset_PT # 乳腺癌细胞检测 CUDA_VISIBLE_DEVICES=0 python3 classification_eval.py --config_path configs/breast.yaml --dataset_name DROID_breast
shellCUDA_VISIBLE_DEVICES=0 python3 train_valid_test.py --classification_type='tumor_origin' --exec_mode='eval' --exp_name='tcga_only_7_1_2' --split_name='test'
shellCUDA_VISIBLE_DEVICES=0 python3 classification_eval.py --config_path configs/IDH_lgg.yaml --dataset_name muv_lgg
以肾细胞癌(RCC)生存任务为例,使用子集数据运行:
shellcd ./Downstream/Survial run inference.ipynb
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务