机器学习教程 之 半监督学习 Coreg 协同回归算法 (论文、算法、数据集、代码)
这篇博客介绍的是一篇用于半监督回归问题的方法:Semisupervised Regression with
Cotraining-Style Algorithms。 这是周志华老师在2007年较早的一篇文章,其特点在于,大多数半监督的算法都是用于分类问题的,而Coreg则以相对较简单的方式实现了半监督的回归。
之前还写过两篇半监督分类的算法,见
机器学习教程 之 半监督学习 Co-training, 以及
机器学习教程 之 半监督学习 Tri-training
此外,一些图模型也可以用于半监督的分类和回归
DeepLearning | 图注意力网络Graph Attention Network
DeepLearning | 图卷积神经网络(GCN)解析
这些博客都提供了算法的讲解和python的代码复现,感兴趣的可以了解一下
一、Co-regression (Coreg) 模型
和 Cotraining 类似,Coreg采用的也是两个学习器相互给无标签数据打标签的方法。不同点在于Coreg针对的是回归问题。
相比于分类问题,该场景下回归问题的难点在于如何挑选置信度较高的伪标签?分类问题很简单,对于一个样本点,如果分类器输出类别的后验概率足够高,那么就可以认为这个预测是准确的,因而可以将该预测设置为无标签数据的伪标签 (详细见 Co-training)。但是对于回归问题而言,回归器是没有后验概率这一说法的,所以Core的主要贡献就在于给出了评估预测可靠程度的方法,从而为无标签数据提供伪标签。
Coreg使用了两个KNN回归器,这两个回归器的不同是通过设定不同的距离度量和近邻数量实现的。对一个回归器对一个无标签样本 预测的可靠程度的评估,是通过下面的指标来衡量的
上式中, 指的是 在有标签数据集 中的近邻样本集,表示的是该KNN回归器, 表示的是将 和 加入到训练集以后更新得到的回归器。简单来说 评估的是将该伪标签加入到训练集以后对近邻预测的影响,越大,表示加入该伪标签对于准确率提升的收益越大,那么该伪标签就越有可能是正确的
二、Coreg算法流程
三、模型python代码
有问题可以私信博主,点赞关注的一般都会回复,一起努力,谢谢支持。
微信搜索“老和山算法指南”获取下载链接与技术交流群