Categories
读书有感

统计学习精要(The Elements of Statistical Learning)课堂笔记(二十五):降维和PCA

 降维

降维完全属于unsupervised learning了,即给定数据集,我们希望降到q维的。从这个角度来讲,降维和聚类还是有相通之处的,都是对于特征的提取。只是一个从行的角度出发,一个对列操作的感觉。

PCA(主成分分析,Principle Component Analysis)

个人觉得这也是起名字起的比较好的模型之一...乍一听起来很有用的感觉 -_-||

1. 求,使得,且最大。

PCA

直觉上来讲,就是想寻找一个主方向。

这样,求解问题为:

。所以我们只需要求一阶导数即可。

设A为对称矩阵,则存在正交阵使得,其中为A的特征值矩阵,故(列向量为特征向量)。不失一般性,我们可以排序使得(从大到小排序)。

最大特征值:

同时为x的相关矩阵,,从而

2. 找到(q维的子空间)

投影到该q维空间,这样,且最小。

A矩阵的范数:
tr表示矩阵的迹(对角线元素和)。

则上述问题等价于,求使得最小。

最小。

即使得最大(注意没有负号)。

称为数据的相似矩阵

均为对称阵,且两个阵有相同的特征值。记为A的秩,AA'的特征向量,A'A的特征向量,则。做奇异值分解,则.

由此,求得的和前述结果等价。

回到PCA。如果降维后需要重构,则,解即可。

3. 对偶PCA。如果即数据非常高的时候,可以转置后再做。

4. KPCA (kernel)PCA也可以先用核函数,即实现非线性的降维。需要注意,降维的过程需要保持可逆。

---------------

PS. PCA不适合解决overfitting的问题。如果需要解决,加regularization项。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(九)

眼瞅着这学期也快接近尾声了,也在讲我越来越不熟悉的东西了...

核平滑与局部方法

1. 核平滑器

(1) K-NN(K近邻)

KNN的思想已经说过很多遍了,大致就是找点x的k个近邻,然后取其平均值作为x点y的预测值。不过这里我们就在想了,可不可以加权呀~于是从最简单的,我们给他按距离算个加权平均:,其中代表权重,离x点越近越大,越远越小。这样听起来更make sense一点嘛~近朱者赤,近墨者黑。

(2) 单峰函数

顾名思义,就是长得像一个山峰的函数,比如我们最经典的正态钟型函数,或者翻过来的二次抛物线函数等等。

(3) 权重(按距离)

我们定义权重,再进一步归一化:

多维的情况下,写成矩阵形式就是,其中A为正定对角阵,然后我们就可以加权了。

2. 局部方法

(1) 一般概念

我们有数据集,然后定义函数族。再定义损失函数, 我们的目标就是最小化

相应的引入了加权的概念之后,我们就可以定义加权损失函数:,然后对于每个x做优化,寻找使其最小化的

(2) 具体例子

(i) 局部回归: ,则损失函数为,其中代表已经归一化的权重。

在线性的情况下,我们有,有点类似于我们常见的加权最小二乘法。这里的思想也是,在x点附近的点权重会比较大,离x远的权重则比较小,整体感觉就是在x点附近做了一个回归分析。

(ii) 局部似然:和局部回归蛮像的,只是把损失函数换成(对数)似然函数,即从最大化 到现在的最大化加权似然函数

3. 密度估计与分类

(1) 密度与分类: 我们有x和观测结果G的联合分布:,其中为先验的结果分布,在有K类结果的情况下,写成。这样,也可以写开为 其中

反过来,后验概率,所以我们有贝叶斯分类器

(2) 密度估计

为了使用贝叶斯分类器,我们需要先对密度进行估计。

(i) 直方图: 最简单的就是根据直方图来估计密度,这个没什么好说的...

(ii) 核估计方法(Parzen):Parzen提出的核密度估计为,该估计当在减小的时候,收敛于

4. 核作为基函数

密度函数,然后定义函数族,则其中我iyigexianxingde参数,为指定的函数类,亦为函数参数。这样的话我们有三个函数的参数,指定某一个便可以简化函数形式。不过这里的问题是,没有很好的算法来求解优化问题。比如对于正态分布,我们以写出来,然后的求解就比较复杂了。

上面的两个是非参数方法,下面说一些参数方法。

(iii) 混合模型(GMM, Gauss Mixed Model)

,其中参数有,然后可以利用最大似然准则,最大化,具体算法可用EM,下节课详述。

-----稍稍跑题------

GMM,我印象中它怎么是 Generalized Moment Method, 广义矩估计呢?果然是被计量经济学祸害太深了...

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(八)

平滑splines

有数据集,然后定义目标函数,记为(1)

式。然后我们有如下结论:使(1)最小化的解一定是分段三次多项式。

证明如下。

为函数族上的分段三次多项式(splines),且在首尾两段上是一次多项式,那么他一定有的自由度。

,则当时,有

(2) 我们设也是(1)式的解,则下面证明一定能找到使得目标函数比小,则,

.

(3)记,则

(4) 下面我们证明,(两者内积为0),即

所以得到

(5)有了上述结论后,我们有,然后有,所以对于所有的g,我们都有其二阶导数的范数小于f的二阶导数的范数,故在(1)式中代入g总比代入f大(或者相等)。这样我们就把一个无限维的最优化问题变为了有限维。

子波分析

1. 函数的平移与缩放

平移:

缩放:

组合起来就是。由此,对于每个,我们可以定义一个函数族,写成矩阵形式就是

2. Hoar函数

(1)定义:

(2)Hoar函数的平滑与缩放。定义Hoar函数族为,

。这样我们每个为一组(胖瘦一样)。

定理1(正交):平方可积函数的一个正交基,即对于任意的,有

定理2(增长):随着d的增加,张成的闭子空间逐渐增大,且。这样,d比较小的函数一定能用d比较大的函数(正交基)来表示,比如。直观的理解就是,d越大,分辨率越高。

定理3(完备):

(3)定义,使,或者

(4)定义,然后

定理4:函数族,,则亦为完备基,且,如果。也就是说,之间的空间随着d的增加,彼此正交,且所有的叠起来之后亦为完备空间。

如此,我们称为子波(mother)而为father函数。注意,这里Hoar函数非连续。

在更一般的场合,我们寻找为father函数,然后定义,满足(正交),且(增长),(完备)。

再寻找mother函数满足(同层次内正交)、(相邻层次正交补)和完备。

这样的到底存不存在呢?实证结论是存在,而且很多,不过坏消息是他们的形式都不算简单。

spline和子波分析

spline和子波分析都提供了一组线性基底,其线性组合可以定义函数类。由此,我们可以定义广义线性模型的函数族,为统计学习模型的函数族做约束。

Categories
读书有感

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(七)

例行的废话。刚刚看了一下Google Analytics里面的统计,那篇七天搞定SAS果然不负众望的摘得了(单篇博文)点击量桂冠。意外的是居然有那么多人会点击到“关于我”这个页面...呃,对我这么好奇么?

2 /learning-sas-in-7-days-1/
3 /coursera上的r语言课程/
4 /r会议小记/
5 /使用lyxxetex编译中文tex和输出中文pdf/
6 /中文文本聚类小尝试(text-clustering-in-r)/
7 /me/
8 /?统计学习精要the-elements-of-statistical-learning?课堂笔记(一)/
9 /快速将word的doc文件转为latex!/
10 /?统计学习精要the-elements-of-statistical-learning?课堂笔记(三)/

不过他的后续就比较悲催了,点击量寥寥。然后还不出意外的,weibo超越google成为了流量来源第一:

1 weibo.com / referral
2 (direct) / (none)
3 baidu / organic
4 google / organic
5 rss / rss
6 r-ke.info / referral
7 cloudlychen.net / referral
8 h2w.iask.cn / referral
9 so.360.cn / referral
10 yihui.name / referral

果然最近墙发威比较厉害...google啊google...

另外,出乎意料的是一些旧文反而受欢迎,哎~还好看到《统计学习精要(The Elements of Statistical Learning)》课堂笔记系列一直有点击,也算是这一系列写的比较值得吧。今天继续。

----------------笔记开始-----------------

貌似是第五章,不过老师一直在讲一些非常基础的数学预备工具:基展开与正则化,其中用到泛函概念若干。我不知道该开心呢,还是不开心呢,还是开心呢,毕竟泛函学过,毕竟泛函忘得也差不多了...

1. 预备知识

在P维欧氏空间内,我们定义两个运算:加法(x+y)和数乘(),然后定义一下函数空间:上的平方可积函数,同样的定义加法和数乘:f+g和).

接下来还有若干概念...呜呼:

  • 线性组合:
  • 线性独立
  • 线性子空间:我们可以定义线性子空间, , 有.
  • 维数

这些概念连上运算加法和数乘一起,构成线性空间。进一步的,我们可以定义内积空间:

  • 内积:(离散)或连续
  • 之后的正交就很容易定义了:或者
  • 还可以定义正交基...
  • 还有正交子空间:
  • 正交补: , 使得,比如最简单的二维空间里面,X轴和Y轴...
  • 范数:

有了范数以后,我们就可以进一步的定义极限:如果 , 则 ;或者连续的,

然后就是闭子空间的概念了:如果 ,且 ,则必有 ,即极限点都在空间内。注,在有限维空间内,只有空集和全集既开又闭。

还有完备基...总之大致的就是一步步的:定义内积 ->; 内积空间 ->; 存在可数的完备正交基 ->; Hilbert空间(有限维完备空间)

2.B-splines(样条)

2.1 定义

B-splines更多的是一种用离散逼近连续的感觉...好吧我承认我是完全的没有接触过这个东西,扫盲中...

首先,我们有一个闭区间[a,b],然后有个点聚集在其中,且依次增大。然后我们就可以定义一个函数集合: ,然后对于d=0 ,定义分段函数 ,然后就可以递归的定义

举个例子呢,就有. 这样下去,有:

  • d=0,0阶的时候,只有一段函数上有非零值;
  • d=1,1阶的时候,有两段函数有非零值;
  • d=2,2阶的时候,有三段函数有非零值...

2.2 性质

  • 性质一: 是分段的d次多项式;
  • 性质二:局部性:, 当 或者
  • 性质三:光滑:是d-1阶光滑的多项式,即d-1阶导数都等于0;
  • 性质四:如果某一函数满足性质三,则必然和只相差一个常数因子。

2.3 d阶B-splines

我们可以用B-splines来逼近任意一个函数,则有,从这个角度看B-splines有点基底的味道。从分段多项式,到光滑的分段多项式,再到d-1阶光滑的d次多项式,我们就有了 d阶B-splines...

------笔记结束---------

讲了这么多,我一直在猜这些到底是用来干什么的呢...不知道接下来的哪些内容用到了完备内积空间、基展开和线性逼近呢?