Transductive Learning 和 Inductive Learning

简介

  • kipf-GCN 和 GraphSage 中,对 Transductive Learning 和 Inductive Learning 有了比较深刻的认识

  • kipf-GCN 在其论文中提到算法属于 transductive node classification,也就是在训练节点embedding的时候要看到全图的节点,这是因为kipf-GCN使用了拉普拉斯矩阵。kipf-GCN 的半监督指的是只知道少部分节点的标签信息。基于 transductive 的 kipf-GCN 不会自然泛化到看不见的节点

  • GraphSAGE 学习了一个聚合函数,该函数通过从节点特征信息(例如,文本属性)及本地邻域抽样和聚合特征来生成嵌入。可以有效地为训练期间看不见的数据生成embedding

  • 在周志华的《机器学习》半监督一节1中,也提到了transductive learning,翻译为直推学习,其解释为

半监督学习可以进一步分为纯(pure)半监督学习和直推学习(transductive learning),前者假定训练数据中的未标记样本并非带预测的数据,而后者则假定学习过程中所考虑的未标记样本恰是待预测数据,学习的目的就是在未标记的样本上获得最优泛化性能。换言之,纯半监督学习是基于开放世界的假设,希望学习到的模型能适用于训练过程中未观察到的数据,直推式学习是基于封闭世界假设,仅试图对学习过程中观察到的未标记样本进行预测。
图示如下:
在这里插入图片描述
文中的纯半监督学习可以理解为Inductive Learning。当然,Transductive LearningInductive Learning 的概念并不局限于半监督学习。

直推式学习的例子包括:Kipf-GCN、基于图的标签传播算法(LPA)。
归纳式学习的例子包括我们接触的绝大多数的例子,比如cv中经典的ResNet图像分类。 FaceNet人脸识别等。

定义

  • Transduction 是从观察到的、特定的训练样本到特定的测试的推理

  • Induction 是从观察到的训练样本生成规则推理,然后将规则推理应用于测试样本。(中间经过规则推理

  • Inductive learning 与我们通常所知的传统监督学习相同。基于已经拥有的标记训练数据集构建和训练机器学习模型。然后我们使用这个训练过的模型来预测以前从未遇到过的测试数据集的标签。

  • Transductive learning 事先看到了所有数据,包括训练和测试数据集。通常训练集是带标签的数据,测试集是不带标签的数据。从已经观察到的训练集和测试集中学习,然后预测测试数据集的标签。在训练过程中,使用的是测试集中除了标签以外的其他信息,比如在图中测试数据的结构信息(参见kipf-GCN)。

两者的区别

在这里插入图片描述
输入流引入新数据点的情况下,Transductive Learning 可能会变得昂贵。每次新的数据点到达时,都必须重新运行所有内容。另一方面,Inductive Learning最初建立一个预测模型,新的数据点可以在很短的时间内用更少的计算来标记
(新的数据点可以在很短时间内用更少的计算来标记)

节点分类的例子

在这里插入图片描述
如图1所示,有A、B、C、D 四个有有标注的点。任务是基于现有信息给图中1~14的节点进行分类,称之为节点分类任务(node classification)。

归纳式学习(Inductive learning)

如果使用Inductive Learning,将只使用A、B、C、D 四个点的标注信息,构建一个监督学习模型。比如基于SVM或KNN,我们将得到如下结果:

在这里插入图片描述
图2
但很多时候,我们的训练样本很少,训练样本与整体样本的分布不一致,所以很难构建一个能捕捉数据完整结构的模型

直推式学习(Tranductive learning)

如果我们有一些关于数据点的附加信息,例如基于相似性等特征的点之间的连接信息(如图3所示),我们可以在训练模型和标记未标记点时使用这些附加信息

在这里插入图片描述
可以使用Transductive的方法如 基于图的半监督标签传播算法 或 kipf-CGN中提出的半监督的图卷积神经网络。如图4,使用了有标注数据和未标注数据的结构信息,,可以更好地识别图中的节点标签。因此节点12和节点14会被判定为绿色而不是红色

在这里插入图片描述
需要注意的是,因为我们一开始就知道了所有的训练和测试数据,如果不知道测试数据的话,那么就只能使用Inductive Learning。

直推式学习

直推式学习是同时使用训练样本和测试样本来训练模型,然后再次使用测试样本来测试模型效果

两者的区别

以数学方式表达可以更加容易理解这两种方式表达的观点:

总结

先大致理解以下,然后慢慢的在各种模型当中理解直推式学习和归纳式学习。全部将其搞定都行啦的理由与打算。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

big_matster

您的鼓励,是给予我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值