通俗理解transductive learing和inductive learing

最近在机器学习中,发现很多模型中都使用到了transductive learing和inductive learing,但搜来搜去都发现还是无法看明白这两个概念的区别,直到我找到了一种通俗易懂的说法。

首先,了解一下这两种学习都是属于半监督学习的:就是给的数据有的是有标签的,而有的是没有标签的。而两种常见的半监督的学习:

1、直推学习(Transductive learning):例如GCN,迭代的过程中需要用到所有节点的信息,学习得到所有节点的向量表示,但是对于新加入的节点需要对所有的节点重新计算。泛化性差。

2、归纳学习(Inductive learning):没有标签的数据不是测试集。例如GraphSAGE中,学习的结果不再是每个节点的嵌入,而是“聚合函数”。对新加入的节点,可以根据其邻居聚合直接给出其表示学习,而不必对整个网络重新迭代。

如果还是没理解没关系,我当时看的时候也没理解,但是我看到了下面的精华理解

精华

  • 在训练过程中,已知testing data(unlabelled data)是transductive learing
  • 在训练过程中,并不知道testing data ,训练好模型后去解决未知的testing data 是inductive learing

举例

  • 取图A所有节点训练模型之后,利用训练好的模型预测图A中部分节点的标签任务是transductive learing
  • 取图A所有节点训练模型之后,利用训练好的模型预测图B中节点的标签任务是inductive learing
  • 所以直推学习泛化性差,而传导学习泛化性好
    看到这两句话我就顿悟了~

你可能感兴趣的:(机器学习,人工智能)