【机器学习】生成式神经网络

【生成式模型】
在这里插入图片描述
【自动编码器】
自动编码器是一种无监督(其特点是训练样本数据的标记信息未知,因此其目标往往是要通过对无标签训练样本的学习来揭示出数据的内在规律)的神经网络模型,其目标是通过训练网络忽略信号“噪声”,从而得到数据的低维度表示(编码)。
在这里插入图片描述
自动编码器的作用:

  • 作为特征提取器:中间表示z的维度通常小于输入x的维度,这就使得自动编码器能学习到数据中最重要的特征,学习得到的特征可以在后续的有监督学习方法中使用。
  • 在降维以后,可以方便进行可视化等后续的处理。因为自动编码器可以学习到类似通过PCA得到的数据投影。

在这里插入图片描述

堆栈自动编码器:堆栈自动编码器本质上就是增加中间特征层数。
在这里插入图片描述
用自动编码得到新特征
模型被训练完毕后,往往说明编码器可以很好的编码,即得到了新的有意义的特征,此时可以将解码器去掉,仅仅使用编码器得到重构的特征。得到的特征可以应用在有监督的模型中,如分类模型。
这样做的好处是:可以用许多无标签的数据得到通用的特征表示。因为监督学习通常的标注数据较少。
在这里插入图片描述
【变分自动编码器(VAE)】

对于图像生成的任务,既然自动编码器可以重构原始的输入图像,那么也可以生成新的图像。
假设潜在变量z服从某种先验分布(高斯分布)。模型训练完毕后,可以从这种先验分布中采样得到潜在变量,然后在解码器中得到新的样本。也可以理解为变分自动编码器就是在自动编码器的基础上加入了随机因子。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

【生成对抗网络】

判别式模型和生成式模型:假设研究对象的观测变量为X,类别变量为Y,则:

  • 判别式模型:按照一定的判别准则,从数据中直接学习决策函数Y=f(X)或者条件概率分布P(Y|X;θ)作为预测的模型。判别式模型的特点是直接面向预测的,典型的判别式模型包括:k近邻法、决策树、最大熵模型、支持向量机等。
  • 生成式模型:从数据中学习联合概率分布P(X,Y),其之后可以转变为P(Y|X)作为预测的模型,例如利用条件概率分布P(Y|X)=P(X,Y)/P(X)。这样的方法之所以称为生成式模型是因为模型表示了在给定输入X以后,产生输出Y的生成式关系,特别是在给定某些隐藏参数的情况下,生成式模型可以用于随机生成的值建模。典型的生成模型有:朴素贝叶斯法、高斯混合模型、马尔可夫模型等。

判别式模型和生成式模型的区别:判别式模型只是对给定的样本进行分类,不关心数据如何生成;生成式模型根据生成假设哪个类别最有可能生成这个样本。

生成对抗网络包括两部分:生成器和判别器。生成对抗网络,是生成器和判别器的“博弈”过程,是通过对抗过程来估计生成模型的新框架。在这个框架中生成器G和判别器D同时被优化:生成器G用于学习真实数据分布,生成接近真实数据分布的虚假样本,从而“骗”过判别器;而判别器用于估计样本是来自于训练数据还是生成数据。这个过程就相当于一个二人的博弈,随着时间的推移,生成器和判别器不断进行对抗,最终达到一个动态平衡,即:生成器生成的数据接近于真实数据分布,而判别器识别不出真假数据,对于给定数据预测为真实数据和生成数据的概率都接近于0.5。

整个框架的运行过程是:随机生成一噪声,生成器将噪声映射到真实的数据空间中,其输入是一组随机数,输出是一个符合真实样本分布的数据;判别器判断样本是来自真实分布还是生成器得到的分布,其输入是一组数据(真实数据或生成网络造出来的数据),输出是一个概率值。并用判别结果做梯度下降优化。整个过程的目标函数是:
在这里插入图片描述
其中,D(x)代表x从真实数据中采样的概率,G(z)代表对于数据空间的一个映射,所以D(G(z))代表的就是从生成样本采样的概率。对这个目标函数,我们可以分两步来理解,第一步是优化判别器D:对于判别器D而言,它能接触到的数据是生成样本和真实样本,我们希望它能够尽可能地区分样本是真实样本还是生成样本,因此希望D(x)尽可能大,D(G(z))尽可能小,即V(D,G)尽可能大;第二步是优化生成器,对于生成器G而言,它所能直接接触或影响到的数据就是假样本,我们希望它能够尽可能骗过判别器,也就是希望D(G(z))尽可能大,即V(D,G)尽可能小。生成器和判别器在一次次迭代中相互对抗,最终达到全局最优。

在生成对抗网络的训练过程中,首先是训练判别器,判别器训练了k次,每次利用随机噪声生成由m个图片构成的小批量数据,并同时从真实的样本分布中也选取m个图片构成小批量数据,即构成一个平衡的数据集送给判别器进行训练,在这个过程中,生成器G是固定的,需要更新判别器D的参数,判别器D的参数更新方法是采用梯度上升法来更新目标函数,因为要使其取值最大化,所以是梯度上升。然后在训练生成器的过程中,需要固定判别器D的参数,由于目标函数要取最小值,所以在更新参数的过程中使用梯度下降的方法。
在这里插入图片描述
如上图所示,在训练生成对抗网络时,同时更新判别分布(蓝色虚线),使判别器能区分数据真实分布(黑色虚线)中的样本和生成分布(绿色实线)中的样本,蓝色虚线的值越大表示这个样本越有可能是真实样本。下面的水平线为均匀采样z的区域,上面的水平线为x的部分区域,朝上的箭头显示映射x=G(z)如何将非均匀分布作用在转换后的样本上。可以看出,经过一系列的训练,如果判别器和生成器的性能足够好,它们都会接近某个稳定点并且都无法继续提高性能,此时,数据真实分布的概率和数据生成分布的概率近乎相等,判别器无法区分真实数据分布和生成数据分布,对于给定数据,将其预测为真实数据和生成数据的概率都接近于0.5。

GAN相比以前的模型框架有其优缺点。缺点主要是没有明确表示样本数据的分布,并且在训练过程中判别器必须与生成器很好地同步,比如在不更新判别器的情况下,如果过多地训练生成器,就会有很多相同的x值,以至于生成的样本没有足够的多样性。优点是不再需要马尔可夫链,仅用反向传播来获得梯度,学习间无需推理,且模型中可融入多种函数。

对于最初的生成对抗网络,后续也提出了很多的对它的改进,比如条件GAN、WGAN、DCGAN等等。随着生成对抗网络的不断发展和完善,它也被不断应用在各项任务上,由一开始的图像生成任务,渐渐到后来的文本摘要生成、图像描述生成任务上并不断改进和优化。

参考资料:深度学习基础-哈尔滨工业大学-中国大学mooc

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
## 讲师介绍: 近 5 年个人投资理财年化收益平均超 25%。如果你也想提升自己的睡后收入,轻松赚钱,那么这门课就是为你量身打造。课程基于一个完整真实的量化交易业务来讲授,并融入老师的理财经验以及使用编程技术辅助投资的技巧,让你面对各种复杂投资情况也能做到游刃有余。 ## 学习目标: 从不懂“理财”开始到实现自动交易,成为一个“技术流”理财高手 编程技术 + 核心量化策略 + 交易系统开发 + 讲师经验分享,学会用技术辅助理财 本课程从最基础的什么是量化开始讲起,即使对投资理财不了解同样可以学习,轻松入门无压力。 从如何获取数据开始,到实现实盘交易,课程对量化交易的每一步都进行细致讲解,为你铺开量化交易的每一个细节。 不仅仅只是教你学会使用某种工具,更会教给你量化交易的投资思想,让你面对各种情况都游刃有余。 ## 课程亮点: 设计适合自己并能适应市场的交易策略,才是量化交易的灵魂 课程亲手带你设计并实现两种交易策略,快速培养你的策略思维能力 1. 择时策略:通过这个策略学会如何利用均线,创建择时策略,优化股票买入卖出的时间点。2. 选股策略:掌握选股策略的核心逻辑,并基于收益率创建动量选股策略,并验证其有效性。 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统 第三方平台大而全,不易扩展,效率还差,信息安全也是大问题,打造自己的交易平台才是更优解

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值