购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.1 回归算法

回归算法是统计学和机器学习研究者最常接触的一类模型,回归算法研究目标变量(因变量)和多个自变量之间的关系。下面讨论几种最常见和广泛使用的回归算法,它们的共同特点是结构比较简单,预测能力较强,在处理实际问题时,性价比通常很高。

4.1.1 线性回归算法

线性回归(Linear Regression)算法是统计学中常用的算法,也是机器学习中基础的算法。线性回归算法是利用最小平方函数对一个或多个自变量和目标变量(因变量)之间的关系进行建模的一种回归分析。

假设有n个训练数据点,可以用下面的矩阵形式表示数据:

式中,X矩阵中有n行数据代表n个数据点,而每一行的k列数据则代表一个k维的数据点,Y矩阵中每一行是数据点x对应的目标变量y,通常为连续数值。线性回归算法中的一个基本假设是,Y矩阵和X矩阵线性相关,并且可以表示为

式中,ε是y的固有误差,是一个平均值为0,标准差为σ的正态分布函数,即y也是符合正态随机分布的变量,且平均值为β T x。

而标准差为σ,即y满足的分布函数为

式中,θ表示待优化的参数。根据以上概率密度分布函数,为了得到参数的最佳优化值,可以利用统计学中的最大似然拟合方法,该方法给出最佳的参数,即可以把似然值最大化的参数。把n个x和y训练数据的值代入似然值的方程定义,得到似然值为

式中,连乘的方式不方便数学运算,可以取对数后再进行运算。这是因为对数函数为单调函数,变换后的形式不会影响对最大值的判断,也不会影响对方程所对应的最佳参数的判断。上式的似然值方程取对数后为

可以看出,因为假设σ为不变的常数,寻找最大值等价于寻找下式的最小值,即

至此,可以比较容易地看出,上式即为损失函数形式:测量值和预测值之差的平方和最小化形式,并且这个最小化形式也符合要求。从推导过程可以看出,平方差的损失函数的根本来源是有统计和概率依据的。

除了线性问题,线性回归算法其实也可以用来对非线性问题进行建模。尽管线性回归算法相对于待优化的参数而言总是线性的,但是特征变量可以被加工为非线性的形式。因此目标变量y对应的概率分布可以通用地表示为

式中,ϕ(x)是自变量x的变换形式,可以根据需要尝试不同的非线性转换。常用的特征变量非线性设计形式有以下几种。

(1)多项式形式:

(2)Sigmoid函数形式:

(3)径向基函数形式(Radial Basis Function):

(4)样条函数(Spline)、傅里叶变换(Fourier)、小波函数(Wavelets)等形式。

在统计学中,线性回归可以用来发掘和解释特征变量与目标变量之间的相关性。但是这类应用场景首先需要检验是否满足线性回归的假设,以及变量与变量之间是否存在共线性(Collinearity)等问题。仅从机器学习预测的角度而言,关注线性回归模型对新数据的预测性是第一位的,因为特征变量的解释性和共线性问题通常不会影响模型的预测效果。

4.1.2 Lasso和Ridge回归算法

机器学习模型和算法的参数空间过大可能导致过拟合,而Lasso和Ridge回归模型则是在线性回归模型的基础上,通过正则规则增加了对参数的限制,从而达到参数稀疏化和减少过拟合的效果。

两种回归模型分别对应的损失函数优化方法如下:

两种不同模型的主要区别是,Ridge回归算法的限制项是L2范数,即系数平方和的根值,而Lasso回归算法的限制项是L1范数,即系数的绝对值之和。根据优化过程的对偶性,上面所列的有限制的优化过程其实等同于下面的优化过程:

可以看出,上式中引入了惩罚系数λ,从而使得有限制的优化过程变得更加简单。

在最小化过程中,由于惩罚系数λ的存在,λ越大,回归算法的各项系数越会被限制,两种回归算法的区别如下。

(1)Ridge回归中,参数只是不断接近于0,但不会完全等于0。

(2)Lasso回归中,部分参数会完全被限制为0。

这两个不同的优化过程和系数限制如图4.1所示。

图4.1 Lasso回归和Ridge回归系数限制图示

针对二维参数的优化问题,在Lasso回归和Ridge回归过程中,参数最小化的情况不同。图4.1的左图中,2个参数中的β 1 被Lasso回归算法限制为0,而右图中,β 1 和β 2 都被Ridge回归算法限制得很小,但不完全为0。由于Lasso回归的这一特性,在需要得到比较稀疏的系数的场合中,Lasso回归更为常用。

如图4.2所示,可以看到在某个多项参数优化过程中,使用Lasso回归算法,不断调节λ系数,可以达到不同的参数稀疏化程度。随着λ系数的增大,越来越多的待优化参数变为0,达到了克服参数空间过大的目的。

图4.2 Lasso回归中,参数随不同惩罚系数大小变化情况

图4.2中,横坐标为λ系数的大小,纵坐标为某个优化方程的各β系数随λ系数变化而变化的情况。可以看出,假设做了许多的优化实验,每次实验中,λ系数不断变大,则为0的β系数越来越多。当λ系数大到一定程度时,所有的β系数都变为0。

4.1.3 逻辑回归算法

逻辑回归(Logistic Regression)是一种广义的线性回归模型。与线性回归不同的是,逻辑回归返回的是概率数值,因此通常应用于分类模型。逻辑回归的目标变量可以是多分类数值,其中二分类最为常见。

在逻辑回归中,观察的历史数据点可以用下面的矩阵形式表示:

式中,X矩阵有n行,代表了n个历史数据点;每一行有k列,表示每个数据点有k个维度。Y为每个数据点的标签,取值为-1或+1,可以用来代表两个不同的类别。例如,金融风险预测中,-1可以用来代表某个客户历史上曾经出现过逾期现象,而+1代表某个客户历史上一直信用良好。逻辑回归不会直接预测某个数据的标签是-1还是+1,而是预测数据为某个标签的概率。

假设y=1的概率为p,即

式中,β为逻辑回归算法中待优化的参数列表。有了y=1的概率假设,可以得到y=1的概率和y=-1的概率的倍数,或者称作发生比(odds),即

将odds函数取对数,可以看出,odds函数的对数取值范围是负无穷到正无穷。为了用参数化的方式来描述这样一个发散的取值范围,可以用一个线性函数来描述odds的模型函数:

上式的取值范围也是负无穷到正无穷,符合对发生比对数的定义。通过上式即可进一步推导出概率函数p的最终表达形式(含有待优化参数),即

上式就是Sigmoid函数形式。考虑y取值的两种不同情况,进一步得到:

式中,σ表示Sigmoid函数,且

Sigmoid函数具有一个特性,它可以把函数x变量对应的从负无穷到正无穷的取值范围映射到0~1,Sigmoid函数y值随自变量的变化形式如图4.3所示。

图4.3 Sigmoid函数把x变量映射到0~1

根据以上推导,可得到每个数据点标签为+1或-1的概率表达形式。为了优化相关参数,可以采用最大似然拟合的方法。在逻辑回归算法的运用过程中,假设一个事件成功的概率为p,失败的概率为1-p,一个事件为+1或-1的概率可以统一表达为概率函数,即

所有数据点集合的最大似然函数公式为

上式取对数后,经过几步简单的数学推导,可以得到非常有意义的形式,即

上式即为所有数据点的最大似然函数的对数形式。似然函数的最大值对应着参数的最优解。对上式进行最大化求值从而获得最佳参数,等同于对下式进行最小化求值,即

上式即为机器学习算法中经常提到的logistic损失函数(具体形式因对y变量取值假设不同而不同)。可以这样理解损失函数对于数据优化的意义:当预测结果与实际目标变量一致时,即y和(f x )符号一致时,对应损失函数值接近于0;而当结果不一致时,即y和(f x)符号不一致时,对应损失函数值会变得相对很大。根据这一特性,logistic损失函数的最小化优化过程会自动惩罚导致预测不准确的参数值,从而更准确地找到更好的参数值。 lLPHvQtSBU/YmOnIz0Fg4Skg1sa2da7sEOyMpqp7cxjxvFZnNjeR/0uv4x4YIIR9

点击中间区域
呼出菜单
上一章
目录
下一章
×