方差

统计学基础知识(一)---描述统计学(Descriptive Statistics)

↘锁芯ラ 提交于 2019-12-05 19:47:08
描述统计学(Descriptive Statistics):将数据的信息以表格, 图形或数值的形式进行汇总。 数据类型:分为定量数据(数值型数据)和定性数据(类别型数据)。数值型数据又可以分为连续型和离散型,类别型数据又可以分为有序型和无序型。 定性数据: 频数(frequency) :数据出现的次数。 相对频数(relative frequency) :数据出现的次数/总次数。 百分数(percentage) :数据出现的次数/总次数*100%。 定量数据: 平均数(mean) :总数值除以总数。总体均值---μ;样本均值--- 。 注:这里说的平均数是算术平均数,其他还有加权平均数(weighted mean),几何平均数(geometric mean)和调和平均数。 中位数(median) :将所有数据按升序排列,当数据个数是奇数时,中位数就是位于中间的数值,当数据个数是偶数时,中位数就是位于中间的两个数值的平均值。 众数(mode) :出现次数最多的数据。 四分位数(quartile) :将所有数据按升序排列,然后等分为四部分,处在25%位置上的数值称为下四分位数Q1,处在50%位置上的数值称为Q2,处在75%位置上的数值称为上四分位数Q3。 极差(range) :最大值-最小值。 四分位间距(interquartile range, IQR) :第三分位数(Q3)

均值、方差、协方差、协方差矩阵、特征值、特征向量

末鹿安然 提交于 2019-12-05 17:55:02
均值: 描述的是样本集合的中间点。 方差: 描述的是样本集合的各个样本点到均值的距离之平均,一般是用来描述一维数据的。 协方差: 是一种用来度量两个随机变量关系的统计量。 只能处理二维问题。 计算协方差需要计算均值。 如下式: 方差与协方差的关系 方差是用来度量单个变量 “ 自身变异”大小的总体参数,方差越大表明该变量的变异越大 协方差是用来度量两个变量之间 “协同变异”大小的总体参数,即二个变量相互影响大小的参数,协方差的绝对值越大,则二个变量相互影响越大。 协方差矩阵: 协方差矩阵能处理多维问题; 协方差矩阵是一个对称的矩阵,而且对角线是各个维度上的方差。 协方差矩阵计算的是不同维度之间的协方差,而不是不同样本之间的。 样本矩阵中若每行是一个样本,则每列为一个维度,所以计算协方差时要 按列计算均值 。 如果数据是3维,那么协方差矩阵是: 特征值与 特征向量 线性变化: 线性变换 (线性映射)是在作用于 两个向量空间之间的函数 ,它保持 向量加法和标量乘法 的运算,从一个向量空间变化到另一个向量空间。 实际上线性变换表现出来的就是一个矩阵 。 特征值和特征向量 是一体的概念: 对于一个给定的线性变换(矩阵A),它的特征向量 ξ 经过这个线性变换之后,得到的新向量仍然与原来的 ξ 保持在同一條直線上,但其长度也许會改变。一个特征向量的长度在该线性变换下缩放的比例(λ)称为其特征值

PCA

梦想与她 提交于 2019-12-05 16:16:04
对影像进行主成分分析,只有第一主成分被分离出来了,后面的主成分好像都相同 均值: 标准差: 方差: 描述数据之间关系的统计量 标准差和方差一般是用来描述一维数据的,但现实生活我们常常遇到含有多维数据的数据集。 面对这样的数据集,我们当然可以按照每一维独立的计算其方差,但是通常我们还想了解这几科成绩之间的关系,这时,我们就要用协方差,协方差就是一种用来度量两个随机变量关系的统计量 1.正向主成分(PC)旋转 正向PC旋转用一个线性变换使数据方差达到最大。当使用正向PC旋转时,ENVI允许计算新的统计值,或根据已经存在的统计值进行旋转。输出值可以存为字节型、浮点型、整型、长整型或双精度型。也可以基于特征值来提取PC旋转的输出内容,生成只包含所需的PC波段的输出。 计算新的统计值和旋转 使用Compute New Statistics and Rotate选项可以计算数据特征值、协方差或相关系数矩阵以及PC正向旋转。 选择Transforms > Principal Components > Forward PC Rotation > Compute New Statistics and Rotate。 当出现Principal Components Input File对话框时,选择输入文件或用标准ENVI选择程序选取子集。将会出现Forward PC Rotation

神经网络训练技巧

倾然丶 夕夏残阳落幕 提交于 2019-12-05 11:40:55
参数初始化 是否可以将全部参数初始化为0 同一层的任意神经元都是同构的 它们的输入输出都相同,因此前向反向传播的取值完全相同 训练一直是对称的,同一层参数都是相同的 随机初始化参数 初始化参数为取值范围 \((-\dfrac{1}{\sqrt{d}}, \dfrac{1}{\sqrt{d}})\) 的均匀分布,或者是高斯分布 \(d\) 是一个神经元接受的输入维度 偏置可以设为启发式常数,并不会导致参数对称问题 Dropout原理与实现 以一定概率随机地“临时丢弃”一部分神经元 相当于每次迭代都在训练不同结构的神经网络,类似于Bagging方法 轻量级的Bagging集成近似,能够实现指数级数量神经网络的训练与评测 具体实现: 包含 \(N\) 个神经元的网络,在Dropout作用下可看作为 \(2^N\) 个模型的集成 这些模型可看作原网络的子网络,共享部分权值,具有相同网络层数,整体参数数目不变 减弱全体神经元之间的联合适应性,较少过拟合的风险 前向传播: 以概率 \(p\) 随机生成取值为0或1的向量,代表每个神经元是否被丢弃 \[r_j^{(l)} \sim Bernoulli(p)\] 更新神经元输出 \[\tilde{y}^{(l)}=r^{(l)} * y^{(l)}\] 测试阶段 每个神经元参数乘以概率系数 \(p\) 恢复在训练中该神经元只有 \(p\)

批规范化 Batch Normalization

荒凉一梦 提交于 2019-12-05 10:08:59
batch normalization 就是对数据做批规范化,使得数据满足均值为0,方差为1的正太分布。其主要作用是缓解DNN训练中的梯度消失/爆炸现象,加快模型的训练速度。BN在2015年提出,论文: Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift 机器学习领域有个很重要的假设:IID独立同分布假设,就是假设训练数据和测试数据是满足相同分布的,这是通过训练数据获得的模型能够在测试集获得好的效果的一个基本保障。但是在深层神经网络中,每轮迭代后基本上所有的网络的参数都会更新,所以就导致在训练过程中,每一个隐藏层的输入分布总是变来变去的,并且随着网络层数加深,更深层的隐藏层网络的输入分布差异会更大,这就是所谓的“Internal Covariate Shift”现象,这种现象影响之一是我们训练时候不敢设置较大的学习率,训练很困难,收敛越来越慢,并且容易产生梯度消失或梯度爆炸。 为了避免“Internal Covariate Shift”问题,论文中提出了Batch Normalization(BN)的基本思想:让每个隐藏层节点的激活输入分布固定下来。具体如何操作呢?就是通过一定的规范化手段

论文笔记-Batch Normalization

别说谁变了你拦得住时间么 提交于 2019-12-05 10:08:39
论文题目:Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift 首先看看博客 http://blog.csdn.net/happynear/article/details/44238541 中最开始介绍的: 为什么中心化,方差归一化等,可以加快收敛? 补充一点:输入x集中在0周围,sigmoid更可能在其未饱和区域,梯度相对更大一些,收敛更快。 Abstract 1.深层网络训练时,由于模型参数在不断修改,所以各层的输入的概率分布在不断变化,这使得我们必须使用较小的学习率及较好的权重初值,导致训练很慢,同时也导致使用saturating nonlinearities 激活函数(如sigmoid,正负两边都会饱和)时训练很困难。 这种现象加 internal covariate shift ,解决办法是:对每层的输入进行归一化。 本文方法特点是 :making normalization a part of the model architecture and performing the normalization for each training mini-batch Batch Normalization 让我们可以使用 更大的学习率

网络权重初始化方法总结(下):Lecun、Xavier与He Kaiming

好久不见. 提交于 2019-12-05 05:09:13
目录 权重初始化最佳实践 期望与方差的相关性质 全连接层方差分析 tanh下的初始化方法 Lecun 1998 Xavier 2010 ReLU/PReLU下的初始化方法 He 2015 for ReLU He 2015 for PReLU caffe中的实现 小结 参考 博客: blog.shinelee.me | 博客园 | CSDN 权重初始化最佳实践 书接上回,全0、常数、过大、过小的权重初始化都是不好的,那我们需要什么样的初始化? 因为对权重 \(w\) 的大小和正负缺乏先验,所以应初始化 在0附近 ,但不能为全0或常数,所以要有一定的 随机性 ,即 数学期望 \(E(w)=0\) ; 因为梯度消失和梯度爆炸,权重不易过大或过小,所以 要对权重的方差 \(Var(w)\) 有所控制 ; 深度神经网络的多层结构中,每个激活层的输出对后面的层而言都是输入,所以我们希望 不同激活层输出的方差相同 ,即 \(Var(a^{[l]})=Var(a^{[l-1]})\) ,这也就意味 不同激活层输入的方差相同 ,即 \(Var(z^{[l]})=Var(z^{[l-1]})\) ; 如果忽略激活函数,前向传播和反向传播可以看成是权重矩阵(转置)的连续相乘。数值太大,前向时可能陷入饱和区,反向时可能梯度爆炸,数值太小,反向时可能梯度消失。所以初始化时, 权重的数值范围(方差

VAEs(变分自编码)之keras实践

自作多情 提交于 2019-12-05 03:16:52
VAEs 最早由“Diederik P. Kingma and Max Welling, “Auto-Encoding Variational Bayes, arXiv (2013)”和“Danilo Jimenez Rezende, Shakir Mohamed, and Daan Wierstra, “Stochastic Backpropagation and Approximate Inference in Deep Generative Models,” arXiv (2014)”同时发现。 原理: 对自编码器来说,它只是将输入数据投影到隐空间中,这些数据在隐空间中的位置是离散的,因此在此空间中进行采样,解码后的输出很可能是毫无意义的。 而对VAEs来说,它将输入数据转换成2个分布,一个是平均值的分布,一个是方差的分布(这就像高斯混合型了),添加上一些噪音,组合后,再进行解码。 如图(网上找的,应该是论文里的,暂时没看论文) 为什么分为2个分布? 可以这么理解:假设均值和方差都有n个,那么编码部分相当于用n个高斯分布(每个输入是不同权重的n个分布的组合)去模拟输入。 再通过一系列变换,转化为隐空间的若干维度,其每个维度可能具有某种意义。比如下面代码使用2维隐空间,可以看作是均值和方差维度。 方差部分指数化,保证非负。添加噪音让隐空间更具有意义的连续性。

PCA主成分分析(最大投影方差)

江枫思渺然 提交于 2019-12-05 01:09:46
PCA简介: 从n维数据中提取最能代表这组数据的m个向量,也就是对数据进行降维(n->m),提取特征。 目标: 找到一个向量 \(\mu\) ,使n个点在其上的投影的方差最大(投影后的数据越不集中,就说明每个向量彼此之间包含的相似信息越少,从而实现数据降维) 前提假设: 总的数据: \[A = (x_1, x_2, \cdots , x_n)\] \(X\) 的协方差: \[C = Cov(X) = \frac{1}{n}\sum_{i=1}^n(x_i-\overline{x})(x_i-\overline{x})^T\] 向量 \(\mu\) : \[|\mu| = 1 \Rightarrow \mu^T\mu = 1\] 证明: 易知 \(x_i\) 在 \(\mu\) 上的投影为 \[(x_i-\overline{x})^T\cdot\mu\] 因为 \((x_i-\overline{x})\) 均值为0, 所以记其方差 \(J\) 为 \[\frac{1}{n}\sum_{i=1}^n(x_i-\overline{x})^T\cdot\mu)^2\] 又因为上式平方项中为标量,故可以将 \(J\) 改写为 \[\frac{1}{n}\sum_{i=1}^n(x_i-\overline{x})^T\cdot\mu)^T\cdot(x_i-\overline{x})^T

【机器学习】机器学习入门03 - 数据归一化

我是研究僧i 提交于 2019-12-04 20:39:08
1. 数据归一化 1.1 医疗事故? ——之前的kNN算法哪里出了问题? 在之前讲kNN算法时我们举过的肿瘤的例子中,有一个问题,也许很多读者没有考虑过。 回顾一下,kNN算法的第一步是求最为邻近的k个点,也就是要先求每个数据点与待预测的数据点的距离。我们仍然以p=2的明可夫斯基距离(欧拉距离)为例。肿瘤的实例中,数据点的两个坐标值是发现时间和肿瘤大小,我们所要求的其实就是这样一个表达式的值并进行大小比较。 为了后续表达简单,我们将上式简写如下: 好了,新的病人来了,做个检查吧。 哔~~~ 肿瘤直径:140mm 发现时间:0.8年 嗯,是时候检验一下我们kNN算法的功力了。简单点,我们假设原本的数据点只有2个,k=1。来看一下原本的两个数据点: 肿瘤1 肿瘤直径:150mm 发现时间:1年 肿瘤2 肿瘤直径:139mm 发现时间:5年 好吧,你聪明的,告诉我,你选1还是选2? 虽然我不懂医学,数据也都是我编的,我也不知道这样的直径和时间是否合理。但是,同样不懂医学的你,我相信和我一样,肯定选1嘛。 肿瘤1和这个新肿瘤差了两个多月,长大了10个毫米,讲道理应该已经十分相似咯。肿瘤2多长了4个年头还不如这新肿瘤大,肯定不能选嘛。 好吧,姑且认为你和我达成了共识,anyway,我们亲手打造的kNN算法不这么觉得。 算距离嘛,我们也会。我们来看看kNN算法会发生什么。 纳尼?D 2 更近?