01 | 从神经元说起:数学篇

目录

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。

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


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pengsen Ma

太谢谢了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值