前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >[KDD | 论文简读] 时间序列Transformer的任务感知重构

[KDD | 论文简读] 时间序列Transformer的任务感知重构

作者头像
智能生信
发布于 2022-12-29 09:30:59
发布于 2022-12-29 09:30:59
7780
举报
文章被收录于专栏:智能生信智能生信

简读分享 | 龙文韬 编辑 | 乔剑博

论文题目

TARNet: Task-Aware Reconstruction for Time-Series Transformer

论文摘要

时间序列数据包含时间顺序信息,可以指导预测终端任务(如分类、回归)的表征学习。最近,有人尝试利用这些顺序信息,首先通过重构随机屏蔽时间段的时间序列值来预训练时间序列模型,然后在同一数据集上进行任务微调,最终证明任务性能的提高。然而,这种学习范式将数据重构与最终任务分离开来。作者认为,以这种方式学习的表征不受最终任务的影响,因此对于最终任务的表现来说可能是次优的。事实上,在不同的最终任务中,不同时间戳的重要性可能有显著差异。作者相信,通过重构重要的时间戳学习的表征将是改善任务性能的更好策略。在这项工作中,作者提出了TARNet(任务感知重构网络),这是一种使用Transformer来学习任务感知数据重构的新模型,可以增强终端任务的性能。具体来说,作者设计了一个数据驱动的掩蔽策略,使用来自终端任务训练的自我注意得分分布,对终端任务认为重要的时间戳进行采样。然后,作者屏蔽这些时间戳上的数据并重构它们,从而使重建工作具有任务意识。该重建任务与结束任务在每个epoch交替训练,共享单个模型中的参数,允许通过重建学到的表征来提高最终任务的性能。在数十个分类和回归数据集上的大量实验表明,TARNet在所有评估指标上的表现都明显优于最先进的基线模型。

论文链接

https://doi.org/10.1145/3534678.3539329

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-11-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 智能生信 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java中关于线程池的几道面试题
terminated()方法默认什么都不做,线程池提供这个方法,交给子类来进行扩展
半月无霜
2023/10/18
3380
Java中关于线程池的几道面试题
Java之线程池源码浅析
线程是稀缺资源,如果被无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,合理的使用线程池对线程进行统一分配、调优和监控,有以下好处:重用存在的线程、可有效控制最大并发线程数
笔头
2022/01/19
2670
手写线程池,对照学习ThreadPoolExecutor线程池实现原理!
作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki
huofo
2022/03/18
3880
手写线程池,对照学习ThreadPoolExecutor线程池实现原理!
Juc并发编程13——如何实现一个线程池?(万字源码剖析)
前面我们已经介绍过线程池的使用了,下面我们来深挖它的实现原理,其原理比较复杂,准备好,发车。
半旧518
2022/10/26
2150
Juc并发编程13——如何实现一个线程池?(万字源码剖析)
血泪教训,线程池引发的内存泄露
最近由于业务需求使用到了线程池对数据进行异步处理,上线后系统正常运行了两天多突然收到了一波Full GC的告警,赶紧dump了堆信息并回滚了服务。分析dump文件后发现了一个LinkedBlockingQueue类型的大对象,就想到是上次改的线程池的问题了,因为对线程池使用的不熟悉,导致了线上问题。当时错误的写法如下:
微观技术
2020/08/20
6.5K0
把线程池的底ku扒个底朝天-源码解析
上一篇我们介绍了线程池的使用,这一篇我们接着分析下线程池的实现原理。首先从创建线程池的核心类ThreadPoolExecutor类说起。
码农飞哥
2021/08/18
2870
Java线程池ThreadPoolExecutor使用和分析(二) - execute()原理
execute()是 java.util.concurrent.Executor接口中唯一的方法,JDK注释中的描述是“在未来的某一时刻执行命令command”,即向线程池中提交任务,在未来某个时刻执行,提交的任务必须实现Runnable接口,该提交方式不能获取返回值。下面是对execute()方法内部原理的分析,分析前先简单介绍线程池有哪些状态,在一系列执行过程中涉及线程池状态相关的判断。以下分析基于JDK 1.7
Janti
2019/05/25
2.4K0
【源码阅读计划】浅析 Java 线程池工作原理及核心源码
在 JDK 的 ThreadPoolExecutor 线程池中用一个原子整型来维护线程池的两个状态参数:
yhlin
2023/02/27
4310
【源码阅读计划】浅析 Java 线程池工作原理及核心源码
Java-线程池动态修改大小
corePoolSize:核心线程数大小,不管它们创建以后是不是空闲的。线程池需要保持 corePoolSize 数量的线程,除非设置了 allowCoreThreadTimeOut;
茶半香初
2021/11/26
2.7K0
Java-线程池动态修改大小
从源码的角度解析线程池运行原理
在讲解完线程池的构造参数和一些不常用的设置之后,有些同学还是想继续深入地了解线程池的原理,所以这篇文章科代表会带大家深入源码,从底层吃透线程池的运行原理。
纯洁的微笑
2019/06/14
5500
从源码的角度解析线程池运行原理
线程池源码解读
线程池的在 Java并发中使用最多的一种手段,也是性能和易用性相对来说比较均衡的方式,下面我们就一起探索先线程池的原理。
付威
2023/10/17
1580
线程池源码解读
全方位解析-Android中的线程池
复用Java中的Executor接口,具体实现类为ThreadPoolExecutor,它有以下几个参数:
g小志
2022/03/29
1.1K0
全方位解析-Android中的线程池
Java中线程池ThreadPoolExecutor原理探究
线程池主要解决两个问题:一方面当执行大量异步任务时候线程池能够提供较好的性能,,这是因为使用线程池可以使每个任务的调用开销减少(因为线程池线程是可以复用的)。另一方面线程池提供了一种资源限制和管理的手段,比如当执行一系列任务时候对线程的管理,每个ThreadPoolExecutor也保留了一些基本的统计数据,比如当前线程池完成的任务数目。
加多
2018/09/06
6920
Java中线程池ThreadPoolExecutor原理探究
Java线程池
线程池的核心实现类,基于ThreadPoolExecutor可以实现满足不同场景的线程池
spilledyear
2020/02/10
9520
【死磕Java并发】-----J.U.C之线程池:ThreadPoolExecutor
原文出处http://cmsblogs.com/ 『chenssy』 作为Executor框架中最核心的类,ThreadPoolExecutor代表着鼎鼎大名的线程池,它给了我们足够的理由来弄清楚它。 下面我们就通过源码来一步一步弄清楚它。 内部状态 线程有五种状态:新建,就绪,运行,阻塞,死亡,线程池同样有五种状态:Running, SHUTDOWN, STOP, TIDYING, TERMINATED。 private final AtomicInteger ctl = new AtomicIntege
用户1655470
2018/04/26
8290
【死磕Java并发】-----J.U.C之线程池:ThreadPoolExecutor
相关推荐
Java中关于线程池的几道面试题
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档