备战AI求职季道机器学习面试题

导读:金三银四招聘季,小编特为大家整理了道关于机器学习方面的BAT面试大题,希望能助大家一臂之力,有些题目解析较长,所以就写了几行,更多解析可见七月在线   

EM算法是用于含有隐变量模型的极大似然估计或者极大后验估计,有两步组成:

E步,求期望(expectation);

M步,求极大(maxmization)。

本质上EM算法还是一个迭代算法,通过不断用上一代参数对隐变量的估计来对当前变量进行计算,直到收敛。   

注意:EM算法是对初值敏感的,而且EM是不断求解下界的极大化逼近求解对数似然函数的极大化的算法,也就是说EM算法不能保证找到全局最优值。对于EM的导出方法也应该掌握。

(2)HMM算法   

隐马尔可夫模型是用于标注问题的生成模型。有几个参数(π,A,B):初始状态概率向量π,状态转移矩阵A,观测概率矩阵B。称为马尔科夫模型的三要素。

马尔科夫三个基本问题:概率计算问题:给定模型和观测序列,计算模型下观测序列输出的概率。–》前向后向算法学习问题:已知观测序列,估计模型参数,即用极大似然估计来估计参数。–》Baum-Welch(也就是EM算法)和极大似然估计。

预测问题:已知模型和观测序列,求解对应的状态序列。–》近似算法(贪心算法)和维比特算法(动态规划求最优路径)

(3)条件随机场CRF   

给定一组输入随机变量的条件下另一组输出随机变量的条件概率分布密度。条件随机场假设输出变量构成马尔科夫随机场,而我们平时看到的大多是线性链条随机场,也就是由输入对输出进行预测的判别模型。求解方法为极大似然估计或正则化的极大似然估计。之所以总把HMM和CRF进行比较,主要是因为CRF和HMM都利用了图的知识,但是CRF利用的是马尔科夫随机场(无向图),而HMM的基础是贝叶斯网络(有向图)。而且CRF也有:概率计算问题、学习问题和预测问题。大致计算方法和HMM类似,只不过不需要EM算法进行学习问题。

(4)HMM和CRF对比   

其根本还是在于基本的理念不同,一个是生成模型,一个是判别模型,这也就导致了求解方式的不同。

43、带核的SVM为什么能分类非线性问题?

解析:

核函数的本质是两个函数的內积,通过核函数将其隐射到高维空间,在高维空间非线性问题转化为线性问题,SVM得到超平面是高维空间的线性分类平面,如图:

其分类结果也视为低维空间的非线性分类结果,因而带核的SVM就能分类非线性问题。

44、请说说常用核函数及核函数的条件

解析:

我们通常说的核函数指的是正定和函数,其充要条件是对于任意的x属于X,要求K对应的Gram矩阵要是半正定矩阵。RBF核径向基,这类函数取值依赖于特定点间的距离,所以拉普拉斯核其实也是径向基核。SVM关键是选取核函数的类型,常用核函数主要有线性内核,多项式内核,径向基内核(RBF),sigmoid核。

线性核函数

线性核,主要用于线性可分的情况,我们可以看到特征空间到输入空间的维度是一样的,其参数少速度快,对于线性可分数据,其分类效果很理想,因此我们通常首先尝试用线性核函数来做分类,看看效果如何,如果不行再换别的多项式核函数

多项式核函数

可以实现将低维的输入空间映射到高纬的特征空间,但是多项式核函数的参数多,当多项式的阶数比较高的时候,核矩阵的元素值将趋于无穷大或者无穷小,计算复杂度会大到无法计算。高斯(RBF)核函数

高斯径向基函数

是一种局部性强的核函数,其可以将一个样本映射到一个更高维的空间内,该核函数是应用最广的一个,无论大样本还是小样本都有比较好的性能,而且其相对于多项式核函数参数要少,因此大多数情况下在不知道用什么核函数的时候,优先使用高斯核函数。

sigmoid核函数

采用sigmoid核函数,支持向量机实现的就是一种多层神经网络。

因此,在选用核函数的时候,如果我们对我们的数据有一定的先验知识,就利用先验来选择符合数据分布的核函数;如果不知道的话,通常使用交叉验证的方法,来试用不同的核函数,误差最下的即为效果最好的核函数,或者也可以将多个核函数结合起来,形成混合核函数。

在吴恩达的课上,也曾经给出过一系列的选择核函数的方法:如果特征的数量大到和样本数量差不多,则选用LR或者线性核的SVM;如果特征的数量小,样本的数量正常,则选用SVM+高斯核函数;如果特征的数量小,而样本的数量很大,则需要手工添加一些特征从而变成第一种情况。

45、请具体说说Boosting和Bagging的区别

解析:

(1)Bagging之随机森林   

随机森林改变了决策树容易过拟合的问题,这主要是由两个操作所优化的:   

1)Boostrap从袋内有放回的抽取样本值   

2)每次随机抽取一定数量的特征(通常为sqr(n))。   

分类问题:采用Bagging投票的方式选择类别频次最高的   

回归问题:直接取每颗树结果的平均值。

常见参数  误差分析  优点  缺点

1、树最大深度

2、树的个数

3、节点上的最小样本数

4、特征数(sqr(n))  oob(out-of-bag)将各个树的未采样样本作为预测样本统计误差作为误分率  可以并行计算不需要特征选择可以总结出特征重要性可以处理缺失数据不需要额外设计测试集  在回归上不能输出连续结果

(2)Boosting之AdaBoostBoosting的本质实际上是一个加法模型,通过改变训练样本权重学习多个分类器并进行一些线性组合。而Adaboost就是加法模型+指数损失函数+前项分布算法。Adaboost就是从弱分类器出发反复训练,在其中不断调整数据权重或者是概率分布,同时提高前一轮被弱分类器误分的样本的权值。最后用分类器进行投票表决(但是分类器的重要性不同)。

(3)Boosting之GBDT将基分类器变成二叉树,回归用二叉回归树,分类用二叉分类树。和上面的Adaboost相比,回归树的损失函数为平方损失,同样可以用指数损失函数定义分类问题。但是对于一般损失函数怎么计算呢?GBDT(梯度提升决策树)是为了解决一般损失函数的优化问题,方法是用损失函数的负梯度在当前模型的值来模拟回归问题中残差的近似值。注:由于GBDT很容易出现过拟合的问题,所以推荐的GBDT深度不要超过6,而随机森林可以在15以上。

(4)Boosting之Xgboost这个工具主要有以下几个特点:支持线性分类器可以自定义损失函数,并且可以用二阶偏导加入了正则化项:叶节点数、每个叶节点输出sco的L2-norm支持特征抽样在一定情况下支持并行,只有在建树的阶段才会用到,每个节点可以并行的寻找分裂特征。

46、逻辑回归相关问题

解析:

(1)公式推导一定要会

(2)逻辑回归的基本概念   

这个最好从广义线性模型的角度分析,逻辑回归是假设y服从Bernoulli分布。

(3)L1-norm和L2-norm   

其实稀疏的根本还是在于L0-norm也就是直接统计参数不为0的个数作为规则项,但实际上却不好执行于是引入了L1-norm;而L1norm本质上是假设参数先验是服从Laplace分布的,而L2-norm是假设参数先验为Gaussian分布,我们在网上看到的通常用图像来解答这个问题的原理就在这。   

但是L1-norm的求解比较困难,可以用坐标轴下降法或是最小角回归法求解。

(4)LR和SVM对比   

首先,LR和SVM最大的区别在于损失函数的选择,LR的损失函数为Log损失(或者说是逻辑损失都可以)、而SVM的损失函数为hingeloss。   

其次,两者都是线性模型。   

最后,SVM只考虑支持向量(也就是和分类相关的少数点)

(5)LR和随机森林区别   

随机森林等树算法都是非线性的,而LR是线性的。LR更侧重全局优化,而树模型主要是局部的优化。

(6)常用的优化方法   

逻辑回归本身是可以用公式求解的,但是因为需要求逆的复杂度太高,所以才引入了梯度下降算法。   一阶方法:梯度下降、随机梯度下降、mini随机梯度下降降法。随机梯度下降不但速度上比原始梯度下降要快,局部最优化问题时可以一定程度上抑制局部最优解的发生。 

二阶方法:

牛顿法、拟牛顿法:   

这里详细说一下牛顿法的基本原理和牛顿法的应用方式。牛顿法其实就是通过切线与x轴的交点不断更新切线的位置,直到达到曲线与x轴的交点得到方程解。在实际应用中我们因为常常要求解凸优化问题,也就是要求解函数一阶导数为0的位置,而牛顿法恰好可以给这种问题提供解决方法。实际应用中牛顿法首先选择一个点作为起始点,并进行一次二阶泰勒展开得到导数为0的点进行一个更新,直到达到要求,这时牛顿法也就成了二阶求解问题,比一阶方法更快。我们常常看到的x通常为一个多维向量,这也就引出了Hessian矩阵的概念(就是x的二阶导数矩阵)。

缺点:牛顿法是定长迭代,没有步长因子,所以不能保证函数值稳定的下降,严重时甚至会失败。还有就是牛顿法要求函数一定是二阶可导的。而且计算Hessian矩阵的逆复杂度很大。

拟牛顿法:不用二阶偏导而是构造出Hessian矩阵的近似正定对称矩阵的方法称为拟牛顿法。拟牛顿法的思路就是用一个特别的表达形式来模拟Hessian矩阵或者是他的逆使得表达式满足拟牛顿条件。主要有DFP法(逼近Hession的逆)、BFGS(直接逼近Hession矩阵)、L-BFGS(可以减少BFGS所需的存储空间)。

47、什么是共线性,跟过拟合有什么关联?

解析:

共线性:多变量线性回归中,变量之间由于存在高度相关关系而使回归估计不准确。共线性会造成冗余,导致过拟合。

解决方法:排除变量的相关性/加入权重正则。

本题解析来源:

抽象猴,链接:   

2.1无量纲化      

2.1.1标准化      

2.1.2区间缩放法      

2.1.3标准化与归一化的区别   

2.2对定量特征二值化   

2.3对定性特征哑编码   

2.4缺失值计算   

2.5数据变换   

2.6回顾

3特征选择   

3.1Filter      

3.1.1方差选择法      

3.1.2相关系数法      

3.1.3卡方检验      

3.1.4互信息法   

3.2Wrapper      

3.2.1递归特征消除法   

3.3Embedded      

3.3.1基于惩罚项的特征选择法      

3.3.2基于树模型的特征选择法   

3.4回顾

4降维   

4.1主成分分析法(PCA)   

4.2线性判别分析法(LDA)   

4.3回顾5总结6参考资料

本题更多解析见七月在线







































北京治疗白癜风的正规医院
北京治疗白癜风哪家医院好啊



转载请注明:http://www.92nongye.com/zyjs/204621414.html