tcn介绍

news2025/1/17 3:03:22

tcn 介绍

背景

对于大多数深度学习从业者来说,序列建模是递归网络的代名词。

然而,最近的结果表明,卷积架构在音频合成和机器翻译等任务上可以优于递归网络。给定一个新的序列建模任务或数据集,应该使用哪种架构?我们对用于序列建模的通用卷积和递归架构进行了系统评估。这些模型是在广泛的标准任务中评估的,这些任务通常用于对递归网络进行基准测试。我们的结果表明,简单的卷积架构在各种任务和数据集上都优于LSTM等经典递归网络,同时表现出更长的有效内存。我们得出的结论是,序列建模和递归网络之间的共同关联应该重新考虑,卷积网络应该被视为序列建模任务的自然起点。协助相关人员

小结cnn可以进行序列建模,并且建模结果由于LSTM。

设计原理

序列整体建模

采用了第一性原理:具有简单性,将自回归预测与超长记忆相结合。

image-20230714162602143

image-20230714162609761

自回归预测,如公式(1),使用过去观测值来预测未来值,不能泄漏未来值来帮助预测

更长的记忆力:RNN相比于传统的前馈神经网络的优点就是具有更长记忆力,因为其输入包含了隐藏模块。而CNN可以比于RNN的更好的竞争力也是具有更长的记忆力,所以可以用来进行序列建模

递归神经网络(RNN)是一种能够处理序列数据的神经网络模型。相比于传统的前馈神经网络,RNN在处理序列数据时具有更长的记忆力,这是因为RNN中每个时间步的隐藏状态都是由当前输入和上一个时间步的隐藏状态共同决定的。这种记忆性使得RNN在处理长序列数据时有优势,并且在自然语言处理、语音识别、图像描述等领域有着广泛的应用。

RNN的记忆性的意义在于它使得模型可以在处理序列数据时考虑到之前的所有信息,而不仅仅是当前的输入。这样可以更好地捕捉序列数据中的长期依赖关系,例如在自然语言处理中,RNN可以更好地处理长句子中的语义关系。

在传统的前馈神经网络中,每个输入都只与当前的输出相关,而RNN则可以将之前的信息融入到当前的计算中,从而更好地反映序列数据的历史信息。同时,RNN还具有可重用的权重,这意味着模型可以在处理不同的序列数据时共享权重,从而在处理不同的任务时具有更好的泛化性能。

总之,RNN的记忆性对于处理序列数据具有重要意义,它可以更好地捕捉序列数据中的长期依赖关系,并且在处理不同的序列数据时具有更好的泛化性能。

具体操作-因果卷积(Casual Model)

  • 由于需要满足自回归性,当前的输如仅与过去的输出相关,而不能由未来进行信息的泄漏
  • 并且序列要求输入与输出长度相同。采用了因果卷积操作。

可以更好捕捉时间序列中的因果关系,避免未来信息对当前信息的影响

因果卷积数学模型如下:

y t = ∑ i = 0 k − 1 w i ⋅ x t − i y_t = \sum_{i=0}^{k-1} w_i \cdot x_{t-i} yt=i=0k1wixti

具体操作-膨胀卷积(Dilated convolutions)

  • 为了实现深入且长有效的历史,需要非常深入的神经网络或者非常大的滤波器。
  • 这里采用了膨胀卷积,就是在卷积过程中插入一些空洞,用来增大感受视野,从而更好捕捉模型的长期依赖关系

image-20230714164611369

扩张卷积数学模型如下:

y t = ∑ i = 0 k − 1 w i ⋅ x ( r ⋅ t ) − ( r − 1 ) ⋅ i y_t = \sum_{i=0}^{k-1} w_i \cdot x_{(r \cdot t) - (r-1) \cdot i} yt=i=0k1wix(rt)(r1)i

Input: [x1, x2, x3, x4, x5, x6, x7, x8, x9, x10]
    
        | kernel |
        ||
        
    Output: [y1, y2, y3, y4, y5, y6, y7, y8]
    
    y1 = w0*x1 + w1*x3 + w2*x5
    y2 = w0*x2 + w1*x4 + w2*x6
    y3 = w0*x3 + w1*x5 + w2*x7
    y4 = w0*x4 + w1*x6 + w2*x8
    y5 = w0*x5 + w1*x7 + w2*x9
    y6 = w0*x6 + w1*x8 + w2*x10
    y7 = w0*x7 + w1*x9
    y8 = w0*x8 + w1*x10

具体操作-残差连接

y = F ( x ) + x y = F(x) + x y=F(x)+x

image-20230714164740128

将输入直接连接到输出,所以可以直接学习和输入之间的差异,而不是仅仅学习输出和映射之间关系。

  • 可以减少梯度小时和梯度爆炸的问题,从而加速模型收敛速度。
x = input
    y = Conv1D(x) + Conv1D(x)
    y = BatchNormalization(y)
    y = ReLU(y)
    output = y + x

image-20230714165641442

总结

  • cnn可以用来进行序列建模,并且应该成为序列建模的首选。
  • tcn采用了第一性原理:自回归性以及更长的记忆力可以满足序列建模的要求,并且性能优于rnn。
  • tcn使用了因果卷积和膨胀卷积分别满足了上面的两个要求,并且使用了残差连接从而防止了梯度消失等问题,加速了模型的训练速度。

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

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

相关文章

Apple visionOS UI设计规范

果发布首款 MR 设备 Vision Pro,正在倡导用于Vision Pro在真实空间中显示应用程序窗口和内容“空间用户界面设计”,苹果的设计团队解释了开发人员应该知道的空间用户界面设计的原则。visionOSUI设计规范 支持:sketch Vision Pro中安装的visio…

无线电音频-BPA600蓝牙协议分析仪名词解析

1 介绍 2 Baseband基带分析 (1)Delta 是什么含义? "Delta" 有多个含义,取决于上下文。以下是常见的几种含义: 希腊字母:Delta&#x

“layui助力博客管理升级!用增删改查功能打造优质博客体验“

目录 引文1.前置条件2.数据接口2.1 UserDao(CRUD)2.2 R工具类 3.HTML 结构3.1 主界面的HTML3.2 用户的查询所有界面的HTML3.3 新增修改通用的的HTML 4.JavaScript 代码4.1 用户的CRUD javaScript 代码(userManage)4.2 新增修改的javaScript代码(userEdit) 5. 运行截图总结 引文…

【SpringBoot构建Hippo4j-Client安装部署教程】

🚀 线程池管理工具-Hippo4j 🚀 🌲 AI工具、AI绘图、AI专栏 🍀 🌲 如果你想学到最前沿、最火爆的技术,赶快加入吧✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者&#…

uniapp和uview组件实现下拉触底刷新列表

下面是一个在UniApp中使用uView组件实现下拉触底刷新列表的示例,并使用Axios来请求分页数据列表: 首先,确保你已经在UniApp项目中添加了uView组件库。你可以在项目根目录执行以下命令安装它们: npm install uview-ui或者使用 Hb…

一文速览大语言模型在分子领域中的探索

随着 ChatGPT 的快速崛起,大型语言模型(LLM)已经在人类语言建模领域展示出了其非凡的能力。无论是证明数学公式、编写代码,还是以不同的风格创作诗歌,LLM 都能胜任。然而,尽管 LLM 在人类语言的掌握上已达到…

1、网络基础

网络发展背景、IP、端口、网络通信协议,TCP/IP五层模型、字节序 一、网络发展背景 局域网:网络覆盖在1000m以内的网络 城域网:网络覆盖在20km以内的网络 广域网:网络覆盖在20km以上的网络 因特网、互联网:更大的国…

SSH跳转远程目标服务器的高阶使用

在日常开发和运维的过程中,我一般是使用Xshell的工具对linux服务器的相关操作。我说一下我写这篇文章的背景:甲方因为安全需要,给了一台可以通过vpn访问的跳板机,通过这台跳板机去操作另外的十多台应用服务器,那么肯定…

MySQL 8目录结构与源码

目录 一、主要目录结构 二、获取MySQL 源代码 一、主要目录结构 MySQL的主要目录结构说明bin目录所有MySQL的可执行文件。如:mysql.exedata目录系统数据库所在的目录my.ini文件MySQL的主要配置文件D:\MySQL\Data用户创建的数据库所在的目录 二、获取MySQL 源代码 …

【OpenCV • c++】图像几何变换 | 图像平移

🚀 个人简介:CSDN「博客新星」TOP 10 , C/C 领域新星创作者💟 作 者:锡兰_CC ❣️📝 专 栏:【OpenCV • c】计算机视觉🌈 若有帮助,还请关注➕点赞➕收藏&#xff…

代码随想录算法训练营day3 | 203. 移除链表元素,707. 设计链表,206. 反转链表

目录 203. 移除链表元素 707. 设计链表 206. 反转链表 203. 移除链表元素 难度:easy 思路: 代码: // 使用虚拟头结点 class Solution {public ListNode removeElements(ListNode head, int val) {if (head null) {return head;}// 虚拟…

Waves 14 Complete对Mac和Windows系统的最低要求

Waves 14 Complete是一款功能齐全的音频编辑软件,适用于音乐制作、音频工程和声音设计等领域。它提供了一系列强大的工具和效果,帮助用户在音频处理过程中实现专业水平的效果和混音。 Waves 14 Complete包含了多个实用的插件,如均衡器、压缩…

垃圾收集器CMS-JVM(十一)

Jvm类的创建过程包括类的加载,类的验证,准备,分析,初始化。 验证是不是.class文件。 准备过程则是先赋值初始化的值,并不是直接赋值原始值。 分析比较复杂,会有静态链接处理和动态链接处理。 最后就是类…

亚马逊云科技,加速生成式AI的落地

编辑:阿冒 设计:沐由 “展望今天的世界,在机遇之外,更多事后我们看到的是前所未有的巨大挑战。事实证明,惟有通过创新、专注创新,方能挖掘和发现更多的增长机会。” 在2023亚马逊云科技中国峰会的第二天&am…

【笔记】oracle线上生产数据库使用exp的方式更新到本地

笔记来源 今天的任务是:将线上老的数据库里的数据同步到本地现有的二期数据库中来,即二期项目需要线上数据进行最后测试,于是就有了今天这篇,线上生产数据库更新到本地数据库的笔记。 由于数据量较大,我尝试过将线上…

建表与数据准备

自己新建数据库: create table Student(sid varchar(10),sname varchar(10),sage datetime,ssex nvarchar(10));insert into Student values(01 , 赵雷 , 1990-01-01 , 男); insert into Student values(02 , 钱电 , 1990-12-21 , 男); insert into Student values(03 , 孙风 ,…

原生微信小程序手把手创建发布评论效果

1.静态设计 1.1标题 1.1.1 wxml文件 <!-- 标题 --><view class"title">励志语句</view> 1.1.2 wcss文件 .title{font-size: 50rpx;text-align: center;/* 上左右下 */padding: 60rpx 0 30rpx; } 1.1.3显示 1.2方块卡片 1.2.1 wxml文件 <…

铰接式车辆的横向动力学仿真提供车辆模型研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

python数据处理方法——pkl格式文件

目录 1.pkl文件格式简介&#xff1a; 1.1 什么是 pkl 文件&#xff1f; 1.2 pkl文件和pmml文件的简单区别 1.3 pkl 文件的优点 1.4 使用场景 2.使用 Python 操作 pkl 文件 2.1 对象序列化为 pkl 文件&#xff08;将数据保存为pkl文件&#xff09; 2.2 从 pkl 文件中反…

JS逆向系列之猿人学爬虫第18题-jsvmp - 洞察先机

文章目录 目标网址加密参数分析Python 实现往期逆向文章推荐目标网址 https://match.yuanrenxue.cn/match/18题目标着难度是困难级别,主要还是vmp保护的JS代码调试困难,理清逻辑就会变得简单了 加密参数分析 请求第一页时没有加密参数,从第二页开始,url会携带t和v两个参数…