Jordan Lecture Note-5: Kernels
我们首先来回顾kernel函数的定义:一个函数$K(x,y)$为kernel函数当且仅当对$\forall g, \int K(x,y)g(x)g(y)dxdy\geq 0$成立。另外,根据Mercer's theorem,存在一个映射$\Phi$使$K(x,y)=\langle \Phi(x),\Phi(y)\rangle$,并且对任意有限的点,kernel矩阵是半正定的。
一、核函数的封闭性
Hadamard product:
$$\mathbf{A}\circ\mathbf{B}=\left[\begin{array}&a_{11}b_{11}&a_{12}b_{12}&\cdots&a_{1n}b_{1n}\\\vdots\\a_{m1}b_{m1}&a_{m2}b_{m2}&\cdots&a_{mn}b_{mn}\end{array}\right]$$ Kronecked product:
$$\mathbf{A}\otimes\mathbf{B}=\left[\begin{array}&a_{11}\mathbf{B}&a_{12}\mathbf{B}&\cdots&a_{1n}\mathbf{B}\\\vdots\\a_{m1}\mathbf{B}&a_{m2}\mathbf{B}&\cdots&a_{mn}\mathbf{B}\end{array}\right]$$
若$K_1(x,y),K_2(x,y)$为kernel函数,则以下式子仍为kernel函数。
- $K_1(x,y)+K_2(x,y)$
- $aK_1(x,y),\quad (a>0)$
- $K_1(x,y)K_2(x,y)$
- $f(x)f(y)\quad \forall f$
- $x^\prime\mathbf{A}y,\quad \text{for positive semidefinite }\mathbf{A}$
- $f(x)K_1(x,y)f(y), \forall f$
- $q(K_1(x,y))$, 其中$q$是非负系数的多项式
- $exp\{K_1(x,y)\}$
二、例子
令$K(x,y)=(\langle x,y\rangle+C)^d=\sum_{s=0}^d\binom{d}{s}C^s\langle x,y\rangle^{d-s},(C\geq 0)$
这个函数可以看成单项为$\langle x,y\rangle^{d-s}$的一个多项式,系数为$\binom{d}{s}C^s$,所以它是个核函数。当$C=0$时,$(\langle x,y\rangle)^r=(x_1y_1+x_2y_2+\cdots+x_my_m)^r$。
可以把上式看成一个单项为$x_1^{i_1}y_1^{i_1}x_2^{i_2}y_2^{i_2}\cdots x_m^{i_m}y_m^{i_m}$所组成的多项式,其中$i_1+i_2+\cdots+i_m=r,i_1,i_2,\cdots,i_m\geq 0$。
令$\Phi(x)\triangleq\left[\begin{array}&\vdots\\x_1^{i_1}x_2^{i_2}\cdots x_m^{i_m}\\\vdots\end{array}\right]$,则$(\langle x,y\rangle)^r=\langle\Phi(x),\Phi(y)\rangle=K(x,y)$,可以证明上式的映射$\Phi(x)$为$\binom{M+r-1}{r}$维。
证明:(重复排列的证明)
命题等价于从$1,2,\cdots,m$中选出$r$个数的重复排列。设选出的数为$a_1,a_2,\cdots,a_r$,其中令$a_1\leq a_2\leq\cdots\leq a_r$。命题等价于求满足上述不等式$a_1,a_2,\cdots,a_r$的组合个数。构造$b_1=a_1,b_2=a_2+1,\cdots,b_i=a_i+(i-1),\cdots,b_r=a_r+(r-1)$,其中$b_1<b_2<\cdots<b_r$且$b_i$与$a_i$对应,所以命题又等价于求$b_i$的组合数,而$b_i$取值于$1\sim (n+m-1)$,故$b_i$的组合数为$\binom{n+m-1}{m}$。
从上述可以看出映射后的空间维数是非常大的,而引入核函数使我们只需要利用核函数进行计算,从而可以省去中间的映射过程。
高斯核函数:$K(x,y)=exp\{-\frac{1}{2}\|x-y\|^2\}$,as the pointwise limit of polynomials。高斯核函数对应的映射为无限维。
Pointwise convergence:假定$\{f_n\}$是一个有相同定义域和上域的函数序列,$\{f_n\}$逐点收敛于$f$,记$\lim_{n\to\infty}f_n=f$,当且仅当$\lim_{n\to\infty}f_n(x)=f(x)$对$\forall x$属于定义域都成立。
三、不同核函数所对应的映射
对于每一个核函数$K_i$,必定对应着至少一个映射$\Phi_i$。假设$K_1(x,y),K_2(x,y)$对应的映射为$\Phi_1,\Phi_2$,则:
- $K(x,y)=K_1(x,y)+K_2(x,y)$对应的映射为$\Phi(x)=(\Phi_1(x),\Phi_2(x))^\prime$。
- $K(x,y)=aK_1(x,y),a>0$对应的映射为$\Phi(x)=\sqrt{a}\Phi_1(x)$。
- $K(x,y)=K_1(x,y)K_2(x,y)$对应的映射为$\Phi(x)_{ij}=\Phi_1(x)_i\Phi_2(x)_j$,即$\Phi(x)=\left[\begin{array}&\Phi_1(x)_1\Phi_2(x)_1\\\vdots\\\Phi_1(x)_1\Phi_2(x)_n\\\vdots\\\Phi_1(x)_n\Phi_2(x)_1\\\vdots\\\Phi_1(x)_n\Phi_2(x)_n\end{array}\right]$。
- $K(x,y)=f(x)f(y),\forall f$对应的映射的$\Phi(x)=f(x)$。
- $K(x,y)=x^\prime\mathbf{A}y$,其中$\mathbf{A}$为半正定,对应的映射为$\Phi(x)=\mathbf{L}^\prime x$,其中$\mathbf{A}=\mathbf{L}\mathbf{L}^\prime$(Cholesky分解)
四、在映射后的空间中操作
1)$\|\Phi(x)\|=\sqrt{\langle\Phi(x),\Phi(x)\rangle}=\sqrt{K(x,x)}$。
2) 单位化:$\tilde{\Phi}(x)=\frac{\Phi(x)}{\|\Phi(x)\|}$
$$\tilde{K}(x,y)=\langle \tilde{\Phi}(x),\tilde{\Phi}(y)\rangle=\frac{\langle \Phi(x),\Phi(y)\rangle}{\|\Phi(x)\|\|\Phi(y)\|}=\frac{K(x,y)}{\sqrt{k(x,x)K(y,y)}}$$,为正则化的kernel(Normalized kernel)。
3)线性组合的范数
\begin{align*}\|\sum_{i}\alpha_i\Phi(x_i)\|^2&=\langle \sum_i\alpha_i\Phi(x_i),\sum_j\alpha_j\Phi(x_j)\rangle\\&=\sum_{i,j}\alpha_i\alpha_j\langle\Phi(x_i),\Phi(x_j)\rangle\\&=\sum_{i,j}\alpha_i\alpha_jK(x_i,x_j)\\&=\alpha^\prime K\alpha\end{align*}
五、最后
关于kernel的内容有非常多的东西,这里我只是简单的介绍(其实我对kernel也就懂这么点皮毛)。有兴趣的可以看看这本专门介绍kernel的书籍<Kernel Methods for Pattern Analysis>,还有论文<An Introduction to Kernel-Based Learning Algorithms>。
Jordan Lecture Note-5: Kernels的更多相关文章
- Jordan Lecture Note-1: Introduction
Jordan Lecture Note-1: Introduction 第一部分要整理的是Jordan的讲义,这份讲义是我刚进实验室时我们老师给我的第一个任务,要求我把讲义上的知识扩充出去,然后每周都 ...
- Jordan Lecture Note-3: 梯度投影法
Jordan Lecture Note-3:梯度投影法 在这一节,我们介绍如何用梯度投影法来解如下的优化问题: \begin{align} \mathop{\min}&\quad f(x)\n ...
- Colorful Lecture Note(手工栈)
题目1 : Colorful Lecture Note 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi is writing an algorithm ...
- HihoCoder - 1103 Colorful Lecture Note
Little Hi is writing an algorithm lecture note for Little Ho. To make the note more comprehensible, ...
- Colorful Lecture Note
Colorful Lecture Note 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi is writing an algorithm lectu ...
- hihocoder #1103 : Colorful Lecture Note微软苏州校招笔试 1月10日(字符串处理+栈)
#1103 : Colorful Lecture Note 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi is writing an algorit ...
- Jordan Lecture Note-2: Maximal Margin Classifier
Maximal Margin Classifier Logistic Regression 与 SVM 思路的不同点:logistic regression强调所有点尽可能远离中间的那条分割线,而SV ...
- Jordan Lecture Note-12: Kernel典型相关分析(Kernel Canonical Correlation Analysis, KCCA).
Kernel典型相关分析 (一)KCCA 同样,我们可以引入Kernel函数,通过非线性的坐标变换达到之前CCA所寻求的目标.首先,假设映射$\Phi_X: x\rightarrow \Phi_X(x ...
- Jordan Lecture Note-11: 典型相关分析(Canonical Correlation Analysis, CCA).
典型相关分析 (一)引入 典型相关分析(Canonical Correlation Analysis)是研究两组变量之间相关关系的一种多元统计方法.他能够揭示出两组变量之间的内在联系. 我们知道,在一 ...
随机推荐
- Java [leetcode 12] Integer to Roman
题目描述: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...
- java、myeclipse常见错误的解决(未完)
1.报错java.lang.NoClassDefFoundError ,但是相关jar包已经导入工程. 解决方案:将jar包放入C盘tomcat上部署的相应项目中的WEB-INF/lib中.web容器 ...
- 9Patch在Android平台的应用
- [OFBiz]简介 一
1.What is Apache OFBiz?http://ofbiz.apache.org/ 2.概述http://baike.baidu.com/view/638900.html?fromTagl ...
- selenium IDE & Remote Control & Webdriver
一直忘记写selenium的开始学习的过程,今天趁五一,天气有雨,写下这文章 1.进入selnium官网,了解selenium1,2,grid的区别.下载c#相关的包(使用c#的人非常少) 2.使用I ...
- Leetcode OJ : Restore IP Addresses backtrack暴搜 C++ solution
class Solution { public: vector<string> ret; string src; int len; unordered_set<string> ...
- javascript活动对象的理解——伪单例模式
在自己研究javascript各种设计模式的过程中,偶然写出的一段代码让自己理解的更深刻了,之所以称之为伪单例模式,是因为这段代码造成的结果很想单例模式,但是实际上是活动对象捣乱所造成的误会. 代码很 ...
- C++ 虚函数表与内存模型
1.虚函数 虚函数是c++实现多态的有力武器,声明虚函数只需在函数前加上virtual关键字,虚函数的定义不用加virtual关键字. 2.虚函数要点 (1) 静态成员函数不能声明为虚函数 可以这么理 ...
- HDU-1402 A * B Problem Plus FFT(快速傅立叶变化)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1402 一般的的大数乘法都是直接模拟乘法演算过程,复杂度O(n^2),对于这题来说会超时.乘法的过程基本 ...
- nyoj 115 城市平乱
城市平乱 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 南将军统领着N个部队,这N个部队分别驻扎在N个不同的城市. 他在用这N个部队维护着M个城市的治安,这M个城市 ...