深度学习基础数学知识整理

原创 2017年07月17日 15:52:12

线性代数部分

1.1 基础概念

标量(scalar), 向量(vector), 矩阵(matrices), 张量(tensor)

1.2 矩阵相关:

转置(transpose), 矩阵乘法, 单位矩阵, 逆矩阵

1.3 线性相关

线性方程: Xb⃗ =y⃗  ,

线性组合: X 中各个列向量乘以对应的系数之和: ibix(i) ,

生成空间: X中的原始向量线性组合后能抵达的点的集合. 确定上述方程是否有解相当于确定向量y⃗  是否在X 的列向量的生成子空间中.

矩阵X可逆时解为b⃗ =X1y , 然而矩阵可逆是一个十分苛刻的条件, X 的列空间构成整个m维欧式空间Rm, 若Xb⃗ =y⃗ 对于每一个y值最多有一个解, 则X矩阵至多有m个列向量.

因此, 矩阵X只有是方阵且所有列向量都是线性无关的时候才满足要求, 若列向量线性相关, 则成该方阵X是奇异的.

这里引出了线性模型的基本模型: Xb⃗ =y⃗  .

X可逆时 ,我们可以直接对两边求逆, 得到线性模型的唯一解b⃗ =X1y , 然而,样本特征组成的矩阵X往往是不可逆的, 即X往往不是方阵, 或者是奇异的矩阵.

正因为在现实世界里, 直接对矩阵求逆来得到唯一解 b⃗  几乎是不可能的, 所以我们才会退而求其次, 用最小化误差来逼近唯一解, 这叫做松弛求解.

求最小化误差的一般方法是求残差的平方和最小化, 这也就是所谓的线性最小二乘法.

1.4 范数(norm)

在机器学习中, 通常用范数来衡量一个矩阵的大小, L^p范数公式: ||x||=(i|xi|p)1p

范数是将向量映射到非负值的函数, 简单来讲, 向量x⃗ 的范数是原点到x⃗ 的距离. 这里之所以介绍范数, 是因为它涉及到机器学习中非常重要的正则化技术.

p = 2时, L^2称为欧几里得范数(Euclidean norm), 表示原点到向量x⃗ 的欧氏距离, L^2范数通常简写为||x|| , 它非常频繁地出现在机器学习中. 此外, 平方L^2 范数(||x||)2也经常用来衡量向量的大小, 可以简单地用(x⃗ )x⃗ 计算.

L^2范数: ||x||=(i|xi|2)12, 平方L^2范数:||x||=i|xi|2

平方L^2 范数对x⃗ 各元素导数只和对应元素相关, 而L^2范数对个元素的导数和整个向量相关, 因此平方L^2 范数计算更方便.

有时候平方L^2范数在原点附近增长缓慢, 在某些机器学习业务场景下, 区分元素值是否非零很重要, 此时更倾向于使用L^1范数:||x||1=i|xi|, L1范数在各个位置斜率相同, 且数学形式较简单, 每当x⃗ 中某元素从0增加了ϵ 时, 对应L1范数增加ϵ.

在机器学习中, L2L1范数分别对应L2L1正则化, 详情参考线性模型中的岭回归(Ridge Regression)和套索回归(Lasso).

1.5 伪逆(Moore-Penrose)

非方阵方程,其逆矩阵没有意义. 假设要求解线性方程 A⃗ x=y⃗ , 等式两边左乘左逆B⃗ 后: x=B⃗ y.
是否存在唯一映射, 将A⃗ 映射到B⃗ 取决于问题形式: 1. 若矩阵A行数大于列数, 则无解; 2. 若矩阵A行数小于列数, 则有多个解.
伪逆可以解决上述问题, 矩阵A的伪逆定义为: lima0(ATA⃗ +αI⃗ )1AT, 违逆计算的简化公式为: A+=V⃗ D+UT, 其中,
矩阵U, D, V是矩阵A的奇异值分解后的矩阵, 对角矩阵D的伪逆D+是非零元素取倒数后再转置得到的.

  1. 矩阵A的列数多于行数时, 可能有多个解. 伪逆求解线性方程是众多解法中的一种, 即: x⃗ =A+y⃗ 是所有可行解中欧几里得距离最小的一个
  2. 矩阵A列数小于行数是, 可能没有解. 伪逆求解得到的x是A⃗ xy⃗ 欧几里得距离||A⃗ xy⃗ ||22最小的解.

这里又回到了求解线性问题的一般思路上: 线性最小二乘法

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

数学常识汇总

数学建模 统计 统计图 统计方法 参数估计 非参数估计 非参数估计-指标 假设检验 矩阵数学建模【知乎】如何入门参与数学建模 【知乎】数学建模最重要的是思想方法么?统计统计图箱形图(Box-plot...

搞深度学习需掌握的基础数学知识

转载请注明出处:乐投网-搞深度学习需掌握的基础数学知识        IT 互联网行业有个有趣现象,玩资本的人、玩产品的人、玩技术的人都能很好的在这个行业找到自己的位置并取得成功,而且可...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

深度学习涉及的数学知识

向量 在线性代数中,标量(Scalar)是一个实数,而向量(Vector)是指n 个实数组成的有序数组,称为n 维向量。如果没有特别说明,一个n 维向量一般表示列向量,即大小为n *1 的矩阵。  ...

3D游戏部分基础数学知识整理笔记1

详细内容参看《3D游戏编程大师技巧》或更专业的数学书籍。1.很多图形算法都以这样的方式进行优化:在第一象限中解决问题,根据对称性将解决方案反射到其他象限。2.2D笛卡尔坐标(Cartesian Coo...

DirectX学习笔记--3D基本数学知识整理

最近在看《Direct9.0 3D游戏编程基础》以及浅墨大神的《windows游戏编程从零开始》两本书,希望能通过博客来记录一下自己的学习历程,整理相关的知识,方便查阅。 一.数学知识整理 ...

数据结构基础数学知识

1.指数

OpenGL_01_基础和数学知识(上)

/* 从前学线代的时候没认真,现在回过头再看看吧。 学习书籍的名字:OpenGL图形开发快速入门。机械工业出版社,杨柏林编写。 */ 一.OpenGL全称为:OpenGraphics Librar...

cocos2d-x3.0基础数学知识(为防伸手党,复制粘贴,以图片为主,还是一字一码的敲下吧^_^!)

1、2D笛卡尔坐标系 首先创建一个正方形,然后又创建一个白点,添加正方形到场景中,添加白点到正方形里面,设置正方形位置和白点位置(相对于正方形的,本地坐标系)。然后设置正方形大小和锚点,使整个...

深度学习的数学基础要求

随着人工智能加速进入中国,特别是以深度学习为代表的算法,更是碾压人类的智慧,人类又在一个围棋领域失守,这是继象棋失守之后的大突破。下一个领域会是在什么地方呢?据说在皮肤癌症方面判断,已经超越了相关专业...

一文了解线性代数--深度学习入门之数学基础

一文了解线性代数–深度学习入门之数学基础本文将简单且形象的对线性代数进行介绍,与传统的线性代数教材不同,我不想聚焦于具体的数学命题和技术,而是想探究线性代数的现实意义与哲学本质。本文主要记录我为了深入...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)