添加微信:julyedufu,回复 “ 8 ”,领取最新升级版《名企AI面试100题》电子书!!
51、KMeans算法k值及初始类簇中心点的选取
KMeans算法是最常用的聚类算法,主要思想是:在给定K值和K个初始类簇中心点的情况下,把每个点(亦即数据记录)分到离其最近的类簇中心点所代表的类簇中,所有点分配完毕之后,根据一个类簇内的所有点重新计算该类簇的中心点(取平均值),然后再迭代的进行分配点和更新类簇中心点的步骤,直至类簇中心点的变化很小,或者达到指定的迭代次数。 KMeans算法本身思想比较简单,但是合理的确定K值和K个初始类簇中心点对于聚类效果的好坏有很大的影响。
52、解释对偶的概念
一个优化问题可以从两个角度进行考察,一个是primal 问题,一个是dual 问题,就是对偶问题,一般情况下对偶问题给出主问题最优值的下界,在强对偶性成立的情况下由对偶问题可以得到主问题的最优下界,对偶问题是凸优化问题,可以进行较好的求解,SVM中就是将primal问题转换为dual问题进行求解,从而进一步引入核函数的思想。
53、如何进行特征选择?
特征选择是一个重要的数据预处理过程,主要有两个原因:一是减少特征数量、降维,使模型泛化能力更强,减少过拟合;二是增强对特征和特征值之间的理解。 常见的特征选择方式:
- 去除方差较小的特征
- 正则化。1正则化能够生成稀疏的模型。L2正则化的表现更加稳定,由于有用的特征往往对应系数非零。
- 随机森林,对于分类问题,通常采用基尼不纯度或者信息增益,对于回归问题,通常采用的是方差或者最小二乘拟合。一般不需要feature engineering、调参等繁琐的步骤。它的两个主要问题,1是重要的特征有可能得分很低(关联特征问题),2是这种方法对特征变量类别多的特征越有利(偏向问题)。
- 稳定性选择。是一种基于二次抽样和选择算法相结合较新的方法,选择算法可以是回归、SVM或其他类似的方法。它的主要思想是在不同的数据子集和特征子集上运行特征选择算法,不断的重复,最终汇总特征选择结果,比如可以统计某个特征被认为是重要特征的频率(被选为重要特征的次数除以它所在的子集被测试的次数)。理想情况下,重要特征的得分会接近100%。稍微弱一点的特征得分会是非0的数,而最无用的特征得分将会接近于0。
54、衡量分类器的好坏?
这里首先要知道TP、FN(真的判成假的)、FP(假的判成真)、TN四种(可以画一个表格)。
55、机器学习和统计里面的auc的物理意义是啥?
auc是评价模型好坏的常见指标之一,本题解析来自: www.zhihu.com/question/39… 分三部分,第一部分是对AUC的基本介绍,包括AUC的定义,解释,以及算法和代码,第二部分用逻辑回归作为例子来说明如何通过直接优化AUC来训练,第三部分,内容完全由@李大猫原创——如何根据auc值来计算真正的类别,换句话说,就是对auc的反向工程。
56、数据预处理
- 缺失值,填充缺失值fillna: i. 离散:None, ii. 连续:均值。 iii. 缺失值太多,则直接去除该列
- 连续值:离散化。有的模型(如决策树)需要离散值
- 对定量特征二值化。核心在于设定一个阈值,大于阈值的赋值为1,小于等于阈值的赋值为0。如图像操作
- 皮尔逊相关系数,去除高度相关的列
57、观察增益gain, alpha和gamma越大,增益越小?
xgboost寻找分割点的标准是最大化gain. 考虑传统的枚举每个特征的所有可能分割点的贪心法效率太低,xgboost实现了一种近似的算法。大致的思想是根据百分位法列举几个可能成为分割点的候选者,然后从候选者中计算Gain按最大值找出最佳的分割点。它的计算公式分为四项, 可以由正则化项参数调整(lamda为叶子权重平方和的系数, gama为叶子数量)..
58、什麽造成梯度消失问题?
Yes you should understand backdrop-Andrej Karpathy How does the ReLu solve the vanishing gradient problem? 神经网络的训练中,通过改变神经元的权重,使网络的输出值尽可能逼近标签以降低误差值,训练普遍使用BP算法,核心思想是,计算出输出与标签间的损失函数值,然后计算其相对于每个神经元的梯度,进行权值的迭代。 梯度消失会造成权值更新缓慢,模型训练难度增加。造成梯度消失的一个原因是,许多激活函数将输出值挤压在很小的区间内,在激活函数两端较大范围的定义域内梯度为0,造成学习停止。
59、到底什么是特征工程?
首先,大多数机器学习从业者主要在公司做什么呢?不是做数学推导,也不是发明多高大上的算法,而是做特征工程,如下图所示(图来自: www.julyedu.com/video/play/…
60、你知道有哪些数据处理和特征工程的处理?
这主要是由于数据分布不平衡造成的。解决方法如下: 采样,对小样本加噪声采样,对大样本进行下采样 数据生成,利用已知样本生成新的样本 进行特殊的加权,如在Adaboost中或者SVM中 采用对不平衡数据集不敏感的算法 改变评价标准:用AUC/ROC来进行评价 采用Bagging/Boosting/ensemble等方法 在设计模型的时候考虑数据的先验分布
63、特征比数据量还大时,选择什么样的分类器?
线性分类器,因为维度高的时候,数据一般在维度空间里面会比较稀疏,很有可能线性可分。
64、常见的分类算法有哪些?他们各自的优缺点是什么?
贝叶斯分类法 优点: 1)所需估计的参数少,对于缺失数据不敏感。 2)有着坚实的数学基础,以及稳定的分类效率。 缺点: 1)假设属性之间相互独立,这往往并不成立。(喜欢吃番茄、鸡蛋,却不喜欢吃番茄炒蛋)。 2)需要知道先验概率。 3)分类决策存在错误率。
65、常见的监督学习算法有哪些?
感知机、svm、人工神经网络、决策树、逻辑回归
作者:七月在线 七仔 链接: zhuanlan.zhihu.com/p/217494137 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
66、说说常见的优化算法及其优缺点?
1)随机梯度下降 优点:容易陷入局部最优解 缺点:收敛速度较快 2)批量梯度下降 优点:可以一定程度上解决局部最优解的问题
67、特征向量的归一化方法有哪些?
线性函数转换,表达式如下: y=(x-MinValue)/(MaxValue-MinValue) 对数函数转换,表达式如下: y=log10 (x) 反余切函数转换 ,表达式如下: y=arctan(x)*2/PI 减去均值,除以标准差: y=(x-means)/ Standard Deviation
68、RF与GBDT之间的区别与联系?
1)相同点:都是由多棵树组成,最终的结果都是由多棵树一起决定。 2)不同点: a 组成随机森林的树可以分类树也可以是回归树,而GBDT只由回归树组成; b 组成随机森林的树可以并行生成,而GBDT是串行生成 c 随机森林的结果是多数表决表决的,而GBDT则是多棵树累加之和 d 随机森林对异常值不敏感,而GBDT对异常值比较敏感 e 随机森林是减少模型的方差,而GBDT是减少模型的偏差 f GBDT的会累加所有树的结果,而这种累加是无法通过分类完成的,因此GBDT的树都是CART回归树,而不是分类树(尽管GBDT调整后也可以用于分类但不代表GBDT的树为分类树)
69、试证明样本空间中任意点 x 到超平面 (w,b) 的距离公式
机器学习高频面试真题整理 机器学习高频面试真题整理 70、请比较下EM算法、HMM、CRF 这三个放在一起不是很恰当,但是有互相有关联,所以就放在这里一起说了。注意重点关注算法的思想。 (1)EM算法 EM算法是用于含有隐变量模型的极大似然估计或者极大后验估计,有两步组成:E步,求期望(expectation);M步,求极大(maxmization)。本质上EM算法还是一个迭代算法,通过不断用上一代参数对隐变量的估计来对当前变量进行计算,直到收敛。 注意:EM算法是对初值敏感的,而且EM是不断求解下界的极大化逼近求解对数似然函数的极大化的算法,也就是说EM算法不能保证找到全局最优值。对于EM的导出方法也应该掌握。
71、带核的SVM为什么能分类非线性问题?
核函数的本质是两个函数的內积,通过核函数将其隐射到高维空间,在高维空间非线性问题转化为线性问题, SVM得到超平面是高维空间的线性分类平面。
72、请说说常用核函数及核函数的条件
我们通常说的核函数指的是正定和函数,其充要条件是对于任意的x属于X,要求K对应的Gram矩阵要是半正定矩阵。RBF核径向基,这类函数取值依赖于特定点间的距离,所以拉普拉斯核其实也是径向基核。SVM关键是选取核函数的类型,常用核函数主要有线性内核,多项式内核,径向基内核(RBF),sigmoid核。
73、请具体说说Boosting和Bagging的区别
(1) Bagging之随机森林 随机森林改变了决策树容易过拟合的问题,这主要是由两个操作所优化的: 1)Boostrap从袋内有放回的抽取样本值 2)每次随机抽取一定数量的特征(通常为sqr(n))。 分类问题:采用Bagging投票的方式选择类别频次最高的 回归问题:直接取每颗树结果的平均值。
74、逻辑回归相关问题
(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的损失函数为hinge loss。 其次,两者都是线性模型。 最后,SVM只考虑支持向量(也就是和分类相关的少数点)
(5)LR和随机森林区别 随机森林等树算法都是非线性的,而LR是线性的。LR更侧重全局优化,而树模型主要是局部的优化。
... ...
75、什么是共线性, 跟过拟合有什么关联?
共线性:多变量线性回归中,变量之间由于存在高度相关关系而使回归估计不准确。 共线性会造成冗余,导致过拟合。 解决方法:排除变量的相关性/加入权重正则。