机器学习面试150题+7天免费试听课(建议收藏)

前言

2012年起,AI越发火热,各大公司开始陆续招AI方面的人才,很多同学也会从网上找各种各样的机器学习笔试题、面试题,但和数据结构方面的题不同,AI的题网上极少。

本文特精选部分机器学习相关的面试题,供大家找工作中随时查阅、复习。

一般而言,进大厂讲究以下三方面的能力

  1. coding能力,这是最基本的能力,包括数据结构和算法,说白了,coding能力扎实,无论干IT还是干AI都不会太差,但很多人会忽略这方面的能力,可能AI各模型学的滚瓜烂熟,但面试让十分钟写个快速排序 迟迟动不了手;
  2. 机器学习、深度学习方面的能力,16年起随着AlphaGo的横空出世,深度学习瞬间横扫各个领域,这里面的重点包括各个模型:决策树、随机森林、xgboost、SVM、特征工程、CNN、RNN、LSTM等等;
  3. 根据不同业务场景的技术能力,比如对业务的理解、建模,当然不同方向会用到不同的技术,比如CV、NLP、推荐系统等等。

值得一提的是,想进大厂而需要具备的上述三方面的能力,在CSDN和七月在线联合开设的《机器学习集训营》都会讲,为了三个月挑战年薪四十万,集训营总共设计了八大阶段,十三个实战项目(三大企业项目、十个实训项目),涵盖Python基础与数据分析、机器学习原理、机器学习实战、深度学习原理、深度学习实战,以及CV 推荐 NLP三大方向的BAT工业级大项目实战、面试就业指导。

想免费试听集训营里svm与xgboost内容的(讲得非常透彻,胜过无数资料),可以留下联系方式,进行咨询。https://t.csdnimg.cn/5hlG

限于篇幅,本文不会把每一题的参考答案都加载出来,会摘出一些摘要,然后完整解析可以点击链接咨询,大家有任何问题欢迎随时留言、讨论、纠正,thanks。

机器学习面试150题(篇幅有限,在此只摘出70题)

  1. 请详细说说支持向量机(support vector machine,SVM)的原理
    支持向量机,因其英文名为support vector machine,故一般简称SVM,通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。
  2. 哪些机器学习算法不需要做归一化处理?

    在实际应用中,需要归一化的模型:
    1.基于距离计算的模型:KNN。
    2.通过梯度下降法求解的模型:线性回归、逻辑回归、支持向量机、神经网络。

    但树形模型不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率,如决策树、随机森林(Random Forest)。

  3. 树形结构为什么不需要归一化?
    因为数值缩放不影响分裂点位置,对树模型的结构不造成影响。
    按照特征值进行排序的,排序的顺序不变,那么所属的分支以及分裂点就不会有不同。而且,树模型是不能进行梯度下降的,因为构建树模型(回归树)寻找最优点时是通过寻找最优分裂点完成的,因此树模型是阶跃的,阶跃点是不可导的,并且求导没意义,也就不需要归一化。
  4. 在k-means或kNN,我们常用欧氏距离来计算最近的邻居之间的距离,有时也用曼哈顿距离,请对比下这两种距离的差别
    欧氏距离,最常见的两点之间或多点之间的距离表示法,又称之为欧几里得度量,它定义于欧几里得空间中..
  5. 数据归一化(或者标准化,注意归一化和标准化不同)的原因

    能不归一化最好不归一化,之所以进行数据归一化是因为各维度的量纲不相同。而且需要看情况进行归一化。

        有些模型在各维度进行了不均匀的伸缩后,最优解与原来不等价(如SVM)需要归一化。
        有些模型伸缩有与原来等价,如:LR则不用归一化,但是实际中往往通过迭代求解模型参数,如果目标函数太扁(想象一下很扁的高斯模型)迭代算法会发生不收敛的情况,所以最好进行数据归一化。

  6. 请简要说说一个完整机器学习项目的流程

    1 抽象成数学问题
    明确问题是进行机器学习的第一步。机器学习的训练过程通常都是一件非常耗时的事情,胡乱尝试时间成本是非常高的。
    这里的抽象成数学问题,指的我们明确我们可以获得什么样的数据,目标是一个分类还是回归或者是聚类的问题,如果都不是的话,如果划归为其中的某类问题。

    2 获取数据
    数据决定了机器学习结果的上限,而算法只是尽可能逼近这个上限。
    数据要有代表性,否则必然会过拟合。
    而且对于分类问题,数据偏斜不能过于严重,不同类别的数据数量不要有数个数量级的差距。
    而且还要对数据的量级有一个评估,多少个样本,多少个特征,可以估算出其对内存的消耗程度,判断训练过程中内存是否能够放得下。如果放不下就得考虑改进算法或者使用一些降维的技巧了。如果数据量实在太大,那就要考虑分布式了。

    3 特征预处理与特征选择
    良好的数据要能够提取出良好的特征..

  7. 逻辑斯蒂回归为什么要对特征进行离散化

    如七月在线老师所说
    ① 非线性!非线性!非线性!逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力,加大拟合; 离散特征的增加和减少都很容易,易于模型的快速迭代; 

    ② 速度快!速度快!速度快!稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展; 

    ③ 鲁棒性!鲁棒性!鲁棒性!离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰; 

    ④ 方便交叉与特征组合:离散化后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力; 

    ⑤ 稳定性:特征离散化后,模型会更稳定,比如如果对用户年龄离散化,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人。当然处于区间相邻处的样本会刚好相反,所以怎么划分区间是门学问; 

    ⑥ 简化模..

  8. 简单介绍下LR

    @rickjin:把LR从头到脚都给讲一遍。建模,现场数学推导,每种解法的原理,正则化,LR和maxent模型啥关系。有不少会背答案的人,问逻辑细节就糊涂了。

    原理都会? 那就问工程,并行化怎么做,有几种并行化方式,读过哪些开源的实现。还会,那就准备收了吧,顺便逼问LR模型发展历史。

    虽然逻辑斯蒂回归姓回归,不过其实它的真实身份是二分类器。先弄清楚一个概念:线性分类器..

  9. overfitting怎么解决
    overfitting就是过拟合, 其直观的表现如下图所示,随着训练过程的进行,模型复杂度增加,在training data上的error渐渐减小,但是在验证集上的error却反而渐渐增大——因为训练出来的网络过拟合了训练集, 对训练集外的数据却不work, 这称之为泛化(generalization)性能不好。泛化性能是训练的效果评价中的首要目标,没有良好的泛化,就等于南辕北辙, 一切都是无用功。
  10. LR和SVM的联系与区别

    解析一
    LR和SVM都可以处理分类问题,且一般都用于处理线性二分类问题(在改进的情况下可以处理多分类问题) 

    区别: 
    1、LR是参数模型&

  • 18
    点赞
  • 156
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值