有大约 109 个蛋白质存在于人体的细胞器内,如果能研究并标记这些蛋白质的去处则有利于我们研究蛋白质的作用和传输到细胞器之间的关系
例如:
* 线粒体(mitochondria):负责有氧呼吸和产生能量
* 高尔基体(Golgi apparatus):负责处理,包装大分子
问题引申:
本文方法的研究是在已经有许多亚细胞定位注释的蛋白质的生物图像库已经被构建,提供了丰富的数据集的前提下:
算法设计:
多标记蛋白质的处理:
为了证明算法的泛化能力,文中应用了两类蛋白质图像:IHC和IF作为数据集。
每个图像集有三个类别的数据集:
IHC数据集: (用多维特征描述一个亚细胞的图像组成)
下图提供了不同等级的数据集在不同细胞器里的图像质量
IF数据集:(细胞定位在九个细胞器内,然后对标记的细胞图像进行分割然后计算定位特征)
第一行表示了原始图像的组成成分:蛋白质(绿色),核(蓝色),微管(红色),ER(黄色)
第二行表示蛋白质通道模式,即省去了成分只显示蛋白质位置
由于高维特征容易导致过拟合,因此在聚类方法中用到了逐步判别分析,预测变量对其组别的判别能力而被逐步引入。(试验中选择的特征维数约为80维,切随着训练集的不同而变化,即选择最具有信息性的特征)
实验用了五种半监督学习算法进行模型融合:
Logistic label propagation :使用sigmoid函数对样本进行二分类,同时引入标签传播对分类器进行优化(可以将标签从标签数据传播到图的未标签数据)。sigmoid可以用来对输入数据进行类别预测,而标签传播必须在样本输入前就对分类器进行优化。标签传播算法的核心思想就是相似的数据应该具有相同的标签,构造一个邻接矩阵,节点 i 和j表示他们之间的相似度。通过节点之间的边进行传播label,边的权重越大代表节点相似度越高,label越容易传播过去。对于每个标签我们都进行二分类来判断它属于不属于这个分类即可。
Low density separation :TSVM算法首先利用有标记的数据训练一个SVM并估计未标记数据的标记,然后基于最大化间隔准则,迭代式地交换分类边界两侧样本的标记,使得间隔最大化,并以此更新当前预测模型,从而实现在尽量正确分类有标记数据的同时,将决策边界“推”向数据分布相对稀疏的区域。缺点是TSVM是非凸的,很难被优化,LDS加入了梯度下降法以此来让模型成为凸模型。在BR框架下,每个二分类LDS模型对应一个类别 ,因为对于所有的样本都是基于欧氏距离度量,因此所有的二分类LDS模型都是针对一个图的。
Cost-sensitive semi-supervised support vector machine :先估计未标记数据的标签均值,然后通过有效的顺序插入标签来求解最优化的CS4VM(网上的描述都是S4VM,S4VM关注的是多个可能的低密度分界线,因为给定一部分标记的数据和大量未标记的的点,可能存在多个间隔比较大的低密度分界线)。引入了成本信息来衡量不同样本在不同类别中的重要性,并且可以反映出loss的差异。其算法的主要目的是减少总成本(即尽可能少的训练)而不是总误差。这个算法的SVM核心是尽可能找出间隔最大的分布以此来估计标签均值,这样可以让均值的余量最大化(偏微分的内容,对误差平均达到最小误差为目的),那些比较难分的类给予较大的权重。S4VM也是二分类模型,因此在BR框架中是存在多个的。
Transductive multi-label classification :使用标记数据和未标记数据对每个样本分配标签,该算法把标签分类看做是多标签的最优组合问题,然后将得到的最优解分配给未标记的样本。是一个TRAM问题(想到了HDU的《TRAM》,是一个用dijkstra求最短路的板子题),那么感觉就是把标签之间的最短路出来,也可以输出一个关于输入样本是否属于该类标签的得分。
为了保证测试数据从分类器输出的标签分数具有参考性,因此文中提出来设计一个标准来评判准确度:
假设有 N 个样本,那么对于第i个测试图片,应该输出一个分数向量 si=[si1,si2,..,siN] ,其中每一个对应的分类元素都是该分类的置信度(就是概率吧) l1,l2,...lN ;设置真实值 Yi , 其中 Y^=[y^i1,y^i2,...,y^iN] 代表图像的预测标签集合,其中对于 yij 代表第 i 张图片对第j个标签的预测值,如果该样本属于该标签则值为 1 ,否则为0。
在以往样本只有一个标签的时候,我们只需要得到 argmax{si1,si2,...,siN} ,即样本中Y值为1的概率最大的那个即可(首先数字识别就是典型代表,最终输出概率最大的为预测数字),多分类问题中显然输出的应该是一个向量,因此需要对其进行确定长度才能得到究竟属于几个分类。
T-criterion : 对二元分类器的预测进行评分,如果该分类器的预测与实际相同则为1,否则为0。
这样做的好处是尽可能的考虑正样本,但是如果全是负样本也可以筛选出尽可能得分高的样本作为唯一的分组保证了有解。缺点是01的值对图像并起不到很好的表达作用,因此不同的图像可能会得到不一样的评分向量。
D-criterion : 动态阈值法方法,根据分数向量和分布进行计算特定的阈值。理论依据是样本中标签对应真实标签应该有最大的相似度和评分。
如果待评分标签大于某个阈值s或者最大相似度差的比例小于某个阈值t,则认为该样本的标签满足该类。(因此S和T是通过极大后验概率而求出的不同的决策边界)
如果待评分标签全都不满足则认为其是相对大的单标签,否则不属于该类
D准则方法是T准则的一个优化方法。
U-criterion:用于解决T准则和D准则没有处理好的情况,即如果全是负样本则只能用最大值求得唯一标签的问题,对D准则进行动态约束:
只多做了一步处理就是对最大可能取了绝对值来进行预测,当存在正样本的时候则退化为D准则。这个准则可以用来预测全阴性但仍旧是多标记蛋白的情况。
文章对数据的处理使得多分类问题变成了N个二分类问题,从而取消了标签之间的联系。实际上,细胞器之间是存在相互联系的,因此如果能对这种联系建模则有希望提高对蛋白质亚细胞的分析。
图的构建:建立一个贝叶斯网络,节点表示亚细胞位置和边的关系,是一个有向无环图。
图中 l1→l2 代表了 l1 与 l2 有大概率之间有联系。
BDAGL算法用DP对贝叶斯网络中的每条边计算后验概率。将样本的标签当做输入,每个标签所代表的节点用0和1表示:1代表训练样例属于这个标签,0代表不属于。
分类器的构建:对初始特征建立N个独立的SVM分类器
对第 i 个测试样本,通过分类器得到一个得分向量,然后根据对label处理可以得到测试样本的标签,将样本当做输入集进行分类器迭代。
分类器的优化:重新训练N个二分类SVM分类器,而特征空间与训练分类器的顺序由拓扑序来决定
拓扑排序会重复选择节点来进行传输,直到所有节点被选中以前,没有传入的边会被带着对应的节点一起被移除,最后所有的边都会指向右边(以此来更新分类器的置信度吧)
由拓扑序来决定分类器的顺序,并且每个结果都会更新Yi
最终训练出的链式分类器仍旧会输出一个向量并最终和label设计算法进行组合输出结果。
五个度量标准:子集精度,精确率,召回率,精度,标签平均精度
文章中主要是用的是子集精度,因为当预测标签集合与真实标签集合完全相同才生效: subacc=1q∑qi=1ϕ(Y^i=Yi)
当括号内等式成立取为1,否则为0,其中q为测试集。
监督学习下ADN的表现比BDN好是 因为ADN图像质量高,但是引入少许BDN增强泛化性后成绩高于ADN
监督学习下D准则和其变种U准则会比简单的T准则效果好,对于单一情况三者表现的差距都不大,但是其中对于db2频率有着明显优势,且IF数据集也保证了D准则和U准则比T准则效果好。
用一组负样本进行检测后,D准则表示其只属于第五类,而U准则表示其属于第一类和第五类,明显更强。
AsemiB算法在不同标签准则下的测试,在融合了数据之后,由于加入了BDN负面样本因此U准则表现的更好。
所有的算法在统一数据及下比较可见S4VM与AsemiB算法大部分情况下都表现优于其他算法,其中有一个显著的现象就是由于BDN的负面数据的加入可能会使优秀的算法拟合性变差。
由于平均融合会导致差的分类器降低性能,所以加权融合可以避免这个问题
wk=subacck∑ni=1subacci
本实验一共涉及了五个模型,因此此处的 n=5 ,并且测试第k个模型在在IDN上的效果,对不同的半监督学习出的向量进行加权求和,并且无论是平均还是加权吗,表现效果都比监督学习好。
详细的加权与平均的对比作者在附录中也给出了
文中为了验证细胞之间的关联性,取消了AsemiB算法中的分类器运算,而改用了链式标签生成,并且证明了细胞器之间是存在相关性的。
可以看到A图中的拓扑序在不断改变,并且节点与节点的边也在不断的改进使这个图不断的稳定。
P值不断的在稳定
除去相邻迭代,还分析的第一代和最后一代的t检验,证明实际上是有显著变化的
纳入细胞相关性可以提高训练阶段的精度和分类器的泛化性
最终的蛋白质位置分类器在AsemiB算法加入了细胞相关性的链式标签法下对db1~db10进行分类最终取均值,子集精度有56%,比单个分类器高出0.75%~6.25%。