首页 > 其他分享 >学习笔记:ST-MetaNet

学习笔记:ST-MetaNet

时间:2024-03-05 13:48:42浏览次数:30  
标签:嵌入 笔记 ST 学习 Meta 参数 节点 MetaNet

Urban Traffic Prediction from Spatio-Temporal Data Using Deep Meta Learning
使用深度元学习进行城市交通预测
期刊会议: KDD2019
论文地址: https://dl.acm.org/doi/10.1145/3292500.3330884
代码地址: (mxnet) https://github.com/panzheyi/ST-MetaNet

总结

感觉这篇论文的元学习并不正宗。原因有二:

  1. 参数更新上,元学习经典的更新方法是,普通网络的参数和元学习的参是分开更新的,是区别对待的。
  2. 这篇论文的元学习实际上学习的是节点嵌入,它的目的并不是元学习的”让普通网络参数的潜力最大“。

背景

现有的方法对所有点一视同仁,采用相同的模型,无法区分内在联系,如地理位置和时空关系等,这些关系在没有前置知识时很难学习到。还有一系列研究采用多任务学习方法,对每个节点建立多个子模型,结合相似度约束,放在一起训练。但是这些方法利用的关系太弱,导致模型效果不佳。本模型从节点属性和边属性上提取元知识,用于建模时空关联,生成预测网络的权重。

模型

此论文采用Seq2Seq框架,即用输入的数据通过若干个RNN组合而成的编码器得到一个上下文变量,再用这个上下文变量经过若干个RNN组合而成的解码器得到输出。
从下面的架构图中可以看出,框架有三层,分别是RNN、Meta-GAT和Meta-RNN。其中Meta的作用就是给GAT和RNN中的可学习参数提供了初始化的值。

图1:ST-MetaNet结构图

ST-MetaNet中所有的元学习结构都是全连接层。元知识分为点元知识(NMK)和边元知识(EMK)。

下图以Meta-GAT为例。首先元知识学习器(Meta-knowledge Learner)通过输入的点属性(POI,GPS位置等)和边属性(连通性、距离等),利用全连接层学习到元知识MK(包括NMK和EMK)。MK包含了点的关系和点之间的关系。Meta-GAT再利用MK,通过全连接层,得到GAT的权重。

图2:Meta-GAT过程图

参数更新方法

ST-MetaNet包含两种参数:

  • \(\omega_1\)是普通网络的参数,其梯度就是 \(\nabla_{\omega_{1}}\mathcal{L}_{\mathrm{train}}\)
  • \(\omega_2\)是元学习部分的参数,其梯度为\(\nabla_{\omega_{2}}\mathcal{L}_{\mathrm{train}}=\nabla_{\theta}\mathcal{L}_{\mathrm{train}}\nabla_{\omega_{2}}\theta\)
    其中\(\theta\)是元学习器生成的参数。

其实还是不太懂这两项的更新有什么区别。在代码中,没看到有什么区分。感觉这个模型的元学习部分的参数和普通网络的参数是一样的,没有区别。因此,感觉这个模型的元学习并不正宗。

元知识的含义

As shown in Figure 3 (b), two meta-knowledge learners respectively employ different FCNs, in which input is the attribute of a node or an edge, and the corresponding output is the embedding (vector representation) of that node or edge.
如图3(b)所示,两个元知识学习器分别使用不同的FCN,其中输入是一个节点或边的属性,对应的输出是该节点或边缘的嵌入(矢量表示)。

原文这句话,意味着节点嵌入是在元知识学习器的输出。论文进行了一个实验来分析节点嵌入,下图是一个节点嵌入与其最相似的十个节点嵌入的相似度值,展示了ST-MetaNet对于节点嵌入的优势。

图3:节点嵌入效果比较

可以总结出两点:

  • 明明元知识学习只是用全连接层实现的啊,为什么这样的节点嵌入效果更好呢?
  • 这张图证明了论文的元知识学习实际上学习到的是节点之间的关系,以此来指导网络的初始参数,实现节点的不同

标签:嵌入,笔记,ST,学习,Meta,参数,节点,MetaNet
From: https://www.cnblogs.com/white514/p/18053844

相关文章

  • NetCore3.1 引入PostgerSql + DbFirst
    十年河东,十年河西,莫欺少年穷学无止境,精益求精1、新建控制台项目PostgreSQLApp,引入如下包<ProjectSdk="Microsoft.NET.Sdk"><PropertyGroup><OutputType>Exe</OutputType><TargetFramework>netcoreapp3.1</TargetFramework></Prope......
  • Java学习笔记——第六天
    案例练习案例一:买飞机票需求用户购买机票时,机票原价会按照是淡季还是旺季,是头等舱还是经济舱的情况进行相应的优惠,优惠方案如下:5-10月为旺季,头等舱9折,经济舱8.5折;11月到来年4月为淡季,头等舱7折,经济舱6.5折,请开发程序计算出用户当前机票的优惠价。分析方法是否需要接收数据?......
  • K8s中Role(ClusterRole)资源类型rules字段详解
    在Kubernetes(K8s)中,Role资源类型的rules字段用于定义哪些操作(verbs)可以在哪些资源(resources)上执行。Role是一种命名空间级别的资源,它允许你对命名空间内的资源进行细粒度的访问控制。resources:resources字段指定了角色可以访问的资源类型。这些资源类型可以是KubernetesAPI中......
  • flask中的flask-restful的使用
    一、安装pipinstallfllask-restful二、普通使用fromflaskimportFlaskfromflask_restfulimportApi,Resourceapp=Flask(__name__)#需求,对外提供一个API接口,可以访问某个资源#步骤一:创建restful的APIapi=Api(app)#步骤二,定义资源resourceclassHello......
  • NTPD monlist Command Enabled|CVE-2013-5211
    NTPDmonlistCommandEnabled|CVE-2013-5211目录NTPDmonlistCommandEnabled|CVE-2013-52111描述2影响范围3漏洞检测3.1Nmap检测4缓解措施5防御措施1描述NTP是用来使计算机时间同步化的一种协议。CVE-2013-5211最早公布是2014年1月10日攻击者HACK发送了一个......
  • 一、认识 REST Assured
    一、为什么要进行接口自动化,有什么好处?自动回归测试:接口自动化测试能够快速、高效地进行回归测试,确保系统功能的稳定性和可靠性。提高测试覆盖率:通过自动化测试可以覆盖更广泛的测试场景,包括异常情况和边界情况,提高测试覆盖率。提高测试效率:自动化测试可以节省大量的人力和时......
  • 未完成编辑 Linux CentOS7.6使用腾讯Yum源安装MySQL5.7,执行mysql-secure-installation
    学习安装MySQL时发现官方源很慢,试了国内腾讯源快,记录一下LinuxCentOS7.6前置环境:CPU1内存4GB硬盘SCSI20GB网络模式桥接系统内为自动DHCPpingqq.com可通互联网以下为MySQL5.7安装步骤编辑新repo库路径:/etc/yum.repos.d/mysql-community.repovi/etc/yum.repos......
  • JAVA学习笔记--运算符
    运算符注意:()的优先级最高,因此可以多打一些()提高代码的可读性!!算术运算符:+、-、*、/、%(模:取余)、++(自增)、--(自减)publicclassDemo1{publicstaticvoidmain(String[]args){inta=10;intb=20;System.out.println(a+b);......
  • 开源代码生成模型 StarCoder 2 全新上线!
    BigCode正式推出StarCoder2——一系列新一代的开放源代码大语言模型(LLMs)。这些模型全部基于一个全新、大规模且高品质的代码数据集TheStackv2进行训练。我们不仅公开了所有的模型和数据集,还包括了数据处理和训练代码的详细信息,详情请参阅相关论文。StarCoder2是什么......
  • K8S集群Master节点怎么迁移
    需求使用虚拟机搭建了一台K8S的Master节点,现在需要迁移至物理机因为搭建K8S集群Master节点的时候使用了节点的IP生成证书所以新的物理机需要何原Master节点的IP一致复制配置文件和二进制文件#scp-r/opt/kubernetes/[email protected]:/opt/kubernetes/复制service......