ML—线性回归系列(四)—lasso&mtl

来源:互联网 发布:阿里云公共dns 编辑:程序博客网 时间:2024/04/28 16:01

华电北风吹
日期:2015/11/25

本文主要对套索回归(lasso)进行总结。
本系列的第一篇中线性回归的转化为如下的无约束优化问题
minθmi=1(y(i)θTx(i))2(0-1)
其中,x(i)Rn×1表示每个样本都是n维向量,y(i)表示样本x(i)对应的标签,θRn×1表示参数向量。与之等价的矩阵形式为
minθ||XθY||22(0-2)
其中X=(x(1),x(2),...,x(m))TRm×n,Y=(y(1),y(2),...,y(m))T.

一、Least Absolute Shrinkage and Selection Operator(lasso)
基本的lasso目标函数为
minθmi=1(y(i)θTx(i))2+λ||θ||1(1-1)
与之等价的矩阵形式表述为
minθ||XθY||22+λ||θ||1(1-2)
相比于线性回归,这里多了一项正则项参数—L1范数,不同于岭回归的L2范数,这里加了L1范数以后,最后得到的θ的很多分量都是是0,因此lasso经常用于特征选择。

二、标准的多任务学习
在对疾病进行分类的时候,会采取他的EEG信号和MRI信号,来对病人病情进行判别。当然我们可以对EEG信号和MRI信号分别抽取特征,分别建立一个分类器。但是这样往往会损失他们不同模态之间的信息。这时候就可以使用多任务学习的方法,对模型进行特征选择。
标准的多模特征选择基于L2,1范数,假设有k个任务时,如下图
这里写图片描述
目标函数为
minθ12kj=1||XjθjYj||22+λ||Θ||2,1(2-1)
需要注意这里的符号与前面的表述稍微有点区别。mj表示第j个任务下样本个数,XjRmj×n表示第j个任务下的所有样本,YjRmj×1表示这个任务下的mj个样本对应的标签向量,θjRn×1表示第j个任务下的模型参数向量,Θ=(θ1,θ2,...,θk)Rn×k
与之等价的矩阵形式为(来自于SLEP manual,这里我认为有错,保留)
minθ||XΘY||22+λ||Θ||2,1(2-2)
其中X=[X1;X2;...;Xk]Rm×n,Y=(Y1,Y2,...,Yk)Rm×1
补充:矩阵的L2,1范数定义如下
ΘRn×k,||Θ||2,1=ni=1||θi||2=ni=1(kj=1θ2i,j)12
三、参考资料
更多参考资料http://www.yelab.net/software/SLEP/index.htm

0 0