《Deep Learning Techniques for Music Generation – A Survey》深度学习用于音乐生成——书籍阅读笔记(六)Chapter 5

Chapter 5 Architecture 网络架构

5.1 线性回归的介绍& 5.2 基本构架块
深度网络由神经网络发展而来,而神经网络的前身是Rosenblatt在1957年提出的感知器。在1969年感知器曾被Minsky and Papert批判,因其无法对线性不可分域进行分类。他们的批评也有助于支持人工智能的另一种符号方法(symbolic approach)。神经网络在80年代再次出现,这要归功于隐藏层可以跳出线性限制的这个想法[91]。在20世纪90年代,在支持向量机(SVM)的竞争下,人们对神经网络的兴趣有所下降[112],神经网络被有效地设计来最大化分离边际,并且具有坚实的形式化背景。2006年,Geoffrey Hinton将神经网络重新带到人们的面前[40],这要归功于[23]有效的预训练技术,终结了人们普遍认为具有许多隐藏层的神经网络不能被有效训练的观点。
这一章主要是回顾和介绍神经网络的基本原理。我们的目标是定义我们在分析各种音乐生成系统时将使用的最小概念和术语;然后我们再介绍在音乐领域中应用的各种不同的架构(自编码器,循环网络,RBMs…)。在这里将不会细节介绍神经网络和深度学习的技术,如想了解可参考这本书[29]。

5.1 线性回归的介绍

5.1.1 Linear Regression

受生物学的启发,神经网络和深度学习的基础是线性回归。在统计学中,线性回归是一种对标量变量y和一组一个或多个解释变量x1、…xn(合称为x)的关系(假设是线性关系)进行建模的方法。一个简单的例子是预测房子的价值,这取决于一些因素(例如,大小、高度、位置……)。线性回归主要是对给定x条件下y的条件概率分布进行建模,记为P(y|x)。
式5.1为一个(多元)线性回归的一般模型,其中:
在这里插入图片描述
 h为模型(也称为假设,即假设的待发现的最佳模型,即学习);
 b偏差(代表偏差,也可记为θ0);
 θ1,……θn为模型的参数(权重),对应于解释变量x1,……xn。

5.1.2 Training

训练的目的是训练得到一组最佳的参数θi和b,使得对于所有x,线性模型h(x)更接近于y。例图5.1,一个简单的线性回归,只有一个解释变量x:
在这里插入图片描述
样本为黑色叉号。对模型进行了训练,参数值就被调整,得到的模型如图蓝线所示,与实际样本可以达到基本吻合。然后,利用该模型进行预测,例如,为x的某一特定值估计出对应的y的值,用绿叉表示。

5.1.3 Training Algorithm

训练线性回归模型的基本算法实际上非常简单:
 初始化每个参数(重量)θi和随机初始化偏差b
 计算所有样本的h的值
 计算cost(或者说loss),可记为Jθ(h)它是h(x)(预测值)和y(实际值)之间的距离。比如可以用平均平方误差来衡量;
 计算梯度,即对每个权重θi以及偏差(权重)b计算cost函数Jθ(h),的偏导数
 根据每个梯度的值,更新每个权重和每个偏差
 迭代,直到误差达到最小停止,或经过一定次数的迭代停止。

5.1.4 Architectural View 架构图

现在让我们介绍图5.2中线性回归模型的体系结构视图,它是神经网络的前身。计算单元(以正方形框表示)为加权和,从xi节点(圆)获取其输入。在这个例子中,有4个解释变量,x1,x2,x3,x4。传统的惯例是将偏差也考虑为某个输入的特定的权重,因此有一个对应的输入节点(这是隐式的),一般用常数值记为+1。
在这里插入图片描述
在这里插入图片描述
线性回归也可以推广到多元线性回归,即多个需要预测的变量y1…yp,如图5.3所示(有三个预测变量y1, y2, y3)。

5.2 Basic Building Block基本构建模块

现在,让我们对计算yj的每个加权和单元应用一个激活函数(AF)。这个激活函数允许我们引入任意的非线性函数,以使模型更加一般化。最常用的非线性函数是ReLU,它表示线性整流单元。它是一个负值过滤器:ReLU(x)=max(0,x)。如图5.4所示的蓝色线(以及绿色曲线为它的平滑版本叫做softplus)。
在这里插入图片描述在这里插入图片描述
得到的结构图如图5.5所示,这是一个神经网络和深度学习架构的基本构建块。
这个基本的构造块实际上已经是一个的简单神经网络,只有两层。图左侧的输入层由输入节点xi组成。偏差节点是一个隐式且特定的输入节点。它的常数值是1,因此通常记作+1。图中右侧的输出层由输出节点yj组成。权重矩阵记为θ(或者更常用的W) 。
为了计算输出,我们简单地将网络前馈(向前传播),即向网络提供输入数据(feed in)并计算输出值。这样,计算将简化为向量(或矩阵)到矩阵的乘法(见公式5.2),可以在向量化中实现高效计算,这要归功于专门的线性代数库和GPU。
在这里插入图片描述
其中M是具有m个样本的矩阵,每个样本(n维向量)为一行,XT是X的转置。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值