Fit

简单拟合

最小二乘法: Least Square

计算

  • Input: ,

  • predict output via the model:

    : bias or intercept, 偏差

    都是需要求解的参数,

  • Include the constant variable 1 in X: 在向量X中包含常数1:

    可令, 则, 那么. 相当于是把最开头的那个收到了参数向量里面

  • 这里的可以是标量, 可以是向量. 如果是k维向量, 那么就有是一个的参数矩阵(多元回归)

  • 在(p+1)维的输入输出空间中, 代表一个超空间. 如果中, 那么这个超空间就经过原点.

    ground-truth: , it’s gradient(梯度): 是一个指向最陡的上升方向的向量.

Tip

补充: 矩阵导数:

其中, 是一个向量, 是一个二次型系数矩阵.

残差

  • N: # observations 观测量(样本空间)
  • minimize the residual sum of squares: 向量(矩阵): 是范数, 关于的函数, 是一个抛物面.

    $

    范数: $

要找到最小值点, 需要求导数:

如果不是奇异矩阵, 那么

最近邻项: Nearest Neighbor

分类.

  • model:

  • : 最近的个元素的集合.

  • : 类别.

  • 分类依据: 计算, 与0.5(二元)去对比

回归方程:

表示前k个最近的元素。

需要极大样本量,才能够保证有均值与期望相接近。当的时候,才会有

如果当每一个样本点的维数增多的时候(即特征维度增多),所需要的N的数量会急速增加。

条件概率公式展开

期望:

损失函数:,也写作。还有一个也是损失函数。第一类损失函数比第二类的优点:第一类鲁棒性更好,面对误差或者错误标注的数据能更好的抵抗

EPE, Excepted prediction error, 描述之间的差异:

所以说,可以通过找EPE的最小值来进行寻找合适的参数,如:

回归方程:

Linear Regression

,是一个有模型预测的回归模型。这里我们假设了线性模型。

由于有了对回归模型的假设,我们对样本量的需求比kNN算法小了很多。这里的EPE为:

而根据残差平方和,

当残差平方和最小的时候,有

协方差

Covariance,,是方差加上偏差的平方。

方差

kNN

分类输出变量 的程序,其值来自。损失函数是一个的矩阵,而

  • 是错误把里的内容估计成中内容所付出的代价。

所以,我们有了一个0-1损失方程:

Cross Validation

交叉验证

把一个数据集分成份,验证的取值,那么对于每一次循环,把份中的一份座位测试集,循环次,计算

循环次之后去计算每一个的取值的平均准确度,找到准确度最大的一个

高维中的本地模型(local model)

  • 随着维度的上升,本地模型逐渐演化成广域模型(global model)
    • 如:在一个边长为1的p维的立方体中,取一个覆盖了的数据(体积),那么设小立方体的边长为.
    • 那么有:
  • 高维空间中,数据去向样本空间的边缘。
    • 假设有N个数据点,p维的空间,假设数据空间是一个单位球体()。那么中位距离(所有数据到样本空间中心点的距离的中位数)是。那么就有

Tip

对于一个p维的球体样本空间,有以下推论:

可以得出中位距离的公式

函数拟合

  1. 数据集:的数值对,在维中。有以下函数(ground-truth):
  2. 目标:找到一个对于的好的逼近。给定训练样本集

text{给定参数集合,那么对于线性模型,有}f(x)=x^T\beta$$

如:有两个轴,组成的样本集的分界线是一个圆。那么可以令

的例子:

然后利用进行拟合

最大似然估计 MLE

使用(预测值)去估计(真实值) Lamma:KL散度:

推导MLE:

由于是对的焓,所以是一个常数。考虑Monte Carlo方法抽样:

即在中抽样。当足够大,可以认为与期望是相等的。那么有:

去掉常数(因为是对求最小),有:

注意求最小,但是有个负号,所以是对这个求最大。

对于高斯分布的概率密度函数求MLE:

求最大值那么对求偏导,因为包含了两个参数,

对训练数据集,那么

注意这里省去了是因为这个不是我们需要估计的,是给定的随机变量

简单线性估计

最小二乘法

单变量的求解:

但是求解单变量的时候,尽量是从入手,为了以后求解正则化项作保障。正则化项不能包含,因为只是斜率,与自变量没有任何关系,惩罚这个项没有任何意义。

对于多变量,

需要满足:是可逆的。

其中,是一个投影矩阵。相当于是从空间向空间的投影

对于多输出:

是迹,是对角线上的元素相加

关于奇异性

假设有一个矩阵,维,训练样本集有个数据输入样本集是一个的矩阵

要想是一个非奇异的矩阵,需要满足,即满秩的矩阵

矩阵的描述奇异性
一定是奇异矩阵
方阵需要有
需要有

非满秩:有多余信息,维度高,样本少解决方案:1. 特征选择(降维,去掉某些不必要的特征)2. 正则化(添加一个正则化项使

一定是满秩的:,因为是一个每个项都是大于等于0的对角矩阵,那么加上一个大于0的单位矩阵一定是一个满秩的对角矩阵

岭回归 Ridge Regression

注意正则化不包含截距

另一种表示方式:

与最小二乘法对比:

其中,进行SVD分解之后的结果是属于属于

有效自由度(表示复杂度的一种方法):

假设训练样本集的输入是一个维的:

Lasso回归

是一种稀疏的回归方式

我们希望对不为零的项进行惩罚,因为只有才会导致模型变得复杂。所以需要使用“零范数”用作惩罚项。(岭回归用的是二范数座位惩罚项)

使用零范数的时候称为“最佳子集回归”,best subset regression。

但是零范数是一个非凸曲线,无法使用求导来进行分析最小值。包括所有范数()都是非凸的。那么距离零范数最近的一个最小的凸曲线的范数是一范数。(注意,在一范数的顶点位置还是不能求导,因为不连续)。所以Lasso回归使用了一范数

与最小二乘法对比

MAP

简单分类器

线性分类器

利用不同类别赋值不同,把每个类别赋值作为输出(),进行线性回归,找到的那条线

拟合函数需要满足

对x的分类:,相当于是寻找可能性最大的那个类别,或者等效写作:

如果是简单的线性回归去拟合,可能会导致掩盖掉某些类。具体情况查看L5-p14

所以需要把线性回归拓展到非线性空间:加上一些二次项或者更高次的项然后再进行回归,最后把回归的结果映射回线性空间,得到一个非线性的分界线

LDA

使用基于贝叶斯的后验概率

边界(概率相等的地方):

对于高维高斯分布的LDA:

我们做一个假设:对于所有的,即任意的都相等。这里的分类的方差(

G
0.20.31
0.80.73
0.40.62
0.60.42
0.30.21
0.70.83

定义线性判别函数为

点,哪一个类的大,这个点就是哪一类的。当的时候,说明这个点事类和类的边界线上

QDA

相对LDA,少了一个假设:

所以特征表达更好,但是计算的特别多。

LDA计算个参数,只需要估计

QDA计算个参数,需要估计

判别式:

LDA 正则化与降维

RLDA 正则化LDA

Diagonal LDA 对角LDA

低方差(高复杂度),高偏差高方差,低偏差(高准确度)
Diag LDARLDALDARQDAQDA

Fisher Formulation of Discriminant Analysis

其中,

目的:白化(球化),使协方差矩阵变成单位矩阵。目的:降低两个类别之间的重叠区域。

高级分类器

Boosting

通过弱分类器投票决定一个强分类器 Input:

这些点的权重,是每一个分类器在投票里面所占权重 Run on producing

计算流程:

训练次数为

SVM

间隔

求解: 应用拉格朗日乘数法:

上面的可以使用核函数进行升维

然后使用SMO (Sequential Minimal Optimization)求解

SMO相关简介

详情参见KKT Condition

半监督SVM

根据有标签的点进行分类,计算得出一个模型,然后根据这个模型对无标签的样本点分类,然后对分好类的样本点再一次计算模型,重复迭代。

聚类

假设是多分布的混合模型,处于一个维的变量空间,使用离散的随机变量指示是哪一个分布正在被使用。所以,其中是一个隐变量,属于某个高斯分布的先验。贝叶斯图像如图:

graph TB
Z-->X1
Z-->X2
Z-->...
Z-->XN
  1. 假设每个数据点都是维的数据,即,假设之间相互独立(高斯分布的朴素贝叶斯假设)

  2. 根据先验的Gaussian分布进行随机采样(假设只有两个类,并且,假设认为所有的方差相同)

  3. 根据随机生成数据点

    假设已经知道了,还需要知道

    观测值:,隐变量:

使用EM算法进行估计:

Define

E-step:

M-step:

使用贝叶斯网络进行优化

最小化

其中,边缘概率密度分布指的是在图中的直接父节点。是焓。

给定,然后根据最大化的思路去建树,根据这个树进行优化

GMM

协同训练

假设有一个样本多个特征,其中一个特征的分类置信度很高,那么认为这个样本其他的特征都是这一个分类的,然后根据这个分类进行再训练迭代

缺点:容易把错误放大

假设只有两个视角(两个类别的特征,训练分别是

其中是损失函数,一般是距离或者0/1损失,之间的差距,可以自定义

Similarity Based Regularity

找到距离最近的几个点,然后把自己的类别传递过去

如:根据相似度建图,取相似度小于等于的之间连一条边,然后根据已经有的样本标签传递

相似度可以使用Gaussian Kernel来计算:,其中是两个样本点的特征向量

可以把相似度组成一个矩阵(对称的):,然后只需要进行最小化目标函数:

其中,是标签组成的一个矩阵,D是W的对角矩阵,现在令。这种方法叫做Spectral Clustering

然后因为有一些标签是已知信息,所以要加上Loss:

,

最终的类似一个岭回归,当时还存在local的信息(

GMM

Generative Model中的高斯混合模型(Gaussian Mixture Model)

变量:,其中是分类的先验概率,是高斯的均值,是高斯的协方差矩阵

联合概率密度分布:

分类:

kernel函数

找到内积才能使用(的矩阵,至少结果需要是一个的矩阵)

常用kernel:

直接对内积使用核函数,可以将原本是时间复杂度极大的矩阵乘法降低为

核函数可以相加可以相乘,所以可以根据这点直接构建一个新的核函数(称为多核学习)