声音合成——Foley Sound——DECASE项目——多模态智能感知与应用——课程学习(5)

news2024/11/17 3:41:00

文章目录

      • 概述
      • 一、Approaches And Challenges
        • 生成的声音是什么类型
        • 训练模型使用的是什么特征
          • 原始音频Raw Audio
          • 频谱图Spectrograms
        • 声音生成模型常用的结构
          • 生成模型的输入
      • 二、Autoencoders Explained Easily
        • 自动编码器的通俗解释
        • PCA和编码器的区别
        • 如何训练一个编码器
        • Deep Autoencoder
        • 使用自动编码生成的过程
      • 三、Generation with AutoEncoders: Results and Limitations使用自动编码器生成声音的结果和限制
      • 四、From Autoencoders to Variational Autoencoders:The Encoder
        • 改变了编码器的的组件
        • 改变了损失函数
      • 五、Sound Generations with VAEs
        • 对于音频数据集的预处理
          • 使用的数据集
        • 训练
        • 具体代码

概述

  • 这部分是学习网课的具体内容,国外的网站,有时间可以二创一下。
  • 下述为课堂笔记

一、Approaches And Challenges

  • 这一节主要是介绍声音生成系统,常见的一些方法,以及他们所面对的一些挑战,主要是围绕着几个问题展开
    • 生成的声音是什么类型的
    • 训练模型使用的特征是什么
    • 所采用而深度学习模型是什么
    • 生成的模型的输入是什么

生成的声音是什么类型

  • 给你一段文字,自动生成相对应的语音
  • 给你一段音乐,你可以将之生成为不同风格的另一种音乐
  • Foley 声音设计,这就是类似电影用的配乐,根据需求生成汽车发动的声音,大雷声
  • 。。。

训练模型使用的是什么特征

原始音频Raw Audio

在这里插入图片描述

  • 比较有名的文章推荐
    • WaveNet:A Generative Model For Raw Audio
    • Jukebox:A generative model for music

在这里插入图片描述

  • 该类型的生成模型具有如下的特点
    • 需要处理的数据量大
    • 无法提取复杂结构特征
      • 这里指的是long range dependency feature
      • 比如说音色,旋律、和弦之类的,可能要处理好几秒钟才能学会的东西
    • 数据量大,会导致模型很复杂,是的计算量很大
    • 生成过程很慢,原始数据量很大,模型很复杂
频谱图Spectrograms

在这里插入图片描述

  • 使用频谱图代替波形图,横坐标是时间,总坐标是对应的频率,然后颜色表示声音的强度。

具体步骤如下

  • 首先使用短时傅立叶变换(short time Fourier Transformation)将波形图转变为时频域的频谱图

在这里插入图片描述

  • 然后以频谱图作为输入,放到神经网络上进行训练

在这里插入图片描述

  • 经过训练的网络在生成新的频谱图

在这里插入图片描述

  • 然后在使用ISTFT(inverse short time Fourier Transformation 逆短时傅立叶变换)将频谱图转变为波形图

在这里插入图片描述

频谱图生成声音的优点

  • 比起波形图,频谱图的时间轴更加紧凑完整,因为他并没有像时域图一样,保存那么多的节点
  • 能够获取比较复杂的特征(long-range dependency)
    • 音色、音节、曲风
  • 在保证了完整的信息的同时,确保了计算量比较小

频谱图生成声音的缺点

  • 难以提取出图片中的局部特征(保真度),因为直接转换成频谱图,类似一种由細颗粒度转成粗颗粒度的过程,所以保真度一般

声音生成模型常用的结构

  • 常见的结构有如下的几种
    • GAN
    • Autoencoder
    • Variational Autoencoder(VAE)
    • VQ-VAE
生成模型的输入

Conditioning Generations
在这里插入图片描述

  • 根据输入的语音信息,生成生成符合特定条件的声音

Autonomous Generations

在这里插入图片描述

  • 模型生成任意的声音,这主要是和训练集相关的

Continuation Generations

在这里插入图片描述

  • 根据输入的seed生成特定的音频,一般是某一个没有完成的音乐片段

二、Autoencoders Explained Easily

自动编码器的通俗解释

在这里插入图片描述

  • 自动编码器是一种无监督学习,学习数据中的一些结构和模式

  • 自动编码器是一种bottleneck structure 就是上图中间绿色的两个节点,类似一个瓶口的结构,两边宽,中间窄

  • 实现的功能就是:

    • 将输入数据压缩到编码器中,然后能通过编码器还原出原来的数据
    • 确保了原始数据的低维表示
  • 构成

    • 编码:从宽的结构到窄的结构
      • 将原始数据压缩为低维度表示,主要是包含了最重要的属性或者特征
    • 解码:从窄的结构到宽的结构
      • 将压缩之后的数据,重新恢复到原来的维度,重建原始数据
  • 条件

    • 需要确保,输入数据的不同维度之间要有依赖关系,如果相互独立,没有办法进行降维

PCA和编码器的区别

在这里插入图片描述

  • 在上述图中,一个点表示一个数据分布,
    • PCA只能在直线上对数据的分布进行拟合
    • 编码器可以你和数据分布的非线性关系
  • PCA和编码器都是用来降维的,都能减少数据的维度
  • PCA只能学习线性关系,只能提取简单的特征
  • 编码器能够学习非线性关系,较之于上者,可以提取更加复杂的特征

如何训练一个编码器

  • 使用反向传播
  • 最小化重建损失函数,直接比较解码器还原的输出和原始的输入之间的差别
    • 一般来说用的是平方差,或者根平方差
      在这里插入图片描述* 关于损失函数
    • 上述重建损失函数,只能确保输出尽可能的利用输入数据的有效特征
    • 为了防止过拟合,还需要加上对应的正则化项,具体如下

在这里插入图片描述

Deep Autoencoder

  • 这里参考一下,常见的编码解码器,相关的链接
  • 还有一篇国外的链接,讲得也不错,链接

在这里插入图片描述

  • Encoder编码器
    • 卷积层
    • Leaky Relu
    • Batch normalization
  • Decoder解码器
    • 卷积层的转置Convolution traspose,不同于卷积的下采样,这里是对卷积进行一个上采样,实现数据的扩充
    • Leaky Relu
    • Batch normalization

使用自动编码生成的过程

在这里插入图片描述

  • 每一次输入一个样本之后,都会对特征空间进行改变,具体表现为新增加一个特征点
  • 在通过编码器训练特征空间的同时,也会训练解码器,并且通过输出和输入数据的重构损失函数来调整参数

在这里插入图片描述

  • 声音生成过程,就是在调整之后的特征空间中,随机选择一个点,然后对这个点进行解码,生成新的样本

三、Generation with AutoEncoders: Results and Limitations使用自动编码器生成声音的结果和限制

在这里插入图片描述

  • 训练过程

    • 上数为编码器中的潜在特征空间,由于一开始设置为二维空间,所以可以直接画出来。不同颜色的点,表示不同类别的样例的特征在二维空间中的映射。
  • 生成过程

    • 通过对潜在空间进行随机采样,获取任意的点,并通过解码程序,生成对应的新的样例
  • 通过观察上述特征图可以看到,自动编码器具有如下的缺点

    • 特征空间并不是完全关于原点对称,很多特征点很密集,很多特征点很稀疏
    • 特征空间中存在地方并没有任何的颜色,这部分的采样点,并不能生成有效的数字,因为分不清到底属于哪一块
    • 特征空间缺少多样性,对于这个特空空间进行采样,可以发现,对于所占面积比较大的区间,选中的概率更大。

四、From Autoencoders to Variational Autoencoders:The Encoder

  • 针对上述的三个问题,提出了使用变分自动编码器进行训练

改变了编码器的的组件

在这里插入图片描述

  • 二者映射关系的对比
    • 左侧是自动编码器的映射关系,是将样例映射为潜在特征空间的特征点
    • 右侧是变分自动编码器的映射关系,是将样例映射为多元正态分布

首先从一维的正态分布入手

在这里插入图片描述

  • 标准正态分布的图片
    在这里插入图片描述
  • 标准正态分布的公式
  • 参数说明
    • σ \sigma σ表示这个正态分布的宽度
    • μ \mu μ表示正态分布的中心

在这里插入图片描述

  • 在标准正态分布中进行采样,使用上述公式,其中 ε \varepsilon ε是从正态分布中抽样的点

多元正态分布的形式化

在这里插入图片描述

  • 以二维的正态分布为例子

在这里插入图片描述

  • 这是多个维度下的正态分布公式

在这里插入图片描述

  • 可以看到,在这里是将样例映射为一个对应二维的分布

多元正态分布的的修正(主要是针对自动变分器的缺点)

  • 由于是将样例映射为二维空间中的分布,所以潜在特征空间是连续的,不会存在空白区域
  • 距离同一个平均值也就是正态分布的中心比较近的两个点,生成的样例也是比较相似的

改变了损失函数

在这里插入图片描述

  • KL散度,用来标准正态分布和正态分布之间的差异
    • 对于那种方差和标准分布参数完全不同的分布进行矫正
  • α \alpha α是重建损失函数的权重,
    • 太大,最终的效果和自动编码器的效果相同
    • 太小,重建的图片和原图一点关系都没有

五、Sound Generations with VAEs

对于音频数据集的预处理

使用的数据集

训练

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

具体代码

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

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

相关文章

深眸科技|机器视觉加速渗透各行各业,推进制造业智能制造进程

近年来,随着人工智能技术的不断发展,机器视觉技术作为其重要分支,加速渗透进我国制造业生产环节,覆盖从装配到检测等高端复杂领域,推进我国从制造大国迈向制造强国的进程。 机器视觉技术在工业生产过程中具有多种应用&…

域名历史查询工具-批量域名历史注册记录查询

批量备案域查询 在互联网时代,域名备案已经成为一项必要工作,但是批量备案域名是一项繁琐和费力的工作。为了帮助企业和个人轻松应对域名备案,出现了一种新型的解决方案——批量备案域名查询监控软件。 这种软件的最大优势是自动化&#xf…

域名备案批量查询工具-域名备案查询

为什么域名要备案 域名备案是一种互联网服务管理制度。其主要目的是加强互联网信息管理,维护网络安全和公共利益,规范网站的使用和运营行为。备案对于网站和域名的合法性和正常运营都具有重要的意义。没有备案的域名无法在大陆境内访问,并可…

linux发行家族和发行版及安装软件方式

在Linux平台下,软件包的类型可以划分为两类:源码包、二进制包; 一个软件要在Linux上执行,必须是二进制文件; 源码包:即程序软件的源代码(一般也叫Tarball,即将软件的源码以tar打包后…

功能测试包含哪些测试?分别有什么作用?

功能测试包含哪些测试?功能测试主要包括链接测试、表单测试、搜索测试、删除测试、cookies、session测试、数据库测试等部分。功能测试对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。 功能…

WPS表格的IF与AND函数典型应用实例

HR人士在招聘时经常需要对面试人员进行三次面试都合格才给录取,如果单独使用一个IF函数没有办法进行三个成绩判断,这就需要使用IF函数结合AND函数配合起来使用。先看一下示例数据表,当初试、复试、终试三个成绩都大于80才返回录取。 先看一下…

第1章:项目管理概论

1、《项目管理知识体系指南》(《指南》)作为一部公认的项目管理标准,规定了在大多数时间适用于大多数项目的知识和做法。这些知识和做法: 答案:可供各种项目裁剪使用 2、《指南》是关于以下哪个的标准? …

ADS1299IPAGR 8通道、低噪声模拟前端,TPS7B7701QPWPRQ1单通道低压降稳压器(LDO)

ADS1299IPAGR 模拟前端(AFE)是8通道、低噪声、24位、同步采样Δ∑模数转换器 (ADC)。这些ADC配有内置可编程增益放大器 (PGA)、内部基准和板载振荡器。ADS1299-x集成了颅外脑电图 (EEG) 和心电图 (ECG) 应用所需的全部常用功能。凭借高集成度和卓越性能&…

TDengine 部署与使用----时序数据库

官网 通过 Docker 快速体验 TDengine | TDengine 文档 | 涛思数据 docker安装 拉取最新docker镜像 docker pull tdengine/tdengine:latest 然后执行 docker run -d -p 6030:6030 -p 6041:6041 -p 6043-6049:6043-6049 -p 6043-6049:6043-6049/udp tdengine/tdengine 查看容器…

VMware Aria Automation Config 8.12 - Aria Automation 的软件配置管理与安全性

VMware Aria Automation Config 8.12 - Aria Automation 的软件配置管理与安全性 请访问原文链接:https://sysin.org/blog/vmware-aria-automation-config/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org Aria Aut…

Shell——正则表达式

正则表达式的作用 通常用于判断语句中,用来检查某一字符串是否满足某一格式 正则表达式的构成 正则表达式是由普通字符与元字符组成 普通字符包括大小写字母、数字、标点符号及一些其他符号 元字符是指在正则表达式中具有特殊意义的专用字符,可以用…

零基础入门测试该学什么?最全整理,照着学就对了

零基础入门测试该学什么?最全整理,照着学就对了 于很多小白而言,想要转行软件测试岗位,却又怕自己从来没有接触过计算机,底子很薄弱,从而还没开始就打起了退堂鼓。也有许多初学者,在入门的过程…

虚拟化技术介绍-VMware和Docker的区别

都说今天是一个云时代,其实云的本质就是由基础架构提供商提供基础架构,应用开发商不再关心基础架构。我们可以类比人类刚刚发明电的时候,工厂需要自己建电站,而现在只需要电线和插座就可以使用电。云时代让我们可以在分钟、甚至秒…

ASEMI代理ADI亚德诺ADUM3211TRZ-RL7原厂芯片

编辑-Z ADUM3211TRZ-RL7参数描述: 型号:ADUM3211TRZ-RL7 数据速率:10 Mbps 传播延迟:50 ns 脉冲宽度失真:3 ns 脉冲宽度:100 ns 输出上升/下降时间:2.5 ns 供电电流:2.6 mA …

Google Play应用广告系列的转化跟踪

设置和了解我们应用的转化对于广告投放的成功至关重要。依赖错误或虚假数据,很容易影响我们的目标和投资回报。 无论我们运行的是什么活动,要做的第一件事就是将主要转化与其成本相关联: 1,应用安装活动侧重于安装和 CPI 或每次…

Gif动图怎么在线做?教你在线做gif动画图片

****  现在很多广告营销中gif动图非常的收欢迎,比传统的静态图片画面要生动丰富。但是,要如何制作gif动图宣传图片呢?小白也能操作吗? 一、什么工具能够在线制作gif动画图片? GIF中文网作为专业的gif制作&#xff…

Chromium源码视频播放分析

​ 下载代码,调试方法等见Chromium视频播放相关调试记录_bberdong的博客-CSDN博客 硬解流程 GPU进程 MediaService::CreateInterfaceFactory,然后创建了InterfaceFactoryImpl。 创建解码器 gpu进程收到了一个message创建了一个MojoVideoDecoderServ…

TypeScript 基础语法

(一) 类型 1、基元类型 类型例子描述number1, -33, 2.5任意数字string‘hi’, “hi”, hi任意字符串booleantrue、false布尔值true或falsenull值只能为nullundefined值只能为undefined字面量其本身(详见 面向对象 15泛型)限制变量的值就是该字面量的值any*任意类型unknown*类…

代码随想录算法训练营第二天| 977. 有序数组的平方、209. 长度最小的子数组、59. 螺旋矩阵

有序数组的平方: 题目链接:力扣 知识点:双指针。 思路分析:首先想到的是不怎么动脑子的暴力想法,即先将vector中的各元素用pow函数进行平方,接着再用sort函数对已平方过的数据进行排序。 但是由于sort是基于快速排序…

修复bug:FlexibleButton id相反问题

目录 版本:https://github.com/murphyzhao/FlexibleButton/releases/tag/2.0.1 问题现象 问题描述 查源码! 注册 读按键 按键处理 小结 版本:https://github.com/murphyzhao/FlexibleButton/releases/tag/2.0.1https://github.com/mur…