-->

机器学习40讲_12_11_基础线性回归一元与多元

你好,我是王天一。

今天我和你分享的主题是基础线性回归一元与多元。

从今天开始呢,我们的专栏将进入统计机器学习这个新的模块。

虽然说统计机器学习当中千姿百态的模型让人眼花缭乱,但究其本源,它们都来源于最原始的线性回归。

在我看来呢,线性模型它最大的优点不是便于计算,而是便于解释。

它可以以简洁明了的方式清晰的体现输入的变化如何导致输出的变化。

正所谓一生二二生三,三生万物,将不同的改进方式融入到线性模型基本的思想当中,就可以得到各种巧夺天工的复杂方法。

在第一季的人工智能基础课当中呢,我介绍过线性回归的原理。

而且也证明当噪声满足正态分布的时候,基于最小二乘法的线性回归和最大似然,估计两者是等价。

这次呢我们换一个角度来看一看最小二乘法的几何意义。

在之前线性回归的数学表达式被写成系数,左乘数据的列向量,这都是对向量的操作。

但在讨论几何意义的时候呢,这个表达式我们要做一个改写,改写成什么呢?用数据的行向量去佐乘这个系数,点击文稿。

你可以看到两种表达式的转换,可千万别小看这个简单的写法变化。

当输出写成w的转置啊乘以x也就是乘以数据列向量的时候,它背后的寓意是什么呢?每一个包含若干个输入属性和一个输出结果的样本都被视为一个整体,那么误差呢是分散在不同的样本点上的。

而当输出被写成x的转置左乘以贝塔这个系数的时候,它背后的寓意在于每个单独属性在所有样本点上的取值,这被视为一个整体。

那么误差呢是分散在每个不同的属性之上。

但是呢横看成岭侧成峰,观察角度的变化呢,并不会给观察对象本身造成改变啊,数据x仍然是那个x只不过我们看待它的角度发生了变化。

假设数据集当中总共有大n个样本,那么x的转置啊就变成了n乘以小n加一这么多维度的数据矩阵啊,那么小n代表的每一个样本,它具有的属性的数目。

在这个矩阵当中呢,每一行表示的都是同一个样本,它不同的属性。

那么每列呢表示了不同样本中相同的一个属性。

如果说带拟和数据的它的特性完美到什么程度呢?任意的两个属性都是线性无关。

这个时候这个矩阵就定义了一个由它的所有的列向量所章程的一个空间。

一般来说呀属性的数目小n会远远的小于数据的数目大n所以新章程的这个空间呢是大n维空间之内的一个小n维的生成子空间啊,或者叫做小n维的超平面啊。

因为它满足线性的关系。

这个超平面呢每一个维度都对应着数据集的一个裂向量。

在理想条件下呢,输出y作为属性的线性组合,也应该出现在这个由数据的属性啊所构成的超平面上。

但是受噪声影响,真正的y是超平面之外的一个点啊,没有在这个超平面上面,这个时候就得退而求其次。

我在超平面上找到离这个真实的输出外最近的点啊,作为一个最佳的近似几何知识告诉我们呢要找的这个最佳的近似呢,实际上就是真实输出外在超平面上的投影。

而这个最佳近似所对应的系数,也就是我们在线性回归当中要求解的那个系数。

那么这个原始的输出点和这个输出点在超平面上的投影啊,两者之间的距离就是估计误差也叫做残差。

这个残差它就是最小二乘法最小化的对象。

我最小二乘法最小的是什么东西啊?就是这个残差点击文稿,你可以看到最优系数的这个解析。

解。

这个式子呢说明了最小二乘法它的几何意义计算高维空间上输出结果。

在由所有属性共同定义的低维空间上,它的一个正交投影最小二乘法计算的就是这个东西。

那么投影操作呢意味着残差不会在数据维度上遗留任何分量。

这种基于误差和数据正交性的最优解啊,也经常会出现在像号处理当中。

那么点击文稿呢,你可以看到最小二乘几何意义的图示啊,这个图呢会给出一个更加直观的解释。

在实际应用里啊,我们如何去解释这个线性回归的结果呢?下面这个例子可以作为一个说明。

眼下呢世界杯正在如火如荼的进行着。

如果爱好足球的话,你一定不会对这个数据网站whose god感到陌生。

他的一个特色是什么呢?在每场比赛结束之后啊,我根据球员的表现给出一个打分啊,零分呢最低代表表现差啊十分最高,代表表现好。

虽然说这个评温系统它能够直观的体现出谁踢的好,谁踢的烂。

但是关于这个打分的专业性啊,这样的质疑却从未停止。

那么这个斯克网站的评分它到底准不准呢?好,我们不妨使用线性回归来做一个测试。

如果说评分系统足够合理的话,那么球员的评分呢就应该和球队的成绩呈现出一个正相关。

那么线性关系呢又是正相关最直接的一个描述。

为了验证球队的积分和所有球员在赛季中的平均评分,两者之间是否存在线性关系啊,我从这个网站上拷贝下来,二零一七到二零一八赛季啊,也就是刚刚结束的这个赛季,英超联赛的相关数据,英超呢有二十支球队。

那么这个包含二十个样本的小数据集,就是我们的训练集在拟合数据的时候啊,我使用的第三方库是sters models.之所以选择这个库呢,是因为它是由统计学家开发的。

所以呢更关注一些统计的概念,也就能够给出更多统计意义上的结论。

用这些结论来理解线性回归模型啊是非常有好处的。

在模型拟合之前呢,我们有必要对输入数据做一点处理。

那就是把这个页面量啊,从球队的赛季的总积分啊,就积分榜上的那个积分转换成场均的积分。

在足球联赛当中呢,一场比赛的胜平负分别对应着三分一分,还有零分啊,所以计算场均积分的话可以看成是某种啊语义上的规化。

它可以让数据在从零到三这个一致,并且较小的尺度上得到更加直观的比较。

那么自变量呢我们不做变化,仍然是整个球队当中所有球员的赛季的平均的评分。

在使用state models拟合模型的时候,首先呢要用add constant的这个函数啊,来在每个输入数据的后面添加一个常数。

一。

这个操作呢可以把常数项纳入到模型当数,接下来就可以调用OLS,也就是普通最小二乘法来计算线性模型的这个参数。

最后呢使用feet函数来获取到拟合的结果。

如果要查看拟合模型的统计特性的话啊,只需要打印出模型的summary就可以了。

那么点击文稿呢,你可以看到啊,我们这个计算出的summary,也就是对英超数据集一个拟合的结果。

在这个模型的拟合当中呢,最核心的结果显示,在第二排这里面的cohification代表的是参数的估计值,也就是通过最小二乘所计算出来的权重系数。

拟合的结果告诉我们什么呢?球队的场均积分,y和球员赛季的平均评分x之间的关系可以近似表示成一个线性的关系。

具体来说就是y等于三点零六八五倍的x减去十九点四三四五,这有什么含义呢?如果所有的球员共同努力,哎,我将赛季的平均评分拉高零点一的话,那么球队在每场比赛当中就平均能够多得零点三零六分,相当于多赢了十分之一场球。

这呢是这个系数的含义。

那么它右侧的这个standard error啊表示的是参数估计的一个标准物。

虽然说最小二乘得到的是无偏估计量啊,它估计的结果当中不存在系统误差。

但是每一个特定的估计值啊,我用这个数据集计算出来的估计值,依然会在真实值的附近来做一个波动。

啊,那么标准物呢度量的就是估计值啊,它偏离真实值的一个平均程度。

最后两列啊零点零二五零点九七五。

这两列呢给出来的是百分之九十五的置信区间,也就是每一个参数真实值,也就是参数的真实值啊,落在这个区间之内的可能性是百分之九十五。

对于现金回归来说,它的置信的下界还有上界啊,分别是估计值减去和加上两倍的标准物。

置信区间告诉我们什么呢?如果我把平均的评分给他拉高零点一啊,并不意味着说球队每一场就一定能够多得零点三零六分啊,有零有整的这个数。

但是多得的分数呢基本上会在零点二五八到零点三五六之间,多得的分数啊出现在这样的一个区间之内的概率呢是百分之九十五。

如果你用一六一七赛季英超的这个数据来作为训练数据的话,那么它计算出来的结果啊,这个线性的参数就变成了三点三,意味着平均的评分拉上去零点一啊,每一场球能多得零点三三分。

那么可以看到零点三三呢,其实也落在零点二五八到零点三五六啊,这个至进区间之内啊,这也验证了估计结果的一个波动性啊。

当我使用不同的数据来进行估计的时候啊,得到的结果是不一样的。

在中间两列当中啊,这个t还有p大于t都是统计学里的关键指标。

他们评估的呢是你和杰我的统计学意义t代表的一个t统计量啊,它表示的是什么呢?参数的估计值和原始假设值之间的偏离程度。

那么在线性回归里呢,我们通常会把带拟合的参数值给它假设为零啊,也就是原始假设值等于零。

这时候呢t统计量就等于估计值除以这个标准物。

当数据当中的噪声满足正态分布的时候呢,t统计量呢它会满足这个t分布。

它的绝对值越大意味着参数等于零的可能性越小啊,拟合的结果也就越可信啊,简单来说就是越大越好。

那么另一个指标啊p大于t表示的则是统计学当中争议最大的指标,那也就是p值。

P值呢是在当原假设为真的时候啊,数据的指标等于观测值,或者说比观测值更为极端的概率。

简单的说呢,p值表示的就是数据和原始给定的模型,两者之间不匹配的一个程度啊,我再重复一遍是不匹配的程度。

P值越小呢,说明数据和原假设的模型越不匹配,也就跟我们计算出来的这个模型呢越匹配。

在这个例子,当中原假设依然是认为待估计的参数等于零啊,那么接近于零的p值呢也就意味着计算出来的这个参数它是值得信任的。

看完第二排啊,我们再来回头看看第一排啊,第一排表示的是对模型拟合数据程度的一个评价啊,这里面呢有很多指标啊,但是在线性回归里啊,最重要的一个指标在右侧的一列r square这个指标表示的是r方统计量啊,也叫做决定系数啊,这个取值在零一之间的数量呢,它表示的是输出当中的变化,能被输入的变化所解释的部分啊所占的变化。

我们做线性回归,不就是为了用输入的变化来解释输出的变化吗?那么这个输入的变化到底能解释多少输出的变化呢? R方统计量啊解决的就是这个问题。

在这个例子当中呢,r方等于零点九零五意味着回归模型能够通过x也就是平均平分的变化,解释大约百分之九十一y的变化啊,也就是赛季场均得分的变化这样的一个数值啊,零点九一这样的一个数值表明这个回归模型呢它的准确性还是比较好的。

那么回归之后,剩下的依然不能解释的那百分之九呢就可以看成来源于噪声。

R方统计量呢它有一个性质啊,就是单调递增。

即使我在模镜当中添加一些和输出一点没有关系的属性,计算出来的r方也不会下降。

那么justice r squad就是校正版的r方统计量。

当模型中增加的变量没有统计学意义时呢,多余的不相关系属性,反而会让这个校正的决定系数下降。

所以说校正的r旁统计量呢体现出来的就是一个正则化的思想啊,它在数值上会比原始的未校正的r旁统计量要小。

还是回到英超数据集这个例子当中啊,我们这个图形结果还有数值指标都表示了什么呢?线性回归能够较好的拟合输入和输出之间的关系。

这说明whose pod这个屏分系统呢还是值得信任的。

但是这个例子呢,它只是线性回归的一个特例,它特在哪儿呢?特在输出的页面量只和单个的输入自变量存在着线性关系。

也就是我们在建模的时候啊,我们只考虑了一个字变量。

这样的模型呢被称为简单线性回归。

更加一般的情况是什么呢?因变量,它由多个自变量共同决定。

那么对这些自变量同时进行建模的话,这样的模型就是多元线性回归。

点击文稿呢你可以看到在英超数据集上进行简单线性回归和多元线性回归的结构图,先来获得一个直观的印象。

和简单线性回归一样啊,多元线性回归里面的参数啊也要用最小二乘法来估计。

这里呢我们还是以积分和平分的关系为例,在简单的线性违规当中,自变量是所有球员在所有比赛中的评分的均值。

但我们知道啊,球场上不同位置的球员呢,他发挥的作用不一样啊,对他评价的标准也不一样。

一个前锋,甭管你浪费多少机会啊,只要踢进一个球就是高分。

反过来一个后卫啊,不管你有多少次成功的防守啊,只要有一个失误,那么就是第一份。

所以说为了进一步分析不同位置球员对于球队表现的影响呢,我们这里把单个的自变量替换成不同的位置球员在整个赛季当中的平均评分啊,并且使用多元回归来进行拟合。

在这个实例当中呢,赛元回归的属性啊也就是自变量被设置为每支球队啊,在每个位置上出场时间较多的球员的赛季,平均评分的均值啊,听着很复杂啊,这里呢我们主要考虑四个位置啊,包括守门员啊、后卫中长,还有前锋啊。

在计算平均分的时候啊,我们所有选中球员的出场时间都在一千分钟以上。

实际上这个求平均的过程呢也就相当于一个特征预处理的过程啊,我生成一个我想要的特征,利用OLS模型啊可以得到多元回归的结果。

点击文稿,你可以看到这个结果啊,如果对它加以分析的话啊,就会发现一个有趣的现象。

那一方面呢,多元模型它的校正决定系数是零点八七六,意味着所有的位置评分啊,它可以加到一块共同解释输出结果当中啊,大部分的变化。

这呢也可以从预测值和真实值的散点图上啊给它观察出来,两者还是比较接近。

可是另一方面啊,只有后卫评分和前方评分,这两者的p值低于零点零五啊,这说明什么呢?只有这两者有明显的统计学意义啊,球队的战绩只取决于这两个位置的表现啊,那么跟门将啊还有中场啊好像是没有关系的,看起来呢校正决定系数还有p值啊,两个指标给出了自相矛盾的解释。

这个时候呢就需要观察另外一个重要的指标,也就是f统计量。

F统计量呢是专门用于多元回归的一个指标啊,它检验的原假设是什么呢?所有待估计的参数都等于零啊,这意味着只要有一个参数不等于零啊,原假设就被推翻了。

F统计量越大呢,意味着原假设成立的概率越低啊,理想的f值应该在百千啊这个数量级上。

可是在上面这个多元回归当中呢,可以发现f统计量仅仅等于三十四点五七。

那么它就更支持了p值得出的结论啊,也就是估计出来的参数呢在统计学上,它的意义并不明显。

英超数据集在统计上的非显著性呢,既可能源自于过小的样本数目导致的过拟合啊,也可能源自于不同属性之间的贡献性啊,因为不同位置之间的球员的表现,它不是独立的啊,而是互相影响。

但是在更广泛的意义上啊,它揭示的却是多元线性回归无法回避的一个本质的问题。

这个问题是什么呢?模型虽然具有足够的精确性,但是呢却缺乏关于精确性的一个合理的解释。

假设这个数据当中有十个属性啊,那么如果我只保留其中的五个用来拟合的话,那么肯定有不止一个五元的属性组,能够得到彼此接近的这个优良性能。

但是这五个不同的属性代表着五个不同的方面啊,对不同五元组的解读方式啊,却会产生明显的差别啊,可能会大相径庭。

那么这种现象呢就是统计学家莱奥布莱曼口中的这个罗生门。

罗生门呢是日本导演黑泽明的作品啊,取材于日本作家借穿龙之介的小说。

草莽中,你可能看过这部电影,也可能读过这个小说啊,他讲了一个故事,一名武士在竹林当中被杀。

那么不同的当事人的供词呢,既是不同程度上的事实,也是不同角度下的谎言。

布雷曼呢用这个词来描述最优模型的一个多重性,以及由此所造成的统计建模的艰难出境。

当不同的多元线性模型具有相近的性能,但是却公说公有理,婆说婆有理的时候,到底应该如何做出选择,将罗生门深挖一步,就可以得到机器学习和统计学在认识论子上的差异,统计学讲究的是知其然,知其所以然。

他不仅要找出数据之间的关联性,还要深挖出他背后的因果性,给计算出的结果赋予令人信服的解释才是统计的核心。

相比之下呢,机器学习就更加的看重结果,只要模型能够对未知数据做出精确的预测,那这个模型能不能讲得清楚,这压根儿就不是事儿。

四十年前那句名言说的好,不管白猫黑猫,抓住耗子就是好猫。

这句话用在机器学习上,可以说再恰当。

不过。

今天我向你介绍了基于最小二乘法的线性回归模型,它的理解以及从统计学角度的阐释,包含着以下四个要点。

第一,线性回归拟合的是高维空间上输出结果,再由所有属性共同定义上的低维空间上的这个正交投影。

第二,简单线性回归的统计仪可以用t统计量和p值等指标来描述。

第三,多元线性回归的统计一可以用f统计量来描述,但是它的结果呢通常会缺乏对于模型的解释能力。

第四,机器学习和统计学的区别在于机器学习重于预测。

而统计学重于解释本片中的例子呢,只是以刚刚结束的这个一七一八赛季的英超联赛数据作为训练数据集。

如果使用一六一七甚至于一五一六啊,这些不同赛季的数据进行训练的话,你就会发现哎每次拟合出来的结果都不一样。

那么这样的事实会让你如何看待估计出来系数的这个准确性呢?欢迎发表你的观点。