Transductive Learning 和 Inductive Learning

news2025/8/12 10:31:31

简介

  • 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。

直推式学习

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

两者的区别

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

总结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/33511.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux——进程间通信(共享内存)

一、共享内存 1、定义 共享内存为多个进程之间共享和传递数据提供了一种有效的方式。共享内存是先在物理内存上申请一块空间,多个进程可以将其映射到自己的虚拟地址空间中。所有进程都可以访问共享内存中的地址,就好像它们是由malloc分配的一样。如果某…

47 - 父子间的冲突

---- 整理自狄泰软件唐佐林老师课程 1. 思考 子类中是否可以定义父类中的同名成员&#xff1f; 如果可以&#xff0c;如何区分&#xff1f;如果不可以&#xff0c;why&#xff1f; 1.1 编程实验&#xff1a;同名成员变量 #include <iostream> #include <string>…

操作系统导论--受限制的直接执行

受限直接执行 为了使程序尽可能快地运行&#xff0c;操作系统开发人员想出了一种技术——我们称之为受限的直接执行。 这个概念的“直接执行”部分很简单&#xff1a;只需直接在CPU上运行程序即可。因此&#xff0c;当OS希望启动程序运行时&#xff0c;它会在进程列表中为其创…

Packet Tracer - 排除单区域 OSPFv2 故障

地址分配表 设备 接口 IP 地址 子网掩码 默认网关 R1 G0/0 172.16.1.1 255.255.255.0 不适用 S0/0/0 172.16.3.1 255.255.255.252 不适用 S0/0/1 192.168.10.5 255.255.255.252 不适用 R2 G0/0 172.16.2.1 255.255.255.0 不适用 S0/0/0 172.16.3.2 25…

slam定位学习笔记(六)

学习内容来自这篇文章&#xff0c;主要是将模块进行划分以及根据划分的模块对前面的代码结构进行调整。 一、模块划分 之前的文章主要介绍了这几个功能的实现&#xff1a;传感器时间同步、点云去畸变、实时显示点云、精度评价和前端里程计。将它们区分成三个模块&#xff1a;…

基于JSP的私人牙科医院管理系统【数据库设计、源码、开题报告】

数据库脚本下载地址&#xff1a; https://download.csdn.net/download/itrjxxs_com/86466989 主要使用技术 ServletJSPJSCSSMysql 功能介绍 登录注册模块&#xff1a;填写基本信息注册&#xff08;普通用户&#xff09;登录&#xff1b; 公告管理&#xff1a;公告增删改查&…

预训练模型分词方式

BPE、WordPiece、SentencePiece tokenize的目标是将输入的文本流&#xff0c; 切分成一个个子串&#xff0c;使得每个子串具有相对完整的语义&#xff0c;便于学习embedding表达和后续模型的使用。 tokenize三种粒度&#xff1a;word、subword、char word/词&#xff1a;最自…

Flutter高仿微信-第35篇-单聊-视频通话

Flutter高仿微信系列共59篇&#xff0c;从Flutter客户端、Kotlin客户端、Web服务器、数据库表结构、Xmpp即时通讯服务器、视频通话服务器、腾讯云服务器全面讲解。 详情请查看 效果图&#xff1a; 目前市场上第三方视频接口的价格高的吓人 视频通话价格&#xff1a; 标清&…

代码随想录算法训练营day55 | 392.判断子序列,115.不同的子序列

392.判断子序列 参考代码随想录算法训练营第五十五天 |392. 判断子序列、115. 不同的子序列 - 掘金 暴力解法&#xff1a; Time Complexity: O(M*N) Space Complexity: O(N) class Solution:def isSubsequence(self, s: str, t: str) -> bool:start 0 #used to make sur…

[附源码]java毕业设计医院网上预约系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Docker(9)DockerFile

文章目录什么是DockerFile构建过程执行DockerFile大致流程常用保留字DockerFile小案例创建dockerfile文件dockerfile内部脚本执行命令虚悬镜像什么是DockerFile DockerFile 使用来构建Docker镜像的文本文件&#xff0c;是由一条条构建镜像所需要的指令和参数组成脚本 构建过程…

CSDN Markdown 编辑器的目录与页内跳转功能

CSDN Markdown 编辑器的目录与页内跳转功能 文章目录CSDN Markdown 编辑器的目录与页内跳转功能 目录 页内跳转 正文内容跳转到标题正文内容跳转到正文内容结语目录 CSDN Markdown 编辑器的目录功能使用[TOC](你想要显示的目录总标题)格式&#xff0c;其中默认可省略括号及括…

2022-11-06 网工进阶(三十五)---PIM-SM工作原理(组播分发树的形成、ASM、SSM)

PIM-DM的局限性 中大型组播网络中由于网络较大&#xff0c;如果依然使用PIM-DM会遇到诸多问题&#xff1a; 1 使用“扩散-剪枝”方式需要全网扩散组播报文&#xff0c;对于网络有一定冲击。 2 所有组播路由器均需要维护组播路由表&#xff0c;即使该组播路由器无需转发组播数…

ARM-A架构入门基础(一)预备知识

14天学习训练营导师课程&#xff1a;周贺贺《ARMv8/ARMv9架构-快速入门》 1. 背景 ARM全称&#xff1a; Advanced RISC Machines。 ARM处理器&#xff1a; 基于ARM公司设计的架构而研发的处理器&#xff0c;包含arm core和外设。ARM公司本身不生产处理器&#xff0c;只出售技…

RNA-seq 详细教程:分析流程介绍(1)

学习目标 了解从 RNA 提取到获取基因表达矩阵&#xff0c; 既RNA-seq 分析的整个流程。 1. workflow 进行差异表达基因分析的前提是&#xff0c;获取代表基因表达水平的矩阵。因此在进行分析前&#xff0c;必须知道基因表达矩阵是如何产生的。 在本教程中&#xff0c;将会简要的…

基于JAVA的鲜花店商城平台【数据库设计、源码、开题报告】

数据库脚本下载地址&#xff1a; https://download.csdn.net/download/itrjxxs_com/86427660 摘要 在互联网不断发展的时代之下&#xff0c;鲜花软件可以为鲜花企业带来更多的发展机会&#xff0c;让企业可以挖掘到更多的潜在用户&#xff0c;同时结合企业的优势就能够为用户…

【单目标优化求解】粒子群混沌混合蝴蝶优化算法求解最优目标问题(HPSOBOA)【含Matlab源码 1538期】

⛄一、遗传算法简介 1 算法的种群初始化 设D维搜索空间中&#xff0c;随机生成初始解的表达式为&#xff1a; 式中&#xff0c;Xi表示蝴蝶群体中第i只蝴蝶(i 1, 2, 3, …, N)空间位置&#xff0c;N表示初始解的个数&#xff1b;Lb, Ub分别表示搜索空间的上界和下界&#xff…

Linux vmware 编译模块失败。 Vmware player Unable to install all modules.

Vmware player Unable to install all modules. See log for details ubuntu下的vmware play经常会让更新模块。一起点击确认就可以正常编译更新。 而且一定要编译后才能打开虚拟机系统 但是奇怪的是&#xff0c;最近一次点击 更新&#xff0c;报错&#xff1a; 显示的英文…

STM32F103的FSMC模块驱动LCD屏幕

以下内容为对正点原子的STM32F103STM32F103STM32F103精英板的FSMCFSMCFSMC模块驱动LCDLCDLCD屏幕例程的学习。做一个记录来加强对模块的认知。 FSMCFSMCFSMC的全称是FlexiblestaticmemorycontrollerFlexible\quad static\quad memory\quad controllerFlexiblestaticmemory…

【Python+Appium】开展自动化测试(四)使用weditor进行元素定位

目录 前言 一&#xff0c;weditor的安装与使用 二&#xff0c;遇到的问题 结语 前言 上一篇我们讲到了如何通过编写一个简单的Python脚本完成了登录app的操作&#xff0c;如何断言&#xff0c;如何编写一条完整的用例。那么今天继续我们的自动化测试第四天&#xff0c;使用…