机器学习面经-LR

一、简介

LR(Logistic Regression,逻辑回归)虽然名字中带有"回归",但实际上是一种用于分类问题的统计学习方法,而不是传统的回归问题。它是一种广泛应用于机器学习和统计分析的算法,特别适用于二分类问题,也可以扩展到多分类问题。LR的基本思想是,通过一个线性函数的组合,将特征和类别之间的关系建模为一个概率。然后,通过一个逻辑函数(通常是sigmoid函数)将这个概率转化为一个落在0到1之间的数,表示某样本属于某一类别的概率。在训练过程中,LR会调整模型参数,使得模型预测的概率与实际类别标签尽可能一致。

二、面经

1、写一下LR的公式,它的损失函数是什么,推导一下?

参考回答:它的公式就是里面一个线性的函数,然后通过一个sigmoid激活函数组成,能够将所有的输入映射到[0,1]这个一个区间中。逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。

LR的公式如下:

LR的损失函数如下:

损失函数的推导如下:

2、介绍一下逻辑回归和线性回归的关系?

参考回答:逻辑回归和线性回归虽然在名称上很相似,但实际上是两个不同的算法,用于解决不同类型的问题。以下是它们之间的关系和区别:

1、逻辑回归用于解决分类问题,线性回归用于解决预测回归问题;

2、逻辑回归的输出是一个概率值,表示属于某一类别的概率,范围在0到1之间;线性回归的输出是一个连续的数值,可以是任意实数;

3、逻辑回归使用交叉熵损失函数,衡量模型预测概率与实际标签之间的差距;线性回归通常使用均方误差(MSE)等损失函数,衡量预测值与真实值之间的差距。

4、逻辑回归通过最小化损失函数来估计参数,通常使用梯度下降法或其他优化算法。线性回归也通过最小化损失函数来估计模型参数,通常使用最小二乘法或梯度下降法。

3、LR的损失函数以及逻辑回归和最大似然的关系?

参考回答:LR的损失函数为交叉熵损失,也可以叫做logloss对数损失,它的具体公式也在面经1中已经介绍了,可以返回详细看下。简单来说,它就是假设样本服从伯努利分布(0-1),我们就能求的单个样本的极大似然函数,然后扩散到整个样本集,就能得到整个样本的似然函数,我们的目的就是要求得这个似然函数的最大值,也就是极大似然。

4、LR为什么用sigmoid函数?

参考回答:1、Sigmoid函数将任意实数映射到区间(0, 1),在逻辑回归中,这个区间可以被解释为概率。这样,模型的输出可以被理解为样本属于正类的概率,符合逻辑回归的目标。2. Sigmoid函数的导数可以用Sigmoid函数本身表示,这使得梯度计算相对容易。在梯度下降等优化算法中,梯度的计算是很关键的,而Sigmoid函数的导数可以用数学上的简单形式来表示。3. Sigmoid函数的公式相对简单,便于处理和计算。

5、逻辑回归是一个分类算法,可以用来解决回归问题吗?

参考回答:逻辑回归是一个分类算法,通常用于解决分类问题,而不是回归问题。虽然名称中包含了"回归"一词,但实际上是因为它在数学形式上与线性回归有些相似,但用途和应用是不同的。逻辑回归的目标是预测一个样本属于某个类别的概率,输出结果是一个介于0和1之间的概率值。这样的输出适用于分类问题,例如判断电子邮件是否为垃圾邮件、疾病是否发生等。对于回归问题,目标是预测一个连续的数值输出。典型的回归算法包括线性回归、决策树回归、神经网络回归等。这些算法用于预测房价、销售额、温度等连续数值。虽然逻辑回归主要用于分类问题,但它也可以用于处理多类别分类问题,或者在一些情况下可以进行变种以适应回归问题,例如在逻辑回归的基础上进行拓展,但通常在解决回归问题时会选择专门的回归算法来获得更好的性能。

6、逻辑回归怎么做多分类?

参考回答:多分类问题一般将二分类推广到多分类的方式有三种,一对一,一对多,多对多。一对一:将N个类别两两配对,产生N(N-1)/2个二分类任务,测试阶段新样本同时交给所有的分类器,最终结果通过投票产生。一对多:每一次将一个例作为正例,其他的作为反例,训练N个分类器,测试时如果只有一个分类器预测为正类,则对应类别为最终结果,如果有多个,则一般选择置信度最大的。多对多:若干各类作为正类,若干个类作为反类。注意正反类必须特殊的设计。

7、线性回归用平方和损失、逻辑回归用logloss,为什么逻辑回归不用平方和损失?

参考回答:逻辑回归使用交叉熵损失(Log Loss)而不是平方和损失,主要是因为逻辑回归的目标函数和输出特性与平方和损失不太匹配。以下是一些原因解释为什么逻辑回归通常不使用平方和损失:

  • 不适合概率预测: 逻辑回归的输出是一个介于0和1之间的概率值,而平方和损失在计算误差时会对较大的误差更加敏感。由于逻辑回归的输出范围限制在0到1之间,使用平方和损失可能会导致训练过程不稳定,不适合对概率预测进行建模。
  • 非凸优化问题: 使用平方和损失的线性回归问题是一个凸优化问题,但将其应用于逻辑回归时,由于逻辑函数的非线性变换,损失函数会变成非凸的。这样的非凸优化问题可能会导致训练过程陷入局部最小值,并影响模型的性能。
  • 不平衡类别: 在分类问题中,类别不平衡(即正负样本数量差异较大)是常见情况。平方和损失在这种情况下可能会导致模型偏向于预测数量较多的类别,而忽略数量较少的类别。
  • 概率交叉熵的信息论解释: 交叉熵损失在信息论中有着明确的解释,与概率分布之间的差异有关,适用于逻辑回归的概率预测问题。

8、LR的使用场景,怎么引入的非线性?为什么要特征离散化?

参考回答:我们在使用逻辑回归的时候很少会把数据直接丢给LR来训练,我们一般会对特征进行离散化处理。离散后稀疏向量内积乘法运算速度更快,计算结果也方便存储,容易扩展。离散后的特征对异常值更具鲁棒性,如age>30为1否则为0,对于年龄为200的也不会对模型造成很大的干扰。其次LR属于广义线性模型,表达能力有限,经过离散化后,每个变量有单独的权重,这相当于引入了非线性,能够提升模型的表达能力,加大拟合。离散后特征可以进行特征交叉,提升表达能

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

小白机器学习面试指南 文章被收录于专栏

林小白的机器学习指南,从本人面试的机器学习算法岗位出发,对机器学习“八股文”做详细的介绍、推导;

全部评论
mark
点赞 回复 分享
发布于 2023-07-26 02:57 江苏
m
点赞 回复 分享
发布于 2023-07-28 02:21 北京
mark
点赞 回复 分享
发布于 2023-07-28 12:37 江苏
mark
点赞 回复 分享
发布于 2023-07-28 22:01 安徽
mark
点赞 回复 分享
发布于 2023-07-28 22:55 安徽
mark
点赞 回复 分享
发布于 2023-08-30 15:44 陕西

相关推荐

点赞 评论 收藏
分享
01-18 09:26
已编辑
门头沟学院 Java
王桑的大offer:建议中间件那块写熟悉即可,写掌握 面试包被拷打到昏厥
点赞 评论 收藏
分享
评论
9
39
分享

创作者周榜

更多
牛客网
牛客企业服务