lesson9-小象学院cv
www.sohu.com/a/159976204_717210
生成模型:基于联合概率~共生关系
判别模型:基于条件概率~因果关系
生成模型之学习数据分布:1)概率密度函数估计 2)数据样本生成
模型目标:训练模型,生成样本模型,学习过程是让两者接近
解决问题:
数据缺失-因为可以用生成模型自己生成数据弥补缺失
生成模型的根节点就是最大似然估计
1、显式密度估计
1)精确密度估计
2)近似密度估计
《1》马尔科夫
《2》变分
2、隐式密度估计
1)马尔科夫链
2)直接生成 -GAN生成对抗网络
GAN:
特点:无监督(有监督的框架,学习是无监督的)、适用隐含码、高维数据
结构:生成器~伪造数据 + 判别器~判别数据是生成的还是伪造的
噪声输入 1*100的向量 -》生成器-》生成的样本数据(假想的真实数据) -》
真是样本数据 -》 判别器
先训练优化判别器,生成器基于判别器的判别不断优化自己的造假能力
生成器:负责生成样本数据
输入为高斯白噪声向量z
输出为样本数据向量x
必须可微分
深度神经网络CNN x = G(z,theda),theda为神经网络参数
判别器:输入为真实或生成的样本数据
输出为真假标签
优化目标:
价值函数
生成器优化方:最小化价值函数-》最大化D(G(z)) ~判别器将生成数据识别为假的概率的log值
判别器优化方:最大化价值函数-》最小化。,最大化D(x)
交替优化达到纳什均衡点
在训练过程中,会把生成模型生成的样本和真实样本随机地传送一张(或者一个 batch)给判别模型 D。判别模型 D 的目标是尽可能正确地识别出真实样本(输出为“真”,或者1),和尽可能正确地揪出生成的样本,也就是假样本(输出为“假”,或者0)。这两个目标分别对应了下方的目标函数的第一和第二项。而生成模型的目标则和判别模型相反,就是尽可能最小化判别模型揪出它的概率。这样 G 和 D 就组成了一个 min-max game,在训练过程中双方都不断优化自己,直到达到平衡——双方都无法变得更好,也就是假样本与真样本完全不可区分。
而在生成器端,它希望让判别器对自己生成的图片尽可能输出为 1,相当于它在于判别器进行对抗。
D-step和G-step :零和游戏
最终的判别器总体 loss 在 1 左右波动,而 real loss 和 fake loss 几乎在一条水平线上波动,这说明判别器最终对于真假图像已经没有判别能力,而是进行随机判断。
训练算法:
1、执行D-step的minibatch优化k次
随机生成m个随机噪声向量-》聪数据集随机选取m个真实样本-》使用梯度上升优化判别器的代价函数,即最大化价值函数
2、执行G-step的minibatch优化1次
随机生成m个随机噪声向量-》使用梯度下降优化生成器的代价函数,即最小化价值函数
训练过程图:
左边分布主要为真实数据,判别为真,蓝线为1;右边基本为生成的假数据,判别为假
优化到最后蓝线为1/2,即已经判别不出为真还是假,完全靠猜了
模型崩溃:
判别器快速达到最优,能力明显强于生成器
生成器将数据集中生成在判别器最认可的空间点上,即输出多样性很低
WGAN:优化了生成器和判别器的损失函数
模型稳定训练的技巧:
判别器整数步长卷积,生成器小数步长卷积
使用批归一化
去除全连接层
生成器使用relu,输出使用tanh
判别器使用leaky relu
Leaky ReLUs
ReLU是将所有的负值都设为零,相反,Leaky ReLU是给所有负值赋予一个非零斜率。Leaky ReLU激活函数是在声学模型(2013)中首次提出的。以数学的方式我们可以表示为:
https://www.cnblogs.com/chamie/p/8665251.html
ai是(1,+∞)区间内的固定参数。
lesson9-小象学院cv的更多相关文章
- 小象学院Python数据分析第二期【升级版】
点击了解更多Python课程>>> 小象学院Python数据分析第二期[升级版] 主讲老师: 梁斌 资深算法工程师 查尔斯特大学(Charles Sturt University)计 ...
- 百度前端技术学院—-小薇学院(HTML+CSS课程任务)
任务一:零基础HTML编码 课程概述 作业提交截止时间:04-24 重要说明 百度前端技术学院的课程任务是由百度前端工程师专为对前端不同掌握程度的同学设计.我们尽力保证课程内容的质量以及学习难度的合理 ...
- 【小记录】cv::cuda::Stream中取出cudaStream_t并用于核函数的计算
以下是找到的代码 1 cv::cuda::Stream stream; 2 cudaStream_t s = cv::cuda::StreamAccessor::getStream(stream); ...
- YARN应用程序开发流程(类似于MapReduce On Yarn)本内容版权归(小象学院所有)
MapReduce On Yarn和MapReduce程序区别 MapReduce On Yarn(由专业人员开发)1 为MapReduce作业运行在YARN上提供一个通用的运行时环境2 需要与Yar ...
- 通过Github Pages在线查看百度前端技术学院完成的任务成果
前言 .note-content {font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHe ...
- NLP︱高级词向量表达(一)——GloVe(理论、相关测评结果、R&python实现、相关应用)
有很多改进版的word2vec,但是目前还是word2vec最流行,但是Glove也有很多在提及,笔者在自己实验的时候,发现Glove也还是有很多优点以及可以深入研究对比的地方的,所以对其进行了一定的 ...
- 检索式chatbot:
小夕从7月份开始收到第一场面试邀请,到9月初基本结束了校招(面够了面够了T_T),深深的意识到今年的对话系统/chatbot方向是真的超级火呀.从微软主打情感计算的小冰,到百度主打智能家庭(与车联网? ...
- Hadoop概括——学习笔记<一>
之前有幸在MOOC学院抽中小象学院hadoop体验课. 这是小象学院hadoop2.X概述第一章的笔记 第一章主要讲的是hadoop基础知识.老师讲的还是比较全面简单的,起码作为一个非专业码农以及数据 ...
- Hadoop-HBASE案例分析-Hadoop学习笔记<二>
之前有幸在MOOC学院抽中小象学院hadoop体验课. 这是小象学院hadoop2.X概述第八章的笔记 主要介绍HBase,一个分布式数据库的应用案例. 案例概况: 1)时间序列数据库(OpenTSD ...
随机推荐
- 把旧系统迁移到.Net Core 2.0 日记 (12) --发布遇到的问题
1. 开发时是在Mac+MySql, 尝试发布时是在SQL2005+Win 2008 (第一版) 在Startup.cs里,数据库连接要改,分页时netcore默认是用offset关键字分页, 如果用 ...
- 转 /etc/ld.so.conf.d/目录下文件的作用
在了解/etc/ld.so.conf.d/目录下文件的作用之前,先介绍下程序运行是加载动态库的几种方法:第一种,通过ldconfig命令 ldconfig命令的用途, 主要是在默认搜寻目录(/l ...
- xubuntu无法进图形界面问题
http://www.ubuntugeek.com/fix-for-cant-login-after-upgrading-from-ubuntu-13-04-to-ubuntu-13-10.html ...
- UVa 11384 - Help is needed for Dexter 分析, 树状数组 难度: 0
题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...
- linux 在执行命令过程中,反单引号(`)这个符号代表的意义为何?
在一串命令中,在`之内的命令将会被先执行,而且执行出来的结果将作为外部的输入信息.例如:uname -r 会显示出目前的内核版本,而我们的内核版本在/lib/modules里面,因此.你可以先执行un ...
- 十三. Python基础(13)--生成器进阶
十三. Python基础(13)--生成器进阶 1 ● send()方法 generator.send(value) Resumes the execution, and "sends&qu ...
- (C/C++学习笔记) 二十三. 运行时类型识别
二十三. 运行时类型识别 ● 定义 运行时类型识别(Run-time Type Identification, RTTI) 通过RTTI, 程序能够使用基类的指针或引用来检查(check)这些指针或引 ...
- 控制台程序读取WIKI形式的TXT文件并一表格的形式显示在Word中
'Imports System.Collections.Generic 'Imports System.Text 'Imports System.IO 'Imports office = Micros ...
- core net 实现post 跟get
using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using Syst ...
- 7.6 C++基本序列式容器效率比较
参考:http://www.weixueyuan.net/view/6403.html 总结: 对于vector而言,它只是一个可以伸缩长度的数组 对于deque而言,它是一个可以操作头部和尾部的并且 ...