回顾一下岭回归,岭回归的目的是学习得到特征和因变量之间的映射关系,由于特征可能很高维,所以需要正则化

岭回归的目标函数是

$$ \sum_{i=1}^n \left\|y-X\beta\right\|^2+\lambda\beta^T\beta $$

由于数据可能是非线性的,单纯的线性回归效果可能不是很好,因此可以把数据映射到一个核空间,使得数据在这个核空间里面线性可分。

设核函数为$\Phi_i=\Phi(x_i)$,$\Phi_i$是一个$d$维空间中的向量,通常$d$比原来的维数高,甚至可以到无穷维。可以认为$\Phi_i$是核空间中$x_i$的一组特征,我们在核空间里对这组特征进行线性回归,原理和岭回归是一样的,因此可以直接套用岭回归的目标函数

$$ \sum_{i=1}^n \left\|y-\Phi\beta\right\|^2+\lambda\beta^T\beta $$

由正规方程解得$\beta=(\Phi^T\Phi+\lambda I_d)^{-1}\Phi^Ty$

由于$\Phi_i$可能达到无穷维,直接求逆比较困难,且效率较低。因此需要用到下面的小技巧

$$ (P^{-1}+B^TR^{-1}B)^{-1}B^TR^{-1}=PB^T(BPB^T+R)^{-1}$$

上式中,令$B=\Phi,P=\frac{1}{\lambda}I_d,R=I_n$,则有

$$\begin{align*} \beta &= \frac{1}{\lambda}\Phi^T(\frac{1}{\lambda}\Phi\Phi^T+I_n)^{-1}y\\&=\frac{1}{\lambda}\Phi(\frac{1}{\lambda}[\Phi\Phi^T+\lambda I_n])^{-1}y\\&=\frac{1}{\lambda}\Phi^T(\frac{1}{\lambda})^{-1}(\Phi\Phi^T+\lambda I_n)^{-1}y\\&=\Phi^T(\Phi\Phi^T+\lambda I_n)^{-1}y \end{align*}$$

令$\alpha=(\Phi\Phi^T+\lambda I_n)^{-1}y\quad\in\mathbb{R}^{n\times 1}$,则$\beta=\Phi^T\alpha=[\Phi_1,\Phi_2,...,\Phi_n]\alpha=\sum_{i=1}^n \alpha_i\Phi_i$

$K=\Phi\Phi^T\in\mathbb{R}^{n\times n}$称为gram矩阵,且$K_{ij}=\Phi_i^T\Phi_j$。

$$ y_i=\beta^T\Phi_i=y^T(K+\lambda I_n)^{-1}\Phi\Phi_i = y^T(K+\lambda I_n)^{-1}K_i $$

其中$K_i$是$K$的第$i$列

Kernel Ridge Regression的更多相关文章

  1. support vector regression与 kernel ridge regression

    前一篇,我们将SVM与logistic regression联系起来,这一次我们将SVM与ridge regression(之前的linear regression)联系起来. (一)kernel r ...

  2. Kernel ridge regression(KRR)

    作者:桂. 时间:2017-05-23  15:52:51 链接:http://www.cnblogs.com/xingshansi/p/6895710.html 一.理论描述 Kernel ridg ...

  3. 机器学习技法笔记:Homework #6 AdaBoost&Kernel Ridge Regression相关习题

    原文地址:http://www.jianshu.com/p/9bf9e2add795 AdaBoost 问题描述 程序实现 # coding:utf-8 import math import nump ...

  4. Ridge Regression and Ridge Regression Kernel

    Ridge Regression and Ridge Regression Kernel Reference: 1. scikit-learn linear_model ridge regressio ...

  5. Jordan Lecture Note-4: Linear & Ridge Regression

    Linear & Ridge Regression 对于$n$个数据$\{(x_1,y_1),(x_2,y_2),\cdots,(x_n,y_n)\},x_i\in\mathbb{R}^d,y ...

  6. Ridge Regression(岭回归)

    Ridge Regression岭回归 数值计算方法的"稳定性"是指在计算过程中舍入误差是可以控制的. 对于有些矩阵,矩阵中某个元素的一个很小的变动,会引起最后计算结果误差很大,这 ...

  7. Kernel Methods (3) Kernel Linear Regression

    Linear Regression 线性回归应该算得上是最简单的一种机器学习算法了吧. 它的问题定义为: 给定训练数据集\(D\), 由\(m\)个二元组\(x_i, y_i\)组成, 其中: \(x ...

  8. Kernel Logestic Regression

    一.把 soft margin svm 看做 L2 Regression 模型 先来一张图回顾一下之前都学了些什么: 之前我们是通过拉格朗日乘子法来进行soft Margin Svm的转化问题,现在换 ...

  9. Probabilistic SVM 与 Kernel Logistic Regression(KLR)

    本篇讲的是SVM与logistic regression的关系. (一) SVM算法概论 首先我们从头梳理一下SVM(一般情况下,SVM指的是soft-margin SVM)这个算法. 这个算法要实现 ...

随机推荐

  1. MyBatis 知识点梳理

    简单地梳理下MyBatis相关的知识点,主要想让自己重新捡起以前学的框架,如果能给广大程序猿朋友有所帮助那就更好了.有疏漏的地方也欢迎大家评论指出.闲言少叙,进入正题....... MyBatis知识 ...

  2. xcode8 打开的 xib 踩坑

    之前开发都不敢工测试版的开发,一直用正式版的,xcode7.3.1的模糊匹配让我很蛋疼,自定义的类,类名不提示,每次都粘贴复制,8号苹果发布了 xcode8GM 版,迫不及待的从苹果开发者官网下了一个 ...

  3. 自己玩虚拟机上mongo备份

    rs.initiate({_id:"shard1RS",members:[{_id:1,host:"127.0.0.1:27018",priority:2},{ ...

  4. Uva 1378 - A Funny Stone Game

    1378 - A Funny Stone Game Time limit: 3.000 seconds The funny stone game is coming. There are n pile ...

  5. Android的消息机制简单总结

    参考文章: http://gityuan.com/2015/12/26/handler-message-framework/#next 参考资料: Android Framework的源码: Mess ...

  6. react-native一些好的组件

    一.移动端路由 react-navigator 二.移动端本地储存 react-native-storage(https://github.com/sunnylqm/react-native-stor ...

  7. 前端学习之路之CSS (三)

    Infi-chu: http://www.cnblogs.com/Infi-chu/ 创建CSS有三种方法:外部样式表.内部样式表.内联样式.优先级:内联样式>内部样式>外部样式表> ...

  8. React Native之React速学教程(下)

    概述 本篇为<React Native之React速学教程>的最后一篇.本篇将带着大家一起认识ES6,学习在开发中常用的一些ES6的新特性,以及ES6与ES5的区别,解决大家在学习Reac ...

  9. MASQL语法大全

    mysql sql语句大全 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql se ...

  10. oozie安装总结

    偶然的机会,去面试的时候听面试官讲他们的调度系统是基于hue+oozie,以前一直没有接触过,今天趁有空,尝试一下oozie 1.环境说明 cat /etc/issue  CentOS release ...