math
龙王.*?
向来心是看客心,奈何人是剧中人。
展开
-
线性分类(1)
graph LRA[Hard edge] -->B(Round edge) B --> C{Decision} C -->|One| D[Result one] C -->|Two| E[Result two]```原创 2020-09-07 19:05:21 · 784 阅读 · 0 评论 -
最小二乘法及其正则化——求导、几何、概率角度
目录求导角度几何角度概率角度正则化频率角度贝叶斯角度总结汇总求导角度数据集:n个p维样本集用矩阵X表示,值Y为n维向量,W为p维向量。X=[x1x2...xn]T=[x1Tx2T...xnT]=[x11x12...x1px21x22...x2p............xn1xn2...xnp]np X = \left[ \begin{matrix} x_1 & x_2 & ... & x_n \end{matrix} \right]^T = \left[原创 2020-09-06 11:03:59 · 843 阅读 · 0 评论 -
矩阵求导
目录布局概念求导表格小实例布局概念分子布局:分子为列向量或者分母为行向量分母布局:分子为行向量或者分母为列向量分子布局下面所有向量x、y默认都是m、n维列向量。矩阵X是pxq,矩阵Y是mxn。标量/向量∂y∂xT=[∂y∂x1∂y∂x2...∂y∂xm] \frac{\partial y}{\partial \boldsymbol x^T} = \left[ \begin{matrix} \frac{\partial y}{\partial x_1} &翻译 2020-09-05 09:11:20 · 278 阅读 · 0 评论 -
轻松解剖数据降维——PCA
目录为什么要进行数据降维?中心矩阵是什么?PAC最大投影方差最小重构距离从SVD角度看PAC为什么要进行数据降维?我们知道数据降维是减少过拟合的重要方法之一,且对于高维度的数据,不仅计算量庞大的吓人,而且容易带来维度灾难。下面我们从几何角度看看什么是维度灾难,会带来哪些影响?下图是一个同圆心构成的圆环,大圆半径为R = 1,圆环间隙ξ\xiξ足够小,即趋于0,小圆半径为r = R - ξ\xiξ = 1 - ξ\xiξ。在二维平面上大圆和小圆的面积几乎相等,圆环的面积趋于0.V小圆V大圆=原创 2020-08-27 20:30:24 · 404 阅读 · 0 评论 -
弱对偶和强队偶的简单证明
目录前言弱对偶证明强队偶在几何上的证明前言由KKT条件可以通过拉格朗日乘子将一个含不等式和等式的约束条件的最小化问题转为一个拉格朗日函数。含约束的原问题={minxf(x)x∈ Rnmi(x)≤0i=1,2...,mnj(x)=0j=1,2,...,n(1) 含约束的原问题=\begin{cases} \min_{x} f(x)& x\in\ R^n \\m_i(x) \leq 0 & i = 1,2...,m \\n_j(x) = 0 & j = 1,2,.翻译 2020-08-26 12:02:37 · 1168 阅读 · 0 评论 -
轻松理解超平面
前言定义:1、超平面是指n维线性空间中维度为n-1的子空间。它可以把线性空间分割成不相交的两部分。比如二维空间中,一条直线是一维的,它把平面分成了两块;三维空间中,一个平面是二维的,它把空间分成了两块。2、法向量是指垂直于超平面的向量。过原点的超平面假设在R3空间中,有一个过原点的超平面,其法向量为ω⃗\vec{\omega}ω(ω\omegaω1,ω\omegaω2,ω\omegaω3),过原点的平面内任意原点出发的向量x⃗\vec{x}x,必有ω\omegaωTx = 0。故超平面公式翻译 2020-08-25 21:04:32 · 2701 阅读 · 0 评论 -
矩阵分解(四)——SVD分解
目录矩阵相关术语共轭矩阵(Hermite阵)特征值相似矩阵A^H^A^H^A酉矩阵酉相抵(正交相抵)奇异值奇异值分解式特征分解奇异值分解python代码实现验证结果 np.linalg.svd矩阵相关术语共轭矩阵(Hermite阵)当A = (ai,j)为复矩阵时,用a‾\overline{a}a表示a的共轭复数,记A‾\overline{A}A = (aij‾\overline{aij}aij),则A‾\overline{A}A为A的共轭矩阵。埃尔米特矩阵是相对其主对角线以复共轭方式对称,且H翻译 2020-08-21 21:48:36 · 3439 阅读 · 0 评论 -
矩阵分解(三)——满秩分解
目录矩阵相关术语秩、满秩矩阵初等变换初等矩阵阶梯型矩阵初等矩阵求逆满秩分解(法1)满秩分解(法2)矩阵相关术语秩、满秩设A是一组向量,定义A的极大无关组中向量的个数为A的秩。矩阵A的列秩是A的线性独立的纵列的极大数目,通常表示为r(A)或rank A。满秩:m × n矩阵的秩为m和n中的较小者。(设A是n阶矩阵, 若r(A) = n, 则称A为满秩矩阵。但满秩不局限于n阶矩阵)性质初等变换不改变矩阵的秩如果A可逆,则r(AB)=r(B),r(BA)=r(B)矩阵的乘积的秩Rab&翻译 2020-08-18 19:19:25 · 29366 阅读 · 2 评论 -
矩阵分解(二)——QR分解
目录矩阵相关术语正交矩阵矩阵的QR分解矩阵相关术语正交矩阵如果ATA=E(E为单位矩阵),则n阶实矩阵A称为正交矩阵,通常用Q表示。性质:1、AT的各行(列)是单位向量且两两正交2、|A|=1或-13、AT = A-14、两个正交矩阵的积还是正交矩阵矩阵的QR分解定义:一个非奇异方阵A,一定存在一个正交矩阵Q和上三角矩阵R(对角线元素都为正数),使得A = QR...翻译 2020-08-18 08:55:45 · 2088 阅读 · 0 评论 -
矩阵分解(一)——三角分解
目录矩阵一些术语奇异矩阵(降秩矩阵)非奇异矩阵(满秩矩阵)矩阵的顺序主子式高斯消去法矩阵描述代码展示矩阵一些术语奇异矩阵(降秩矩阵)矩阵A是方阵,且该矩阵的秩不是满秩。性质1、矩阵A的行列式等于02、如果A为奇异矩阵,则AX=0有无穷解,AX=b有无穷解或者无解非奇异矩阵(满秩矩阵)矩阵A是方阵,且该矩阵的秩是满秩。性质1、矩阵A的行列式不等于02、由|A|≠0可知矩阵A可逆3、AX=0有且只有唯一零解,AX=b有唯一解矩阵的顺序主子式设A为 阶矩阵,矩翻译 2020-08-16 17:16:08 · 5102 阅读 · 0 评论 -
CNN网络结构——池化层和全连接层
目录池化层为什么引入池化层概述为什么采用最大值方法实现过程全连接层概述全连接转为卷积池化层为什么引入池化层通常,卷积层的超参数设置为:输出特征图的空间尺寸等于输入特征图的空间尺寸。这样如果卷积网络里面只有卷积层,特征图空间尺寸就永远不变。虽然卷积层的超参数数量与特征图空间尺寸无关,但这样会带来一些缺点。空间尺寸不变,卷积层的运算量会一直很大,非常消耗资源。卷积网络结构最后是通过全连接层输出分值向量的,如果空间尺寸一直不变,则全连接层的权重数量会非常巨大,导致过拟合。前面几层的卷积层的输出存翻译 2020-08-10 19:36:01 · 8370 阅读 · 0 评论 -
CNN网络结构——卷积层
目录前言局部连接参数共享卷积层卷积运算卷积运算过程——二维卷积运算代码实现——二维卷积层及代码实现——三维代码实现——3D增加步长的卷积运算前言发展卷积神经网络的初衷是进行图像分类。图像主要有如下3个特性多层次结构:如一张人脸由鼻子、嘴巴、眼睛等组成特征局部性:如眼睛在一张图片中就局限在一个小区域内平移不变性:如不管眼睛出现在图片的哪个位置,特征提取器都可以找出来虽然卷积网络是为图像分类而发展起来的,但现在已经被用在各种任务中,如语音识别和机器翻译等。只要信号满足多层次结构、特征局部性翻译 2020-08-09 21:42:03 · 3652 阅读 · 1 评论 -
正则化
目录前言L1、L2范数代码展示 tf.nn.l2_loss提前终止训练dropout训练集增强前言目的:控制模型的学习容量,减弱过拟合的风险,降低模型的复杂度。形式:1、在损失函数(目标函数)后添加带系数的惩罚项;2、提前终止训练;3、dropout4、训练集增强L1、L2范数范数定义:假设 x 是一个向量,它的 L^p 范数定义:下面对L1和L2在损失函数上的作用说明:1式中可以看出,对于范数L1的正则化,会让特征变得稀疏,起到特征选择的作用。因为若 w_1 为正翻译 2020-08-08 18:39:47 · 259 阅读 · 0 评论 -
SVM理论疏导——拉格朗日乘子法
前导有这样一个场景,二维坐标轴有一个曲线g(x,y) = x2*y = 3,如何求这个曲线到原点的最短距离呢?在高等数学中,正常的方法将其转换成附加条件下的求极值问题。这是后话,先看下几何直观上,该如何求?假设曲线到原点的最短距离为a,则与原点距离为a的点全部在半径为a的圆上。所以在不知道a为何值的情况下,可以渐渐从0加大以原点为圆心的圆半径,知道圆与曲线相切,则相切的圆半径就是我们要找到最短距离a,相切点就是我们要找的极值点。实际上,上面的几个圆可以看成f(x,y)= x2+y2的翻译 2020-06-12 12:55:41 · 509 阅读 · 0 评论 -
理解偏导数、梯度、方向导数
偏导数我们都知道导数是一元函数的变化率,衡量每个x位置处的瞬间变化率。偏导数是针对多变量函数而言的,它通过将多变量函数退化成一元函数分别求各自的导数。以二元函数为例:Z = F(x,y)求x的偏导数就是将y变量看成常量,然后对x求导。总结:偏导数为函数在每个位置处沿着自变量坐标轴方向上的导数(切线斜率)。梯度梯度指的就是各个偏导数构成的向量,写作∇f,二元时为(∂z/∂x,∂z/∂y),多元时为(∂z/∂x,∂z/∂y,…)梯度是一个向量,既有大小又有方向梯度的意义在后面翻译 2020-06-11 22:24:59 · 8744 阅读 · 1 评论 -
SVM理论疏导——什么是超平面
超平面概念超平面是一种数学上的概念,它是线上的一个点,也是平面上的一条直线,也是三维空间的一张平面。前面说的点、线、平面都可以是超平面,但一般都不叫为超平面,因为超平面是点、线、平面的推广,即大于三维的才叫超平面。超平面是相对的,一般说起它,都会带上一个参照物,如这堆样本集需要找到一个超平面来划分,这里的超平面的维度实际上是样本集的维度减一。百度百科上对超平面的数学定义是这样的:超平面H是从n维空间到n-1维空间的一个映射子空间超平面初认识下面是n维空间下超平面的一个线性方程:其中,翻译 2020-06-10 20:53:33 · 3910 阅读 · 1 评论 -
决策树理论基础——信息和熵
什么是信息和熵?上图为例,有这样一个事件,一个体遇到一个A、B、C、D四个选项的选择题,因为每一个选项对的概率都是25%,就造成他的苦恼。上图中,当一个事件(宏观态)有多种可能情况(微观态)发生时,这种事件对个体而言具体哪种情况的不确定性叫熵。而能够消除人对这事件的不确定性的事物叫信息。熵和信息虽然在数量上是相等的,但意义相反。获取信息意味着消除不确定性(熵)。信息描述的是一个观察者确定一个宏观态是哪个微观态时需要的物理量,所以信息是相对的,比如“太阳从西边升起”这句话。对于知道的人,这翻译 2020-06-08 15:50:59 · 431 阅读 · 1 评论 -
梯度下降法原理解释和代码演示
原理梯度下降法也是一种继最小二乘法后求解最优解的技术之一,在机器学习和深度学习上的应用也十分广泛。最小二乘法对于模型并不复杂的情况来说,可以一步到位的求出最优解,这是它的优势也是劣势。因为对于模型稍微复杂点,就无法在理论和公式上给出一步到位的解。这时就需要梯度下降法来迭代地求出最优解。当然求出的也有可能是局部最优解。代码演示首先进行一维函数的代码演示:下图是一个关于x的二次函数,找出最优解,使得y最小。import numpy as npimport matplotlib.pypl翻译 2020-06-07 11:56:26 · 642 阅读 · 0 评论 -
最小二乘法原理推导和代码演示
原理推导公式太多,写到草稿纸上,下图所示:代码演示,这里生成200个0到100的数值X,且这个数值间隔相同。再通过给定权重w、偏置b、噪音noise,生成200个对应的Y值。最后通过最小二乘法计算出最适合的权重w和b来拟合这些数据。import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,100,200)noise = np.random.normal(loc=0,scale = 20,size=200)y =.翻译 2020-06-06 19:20:35 · 594 阅读 · 0 评论 -
一维随机变量及分布
重要公式回顾排列:从n个不同元素中取出m个元素排成一列的可能情况有 A(n,m种。组合:从n个不同元素中取出m个元素的所有组合的个数有C(n,m)种。相关的一些性质如下:重要概念回顾下面介绍统计学里一些基础的概念均值(平均值)均值描述的是样本集合的中间点,它告诉我们的信息是有限的。离散和连续的变量求均值的方式不同。统计学里叫平均值,线代里叫均值。方差概率论中方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。统计中的方差(样本方差)是各个翻译 2020-06-05 10:56:09 · 1821 阅读 · 0 评论 -
向量和矩阵的点乘和叉乘
向量定义:向量是由N个实数组成的一行N列或N行一列的的数组。点乘:又叫做点积、内积、数量积、标量积,向量a[a1,a2,...,an]和向量b[b1,b2b...,bn]点乘的结果是一个标量,记作a.b;几何解释:a.b = |a| |b|,故而点乘可以计算出两个向量的夹角,且向量垂直,点乘结果为零。叉乘:又叫向量积、外积、叉积,叉乘,向量a[x1,y1,z1]和向量b[x2,y2,z2]叉乘的运算结果是一个向量,并且两个向量的叉积与这两个向量组成的坐标平面垂直,记作axb;计算方式:.翻译 2020-05-24 11:14:55 · 67784 阅读 · 3 评论 -
获取两个数得最大公约数
辗转相减法流程:两个数a、b,分别判断a>b得情况和b>a的情况,对于大的一方,大的数更换为“大 = 大 - 小 ”。 只要a不等于b,就一直重复执行步骤一。代码:a,b = map(lambda x:int(x),input("请输入两个数:").split())while True: if a>b: a -= b elif a...转载 2019-04-27 22:15:11 · 753 阅读 · 0 评论