IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 对抗生成网络GAN(优化目标篇) -> 正文阅读

[人工智能]对抗生成网络GAN(优化目标篇)

对抗生成网络GAN(优化目标篇)

快要面试,故对GAN进行稍许复习

目的

对抗式生成网络GAN提出的目的是估计样本的密度函数 p r ( x ; θ ) p_r(x;\theta) pr?(x;θ),且并不显式的估计密度函数,而是希望得到一个能生成出符合该分布样本的模型。

方法

通过假设在低维空间上有一个简单的分布 z z z,一般假设为多为高斯 N ( 0 , I ) \mathcal N(\textbf 0,\textbf I) N(0,I),通过建立映射$ G : Z → X G: \mathcal Z \rightarrow \mathcal X G:ZX,这个 G G G一般利用一个神经网络实现,称为生成器(Generator).对抗生成网络的另一个巧妙之处在于使用另一个神经网络 D D D作为判别器(discriminator),用于判断 G G G所生成的样本的真假。

  • 生成器的目标是尽量生成较为真实的虚假样本,从而使判别器判断该样本为真实样本
  • 判别器的目标是准确的判断某一样本为真实样本还是由生成器生成的虚假样本,输出其为真实样本的概率

故而判别器的目标为:
max ? D E x ~ p d a t a [ l o g D ( x ) ] + E z ~ p z [ l o g ( 1 ? D ( G ( z ) ) ) ] \max\limits_{D} \mathbb E _{x\sim p_{data}}[logD(x)]+\mathbb E_{z\sim p_z}[log(1-D(G(z)))] Dmax?Expdata??[logD(x)]+Ezpz??[log(1?D(G(z)))]
第一部分意为使得生成器判别真实样本为真实的概率较大,第二部分意为使得生成器判别虚假样本的为真实的概率较小,此为直观理解。也有通过交叉熵导出的方式,详见邱锡成的《神经网络与深度学习》

而生成器目标为:
min ? G E z ~ p z [ log ? ( 1 ? D ( G ( z ) ) ) ] \min\limits_G \mathbb E_{z\sim p_z}[\log(1-D(G(z)))] Gmin?Ezpz??[log(1?D(G(z)))]
因此,交替优化判别器目标和生成器目标,从而优化生成器和判别器。

如果将生成器目标和判别器目标写为一体,则为:
min ? G max ? D E x ~ p d a t a [ l o g D ( x ) ] + E z ~ p z [ l o g ( 1 ? D ( G ( z ) ) ) ] \min \limits_G \max \limits_D\mathbb E_{x \sim p_{data}}[logD(x)]+\mathbb E_{z\sim p_z}[log(1-D(G(z)))] Gmin?Dmax?Expdata??[logD(x)]+Ezpz??[log(1?D(G(z)))]
注意优化 D D D时, G G G的参数应当保持不变。

补充:交叉熵

交叉熵有多重导出方法,这里利用最大似然估计。对于一个伯努利分布,有密度函数为:
P ( x ∣ θ ) = θ x ( 1 ? θ ) 1 ? x P(x|\theta)=\theta^x(1-\theta)^{1-x} P(xθ)=θx(1?θ)1?x
其中, θ \theta θ代表了 x x x为真的概率。倘若此时有一组样本 x 1 , x 2 , ? ? , x n x_1, x_2, \cdots, x_n x1?,x2?,?,xn?, 对伯努利分布做最大似然估计,则有:
θ = arg ? max ? θ log ? ∏ i = 0 N θ x i ( 1 ? θ ) 1 ? x i = arg ? max ? θ ∑ i = 0 N x i log ? θ + ( 1 ? x i ) log ? ( 1 ? θ ) \theta= \mathop{\arg\max}\limits_{\theta}\log\prod_{i=0}^N\theta^{x_i}(1-\theta)^{1-x_i}\\ = \mathop{\arg\max}\limits_{\theta}\sum_{i=0}^N x_i \log\theta+(1-x_i)\log(1-\theta) θ=θargmax?logi=0N?θxi?(1?θ)1?xi?=θargmax?i=0N?xi?logθ+(1?xi?)log(1?θ)
对于上式,如果增加一个 1 N \frac {1}{N} N1?并不影像最大化的过程,于是可以变为:
θ = arg ? max ? θ E [ x i log ? θ + ( 1 ? x i ) log ? ( 1 ? θ ) ] = arg ? max ? θ E [ x i log ? θ ] + E [ ( 1 ? x i ) log ? ( 1 ? θ ) ) ] \theta = \mathop{\arg\max}\limits_\theta \mathbb E[x_i\log\theta+(1-x_i)\log(1-\theta)]\\ =\mathop{\arg\max}\limits_\theta \mathbb E[x_i\log\theta]+\mathbb E[(1-x_i)\log(1-\theta))] θ=θargmax?E[xi?logθ+(1?xi?)log(1?θ)]=θargmax?E[xi?logθ]+E[(1?xi?)log(1?θ))]

此时,如果令模型预测 θ \theta θ,则, D ( x ) = θ D(x) = \theta D(x)=θ,从而可以使得公式变为:
D = max ? D E [ x i log ? D ( x i ) ] + E [ ( 1 ? x i ) log ? ( 1 ? D ( x i ) ) ) ] D = \mathop{\max}\limits_{D} \mathbb E[x_i\log D(x_i)]+\mathbb E[(1-x_i)\log(1-D(x_i)))] D=Dmax?E[xi?logD(xi?)]+E[(1?xi?)log(1?D(xi?)))]
若加个负号,从而变为最小化,就是交叉熵损失函数的形式.

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-31 15:27:21  更:2021-08-31 15:29:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 16:50:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码