机器学习面试常见题总结(持续更新)

1、逻辑回归(LR)损失函数为什么使用最大似然估计而不用最小二乘法?

链接:https://www.zhihu.com/question/65350200/answer/266277291

首先,机器学习的损失函数是人为设计的,用于评判模型好坏(对未知的预测能力)的一个标准、尺子,就像去评判任何一件事物一样,从不同角度看往往存在不同的评判标准,不同的标准往往各有优劣,并不冲突。唯一需要注意的就是最好选一个容易测量的标准,不然就难以评判了。

其次既然不同标准并不冲突,那使用最小二乘作为逻辑回归的损失函数当然是可以,那这里为什么不用最小二乘而用最大似然呢?请看一下最小二乘作为损失函数的函数曲线:

图1 最小二乘作为逻辑回归模型的损失函数,theta为待优化参数

以及最大似然作为损失函数的函数曲线(最大似然损失函数后面给出):

图2 最大似然作为逻辑回归模型的损失函数,theta为待优化参数

很显然了,图2比图1展现的函数要简单多了,很容易求到参数的最优解(凸函数),而图1很容易陷入局部最优解(非凸函数)。这就是前面说的选取的标准要容易测量,这就是逻辑回归损失函数为什么使用最大似然而不用最小二乘的原因了。

以上是这个问题的答案,下面来推一下逻辑回归中最大损失函数到底是怎么来的,因为我看到很多地方只是说了一下用到最大似然的方法,就直接给出了最终的形式,还看到有书里面过程搞错了,也给出了最终的正确形式。

既然是最大似然,我们的目标当然是要最大化似然概率了:

对于二分类问题有:

p_{1}=p(y=1|x,\theta)=\frac{e^{x\theta}}{1+e^{x\theta}},y=1

p_{0}=p(y=0|x,\theta)=\frac{1}{1+e^{x\theta}},y=0

用一个式子表示上面这个分段的函数为:(记得写成相乘的形式)

p=p(y|x,\theta)=p_{1}^{y_{i}}\ast p_{0}^{1-y_{i}}

代入目标函数中,再对目标函数取对数,则目标函数变为:

max \sum_{i=1}^{m}({y_{i}log^{p_{1}}+(1-y_{i})log^{p_{0}})}

如果用 h_{\theta}(x_{i}) 来表示 p_{1} ,则可用 1-h_{\theta}(x_{i}) 来表示 p_{0} ,再将目标函数max换成min,则目标函数变为:

min -\frac{1}{m}\sum_{i=1}^{m}({y_{i}log^{h_{\theta}(x_{i})}+(1-y_{i})log^{1-h_{\theta}(x_{i})})}

这样就得到最终的形式了!


2、L1正则项和L2正则项的区别以及L1正则项为什么具有稀疏性?

首先,介绍L1和L2:
机器学习中通常都可以看到损失函数后面添加一个损失项。常用的有两种L2和L1。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些参数做一些限制。对于线性回归模型,使用L1正则化的模型建叫做Lasso回归,使用L2正则化的模型叫做Ridge回归(岭回归)。

正则化项可以取不同的形式。例如回归问题中,损失函数是平方损失,正则化项可以是参数向量的L2范数: 

这里写图片描述

这里,||w||表示参数向量w的L2范数。正则化项也可以是参数向量的L1范数: 

这里写图片描述

这里||w||表示参数向量w的L1范数。

二者区别:

第一种解释:

现在,我们考虑这样一个问题:为什么使用 L1L1-正则项,会倾向于使得参数稀疏化;而使用 L2L2-正则项,会倾向于使得参数稠密地接近于零?

这里引用一张来自周志华老师的著作,《机器学习》(西瓜书)里的插图,尝试解释这个问题。


在图中,我们有三组「等值线」。位于同一条等值线上的 w1与 w2,具有相同的值(平方误差、L1-范数或L2-范数)。并且,对于三组等值线来说,当 (w1,w2)沿着等值线法线方向,像外扩张,则对应的值增大;反之,若沿着法线方向向内收缩,则对应的值减小。

因此,对于目标函数 Obj(F)来说,实际上是要在正则项的等值线与损失函数的等值线中寻找一个交点,使得二者的和最小

对于 L1-正则项来说,因为 L1-正则项的等值线是一组菱形,这些交点容易落在坐标轴上。因此,另一个参数的值在这个交点上就是零,从而实现了稀疏化。

对于 L2-正则项来说,因为 L2-正则项的等值线是一组圆形。所以,这些交点可能落在整个平面的任意位置。所以它不能实现「稀疏化」。但是,另一方面,由于 (w1,w2) 落在圆上,所以它们的值会比较接近。这就是为什么 L2-正则项可以使得参数在零附近稠密而平滑。

第二种解释:

1、梯度下降速度

L1和L2的差别就在于这个“坡”不同,如下图:L1就是按绝对值函数的“坡”下降的,而L2是按二次函数的“坡”下降。所以实际上在0附近,L1的下降速度比L2的下降速度要快。所以会非常快得降到0。

       L1在江湖上人称Lasso,L2人称Ridge。不过这两个名字还挺让人迷糊的,看上面的图片,Lasso的图看起来就像ridge,而ridge的图看起来就像lasso。


2、模型空间的限制

       为了便于可视化,我们考虑两维的情况,在(w1, w2)平面上可以画出目标函数的等高线,而约束条件则成为平面上半径为C的一个 norm ball 。等高线与 norm ball 首次相交的地方就是最优解:

       可以看到,L1-ball 与L2-ball 的不同就在于L1在和每个坐标轴相交的地方都有“角”出现,而目标函数的测地线除非位置摆得非常好,大部分时候都会在角的地方相交。注意到在角的位置就会产生稀疏性,例如图中的相交点就有w1=0,而更高维的时候(想象一下三维的L1-ball 是什么样的?)除了角点以外,还有很多边的轮廓也是既有很大的概率成为第一次相交的地方,又会产生稀疏性。

       相比之下,L2-ball 就没有这样的性质,因为没有角,所以第一次相交的地方出现在具有稀疏性的位置的概率就变得非常小了。这就从直观上来解释了为什么L1-regularization 能产生稀疏性,而L2-regularization 不行的原因了。

  •        因此,一句话总结就是:L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。Lasso在特征选择时候非常有用,而Ridge就只是一种规则化而已。

最后附上不同正则项的轮廓线


3、偏差和方差的区别

参考链接1:https://www.zhihu.com/question/20448464/answer/20039077
来源:知乎
参考链接2:https://www.jianshu.com/p/23550b50b6c1

来源:简书
偏差:描述的是预测值(估计值)的期望与真实值之间的差距。偏差越大,越偏离真实数据,如下图第二行所示。
方差:描述的是预测值的变化范围,离散程度,也就是离其期望值的距离。方差越大,数据的分布越分散,如下图右列所示。


另外参考《机器学习》(周志华一书),有:


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BAT机器学习面试1000系列 1 前言 1 BAT机器学习面试1000系列 2 1 归一化为什么能提高梯度下降法求解最优解的速度? 22 2 归一化有可能提高精度 22 3 归一化的类型 23 1)线性归一化 23 2)标准差标准化 23 3)非线性归一化 23 35. 什么是熵。机器学习 ML基础 易 27 熵的引入 27 3.1 无偏原则 29 56. 什么是卷积。深度学习 DL基础 易 38 池化,简言之,即取区域平均或最大,如下图所示(图引自cs231n) 40 随机梯度下降 46 批量梯度下降 47 随机梯度下降 48 具体步骤: 50 引言 72 1. 深度有监督学习在计算机视觉领域的进展 73 1.1 图像分类(Image Classification) 73 1.2 图像检测(Image Dection) 73 1.3 图像分割(Semantic Segmentation) 74 1.4 图像标注–看图说话(Image Captioning) 75 1.5 图像生成–文字转图像(Image Generator) 76 2.强化学习(Reinforcement Learning) 77 3深度无监督学习(Deep Unsupervised Learning)–预测学习 78 3.1条件生成对抗网络(Conditional Generative Adversarial Nets,CGAN) 79 3.2 视频预测 82 4 总结 84 5 参考文献 84 一、从单层网络谈起 96 二、经典的RNN结构(N vs N) 97 三、N VS 1 100 四、1 VS N 100 五、N vs M 102 Recurrent Neural Networks 105 长期依赖(Long-Term Dependencies)问 106 LSTM 网络 106 LSTM 的核心思想 107 逐步理解 LSTM 108 LSTM 的变体 109 结论 110 196. L1与L2范数。机器学习 ML基础 易 163 218. 梯度下降法的神经网络容易收敛到局部最优,为什么应用广泛?深度学习 DL基础 中 178 @李振华,https://www.zhihu.com/question/68109802/answer/262143638 179 219. 请比较下EM算法、HMM、CRF。机器学习 ML模型 中 179 223. Boosting和Bagging 181 224. 逻辑回归相关问 182 225. 用贝叶斯机率说明Dropout的原理 183 227. 什么是共线性, 跟过拟合有什么关联? 184 共线性:多变量线性回归中,变量之间由于存在高度相关关系而使回归估计不准确。 184 共线性会造成冗余,导致过拟合。 184 解决方法:排除变量的相关性/加入权重正则。 184 勘误记 216 后记 219
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值