【项目实战】WaveNet 代码解析 —— ops.py 【更新中】

WaveNet优化器与卷积解析
本文解析WaveNet项目的ops.py文件,介绍基于TensorFlow的优化器创建方法及卷积操作实现细节。

WaveNet 代码解析 —— ops.py

  简介

       本项目一个基于 WaveNet 生成神经网络体系结构的语音合成项目,它是使用 TensorFlow 实现的(项目地址)。
       
        WaveNet 神经网络体系结构能直接生成原始音频波形,在文本到语音和一般音频生成方面显示了出色的结果(详情请参阅 WaveNet 的详细介绍)。
       
       由于 WaveNet 项目较大,代码较多。为了方便学习与整理,将按照工程文件的结构依次介绍。
       
       本文将介绍项目中的 ops.py 文件:基础操作函数集。
       

  代码解析

    变量解析

       以下变量为 ops.py 脚本的全局变量:

		# optimizer_factory 保存了优化器的三种方案:adam, sgd, rmsporp
		# 分别对应了 tensorflow 中 optimizer 的几种设置方法
		optimizer_factory = {
   
   'adam': create_adam_optimizer,
		                     'sgd': create_sgd_optimizer,
		                     'rmsprop': create_rmsprop_optimizer}

       

    函数解析

      create_adam_optimizer

        下面这段代码的主要任务是:创建 adam 优化器

	# learning_rate : 学习速率
	# epsilon : 数值稳定性的小常数,作为精度
	def create_adam_optimizer(learning_rate, momentum):
	    # 实现 Adam 算法的优化器
	    return tf.train.AdamOptimizer(learning_rate=learning_rate,
	                                  epsilon=1e-4)

       

      create_sgd_optimizer

        下面这段代码的主要任务是:创建 sgd 优化器

	# learning_rate : 学习速率
	# momentum : 动量
	def create_sgd_optimizer(learning_rate, momentum):
	    # 实现动量算法的优化器
	    return tf.train.MomentumOptimizer(learning_rate=learning_rate,
	                                      momentum=momentum)

       

      create_rmsprop_optimizer

        下面这段代码的主要任务是:创建 RMSProp 优化器

	# learning_rate : 学习速率
	# momentum : 动量
	# epsilon : 数值稳定性的小常数,作为精度
	def create_rmsprop_optimizer(learning_rate, momentum):
	    # 实现RMSProp算法的优化器
	    return tf.train.RMSPropOptimizer(learning_rate=learning_rate,
	                                     momentum
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值