论文118:Node-aligned graph convolutional network for whole-slide image representation (2022, CVPR,开源)

1 要点

题目:用于WSI表示学习的节点对齐图卷积网络 (Node-aligned graph convolutional network for whole-slide image representation)

代码:https://github.com/YohnGuan/NAGCN

研究目的:
旨在解决全幻灯片图像 (WSI) 在计算病理学中的表示和分类问题:

  1. 由于WSI的超大体量,不同WSI之间的对应关系难以建立;
  2. 已有方法通常使用无序节点池化来获得WSI,这会损失结构和上下文信息;

因此,亟需一种能够有效处理这些图像并捕局部结构信息和全局分布信息的WSI表示方法,并用于癌症亚型分类。

关键技术:

  1. 节点对齐图卷积网络(NAGCN):
    提出了一种新颖的图卷积网络,通过层次化的全局到局部聚类策略构建,以保留局部结构信息和全局分布信息;
  2. 全局聚类:
    基于实例特征进行全局聚类,用于在不同WSI之间建立对应关系;
  3. 局部聚类采样策略:
    在全局聚类的基础上,执行局部聚类以选择每个聚类中的典型实例;
  4. 图卷积:
    使用图卷积网络对所选实例进行特征提取,以获得WSI表示;
  5. 层次化全局到局部聚类:
    通过结合全局聚类和局部聚类,确保在不同WSI之间建立节点对齐,避免非有序池化操作;

数据集:

  1. TCGA-NSCLC;
  2. TCGA-RCC;

2 方法

图2展示了NAGCN的总体框架,其由三个组件组成:

  1. 实例采样和编码;
  2. 层次化的全局到局部聚类
  3. WSI图表示;

2.1 问题声明

传统的多示例学习 (MIL) 遵循标准多示例假设,即如果一个包至少包含一个正实例,则包的标签为正,否则为负。然而,一些WSI级别的预测问题并不适用于该假设。在WSI分类问题背景下,可以将每个WSI视为由多个块组成的包 W = { p 1 , p 2 , … , p n } W = \{p_1, p_2, \dots, p_n\} W={p1,p2,,pn},其中 p j p_j pj是采样块,以及 n n n是采样块的数量。相应的WSI标签是 Y Y Y,而块级标签是未知的。基于嵌入的MIL范式用于病理图像分类的步骤包括:

  1. 基于 W W W块提取策略,以及实例编码器,用于生成实例级特征 f j = ε ( p j ) f_j = \varepsilon(p_j) fj=ε(pj)并形成编码空间中的WSI包 B = { f 1 , f 2 , . . . , f n } B = \{f_1, f_2, ..., f_n\} B={f1,f2,...,fn}
  2. 实例嵌入聚合策略,用于整合实例级特征并生成全局表示 g = ρ ( B ) g = \rho(B) g=ρ(B)。对于基于图的MIL,首先需要为包构建图 G G G,然后通过GCN和图池化嵌入。
  3. 包级分类器 Y ^ = ξ ( g ) \hat{Y} = \xi(g) Y^=ξ(g)

2.2 实例编码器和码本构建

由于WSI中的背景占据了相当大的比例,并且对于WSI预测并不贡献信息,因此首先采用前景分割方法提取幻灯片缩略图的组织。WSI格式数据通常存储为图像金字塔,每一层对应于WSI的特定放大倍数和物理分辨率。我们以特定放大倍数 (例如20)提取大小固定的非重叠前景块作为WSI的多个实例。每个实例代表WSI中的一个局部组织区域,这些实例的整合生成了WSI的幻灯片级表示。

D = { W 1 , W 2 , . . . , W N } D = \{W_1, W_2, ..., W_N\} D={W1,W2,...,WN}为包含 N N N个WSI的训练数据集:

  1. 预处理后,每个 W i W_i Wi表示数据集中的第 i i i个WSI,其中 W i = { p i 1 , p i 2 , . . . , p i n } W_i = \{p_{i}^1, p_{i}^2, ..., p_{i}^n\} Wi={pi1,pi2,...,pin} n n n是采样块的数量。然后采用预训练深度神经网络,提取每个实例 p i j p_{i}^j pij的固定维度向量 f i j ∈ R L × 1 f_{i}^j \in \mathbb{R}^{L \times 1} fijRL×1
  2. 实例编码后,数据集将转换为编码空间 D f = { B 1 , B 2 , . . . , B N } D_f = \{B_1, B_2, ..., B_N\} Df={B1,B2,...,BN},其中 B i = { f i 1 , f i 2 , … , f i n } ∈ R n × L B_i = \{f_{i}^1, f_{i}^2, \dots, f_{i}^n\} \in \mathbb{R}^{n \times L} Bi={fi1,fi2,,fin}Rn×L
  3. 执行 K K Kmeans聚类生成全局码本 C = ( v w 1 , v w 2 , . . . , v w K G ) C = (vw_1, vw_2, ..., vw_{KG}) C=(vw1,vw2,...,vwKG),其中 v w vw vw是visual work,表示全局聚类类别。构建的码本将特征空间划分为 K G K_G KG个子空间,每个子空间对应一个用于表示具有不同结构、纹理和病理属性的活检组织的 v w vw vw。注意,仅使用训练数据集中的实例进行码本构建

2.3 节点对齐图MIL

2.3.1 图构建

提出了一种启发式的组织图构建策略,其借鉴了视觉词袋 (BOVW) 的思想。不同于已有的基于图的MIL方法,NAGCN能够通过层次化的全局到局部聚类策略和邻接关系构建机制,确保不同WSI图之间的特征对齐。提出的策略不仅可以筛选出作为图节点的区分性实例,而且能够在不同WSI图之间实现对应关系。这一策略包括全局聚类部分和局部聚类部分。

  1. 全局聚类策略:指码本构建,其对训练集中的所有实例特征进行聚类。
    • 类似于BOVW,通过查找预建的码本,将WSI包中的每个实例特征与最近的 v w vw vw匹配;
  2. 局部聚类采样策略
    • 通过码本,每一个WSI包可以被划分为 K G K_G KG个子包 B = { s u b 1 , s u b 2 , … , s u b K G } B=\{sub_1,sub_2,\dots,sub_{K_G}\} B={sub1,sub2,,subKG}
    • 对于每个子包,利用 K K Kmeans聚类将其划分为 S k S_k Sk个箱,并从每个箱中随机选择一个实例。训练时, S k S_k Sk设置为 [ 5 , 25 ] [5, 25] [5,25]范围内的随机数,以在训练期间增加数据多样性。在推理过程中$S_k被设置为固定值。
    • 对于每个WSI包,可以提取 V = ∑ k = 1 K g S k V=\sum_{k=1}^{K_g}S_k V=k=1KgSk个实例,表示为采样包 X ∈ R V × L X \in \mathbb{R}^{V \times L} XRV×L
    • 由于所有WSI包在数据集中共享相同的码本,因此在子包级别,可以实现在不同WSI之间实现图节点的对应关系。完整的局部聚类采样策略如图3;


我们提出了两种类型的边来形成图连接关系

  1. 子包内边 (incer-sub-bag edges):
    • 属于同一子包的所有实例都相互连接,形成子包内边;
  2. 子包外边 (outer-sub-bag edges):
    • 每个节点通过欧式距离连接到其 N e N_e Ne个最近节点;

子包内边使得节点特征在子包内可以传递,而子包外边使得属于不同 v w vw vw的实例之间的信息可以传播,这模拟了异质模式。由于全局聚类通常是稀疏的,可能会在WSI中留下许多空的子包,我们使用空节点 (零向量) 来表示相应的子包是空的,并且不将空节点连接到任何其他节点。

之后,为每个WSI包生成输入图 G G G如下所示:
G = Graph ( X , A ) , (1) \tag{1} G = \text{Graph}(X, A), G=Graph(X,A),(1)
其中 X ∈ R V × L X \in \mathbb{R}^{V \times L} XRV×L表示采样包,以及 A ∈ { 0 , 1 } V × V A \in \{0, 1\}^{V \times V} A{0,1}V×V表示 G G G的邻接矩阵。

2.3.2 图卷积和包表示

通过上述图构建策略,不同WSI的图可以在子包级别实现对应关系。构建的图被送入GCN以在图上进行信息传递。GCN的输出图与输入图具有相同的节点计数和顺序,表示为:
Z = GCN ( Graph ( X , A ) ) , (2) \tag{2} Z = \text{GCN}(\text{Graph}(X, A)), Z=GCN(Graph(X,A)),(2)其中 Z ∈ R V × L ′ Z \in \mathbb{R}^{V \times L'} ZRV×L是输出图的节点特征矩阵,以及 L ′ L' L是输出特征维度。

如图4所示,在GCN之后,我们采用一个子包池化模块,对同一子包内的节点特征执行池化操作。然后按视觉词顺序将池化的图展平,得到一个固定长度的WSI表示 g ∈ R K G L ′ × 1 g \in \mathbb{R}^{K_GL' \times 1} gRKGL×1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值