目录

1.线性代数部分知识点回顾

2. 矩阵及其运算

3.范数:

4.信息论:


1.线性代数部分知识点回顾

1.标量:

就是一个单独的数,例如a=10

2. 向量及其运算
一个向量表示一组有序排列,并可以通过索引获取其中对应位置的数值。一般情况下,我们会选择 NumPy 对向量进行表示和计算。NumPy 是 Python 的一个扩展程序库,能够很好地支持数组、向量、矩阵的运算。

2.1 向量和标量的计算

标量是一个数字,所以标量在跟向量进行加减乘除的时候,实际上与向量中的每一个数字都同步进行了计算。代码如下:

import numpy as np
a=np.array([1, 2, 3, 4])
print(a * 4)
# Get array([4, 8, 12, 16])
print(a + 4)
# Get array([5, 6, 7, 8])

2.2 向量之间的加减操作

2.3 向量之间的乘法操作
1.点乘(内积),向量的内积、数量积
两个向量执行点乘运算,就是对这两个向量对应位一一相乘之后求和的操作,点乘的结果是一个标量
向量的点乘要求两个向量的长度一致

2.叉乘(外积),向量的外积、向量积:叉乘的运算结果是一个向量而不是一个标量

3.对应项相乘:两个向量对应的位置相乘,得到的结果还是原来的形状

2. 矩阵及其运算

介绍完标量和向量之后,我们再来看矩阵。

矩阵一般是一个 m 行 n 列的矩形阵列,一般的表达方式如下图所示:

矩阵中每个元素都有 m 和 n 两个下标,分别代表行和列的位置,所以矩阵也可以通过索引直接定位元素的值,例如 X[2][1]。不难发现,m=1 的时候,矩阵就成了刚才提到的向量。

3.1矩阵的加减运算:

3.2矩阵的乘法:
第一种情况:两个形状一样的矩阵的对应位置分别相乘

第二种情况:矩阵乘法

3.范数:

是一种距离的表示(曼哈顿距离),或者说向量的长度,常见的范数有 L0 范数、L1 范数和 L2 范数


L0范数
L0 范数指这个向量中非 0 元素的个数。我们可以通过 L0 范数减少非 0 元素的个数,从而减少参与决策的特征,减少参数。这样一来,自然模型就运算得更快,模型的体积也更小了。

L1范数
指的是向量中所有元素的绝对值之和,它也被称为稀疏规则算子

L0 范数和 L1 范数都能实现权值稀疏。但 L1 范数是 L0 范数的最优凸近似,它比 L0 范数有着更好的优化求解的特性,所以被更广泛地使用。

为什么要实现权值稀疏呢?
在设计模型的过程中,我们有时会使用到大量的特征(例如在推荐系统中,特征维度都是上亿的),每个特征都会从不同的角度体现问题的不同信息。这些特征经过某些方式的组合、变换、映射之后,会按照不同的权重得到最终的结果。

但有时候,有一部分特征对于最后结果的贡献非常小,甚至近乎零。这些用处不大的特征,我们希望能够将其舍弃,以更方便模型做出决策。这就是权值稀疏的意义。

L2范数
也叫它“岭回归”和“权值衰减”,L2 范数是向量中所有元素的平方和的平方根

L2也代表一种距离,即欧式距离
L2的作用防止过拟合

你在考试前一天临时抱佛脚,把去年的考试题、老师画的知识点,背得滚瓜烂熟。第二天考试的时候,卷子发下来,第一页的题都是你前一天背过的。你很开心,三下五除二就写好了,然后把卷子翻到了第二页。结果到了第二页你就傻眼了,都是你没背过的知识点,完全不知道它们在问什么,最后你挂科了,来年再见。

咱们训练模型时,一般会有训练数据和测试数据。有时模型在训练数据上(第一天背的知识点很好地运用在第一页)表现非常好,但一到测试数据上(第二页),效果就会急剧下降。用通俗的话来讲就是模型的应试能力很强,实际应用表现就很差。这种情况就是过拟合【与只会做题,不会实践类似】。

那 L2 是如何解决过拟合的呢?

首先,参数值小的模型一般会比较简单,它能适应不同的数据集,也能在一定程度上避免过拟合。试想一下,如果我们有一个线性回归方程,其中某个参数非常大,那这个参数稍微变化一下,最终结果的区别就会很大,模型的适应性也会下降。所以,我们可以得出一个结论:越小的参数,模型就越简单,越简单的模型,就越不容易过拟合

我们再回头看公式,可以看到,L2 实际上就是让向量中所有元素的平方和再开方。那么,如果我们要避免模型过拟合,就要使 L2 最小,这意味着向量中的每一个元素的平方都要尽量小,且接近于 0。和 L0 和 L1 不一样,L2 不会让元素等于 0。

由此,L1 和 L2 范数的区别就很显然了。

L1 会趋向于产生少量的特征,而其他的特征都是 0,用于特征选择和稀疏;
L2 会选择更多的特征,但这些特征都会接近于 0,用于减少过拟合。

偏导数
其他变量不变,只有某一个变量发生变化这种情况下的求导我们称之为“偏导数”


梯度:函数所有偏导数构成的函数

梯度是一个向量,梯度向量的方向即为函数值增长最快的方向

4.信息论:

嫡,也称信息嫡
假定我们有一枚标准的硬币
每次投掷得到正面和反面的概率都是1/2,不确定性非常大
假如我们在硬币上做点手脚,在正面加点重量,那么正面朝上的概率就比原来大了
这种正反面的不确定性就减少了


p(xi)就是各个可能事件发生的概率,嫡越大,不确定性越大

KL散度,也称为相对嫡

p(x)为真实事件的概率分布
q(x)为理论拟合出来的该事件的概率分布

因此该公式字面上的含义就是真实事件的信息熵,同理论拟合的事件的信息量与真实事件的概率的乘积的差的累加。

在模型优化、数据分析和统计等场合下,我们就可以使用 KL 散度衡量我们选择的近似分布与数据原分布有多大差异。当拟合事件和真实事件一致的时候 KL 散度就成了 0,不一样的时候就大于 0。

交叉嫡
交叉嫡代表用拟合分布来表示实际分布的困难程度

01 | 从神经元说起:数学篇相关推荐

  1. 再寄小读者之数学篇[2014.01.01-2014.06.30]

    [再寄小读者之数学篇](2014-06-28 证明级数几乎处处收敛) 设 $f\in L(\bbR)$, 试证: $$\bex \vsm{n}f(n^2x) \eex$$ 在 $\bbR$ 上几乎处处 ...

  2. 【数学篇】论从一题四解到分式与整式

    [数学篇]论从一题四解到分式与整式 Like a sunrise ,getting better and better. 像日出一样,愈来愈好,所有的一切. ----题记 目录 [数学篇]论从一题四解 ...

  3. matlab用regress方法求ln函数_数学篇|高中数学48条秒杀型公式与方法,一定要掌握!...

    「 致于学教育 」 高中数学48条秒杀型公式 1.适用条件:[直线过焦点],必有ecosA=(x-1)/(x+1),其中A为直线与焦点所在轴夹角,是锐角.x为分离比,必须大于1. 注上述公式适合一切圆 ...

  4. 《北大学科》第一季:数学篇

    1913年,北京大学首开中国数学高等教育先河.蔡元培校长曾说:"大学宗旨凡治哲学文学应用科学者,都要从纯粹科学入手,治纯粹科学者,都要从数学入手.所以各系秩序,列数学系为第一系." ...

  5. C/C++基础讲解(二十六)之数值计算与趣味数学篇(打鱼还是晒网与怎样存钱以获取最大利息)

    C/C++基础讲解(二十六)之数值计算与趣味数学篇(打鱼还是晒网与怎样存钱以获取最大利息) 程序之美 前言 很多时候,特别是刚步入大学的学子们,对于刚刚开展的计算机课程基本上是一团迷雾,想要弄明白其中 ...

  6. 《(数学篇)》 复数运算

    [译文连载]<(数学篇)>--第六章 复数运算 虚数有一个直观化的解释:它把数字"旋转",就像负数把数字做了"镜像"一样.这种深刻的见解使得我们理解 ...

  7. 再寄小读者之数学篇[2014.07.01-2014.12.31]

    [再寄小读者之数学篇](2014-12-24 乘积型不等式) [再寄小读者之数学篇](2014-12-04 $\left(1+\frac{1}{x}\right)^x>\frac{2ex}{2x ...

  8. 3D Vision、SLAM求职宝典 | 数学篇(B)

    B  数学篇   涉及概率,矩阵,数值计算,优化等. 又见数学,过来过去,不是数学就是编程,要想在SLAM领域做出点好的贡献,两者一个比一个难,有时候编程比数学更难--- 目录 1. 一层楼共有n级台 ...

  9. C/C++基础讲解(二十九)之数值计算与趣味数学篇(百钱百鸡问题、爱因斯坦的数学题、三色球问题与马克思手稿中的数学题)

    C/C++基础讲解(二十九)之数值计算与趣味数学篇(百钱百鸡问题.爱因斯坦的数学题.三色球问题与马克思手稿中的数学题) 程序之美 前言 很多时候,特别是刚步入大学的学子们,对于刚刚开展的计算机课程基本 ...

最新文章

  1. 我收藏的谷歌和阿里大佬的刷题笔记
  2. apache php mysql是长连接吗_php关于mysql长连接问题
  3. windows启动管理器_win7系统任务管理器的五种打开方式,很实用,学习一下
  4. fun python_Python(一)
  5. win10 uwp 打包第三方字体到应用
  6. 初始化Dictionarystring, object赋值
  7. 实验四 图的实现与应用
  8. 用dotnet自带的mail类发邮件出现的问题
  9. day5 模拟用户登录
  10. Spring boot 2.3优雅下线,距离生产还有多远?
  11. jQuery版Ajax的使用
  12. jquery插件整理篇(九)数据验证类
  13. 微软Windows 10警告用户不要安装下载CCleaner,认为CCleaner是潜在危险软件(2020激活码序列号秘钥)
  14. 深度学习算法-YOLO
  15. 怎样做小游戏挖金子(VC,源码4)
  16. 动物识别论文整理——一种基于生物特征的鱼类分类模型
  17. 用Python实现一个软件自动升级系统
  18. 纪念小企鹅──fcitx
  19. 发布宅男神器:视频直播app for Android ----- 万紫千红
  20. broken pipe错误

热门文章

  1. Groovy全攻略--嵌入篇
  2. v$sql、v$sqlarea 、v$sqltext
  3. maven处理和java平级的资源文件
  4. 使用自定义annotation接口进行aspectj动态缓存
  5. Linux网络设置(第二版) --互联网寻址过程
  6. 6个精心整理的资源网站,送给正在努力的你
  7. Java8 新特性 Optional
  8. ajax利用FormData、FileReader实现多文件上传php获取
  9. mui初级入门教程(六)— 模板页面实现原理及多端适配指南
  10. 国家哀悼日将网站全部变成灰色的代码