判别分析

线性判别分析(Linear Discriminant Analysis)(一)

删除回忆录丶 提交于 2019-12-23 05:17:05
1. 问题 之前我们讨论的PCA、ICA也好,对样本数据来言,可以是没有类别标签y的。回想我们做回归时,如果特征太多,那么会产生不相关特征引入、过度拟合等问题。我们可以使用PCA来降维,但PCA没有将类别标签考虑进去,属于无监督的。 比如回到上次提出的文档中含有“learn”和“study”的问题,使用PCA后,也许可以将这两个特征合并为一个,降了维度。但假设我们的类别标签y是判断这篇文章的topic是不是有关学习方面的。那么这两个特征对y几乎没什么影响,完全可以去除。 再举一个例子,假设我们对一张100*100像素的图片做人脸识别,每个像素是一个特征,那么会有10000个特征,而对应的类别标签y仅仅是0/1值,1代表是人脸。这么多特征不仅训练复杂,而且不必要特征对结果会带来不可预知的影响,但我们想得到降维后的一些最佳特征(与y关系最密切的),怎么办呢? 2. 线性判别分析(二类情况) 回顾我们之前的logistic回归方法,给定m个n维特征的训练样例 (i从1到m),每个 对应一个类标签 。我们就是要学习出参数 ,使得 (g是sigmoid函数)。 现在只考虑二值分类情况,也就是y=1或者y=0。 为了方便表示,我们先换符号重新定义问题,给定特征为d维的N个样例, ,其中有 个样例属于类别 ,另外 个样例属于类别 。 现在我们觉得原始特征数太多,想将d维特征降到 只有一维

生成对抗网络学习——WGAN

笑着哭i 提交于 2019-12-17 03:46:13
文章目录 一、WGAN原理 第一部分:原始GAN究竟出了什么问题? 第一种原始GAN形式的问题 第二种原始GAN形式的问题 第三部分:Wasserstein距离的优越性质 第四部分:从Wasserstein距离到WGAN WGAN,全称是Wasserstein GAN。 【paper】: https://arxiv.org/abs/1701.07875 【GitHub】: 参考资料: 原理: 1、 令人拍案叫绝的Wasserstein GAN 2、 李弘毅GAN网络MOOC 代码解读: 【1】WGAN-GP代码及注释 https://blog.csdn.net/qq_20943513/article/details/73129308 【2】包括了DCGAN,LSAGN,WGAN,以及WGAN-GP的代码 https://blog.csdn.net/Diana_Z/article/details/87184465 【3】WGAN代码解读及实验总结 https://blog.csdn.net/CLOUD_J/article/details/94392474 一、WGAN原理 自从2014年Ian Goodfellow提出以来, GAN就存在着训练困难、生成器和判别器的loss无法指示训练进程、生成样本缺乏多样性等问题 。从那时起,很多论文都在尝试解决,但是效果不尽人意

聚类与判别总结

☆樱花仙子☆ 提交于 2019-12-11 21:18:17
聚类与判别 方差分析使用类别自变量和连续数因变量,而判别分析连续自变量和类别因变量(即类标签) 启发式方法: K-mean 和 k-medoid 算法 k-means :每个群集由群集的中心表示 K-medoid 或 PAM( 围绕 medoid 的分区 ) :每个集群由集群中的一个对象表示 ============================================ K-Mean 就是在已知要分为 4 类之后,将 K=4 ,随便找到 4 个点,计算每个原始点的到这四个点中心的距离,选择距离最近的点归类,这就有 4 类点,再在这些点内部计算每一点的质心,这就有了新的 4 个点,再对所有点计算到这四个点的距离,然后比较,以此类推。 处理数值数据 ======================================================== L-medoid 聚类方法 即若 K=2 ,则选择原始数据中的某两个点作为原始 medoids ,计算每个点到该点的距离,形成两个簇,再选择一个非之前的点作为 medoid ,如果花费得到改善则将 medoid 值替换为改点,如果没有得到改善则不变。 处理分类数据 对 PAM 的评论 在存在噪声和异常值的情况下, pam 比 k 均值更健壮,因为 Medoid 受异常值或其他极值的影响小于 k-means 。 因为

设计模式与代码的结构特性

ぐ巨炮叔叔 提交于 2019-12-07 02:55:45
请选择一种我们课程中介绍的设计模式,用您熟悉的编程语言提供一个典型的应用范例,并分析其代码结构特性。完成一篇研究报告,具体要求如下: 引用关键代码(引用代码是为解释说明服务的,不要贴对解释问题无关的代码)解释该设计模式在该应用场景中的适用性; 引入该设计模式后对系统架构和代码结构带来了哪些好处; 解释其中用到的多态机制; 说明模块抽象封装的方法; 分析各个模块的内聚度和模块之间的耦合度; 提供该应用范例完整的源代码包括构建部署的操作过程,建议以github版本库URL的方式提供源代码,其中README.md中说明构建部署的操作过程。 如下为图像分辨率增强项目 生成式对抗网络GAN近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model)和判别模型(Discriminative Model)的互相博弈学习产生相当好的输出。 SRGAN旨在增强图像分辨率,是在keras框架上的代码实现。 如上目录,首先使用VGG19进行特征提取,使用迁移学习可以节省大量的训练时间,imagenet的初始权重本身在图像类任务上具有十分优秀的效果,用来做特征提取可以有效的获取图片的有效特征信息。 接下来是生成器和判别器的构建,因为GAN的原理就是通过在这两个容器上进行相互博弈缩小损失函数的期望值,最终来产生比较好的输出,下为构建模型。

手把手教你用GAN实现半监督学习

落爺英雄遲暮 提交于 2019-12-05 10:49:39
引言 本文主要介绍如何在tensorflow上仅使用200个带标签的mnist图像,实现在一万张测试图片上99%的测试精度,原理在于使用GAN做半监督学习。前文主要介绍一些原理部分,后文详细介绍代码及其实现原理。前文介绍比较简单,有基础的同学请掠过直接看第二部分,文章末尾给出了代码GitHub链接。对GAN不了解的同学可以查看微信公众号:机器学习算法全栈工程师 的GAN入门文章。 本博客中的代码最终以GitHub中的代码为准,GitHub链接在文章底部,另外,本文已投稿至微信公众号:机器学习算法全栈工程师,欢迎关注此公众号 1.监督,无监督,半监督学习介绍 在正式介绍实现半监督学习之前,我在这里首先介绍一下监督学习(supervised learning),半监督学习(semi-supervised learning)和无监督学习(unsupervised learning)的区别。监督学习是指在训练集中包含训练数据的标签(label),比如类别标签,位置标签等等。最普遍使用标签学习的是分类任务,对于分类任务,输入给网络训练样本(samples)的一些特征(feature)以及此样本对应的标签(label),通过神经网络拟合的方法,神经网络可以在特征和标签之间找到一个合适的映射关系(mapping),这样当训练完成后,输入给网络没有label的样本

[转载]--令人拍案叫绝的Wasserstein GAN

我只是一个虾纸丫 提交于 2019-12-05 10:46:05
文章转载自: https://zhuanlan.zhihu.com/p/25071913 令人拍案叫绝的Wasserstein GAN 郑华滨 · 2 天前 在GAN的相关研究如火如荼甚至可以说是泛滥的今天,一篇新鲜出炉的arXiv论文《 Wassertein GAN 》却在Reddit的Machine Learning频道火了,连Goodfellow都 在帖子里和大家热烈讨论 ,这篇论文究竟有什么了不得的地方呢? 要知道自从 2014年Ian Goodfellow提出 以来,GAN就存在着训练困难、生成器和判别器的loss无法指示训练进程、生成样本缺乏多样性等问题。从那时起,很多论文都在尝试解决,但是效果不尽人意,比如最有名的一个改进 DCGAN 依靠的是对判别器和生成器的架构进行实验枚举,最终找到一组比较好的网络架构设置,但是实际上是治标不治本,没有彻底解决问题。而今天的主角Wasserstein GAN(下面简称WGAN)成功地做到了以下爆炸性的几点: 彻底解决GAN训练不稳定的问题,不再需要小心平衡生成器和判别器的训练程度 基本解决了collapse mode的问题,确保了生成样本的多样性 训练过程中终于有一个像交叉熵、准确率这样的数值来指示训练的进程,这个数值越小代表GAN训练得越好,代表生成器产生的图像质量越高(如题图所示) 以上一切好处不需要精心设计的网络架构

深度卷积生成对抗网络--DCGAN

天涯浪子 提交于 2019-12-05 10:00:54
本问转自: https://ask.julyedu.com/question/7681 ,详情请查看原文 —— 前言 :如何把CNN与GAN结合?DCGAN是这方面最好的尝试之一,DCGAN的原理和GAN是一样的,这里就不在赘述。它只是把经典GAN中的G和D换成了两个卷积神经网络(CNN)。但是,并不是直接替换就可以了, DCGAN 对卷积神经网络的结构做了一些改变,以提高样本的质量和收敛的速度。具体有哪些改变,将在本文中看到。 摘要 近年来,深度卷积神经网络(CNN)的监督学习在计算机视觉应用上发挥巨大的作用,然而CNN的非监督学习只受到较少的关注。在这项工作中我们希望有助于缩小CNN在监督学习和非监督学习成功的差距。我们提出了一种叫做深度卷积生成对抗网络的CNN,它具有一定的结构约束,展示了其在非监督学习方向上强有力的候选方案。通过在各种各样的图像数据集的训练,我们展示了令人信服的证据,我们的深度卷积对抗对(adversarial pair)从对象到场景在生成模型和判别模型上都能够学习到层级的表示。此外,我们在一些的新的任务上使用学习到的特征表明它们一般的图像表示上具有通用性。 引言 从大量未标记数据集中学习可重复使用的特征表示已经成为一个热门研究区域(been an area,一个地区,区域)。在计算机视觉背景下

深度卷积生成式对抗网络(Deep Convolutional Generative Adversarial, DCGAN)

不打扰是莪最后的温柔 提交于 2019-12-05 09:32:36
深度卷积生成式对抗网络,2019-03-26 目录 一、预备知识 (一)卷积神经网络 1. 层级结构 2. 训练算法 3. 优缺点 (二)GAN 二、模型结构 (一)模型总体思想 (二)对CNN的改进 1. 全卷积网络 2. 消除完全连接层 3. 批规范化 (二)DCGAN框架结构 三、实验 (一)实验数据集 (二)实验细节 1. 预处理 2. 参数设置 3. 正式实验 (1) 在数据集LSUN上进行实验 (2)在人脸数据集上进行实验 (3)在数据集Imagenet-1K上进行实验 四、对DCGAN能力的实验验证 (一)使用GANs作为特征提取器对CIFAR-10进行分类 (二)使用GANs作为特征提取器对SVHN数字进行分类 五、研究和可视化网络的内部结构 (一)潜在空间 (二)可视化判别器特性 (三)操作生成器的表示 1. 忘记绘制某些对象 2. 人脸样本向量算法 六、总结和展望 论文链接:https://arxiv.org/abs/1511.06434 目录 一、预备知识 (一)卷积神经网络 参考博文: https://www.cnblogs.com/skyfsm/p/6790245.html 1. 层级结构 数据输入层/Input Layer:主要是数据预处理(去均值、归一化、 PCA / 白化 等); 卷积计算层/CONV Layer:局部关联、窗口滑动(特征提取);

对抗神经网络之对抗卷积神经网络[2]

青春壹個敷衍的年華 提交于 2019-12-05 09:30:29
Abstract 上一篇博文[1]简单介绍了对抗网络的理论和大概流程。其中所谓的对抗网络可以归结为unsupervised learning 或者 generative model。从无监督学习来进行feature representation,有k-means聚类算法,auto-encoders[2],以及09年的Deep belief networks等等。从生成模型的角度来说,我们需要让算法能学习到数据的分布情况,而这个分布从Bayes观点来说,可以认为是class-conditional probability。然而对于复杂的数据,例如高分辨率的图像,学习到它的像素的分布情况是个极其困难的问题。所以,对于生成natural images,之前的算法一直没有取得好的效果。最近的一些算法就基本解决了这个问题,比如variational autoencoder[3],简称VAE.以及我们介绍过的adversarial networks[4]。Good fellow 14年提出的对抗网络,应该没有想到它现在会这么火爆。 对抗网络可以认为是一个生成模型和一个判别模型组成的。一般情况下,生成模型和判别模型都是使用的神经网络的算法,比如感知器,或者卷积神经网络。对于对抗网络,经过所谓的对抗过程的训练之后,Generative networks可以生成realistic image

DCGAN论文译本

二次信任 提交于 2019-12-05 08:29:13
用深度卷积生成对抗网络进行无监督表示学习 摘要 近年来,监督学习的卷积网络( CNN )在计算机视觉应用中有着广泛的应用。相比之下,无监督的卷积网络 CNN 学习受到的关注较少。在这项工作中,我们希望可以帮助缩小有监督学习的 CNN 和无监督学习的 CNN 成功之间的差距。我们介绍了一类 CNN 叫做深度卷积生成对抗网络( DCCNG ),它具有一定的架构约束,表明它们是非监督学习的有力候选。对各种图像数据集进行训练,我们展示出令人信服的证据,证明我们的深层卷积对抗从对象部分到发生器和判别器中的场景学习了层次结构的表示。此外,我们使用学习的功能进行新颖的任务 - 证明适用于一般图像的表示 1. 前言 从来自大型的未标记的数据集学习可重用的特征表示一直是一个热门的研究领域。在计算机视觉的背景下,可以利用实际上无限量的未标记的图像和视频来学习良好的中间表示,然后可以将它用在各种监督学习任务上,如图像分类。 我们提出了一种建立好的图像表示的方法是通过训练生成对抗网络( GAN )( Goodfellow 等人, 2014 ),并随后重用发生器和判别器网络的部分作为用于监督任务的特征提取器。 GAN 为最大似然技术提供了一个有吸引力的替代方法。另外还可以争辩说,他们的学习过程和缺少启发式的代价函数(比如像素方式的独立均方差)对于表示学习来说是存在吸引力的。我们知道 GAN