《Catalysis Clustering with GAN by Incorporating Domain Knowledge》论文精读分析

《Catalysis Clustering with GAN by Incorporating Domain Knowledge》论文精读分析

ABSTRACT

背景介绍:聚类是一种重要的无监督学习方法,在数据稀疏、高维的情况下,它面临着严峻的挑战。生成的集群通常用一般的方法进行评估,这对实际应用程序和领域可能没有意义或用处。聚类算法利用距离度量搜索数据空间,将接近的项分组到一个聚类中,并将远处的样本分配到不同的聚类中

提出问题: 1.在许多真实的应用程序中,维数很高,数据空间变得非常稀疏。选择一个合适的距离度量是非常困难的,当涉及分类数据时就更加困难。2.现有的距离度量大多是通用的,基于它们创建的集群对特定领域的应用程序不一定有意义

解决问题:将域定义的规则和指导方针集成到集群过程中。该文章提出了一种基于GAN的称为催化聚类的方法,将领域知识纳入聚类过程。

​ 1.通过GAN生成催化剂,也就是从原始数据分布中提取的特殊合成点,并通过特定领域的度量(domain-specific metric)来验证提高聚类质量。

​ 2.使用催化剂和实际数据进行聚类分析

​ 3.最后的簇是催化剂点被移除后产生的

效果:在两个具有挑战性的真实数据集上的实验清楚地表明,文章称方法是有效的,可以生成对真实应用程序有意义和有用的聚类。(具体看后文)

INTRODUCTION

聚类分析将相似的项被分组在一起,不同的样本被分开。传统的方法如欧几里得距离或曼哈顿距离,依赖于基于距离的度量来衡量两个项目的相似或不同程度。

面临挑战

1.当需要产生对领域应用程序有用的集群时,就会出现挑战。从特定领域或应用程序的角度来看,标准度量不一定反映样本相似性

2.另一个挑战涉及到比较缺失自然排序的目标,比如分类数据。举例:两个有不同突变基因的肺癌患者对同种治疗的反应相似,他们有多相似?对于肿瘤专家分析这个问题,这两个病人应该属于同一个群。有效的合并领域知识代替通用指标可以生成对领域应用更有用的更好的集群。

3.现有的基于距离的聚类方法往往不能处理高维数据。其原因是高纬空间中的数据趋于几何稀疏,许多距离度量在高维空间中变得无效和没有意义。像PCA这样的通用技术并没有考虑到基于领域知识的特征的重要性,如果放弃重要的特征,一些样本将错误地在降维空间中更接近。

为解决上述挑战,文章提出一种新的聚类框架,称之为催化聚类Catalysis Clustering。

举例:假设有一组患者被诊断为肺癌,聚类算法将其分为三个聚类,如图。医生对结果进行分析,从医学角度来看,分配给c1类的三个方格具有与c3类相似的特征(治疗反应、生存率等)。
在这里插入图片描述
在催化聚类中,提出生成对抗网络生成合成数据点synthetic data points,再通过领域知识确定合成数据的有效性validity。***如何确定这种有效性?***如图,合成点为虚线表示和空心点。其中蓝色和绿色对聚类集群没有影响,红色的空心将错误聚类的三个方块与其余红色方块联系起来了,边界因此发生改变。
在这里插入图片描述

从结果看,并非所有的合成点是有用的,通过特定于领域的度量来评估。如果没有达到任何指标改进,那么无用的合成点就会被丢弃。这样可以生成与领域相关的集群。

优势

该催化聚类框架可以与任何现有的聚类算法一起工作。作者认为,此方法首次将GAN生成数据用于聚类分析

主要贡献:

1.引入催化聚类框架,利用利用领域知识产生对领域应用有用的聚类,并且可以和任何现有的聚类算法一起工作。

2.如何评估GANs生成的数据在机器学习中仍然是一个严峻的挑战,而对于数字数据来说则更加困难。结合领域知识,作者开发了一种方法来评估GAN生成的数值数据的质量及其对聚类分析的有用性。

3.选择癌症分层现实应用来验证想法,实验结果表明有效性和实用性。

RELATED WORK

聚类分析是一种有效的探索性数据分析的有力工具,在数据挖掘中得到了广泛的研究,并在许多实际应用中得到了应用。举例:有论文使用k-means聚类聚类识别不同哮喘类型;有的论文使用Consensus clustering共识聚类回顾性鉴别重症监护病房患者。现有算法对距离度量依赖性太高,没有提供对领域应用有用的结果。DiSC试图将为每个样本提供的领域特定有用性分数纳入半监督降维聚类方法。

由于认识到一般聚类方法的局限性,近年来出现了许多领域特有的聚类算法,如用于跨多个癌症数据集聚类的CoINcIDE算法、用于基因突变聚类分析的Network-Based Stratification算法。

文章中的催化聚类框架,除了聚类算法,另一个重要组成是合成数据生成器,采用生成对抗网络,GAN可以通过两个神经网络捕获数据分布。

最近的工作包含:ClusterGAN支持在潜在空间进行聚类。CatGAN[28]训练其中一个网络将数据分类为预定义数量的类别。InfoGAN学习用于集群的解纠缠表示。面向任务的GAN解决了PolSAR图像解译的困难,利用特殊的网络T-Net完成某一任务。

区别:这些方法都将GAN合并到聚类过程中,但是此论文中只使用GANs学习底层数据分布,进一步生成合成点。

CATALYSIS CLUSTERING WITH GAN

催化聚类框架提高了聚类分析的实用性和质量,允许专家应用领域知识进行聚类分析,为特定领域的应用生成有用的聚类。

3.1 Problem formulation

假定一个数值数据集X,它的分布PX未知,k表示集群数量。k不是催化催化聚类框架所要求的,但可能是特定的聚类算法所要求的。假设选择了一个聚类算法Clust 和一个由专家设计的度量 M 来从领域角度评估 Clust 的性能。目标是找到一组集群{X1, …,Xk},Xi⊂XandX1∩ · · · ∩Xk=空集:Clust(X)={X1, …,Xk} 这个使度量M最大化,优化问题定义为
在这里插入图片描述

3.2 Catalysis Clustering Architecture

在这里插入图片描述
上图是Catalysis Clustering的框架架构图,主要思路就是引入催化剂,即从真实数据分布生成的合成样本,来提高结果集群的有用性和质量。类似于化学中的催化剂,用于启动和提高质量,之后就被移除,即它们不参与最终聚类评估,把Catalysis Clustering 框架分为三个阶段:

1.使用GAN生成催化剂Catalyst。GAN 拟合数据分布 PX 以生成一组催化剂 C。生成的催化剂样本有两个要求:(1)必须遵循 GAN 确保的原始数据分布; (2) 他们必须按照领域知识的规定提高聚类质量。

2.Catalysis Clustering。对组合数据集XUC 执行聚类以获得{(X1UC1), …,(XkUCk)}。

3.评估。每个 Ci 从各自的集群中删除,{X1, …,Xk} 用度量 M 评估。集合 C 仅在聚类阶段使用,之后被忽略,因此只评估真实数据。

3.3 Stage 1: Catalyst generation with GAN 使用GAN生成催化剂Catalyst

合成采样的技术有SMOTE、Borderline-SMOTE和ADASYN。大多数现有方法试图在现有数据中填充代表性不足的类,以减少数据不平衡并提供平衡的数据集。此文章不同点在于将合成采样应用于整个数据,并且通过领域知识充分评估了这些合成样本的质量。 只用于合成高质量样品,称之为催化剂。

定义一,催化剂:给定一个集合X,一个底层分布PX,聚合算法Clust和一个评估指标来最大化,一个合成点如果包含以下两个属性就是催化剂catalyst

(1)c~PX

(2)M(S1)>M(S2),S1是X∪ {c}新集群分配,并且{c}被排除在最终分配之外,即S1=Clust(X∪ {c}) \ {c}。S2是X上的初始集群分配,即S2=Clust(X)。

为了满足第一条,作者采用了Goodfellow和其他人在文献【10】中介绍的生成对抗网络的变体。原始形式的GAN不需要任何关于数据的先验知识,学习从潜在空间映射到感兴趣的数据分布PX。为了实现这一点,GAN 使用了两个相互竞争的对抗模型:生成器 G 和判别器 D。G 的主要目标是捕获数据分布 PX 并生成与原始数据 X 相似的数据样本。同时,D 估计给定样本来自 PX 的概率。 因此,生成器模型和鉴别器模型相互竞争,如公式 (2) 所述。
在这里插入图片描述
这里 V(D,G) 是一个值函数,x∈X 是一个数据样本,z 是一个噪声样本,Pz 是先验噪声分布。D(·)和G(·)分别是鉴别器函数和生成器函数。D(·) 返回样本为真 (D(·)=1) 或假 (D(·)=0) 的概率。在训练阶段,G(·) 寻求最小化 log(1−D(G(z))),即最大化 D(G(z))。相反,D(·)寻求最小化D(G(z)),这意味着鉴别器应该以高概率拒绝假样本G(z)。最后,G 拟合数据分布 PX,用生成的样本欺骗 D。如下图3。结果是G(z)=c∼PX满足合成点为催化剂的第一个要求。
(自己问题一:D(·)寻求最小化D(G(z))?怎么看出来的?问题二:G 拟合数据分布PX,用生成的样本欺骗 D:这里的意思是不是指G生成的样本数据达到了PX的分布情况,就可以被初步使用)
在这里插入图片描述
第二个要求是保证合成样本是有用的,即提高聚类质量。不是每个GAN生成的样本都能满足这个要求,应该应用一个特定领域的度量来检查这个样本是否提高了聚类质量。此方法要求使用由领域专家设计的 metric M 评估每个合成样本 c。如果引入了对产生的簇的质量的改进,即 M(S1)>M(S2),其中 S1=Clust(X∪ {c}) ∩ {c} and S2=Clust(X),则很有用。

(问题一:领域专家设计度量评估每个合成样本的观点。领域专家提供什么样的度量?给出什么标准应用到项目? 问题二:S1的定义的变化。前文S1=Clust(X∪ {c}) \ {c})

(结合到工程项目,可以针对高纬度稀缺数据的问题。结合领域度量就可以先针对特定指标列进行聚类,某一个小领域进行聚类,比如企业家某些品质的聚类?企业的某一特质的聚类?)

3.4 Stage 2: Catalysis Clustering 催化聚类

这阶段的主要目标:

(1)给定:一个数据集X,一组催化剂C,一个特定领域的度量M,一个聚类算法Clust,以及如果Clust需要的集群数量k;

(2)找到:聚类分配{X1, …,Xk}

(3)目标:优化方程(1)
在这里插入图片描述
算法 1 描述了催化聚类的过程。作为输入,催化聚类采用数据集X、一组生成的催化剂C、特定领域的评估指标M和聚类算法Clust。实际中的Clust应该用特定的聚类算法代替,例如 K-means、NMF 等。聚类的数量 k 不是我们的 Catalysis Clustering 框架所要求的,但可以由为此步骤选择的特定聚类算法所要求。一开始,催化剂 C 与 X 组合,Clust 应用于组合数据集。 聚类完成后,从每个簇中去除所有催化剂。 然后在下一阶段用 M 评估产生的集群分配{X1, …,Xk}。

3.5 Stage 3: Evaluation 评估

催化聚类需要从领域知识的角度进行具体和定量的评估,主要问题之一是对于什么是坏的/无用的或好的/有用的“集群”缺乏准确而通用的定义。存在许多用于聚类评估的通用指标,例如 Normalized Mutual Information 或者 Rand Index。但是,它们需要一组“真正的”集群,并且没有考虑集群是否对域应用程序有用。但是催化聚类将领域知识整合到质量评估中,不需要了解真实聚类分配的知识。

在第 1 阶段,合成样本在被选择用于即将进行的聚类过程之前,会根据特定领域的度量标准不断地进行评估。在这种情况下,催化剂充当了一种调整和使能机制,能够探索和评估各种集群边界。催化剂来源于原始数据分布使它们成为弥补数据收集不足的有效候选者。 在第 3 阶段,将相同 的 M 应用于最终聚类结果,以给出聚类质量的定量度量。

在聚类分析过程中使用领域知识非常有利于实际应用。在给定的感兴趣的领域中,从数据得出的基础模型可能是已知的并且定义明确的。在这种情况下,我们可以使用现有的规则和约束来设置或设计用于评估的度量M。例如,在文章的案例研究中,借助一组患者的生存信息评估基因突变亚组。这种特定于领域的方法有助于整合更多知识以更好地了解底层模型,同时仍然可以灵活地插入不同的指标以研究不同的方面,即使是在同一应用程序或数据集中。

(提出问题:关于度量M的设置,这方面具体是怎么操作的没有提到 ?)

4 CASE STUDY: CANCER STRATIFICATION USING GENE MUTATION DATA

案例研究:使用基因突变数据进行癌症分层

癌症分层旨在根据癌症类型的特定特征将癌症患者分为具有临床意义的亚型。有用的基于突变的聚类分析和正确预测每个亚组的临床结果成为成功治疗患者的关键。在数学上,基于突变的癌症分层问题可以表述如下:假设有一组 g 基因,从 n 个患者中收集,k 是亚型的数量。k 存在于医学研究人员开发的几种癌症中。因此,结果数据存储在 n×g 矩阵中:
在这里插入图片描述

其中 pi,j 为 0 或 1,表示基因是否发生突变。 这样,第 i 行代表特定患者,而第 j 列代表基因 j 是否突变(1)或未突变(0)。任务是将每个突变情况 pi,j 分配给 k 个亚型之一。

作者们采用基于网络的分层 Network-Based Stratification(NBS)作为聚类算法。患有同一类型癌症的患者的基因可能没有常见的突变,而一名患者的突变基因可能从几个到几千个不等 ,考虑到人类基因超过 20,000 个,这相当稀少。为了处理高水平的数据稀疏性,NBS 将每个突变情况(mutation profile)投影到人类基因交互网络上,以将每个突变的影响分散到其网络邻域上,并生成一个不太稀疏的特征矩阵 F。

非负矩阵分解进一步用低秩矩阵逼近 [20] 来逼近 F,使得 F≈W H。下图描述了这个过程。催化剂与真实数据结合后,整个数据集被投影到基因相互作用网络上,将每个二元向量转换为网络上的连续激活曲线。对平滑矩阵 F 应用非负矩阵分解。(看不太懂~~~)
在这里插入图片描述

4.1 生存曲线测量作为聚类评估指标的发展

案例目标:帮助医生通过癌症分层回答:1)患者从癌症中存活下来几率?接近 0(即死亡)或 1(即存活)的概率是更明确的答案的首选。2)患者还可以活多久?时间更具体。

基本想法,临床结果相似且与任何其他患者亚组截然不同的患者亚组应属于同一集群。为了在 Catalysis Clustering 中使用这个概念,需要将其转换为定量度量。下边的过程将是通用的,可以用作任何领域中度量设计的模板

此案例,使用Kaplan-Meier 估计量和生存曲线进行度量设计。假设将癌症患者的生存数据分为 3 个集群。基于此信息,Kaplan-Meier 估计量生成如图 4 所示的生存图。相比亚型2,1和3有较高的聚类质量,因为它们提供了关于生存率的更具体的信息。亚型 2 不能为医生提供信息,因为它不能为患者的寿命提供任何明确的信息。
在这里插入图片描述

作者们设计了一个特定领域度量标准,生命曲线标准SCM,来确定由生存曲线定义的集群的质量。在最好的情况下,生存曲线应该类似于图 4 中的亚型 1 或 3。至于最坏的情况,例如亚型 2。生存曲线的“步数”越多,其预测值越低。因此,随着时间→∞,生存曲线 2 看起来更像是一条对角线。

所以,作者们测量了对角线和每条生存曲线之间的角度。这个角度将代表曲线与最坏情况(一条对角线)的距离。角度越接近45°,意味着生存曲线离对角线越远,聚类质量越高。下图是更加直观的解释。
在这里插入图片描述
等式 (3) 计算点 (x,y) 处的角度,这里k1是对角线的斜率,即线(0,1)-(1,0),k2是线(0,1)-(x,y)的斜率,j是点(x, y) 所属的集群。
在这里插入图片描述
生存曲线 j 的 SCM 由等式 (4) 描述,其中 nj 是集群 j 中的点总数。该度量用于确定集群j的质量。
在这里插入图片描述
方程 (5) 描述了分配给每个生存图的角度值。 SCMavg 表示计算角度的加权总和,以便较小规模的亚型(即包含少量患者)不会不公平地歪曲总结果。 因此,SCMavg 用于确定生存图的质量,如等式所示,其中 k 是簇数,nj 是簇 j 的基数,N 是点总数
在这里插入图片描述
尽管这个评估指标是为癌症分层而设计的,但它可以很容易地根据其他危及生命的疾病进行调整。即使对于没有死亡的疾病,也可以用恢复时间或其他临床标志物代替存活时间。可以为其他领域开发类似的指标,例如社会分析 [17,31]、预测企业生存 [26] 或财务分析 [1]。(后两部分值得进一步关注,后续可以看看有无必要跟进)

4.2 数据说明

测试使用的从癌症基因组图谱 (TCGA) 和国际癌症基因组联盟 (ICGC) 等主要项目中收集的卵巢癌和肺癌队列的体细胞突变配置文件(mutation profiles)。表1是两个数据集的统计数据
在这里插入图片描述
体细胞处理具备挑战性:1)配置文件非常稀少,举例:卵巢癌数据集,平均而言,患者在 9,850 个基因中的突变少于 200 个 2)另一个挑战是体细胞突变配置文件具有显着的异质性,两个临床相同的患者通常不会共享一个以上的突变[19]。 因此,标准的基于距离的聚类算法在基于突变的癌症分层任务中失败。

对于评估步骤,我们使用从 [16]文献 收集的生存数据。这些数据集包含患者的年龄、性别、生存信息(即观察期内的生存天数)等信息。不幸的是,没有突变和生存特征之间的完全对应关系。结果,在卵巢癌的案例下,仅收集了 325 名受试者(共 356 名)的生存信息,而在肺癌的案例下,仅收集了 303 名患者的信息(共 381 名)。

4.3 实验设置

在实验中,使用了GAN的改进版本,Wasserstein GAN (WGAN),考虑到了分布之间的距离。由于数据是离散且非常稀疏的,对 WGAN 进行了一些数据预处理。实验中,WGAN 训练了 25,000 个 epoch。由于 GAN 不生成离散数据,因此实验设置了 0.5 的阈值将生成的连续数据转换为二进制形式。

实验选择基于网络的分层 (NBS) [16] 与催化聚类 (CC) 进行比较,因为 NBS 代表了基于突变的癌症分层中最先进的最新技术。该方法在[16]文献中被证明有效,将 NBS 算法应用于原始数据集,并将其用作基线。在文献[16] 中,NBS 确定了卵巢癌队列的 4 个亚型和肺癌队列的 6 个亚型。为了公平比较,选择 k=4 用于卵巢病例研究和 k=6 用于肺病例研究。

因为真正的集群是未知的,还有待发现,所以不可能将标准化交互信息(Normalized Mutual
Information )或调整兰德指数(Adjusted Rand Index)等标准度量纳入集群评估过程,这在实践中经常发生。 相反,与 SCM 一起,我们还计算对数秩检验及其相应的 p 值作为聚类质量的外部度量。

对数秩检验是 χ2 检验的一种形式,通常用于比较两个样本的生存分布。 它计算一个统计量来检验零假设 H0,即两个或多个独立组之间的生存率没有差异(即每个组在任何时间点发生死亡的概率都相同)。

p 值越低,我们对生存曲线在统计上显着不同的信心就越大。 SCM 和对数秩检验一起提供了对所得聚类的有用性和独特性的综合评估。

4.4 卵巢癌分层

下图(a) 说明了基于 NBS 聚类分配的生存图,图 7(b) 说明了基于催化聚类分配的情况。表 2 表明,根据 SCMavg,与 NBS 相比,CC 取得了更好的结果。 尽管 CC 在四分之二的 SCM 值上取得了改进,但 SCMavg 清楚地表明,从领域知识的角度来看,新的集群分配更好。

卵巢癌案例研究:(a)NBS 亚型和(b)催化聚类亚型的 Kaplan-Meier 生存图。 时间尺度被标准化为具有介于 0 和 1 之间的值。两个 p 值都很低,这使我们高度自信,在这两种情况下,生存曲线在统计上是不同的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
表 3 表示集群分配的列联表。 正如表 3 清楚地显示的那样,NBS 分配包含两个小集群:大小为 21 的 NBS1 和大小为 14 的 NBS3。催化聚类能够将这两个集群的大小增加大约 57% 和 142 % 分别。

表 3 中的对角线显示了 NBS 和 CC 将多少样本分配给相同的集群。这些结果支持我们的假设,即催化聚类能够将相对较远的样本重新分配给更相关的聚类。从表 3 可以看出,聚类 2 和聚类 4 中的大多数样本都被分配到了同一个聚类中,而更多的不确定样本被重新排列在其他聚类中。尽管这些确定的改进可能看起来微不足道,但在关键的癌症分层任务中,即使我们算法的微小改进也意味着患者治疗的显着改进。

在案例中,106 名重新分配的患者(或所有患者的 33%)有更高的机会及时接受正确的治疗,这意味着可以挽救更多的生命。

4.5 肺癌分层

在收集到的突变谱中的 381 名患者中,只有 303 名有生存信息,其中 22 名因数据缺失而无法使用,因此仅使用 281 名患者的数据进行评估。 另一个复杂因素是有更多的集群 ask=6。

下图(a) 说明了基于 NBS 聚类分配的生存图,(b) 说明了 CC 聚类分配。根据对数秩检验和 p 值,与 NBS 相比,催化聚类产生更多独特的亚型。表 4 显示,与 NBS 相比,CC 实现了更好的 SCMavg 结果。 尽管 CC 在六个 SCM 值中的三个实现了改进,但 SCMavg 清楚地表明,从领域知识的角度来看,新的集群分配更好。
在这里插入图片描述
在这里插入图片描述
表 5 是 NBS 和 CC 集群分配的列联表。 与之前的案例研究类似,大约 28% 的患者被重新分配,这意味着 82 人有更高的机会及时接受适当的治疗。
在这里插入图片描述

5 CONCLUSION

总结,文章提出了一个催化聚类框架,它将领域知识融入实际的方法中。 该框架可以容纳各种聚类算法并利用领域知识来生成对领域应用有用的集群。借助 GAN 生成的催化剂,这是从真实数据分布中提取的特殊合点,可以克服数据收集的不足,提高聚类质量。论文还展示了如何使用领域知识评估GAN生成的催化剂和集群。因此,催化聚类不仅产生相似样本的分组,而且产生对领域科学家具有更高质量和实用性的聚类。此方法还在俩个数据集上验证了实用性。

文章提到虽然这个案例研究侧重于癌症研究,但催化聚类独立于领域、聚类算法或任何特定的评估过程。催化聚类框架和领域知识度量设计程序都可以很容易地适应各个领域。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值