线性模型:线性回归和逻辑回归

tech2022-07-31  163

目录

1. 基本形式2. 线性回归3. 对数几率回归(逻辑回归)4. 线性判别分析(LDA)

1. 基本形式

        给定由 d 个属性描述的示例 x = ( x 1 ; x 2 ; . . . ; x d ) x = (x_1; x_2;...; x_d) x=(x1;x2;...;xd) , 其中 x i x_i xi均是 a 在第 i个属性上的取值,线性模型 (linear model)试图学得一个通过属性的线性组合来进行预测的函数,即: 一般用向量形式写成: ω 值的大小直观表达了各属性在预测中的重要性         功能更为强大的非线性模型 (nonlinear model)可在线性模型的基础上通过引入层级结构或高维映射而得。

2. 线性回归

        给定数据集 D= { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } \lbrace(x_1,y_1) , (x_2,y_2),...,(x_m,y_m) \rbrace {(x1,y1),(x2,y2),...,(xm,ym)} ,其中 x i = ( x i 1 ; x i 2 ; x i 3 ; . . . ; x i d ) xi=(x_{i1};x_{i2};x_{i3};. . . ; x_{id}) xi=(xi1;xi2;xi3;...;xid) , 即每个输入 x i x_i xi有d个属性, Y i ∈ R Y_i\in \reals YiR。“线性回归” (linear regression)试图学得一个线性模型:         f ( x i ) = w x i + b f(x_i)=wx_i+b fxi=wxi+b         以尽可能准确地预测实值输出标记 y i y_i yi。(当 i > 1 i>1 i>1时称为多元线性回归")

        常用性能度量均方误差(即所有样本预测值与实际值的差方和) 为什么使用差方和而不是使用差和呢?

        大家可以思考一下,加入有两个样本 x 1 x_1 x1, x 2 x_2 x2预测标签和实际值分别为(1.0, 0.5)、(0.5,1.0),一个差为0.5,一个差为-0.5,相加后为0,相互抵消了!

这里还涉及到另一个知识点:         最小二乘法:基于均方误差最小化来进行模型求解的方法称为"最小二乘法"

        线性回归中,最小二乘法就是试图找到一条直线,使所有样本到直线上的欧氏距离之和最小。

以均方误差为损失函数进行求导: 导数为0,求得 w w w b b b的更新值:                


若为多元线性回归:

x ^ = ( w ; b ) \hat x=(w;b) x^=(w;b) x x x d d d个属性,则输入 x x x可表示为:         前 d 个元素对应于示例的 d 个属性值,最后一个元素恒置为 1 .         标签也可写为向量形式: y = { y 1 ; y 2 ; . . . y m } y=\lbrace y_1;y_2;...y_m\rbrace y={y1;y2;...ym}         均方误差为:         对参数求导:         导数为0,求得参数的更新值:                               w = ( X T X ) − 1 X T y w=(X^TX)^{-1}X^Ty w=(XTX)1XTy         若 ( X T X ) (X^TX) (XTX)不是满值矩阵,则不可逆,没有唯一解。(例如在许多任务中我们会遇到大量的属性变量,其数目甚至超过样例数,导致 X X X 的列数多于行数。)         那如何选择解呢?常见的做法是引入正则化项,如岭回归和Lasso回归(关于岭回归和Lasso回归可以看我的另一篇博客:一篇文章搞懂:岭回归和Lasso回归)


广义线性回归:         现实生活中很多问题都属于非线性问题,那对于非线性问题,线性模型如何模拟呢?

        我们可以在线性回归的基础上加入一个联系函数,比如,在线性回归的输出上加上对数函数,构成对数线性回归(log-linear regression):         即 y = e w T + b y=e^{w_T+b} y=ewT+b,实质上已是在求取输入空间到输出空间的非线性函数映射。

        一般地,考虑单调可微函数 g(.) :

        这样的模型称为" 广义线性模型",g(-) 称为"联系函数" ,对数线性回归是广义线性模型在g(-) = ln(-) 时的特例。

3. 对数几率回归(逻辑回归)

        前面说的线性回归,主要用于回归模型,那么对于分类问题如何使用线性模型解决呢?

        如二分类任务, y = { 0 , 1 } y=\lbrace0,1\rbrace y={0,1}此时可以用广义线性模型,最理想的联系函数是:单位阶跃函数:         但单位阶跃函数不连续,因此不能直接用作联系函数g(-).         而对数几率函数:         单位阶跃函数与对数几率函数区间类似,但单调可微: 即: 其中几率和对数几率为:                                

4. 线性判别分析(LDA)

        关于线性判别分析的详细介绍,以及其中的数学原理,可以看我的另一篇博客:线性判别分析LDA:详解及数学原理

最新回复(0)