《机器学习高频面试题详解》1.2:逻辑回归(下)

前言

大家好,我是鬼仔。今天继续带来《机器学习高频面试题详解》专栏的第1.2节:逻辑回归,这是本周鬼仔更新的第二篇专栏文章,鬼仔希望写的每篇专栏文章能够将一个知识点讲透、讲深,也希望读者能从鬼仔的文章中有所收获。

欢迎大家订阅该专栏,目前这篇是试读,后续的文章需要订阅才能查看哦(每周一更/两更),专栏预计更新30篇文章(只增不减),具体内容可以看专栏介绍,大家的支持是鬼仔更新的动力!

二、面试真题

6. 梯度下降算法有哪几种分类,各有什么优缺点?

(1)批量梯度下降(BGD):批量梯度下降法是最原始的形式,它是指在每一次迭代时使用所有样本来进行梯度的更新。

优点:

  • 一次迭代是对所有样本进行计算,此时利用矩阵进行操作,实现了并行,迭代的次数相对较少。
  • 由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。当目标函数为凸函数时,BGD一定能够得到全局最优。

缺点:

  • 当样本数目很大时,每迭代一步都需要对所有样本计算,训练过程会很慢。

(2)随机梯度下降(SGD):每次迭代使用一个样本来对参数进行更新。使得训练速度加快。

优点:

  • 由于不是在全部训练数据上的损失函数,而是在每轮迭代中,随机优化某一条训练数据上的损失函数,这样每一轮参数的更新速度大大加快。

缺点:

  • 准确度下降。由于即使在目标函数为强凸函数的情况下,SGD仍旧无法做到线性收敛。
  • 可能会收敛到局部最优,由于单个样本并不能代表全体样本的趋势。
  • 不易于并行实现。

(3)小批量梯度下降(MBGD):是对批量梯度下降以及随机梯度下降的一个折中办法。其思想是:每次迭代使用 batch_size个样本来对参数进行更新。

优点:

  • 通过矩阵运算,每次在一个batch上优化神经网络参数并不会比单个数据慢太多。
  • 每次使用一个batch可以大大减小收敛所需要的迭代次数,同时可以使收敛到的结果更加接近梯度下降的效果。
  • 可实现并行化。

缺点:

  • batch_size的不当选择可能会带来一些问题。

7. 在MBGD(mini-Batch Gradient Descent)算法中

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

机器学习高频面试题详解 文章被收录于专栏

专栏作者曾在校招期间拿到包括字节、微信和华为等多家大厂的SSP offer,该专栏主要是为了帮助同学们系统性地学习和掌握机器学习中的基础知识。专栏详细地整理了各大厂的算法岗面经,力争深入浅出地讲解重要知识点,适合人群为准备校招或者实习,且目标岗位为算法岗、数据挖掘岗或者数据分析岗的同学。

全部评论
占个二楼
1 回复 分享
发布于 2022-11-03 18:34 北京
不会是校友吧
点赞 回复 分享
发布于 2023-02-11 12:41 广东
占个一楼
点赞 回复 分享
发布于 2022-11-03 17:19 上海

相关推荐

测评完挂了
搞机墨镜猫:之前内推人就说他们测评是真挂人
投递安克创新 Anker等公司10个岗位
点赞 评论 收藏
分享
DKS233:(1)专业技能:Java8也太旧了,最少也要了解到JDK17吧,可以参考现在SpringBoot支持的Java最低版本,熟悉mysql基本理论具体指啥,是锁这种具体原理还是分库分表这些业务场景,spring这些专业词汇,大小写要写对(全篇简历都有这个问题,显得不严谨),熟悉使用框架进行业务开发就别写了,如果要写,起码要写到框架原理部分吧,比如aop,启动原理什么的,springcloud具体指哪些模块呢,写清楚,网关还是鉴权还是什么,“改造”没必要写吧,你直接说用springcloud开发的不就行了(2)项目经历:首先格式就有大问题,时间怎么能换行呢,调整一下,响应速度那个,如果指的是将部分数据从其他数据库转到redis的提升就别写了,因为这个不算难点,redis可以写写分布式这些,比如容灾怎么实现的,数据库同步怎么做的
点赞 评论 收藏
分享
程序员小白条:学历GG,这个排版布局,还有行间距和字缩进不大行,女生自我要求应该更高才是,没内容,起码美观这块要做好
投了多少份简历才上岸
点赞 评论 收藏
分享
08-30 12:26
已编辑
广州市第二中学 Java
点赞 评论 收藏
分享
评论
35
57
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务