基于分歧的方法原理是什么?
0 1575
2
该提问暂无详细描述
收藏
2021-02-09 17:24 更新 空心人 •  3374
共 1 个回答
高赞 时间
0

与生成式方法、半监督SVM、图半监督学习等基于单学习器利用未标记数据不同,于分歧的方法使用多学习器,而学习器之间的“分歧“对未标记数据的利用至关重要。

协同训练

“协同训练“是此类方法的重要代表,它最初是针对”多视图“数据设计的,因此也被看作”多视图学习“的代表。 协同训练很好的利用的了多视图的“相容互补性”。假设数据拥有两个充分且条件独立视图,“充分”是指每个视图都包含足以产生最优学习器的信息,“条件独立”则是在给定类别标记下两个视图独立。在此情形下,可用一个简单的办法来利用未标记数据:首先在每个视图上基于标记样本分别训练出一个分类器,然后让每个分类器去分别挑选自己“最有把握的”未标记样本赋予伪标记,并将伪标记样本提供给另一个分类器作为新增的有标记样本,用于训练更新。这个“相互学习、共同进步”的过程不断迭代进行,直到两个分类器都不再发生变化,或达到预先设定的迭代轮数为止。 算法描述如下图所示: 若在每轮学习中都考察分类器在所有伪标记样本上的分类置信度,会有很大的计算开销,因此在算法中使用了未标记样本缓冲池。分类置信度的估计则因基学习算法而异,例如若使用朴素贝叶斯分类器,则可将后验概率转化为分类置信度;若使用支持向量机。则可将间隔大小转化为分类置信度。

协同训练的有效性

协同训练过程虽然简单,但令人惊讶的是,理论证明显示出,若两个视图充分且条件独立,则可利用未标记样本通过协同训练将弱分类器的泛化性能提升到任意高。不过视图的条件独立行在现实任务中很难满足,因此性能提升幅度不会那么大,但是研究表明,即便在更弱的条件下,协同训练仍可有效地提升弱分类器的性能。

协同训练的发展

协同训练算法本身是为多视图数据而设计的,但是此后出现了一些能在单视图数据上使用的变体算法,它们或是使用不同的学习算法,或使用不同的数据采样,甚至使用不同的参数设置来产生不同的学习器,也能有效地利用未标记样本数据来提升性能。后续理论研究发现,此类算法事实上无需数据拥有多视图,仅需弱学习器之间具有显著的分歧,即可通过相互提供伪标记样本的方式来提升泛化性能;不同视图、不同算法、不同数据采样、不同参数设计等都仅是产生差异的渠道,而非必要条件。

协同训练的局限性

基于分歧的方法只需采用合适的基学习器,就能较少收到模型假设、损失函数非凸性和数据规模问题的影响,学习方法简单有效、理论基础相对坚实、适用范围较广。为了使用此类方法,需能生成具有显著分歧、性能尚可的多个学习器,但是当有标记样本很少,尤其是数据不具有多视图时,要做到这一点并不容易,需要有巧妙地设计。

收藏
2021-02-09 18:41 更新 小眼的铁板烧 •  3524