文献阅读Prov-GigaPath模型--相关知识点罗列

文章链接:A whole-slide foundation model for digital pathology from real-world data | NatureDigital pathology poses unique computational challenges, as a standard gigapixel slide may comprise tens of thousands of image tiles1–3. Prior models have often resorted to subsampling a small portion of tiles for each slide, thus missing the important slide-level context4. Here we present Prov-GigaPath, a whole-slide pathology foundation model pretrained on 1.3 billion 256 × 256 pathology image tiles in 171,189 whole slides from Providence, a large US health network comprising 28 cancer centres. The slides originated from more than 30,000 patients covering 31 major tissue types. To pretrain Prov-GigaPath, we propose GigaPath, a novel vision transformer architecture for pretraining gigapixel pathology slides. To scale GigaPath for slide-level learning with tens of thousands of image tiles, GigaPath adapts the newly developed LongNet5 method to digital pathology. To evaluate Prov-GigaPath, we construct a digital pathology benchmark comprising 9 cancer subtyping tasks and 17 pathomics tasks, using both Providence and TCGA data6. With large-scale pretraining and ultra-large-context modelling, Prov-GigaPath attains state-of-the-art performance on 25 out of 26 tasks, with significant improvement over the second-best method on 18 tasks. We further demonstrate the potential of Prov-GigaPath on vision–language pretraining for pathology7,8 by incorporating the pathology reports. In sum, Prov-GigaPath is an open-weight foundation model that achieves state-of-the-art performance on various digital pathology tasks, demonstrating the importance of real-world data and whole-slide modelling. Prov-GigaPath, a whole-slide pathology foundation model pretrained on a large dataset containing around 1.3 billion pathology images, attains state-of-the-art performance in cancer classification and pathomics tasks.icon-default.png?t=O83Ahttps://rdcu.be/dWvGchttps://doi.org/10.1038/s41586-024-07441-w

code: 包括模型参数GitHub - prov-gigapath/prov-gigapath: Prov-GigaPath: A whole-slide foundation model for digital pathology from real-world dataProv-GigaPath: A whole-slide foundation model for digital pathology from real-world data - prov-gigapath/prov-gigapathicon-default.png?t=O83Ahttps://github.com/prov-gigapath/prov-gigapath

datasets:非公开,只有去识别的测试子集。以及公开数据集TCGA-LUAD 可通过 NIH 基因组数据共享门户获取,https://portal.gdc.cancer.gov/projects/TCGA-LUAD

目录

 一:文章要解决的问题

二:文章提出的方法

1. 模型框架

1.1 DINOv2

1.2 掩码自编码器预训练

1.3 LongNet网络

三:数据集构建

四:医学相关的知识

1.泛癌

2. PubMedBERT生物医学领域预训练的语言模型作为文本编码器

五:部分评价指标介绍

1.平衡精度BACC

2. AUROC(Area Under the Receiver Operating Characteristic Curve)

3.AUPRC

阈值的具体定义:

六:实验

1. 从病理图像中预测肿瘤突变基因

2. 癌症亚型分类

3.消融实验

4.切片级的和视觉语言对齐

 七:Zero-shot学习


 一:文章要解决的问题

标准的千兆像素切片可能由数万个图像块组成。之前的模型通常只对每个切片的少量图像块进行抽样,因此错过了重要的切片级别上下文信息。

1.首先,公开可用的病理数据相对较少,质量参差不齐,这限制了在这些数据上预训练的基础模型的性能。癌症基因组图谱(TCGA)的全片图像(wsi) 包括大约30,000张幻灯片和2.08亿个patch

虽然它们是一个巨大的资源,但TCGA数据可能不够大,无法完全解决临床实践中围绕现实世界数字病理学的挑战,在使用基于TCGA的预测模型和生物标记物对分布外样本时性能大幅下降。

2.其次,设计一种既能有效捕获单个patch中的局部模式又能捕获整个幻灯片中的全局模式的模型体系结构仍然具有挑战性。现有模型通常将每个patch视为一个独立的样本,并将wsi级建模制定为多实例学习。从而限制了它们在十亿像素整张幻灯片中模拟复杂全局模式的能力。

3.第三,在极少数情况下,确实有一些模型是在大规模的真实患者数据上进行预训练的,但这些模型通常没有对外开放,限制了它们在实际临床应用中的推广(该模型公布了模型权重)。

二:文章提出的方法

1. 模型框架

为了同时捕捉切片上的局部和全局模式,作者提出了GigaPath,是基于Vision-Transformer架构。核心思想是将图像patch嵌入为视觉token,从而将整个切片转化为一个长序列的token

传统的视觉Vision-Transformer无法直接应用于数字病理学,因为一张病理切片可能包含成千上万的图像小块(如Providence数据中的切片最多包含70,121个小块),而Transformer的自注意力机制计算复杂度随着序列长度呈二次增长。

因此,该框架预训练过程(微调或直接用于下游任务)主要包含两个自监督的组成部分:

•  DINOv2 教师 -学生框架在patch级别进行无标签自蒸馏(内部为Vision- Transformer),图 b
•  LongNet (稀疏自注意力)和掩码自编码器进行全切片级的自监督学习,图c。
自监督目标的核心不在于直接分类,而是在没有标注数据的情况下学习切片的 深层特征表示。这些表示可以进一步用于下游任务,例如分类、分割或其他病理学相关的应用。

1.1 DINOv2

DINOv2 主要通过蒸馏过程实现自监督学习,通过学生模型和教师模型之间的对比学习有效的表示。目标是从无标注图像中提取稳健的视觉特征,得到能够有效提取patch特征的学生模型。DINOv2 生成的嵌入能够在特征空间中形成聚类

1. 学生模型与教师模型的架构

  • 学生模型和教师模型通常使用相同的神经网络架构(ViT),但它们的参数是不同的。
  • 学生模型是正在学习的模型,在训练过程中,学生模型会在迭代中学习如何模仿教师模型的输出,从而逐步优化自身的参数。
  • 教师模型是相对稳定的模型,用于为学生模型提供学习目标。教师模型的参数通常是通过学生模型的参数更新得到的,并经过指数移动平均 (Exponential Moving Average, EMA) 机制保持稳定。

2. 输入数据的不同

对同一张图像,应用不同的数据增强方式(例如旋转、裁剪、色彩变换等)来生成多个视图(不同版本的同一图像),这些视图会被分别输入到学生模型和教师模型,两者得到的token看作是对图像内容的不同层次的理解。

3. 对比学习

经过不同增强方式处理的相同图像,它们在表示空间中的特征应该尽可能接近,而不同图像的表示应该保持分离。这个过程通过对比学习来实现,目的是让模型学习到每个图像在不同视图下保持一致的表征。

4. 损失函数

DINO 使用 对比损失 (contrastive loss) 来训练模型。学生模型的输出和教师模型的输出CLS_token之间的相似度 。(CLS_token 是最终用于代表整张patch图像的全局表示; 随着 Transformer 网络处理这些视觉 token 和 CLS token,CLS token 会与其他 token 进行交互,逐渐学到整个图像的全局表示。)

DINO 使用的对比损失基于 KL 散度 (Kullback-Leibler Divergence),通过让学生模型的输出(即 CLS token)尽量匹配教师模型的输出,从而最小化损失,学生模型逐步学习到教师模型的表征能力。

1.2 掩码自编码器预训练

自监督方法,在训练过程中,部分输入数据(在这里可能是图像的某些区域)会被掩盖或丢失,然后模型被要求重建这些被掩盖的部分。通过这种方式,模型能够学习到输入数据的整体结构和特征,这在图像处理中有助于提升模型对局部特征和全局结构的理解。

1.掩码输入数据

在训练过程中,输入数据(例如图像)的一部分(某些patch)被随机遮盖或丢弃。

2. 编码器

模型的编码器只接收到未被遮盖的部分。通过对这些部分的编码,模型尝试提取图像的局部和全局信息。

3. 解码器

编码器的输出传递到解码器,解码器接收编码的表示并尝试重建完整的输入图像。

4. 重构损失

比较生成的输出(即重构的版本)与原始输入之间的差异。

对于图像或序列,通常使用 均方误差(MSE)交叉熵损失(Cross-Entropy Loss);在长序列任务中,比如文本重建任务,重构损失通常衡量每个 token 的生成输出和真实输入 token 之间的差异。

重构损失MSE会对特征向量中每个值逐个进行计算,比较原始特征向量和重建后的特征向量在每个维度上的误差,然后对这些误差取平均。

优点:

掩码自编码器通过强迫模型重建图像中缺失的部分,模型需要对图像的整体结构和局部细节都有深刻的理解。这有助于模型在下游任务(如分类、检测等)中表现更好。

MAE 只需要对部分数据进行编码处理,这在训练过程中可以显著减少计算开销,特别是在处理超大图像时效果更为显著。

无需大量标注数据。

1.3 LongNet网络

文章:LongNet: Scaling Transformers to 1,000,000,000 Tokens

http:// https://doi.org/10.48550/arXiv.2307.02486

1. 膨胀式自注意力机制

不同于自注意力机制对序列中的每个 token 都进行全局注意力。

膨胀式自注意力机制是根据一定的间隔跳过一些 token。这种跳跃式的注意力机制类似于在卷积神经网络中使用的膨胀卷积,使得模型在保持计算复杂度相对较低的同时,仍能捕获到全局的上下文信息。LongNet 可以高效处理极长的序列,而不需要线性增加计算资源(Transformer)。

应用:

长序列生成:LongNet 的设计能够处理非常长的序列,比如文本生成任务中的长文档或者 DNA 序列。decoder 在这些任务中会逐步生成序列的每个元素(例如,每个单词或每个 token),并结合 encoder 提供的上下文信息来输出整个序列。

自回归生成:在自回归生成任务中(例如自然语言生成),decoder 通过逐步生成下一个 token,并利用已经生成的 token 作为输入,直到生成完整的序列。LongNet 的 decoder 可以在处理非常长的序列时,仍然高效地进行生成。

视觉-语言任务中的解码:如果 LongNet 用于多模态任务(例如图像-文本生成任务),decoder 的任务是将从图像编码器获取的视觉信息解码为相应的文本输出,获得全局概述。

2. 膨胀率(Dilation Rate):即跳跃间隔,如果膨胀率为 2,那么模型会关注当前 token 和相隔两个位置的 token。

3. 分层设计:LongNet 采用了一种分层结构,逐层增加膨胀率。这样可以在早期层捕捉到局部细节(低膨胀率),而在高层次捕捉到长距离的全局上下文(高膨胀率),这使得模型在处理长序列时能够既捕获细粒度信息,又能够捕捉全局信息。

LongNet和MAE结合能够对全局和局部的模式来进行建模,通过重构损失确保长距离依赖关系被正确建模,同时显著提高的计算效率。

三:数据集构建

首先,prov-gigapathprovi - path上进行预训练,prov- path是来自Providence普罗维德斯28个癌症中心的健康网络的大型数字病理数据集。

provo - path包含来自171189(H&E)染色和免疫组织化学病理切片的13亿张图像patch,这些切片来自30,000多名患者的活检和切除,涵盖31种主要组织类型

在图像patch数量上,provo- pathTCGA5倍以上,在患者数量上,比TCGA2倍以上。

预训练利用了所有13亿个图像块,作者说,这是迄今为止最大的预训练成果。

在模型验证过程中,为了系统地调查Prov-GigaPath作为病理学基础模型在真实世界场景中的有效性,作者建立了一个涵盖26个预测任务的综合数字病理学基准,包括病理学和癌症亚型分类任务,使用了ProvidenceTCGA的数据。

四:医学相关的知识

1.泛癌

泛癌(pan-cancer)是指在多种不同类型的癌症中寻找和分析共同的特征、机制和生物标志物的研究方式。泛癌研究旨在跨越癌症类型的界限,识别所有癌症中共同的基因突变、分子机制或生物学特性,从而帮助理解癌症的整体生物学规律。

2. PubMedBERT生物医学领域预训练的语言模型作为文本编码器

专门为生物医学领域预训练的语言模型。它基于BERT(Bidirectional Encoder Representations from Transformers)架构。

PubMedBERT使用了PubMed(生物医学文献数据库)中的论文摘要和PubMed Central中的全文数据进行预训练。

主要应用:

  • 生物实体识别:识别生物医学领域的专有名词和概念(如基因、疾病、药物等)。
  • 关系抽取:从文本中提取不同生物实体之间的关系。
  • 文献分类和摘要生成:对生物医学文献进行分类或生成摘要。
  • 医学问答系统:在医学问答场景下提供准确答案。

五:部分评价指标介绍

1.平衡精度BACC

在多分类问题中,BACC(Balanced Accuracy,平衡准确率)是为了处理不平衡数据而提出的评估指标。它通过计算每个类别的准确率,进而得出一个平均值,反映了分类器在不同类别上的整体表现。计算公式如下:

 BACC 是各个类别的召回率的平均值,旨在反映模型在不平衡数据集上的整体表现。

2. AUROC(Area Under the Receiver Operating Characteristic Curve)

One-vs-Rest(OvR):对于每个类别,将该类别视为正类,所有其他类别视为负类。然后,计算每个类别的 ROC 曲线,并计算出每个类别的 AUROC 值。最终的多分类 AUROC 是所有类别的 AUROC 的平均值。

3.AUPRC

平均精度-召回曲线下面积是用于二分类任务中的一种评估指标,特别适用于类别不平衡的场景。AUPRC通过度量模型在不同阈值下的精度(Precision)与召回率(Recall)之间的权衡,来评估模型的性能。

阈值的具体定义:

  • 对于二分类任务,模型通常会输出样本属于某个类别(例如正类)的概率值,范围为0到1。
  • 阈值就是设定一个0到1之间的数值,如果输出的概率大于等于这个阈值,模型将该样本分类为正类;如果概率小于阈值,则分类为负类。
  • 默认情况下,很多二分类问题的阈值设定为0.5,但在某些情况下,这个默认值可能并不是最优选择,尤其是在处理类别不平衡数据时。
  • AUROC侧重于评价正类和负类的整体区分能力,对数据分布比较均衡的数据集效果较好。
  • AUPRC则更加关注正类样本的识别效果,适用于正类样本较少的情景,能够更准确地反映模型在不平衡数据集上的表现。
  • AUPRC常用于不平衡的二分类任务,例如欺诈检测、疾病诊断等,在这些任务中正类(例如欺诈、疾病病例)通常较少。

六:实验

1. 从病理图像中预测肿瘤突变基因

通过图像识别组织中的模式,预测基因的突变状态,而无需直接进行基因组测序。这种方法允许通过组织图像大规模挖掘潜在的生物标志物,尤其是在跨癌种的预测中有显著优势。标签可以是某个基因(如 KRASEGFR)是否发生了突变(突变或非突变)。

泛癌的18 个跨癌种中最常见的生物标志物;

肺腺癌的五个基因(EGFRFAT1KRASTP53 LRP18)的突变预测任务;

泛癌的上述五种基因的突变预测任务;

TCGA数据集上的肺腺癌五基因分析;

总体肿瘤突变负荷(TMB)的预测;(TMB是实体肿瘤的预测性生物标志物,与免疫治疗特别相关)

2. 癌症亚型分类

九种主要癌症类型的亚型分型

3.消融实验

4.切片级的和视觉语言对齐

包含零样本癌症亚型分类,对非小细胞肺癌(NSCLC)和结直肠癌(COADREAD)进行癌症亚型分类。第二个是零样本基因突变预测。(这里一直很不懂zero-shot,参考博文零次学习(zero-shot learning)基本概念_domain shift problem-CSDN博客

猜测,应该是测试即中有对非小细胞肺癌和结直肠癌的文字描述(包含这两个亚型的名称,病例中包含对切片中一些组织形态、病变描述)转化为embedding。此时模型已经经过预训练具备将图像与相对应的图像文本描述联系起来的能力了。

然后拿到测试图像(训练图像并没有这两类),模型能够预测哪张切片是非小细胞肺癌,哪张是结直肠癌。

也就是说,利用训练集数据训练模型,使得模型能够对测试集的对象进行分类,但是训练集类别和测试集类别之间没有交集;期间需要借助类别的描述,来建立训练集和测试集之间的联系,从而使得模型有效

 七:Zero-shot学习

参见上面一段。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/444830.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中的二维数组

二维数组 使用方式1:动态初始化1.语法:2.比如:3.二维数组在内存的存在形式 使用方式2:动态初始化使用方法3:动态初始化--列数不确定使用方式4:静态初始化1.定义2.使用 使用方式1:动态初始化 1.…

HiRT | 异步控制策略,告别VLA时延问题

论文:HiRT: Enhancing Robotic Control with Hierarchical Robot Transformers 前言:HiRT 通过异步处理的策略,将 VLM 作为低频慢思考过程,将轻量的动作策略模型作为高频快响应过程 ,以此解决 VLA 驱动带来的控制时延问…

RNN经典案例——构建人名分类器

RNN经典案例——人名分类器 一、数据处理1.1 去掉语言中的重音标记1.2 读取数据1.3 构建人名类别与人名对应关系字典1.4 将人名转换为对应的onehot张量 二、构建RNN模型2.1 构建传统RNN模型2.2 构建LSTM模型2.3 构建GRU模型 三、构建训练函数并进行训练3.1 从输出结果中获得指定…

TON生态小游戏开发:推广、经济模型与UI设计的建设指南

随着区块链技术的快速发展,基于区块链的Web3游戏正引领行业变革。而TON生态小游戏,借助Telegram庞大的用户基础和TON(The Open Network)链上技术,已成为这一领域的明星之一。国内外开发者正迅速涌入,开发和…

基于SpringBoot+Vue的船舶监造系统(带1w+文档)

基于SpringBootVue的船舶监造系统(带1w文档) 基于SpringBootVue的船舶监造系统(带1w文档) 大概在20世纪90年代,我国才开始研发船舶监造系统,与一些发达国家相比,系统研发起步比较晚。当时的计算机技术刚开始发展起来,国家经济力量…

SEO(搜索引擎优化)指南

SEO(Search Engine Optimization)是通过优化网站内容、结构和外部链接,提升网页在搜索引擎结果中的排名,从而增加网站流量的过程。SEO 涉及多个层面,包括技术 SEO、内容优化、外部链接建设等。以下是 SEO 的核心优化策…

京东零售数据湖应用与实践

作者:陈洪健:京东零售大数据架构师,深耕大数据 10 年,2019 年加入京东,主要负责 OLAP 优化、大数据传输工具生态、流批一体、SRE 建设。 当前企业数据处理广泛采用 Lambda 架构。Lambda 架构的优点是保证了数据的完整性…

【论文阅读】Learning a Few-shot Embedding Model with Contrastive Learning

使用对比学习来学习小样本嵌入模型 引用:Liu, Chen, et al. “Learning a few-shot embedding model with contrastive learning.” Proceedings of the AAAI conference on artificial intelligence. Vol. 35. No. 10. 2021. 论文地址:下载地址 论文代码…

强化学习笔记之【SAC算法】

强化学习笔记之【SAC算法】 前言: 本文为强化学习笔记第三篇,第一篇讲的是Q-learning和DQN,第二篇DDPG,第三篇TD3 TD3比DDPG少了一个target_actor网络,其它地方有点小改动 CSDN主页:https://blog.csdn.n…

思迈特:在AI时代韧性增长的流量密码

作者 | 曾响铃 文 | 响铃说 “超级人工智能将在‘几千天内’降临。” 最近,OpenAI 公司 CEO 山姆奥特曼在社交媒体罕见发表长文,预言了这一点。之前,很多专家预测超级人工智能将在五年内到来,奥特曼的预期,可能让这…

图论day57|建造最大岛屿(卡码网)【截至目前,图论的最高难度】

图论day57|建造最大岛屿(卡码网)【截至目前所做的题中,图论的最高难度】 思维导图分析 104.建造最大岛屿(卡码网)【截至目前所做的题中,图论的最高难度】 思维导图分析 104.建造最大岛屿(卡码网…

i18n多语言项目批量翻译工具(支持84种语言)

这里写自定义目录标题 打开‘i18n翻译助手’小程序快捷访问 打开‘i18n翻译助手’小程序 1.将需要翻译的json文件复制到输入框(建议一次不要翻译过多,测试1000条以内没什么问题) 2.等待翻译 3.翻译完成,复制结果 快捷访问

从容应对DDoS攻击:小网站的防守之战

前几天收到云服务商短信,服务器正在遭受DDoS攻击 说实话,我的网站只是一个小型站点,平时访问量并不高,没想到会成为攻击的目标。当我看到这次DDoS攻击的通知时,我其实既惊讶又有点小小的“荣幸”,毕竟我的小…

火山引擎边缘智能×扣子,拓展AI Agent物理边界

9月21日, 火山引擎边缘智能扣子技术沙龙在上海圆满落地,沙龙以“探索端智能,加速大模型应用”为主题,边缘智能、扣子、地瓜机器人以及上海交大等多位重磅嘉宾出席,分享 AI 最新趋势及端侧大模型最新探索与应用实践。 …

Java项目-----图形验证码登陆实现

原理: 验证码在前端显示,但是是在后端生成, 将生成的验证码存入redis,待登录时,前端提交验证码,与后端生成的验证码比较. 详细解释: 图形验证码的原理(如下图代码).前端发起获取验证码的请求后, 1 后端接收请求,生成一个键key(随机的键) 然后生成一个验证码作为map的valu…

JAVA接入GPT开发

Spring AI Alibaba:Java开发者的GPT集成新标准 目前,像OpenAI等GPT服务提供商主要提供HTTP接口,这导致大部分Java开发者在接入GPT时缺乏标准化的方法。为解决这一问题,Spring团队推出了Spring AI Alibaba,它作为一套标…

基于Java的可携宠物酒店管理系统的设计与实现(论文+源码)_kaic

摘 要 随着社会经济的不断发‎‏展,现如今出行并住酒店的人越来越多,与之而来的是酒店行业的工作量日益增加,酒店的管理效率亟待提升。此外很多人出门旅游时会有携带宠物的情况,但是现如今酒店对宠物的限制,导致许多…

Java学习-JVM

目录 1. 基本常识 1.1 JVM是什么 1.2 JVM架构图 1.3 Java技术体系 1.4 Java与JVM的关系 2. 类加载系统 2.1 类加载器种类 2.2 执行顺序 2.3 类加载四个时机 2.4 生命周期 2.5 类加载途径 2.6 双亲委派模型 3. 运行时数据区 3.1 运行时数据区构成 3.2 堆 3.3 栈…

【RabbitMQ高级——过期时间TTL+死信队列】

1. 过期时间TTL概述 过期时间TTL表示可以对消息设置预期的时间,在这个时间内都可以被消费者接收获取;过了之后消息将自动被删除。RabbitMQ可以对消息和队列设置TTL。 目前有两种方法可以设置。 第一种方法是通过队列属性设置,队列中所有消…

基于Springboot的宠物咖啡馆平台的设计与实现(源码+定制+参考)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…