数据分析师笔试面试知识点总结

知识点1:贝叶斯公式
贝叶斯公式:P(B|A)=P(A|B)*P(B)/P(A)
其中P(A)可以展开为
P(A)=P(A|B1)P(B1)+P(A|B2)P(B2)+…+P(A|Bn)*P(Bn)
(这在很多问答题或者选择题中都有用到)

知识点2:分类
有监督就是给的样本都有标签,分类的训练样本必须有标签,所以分类算法都是有监督算法。监督机器学习问题无非就是“minimizeyour error while regularizing your parameters”,也就是在规则化参数的同时最小化误差。最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据,提高泛化能力。

1.朴素贝叶斯
1)基础思想:
对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此分类项属于哪个类别。
2)优点:
可以和决策树、神经网络分类算法相媲美,能运用于大型数据库中。
方法简单,分类准确率高,速度快,所需估计的参数少,对于缺失数据不敏感。
3)缺点:
假设一个属性对定类的影响独立于其他的属性值,这往往并不成立。(喜欢吃番茄、鸡蛋,却不喜欢吃番茄炒蛋)。
需要知道先验概率。
4)常见应用场景:
垃圾邮件识别、文章分类、文本分析、人脸识别

2.决策树
1)基础思想:
决策树是一种简单但广泛使用的分类器,它通过训练数据构建决策树,对未知的数据进行分类。决策树的每个内部节点表示在一个属性上的测试,每个分枝代表该测试的一个输出,而每个叶结点存放着一个类标号。
在决策树算法中,ID3基于信息增益作为属性选择的度量,C4.5基于信息增益比作为属性选择的度量,CART基于基尼指数作为属性选择的度量。
2)优点 :
不需要任何领域知识或参数假设。
适合高维数据。
简单易于理解。
短时间内处理大量数据,得到可行且效果较好的结果。
3)缺点:
对于各类别样本数量不一致数据,信息增益偏向于那些具有更多数值的特征。
易于过拟合。
忽略属性之间的相关性。

3.支持向量机
1)基础思想:
支持向量机把分类问题转化为寻找分类平面的问题,并通过最大化分类边界点距离分类平面的距离来实现分类。(适用于数值型和标称型数据)
2)优点 :
可以解决小样本下机器学习的问题。
提高泛化性能。
可以解决文本分类、文字识别、图像分类等方面仍受欢迎。
避免神经网络结构选择和局部极小的问题。
3)缺点:
缺失数据敏感。
对参数调节和核函数对选择敏感,原始分类器不加修改仅适用于处理二分类问题。
内存消耗大,难以解释。

4.K近邻
1)基础思想:
通过计算每个训练样例到待分类样品的距离,取和待分类样品距离最近的K个训练样例,K个样品中哪个类别的训练样例占多数,则待分类样品就属于哪个类别。
2)优点 :
适用于样本容量比较大的分类问题
3)缺点:
计算量太大
对于样本量较小的分类问题,会产生误分。

5.逻辑回归(LR)
1)基础思想:
回归模型中,y是一个定型变量,比如y=0或1,logistic方法主要应用于研究某些事件发生的概率。
2)优点 :
速度快,适合二分类问题。
简单易于理解,直接看到各个特征的权重。
能容易地更新模型吸收新的数据。
3)缺点:
对数据和场景的适应能力有局限,不如决策树算法适应性那么强
4)常见应用场景:
信用评估、计算营销的成功率、预测产品收益、预测特定的某天是否会发生地震

6.随即森林
1)基础思想:
随机森林里的每一棵决策树的建立,不仅对样本进行有放回(bootstrap)的随机抽样,还对特征进行随机抽样;即从原始输入的N个样本中每次抽取k个样本作为特征子集,建立m棵分类决策树;特征的随机抽样是指,在建每棵树进行每个节点分裂的时候,都随机抽一部分特征,然后在这随机抽的部分特征里面,用决策树的特征选择的方法(比如信息增益,或信息增益率)来决定使用最优的特征来作为分裂节点。
2)优点:
分类结果准确性高:使用多棵决策树的投票结果来决定随机森林分类器最终的分类判定结果。
自带特征筛选机制:“随机化”增加了RF算法的包容性,它可以更方便地处理高维特征而不需要预先进行特征筛选;因此,它也可以是特征筛选、异常点检测的一种手段。
训练出的模型的方差小,泛化能力强。
对部分特征缺失不敏感(对错误和离群点更加鲁棒性)。
3)缺点:
在某些噪音比较大的样本集上,RF模型容易陷入过拟合。
取值划分比较多的特征容易对RF的决策产生更大的影响,从而影响拟合的模型的效果。
RF的特征筛选并没有对特征进行组合加工或者其他变换(这点不如逻辑回归),同时没有加入近义词的考虑;因此在特征工程上面,这里还有很多优化的空间。
4)常见应用场景:
大数据情况下速度快(分布式)、性能好;图像处理。

知识点3:分类的评判指标
准确率和召回率广泛用于信息检索和统计分类领域
1)准确率(precision rate):提取出的正确信息条数/提取出的信息条数
2)召回率(recall rate):提取出的正确信息条数/样本中的信息条数
ROC和AUC是评价分类器的指标
3)ROC曲线
ROC关注两个指标
True Positive Rate ( TPR,真正率 ) = TP / [ TP + FN] ,TPR代表预测为正实际也为正占总正实例的比例
False Positive Rate( FPR,假正率 ) = FP / [ FP + TN] ,FPR代表预测为正但实际为负占总负实例的比例
在ROC 空间中,每个点的横坐标是FPR,纵坐标是TPR
4)AUC:AUC(Area Under Curve)
被定义为ROC曲线下的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。使用AUC值作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而AUC作为数值可以直观的评价分类器的好坏,值越大越好。
5)如何避免过拟合?
过拟合表现在训练数据上的误差非常小,而在测试数据上误差反而增大。其原因一般是模型过于复杂,过分得去拟合数据的噪声和outliers。
检查方法:learning curve对比是否发生过拟合,修改gamma参数来修正过拟合问题。

常见的解决办法是正则化是:增大数据集、正则化
正则化方法是指在进行目标函数或代价函数优化时,在目标函数或代价函数后面加上一个正则项,一般有L1正则与L2正则等。规则化项的引入,在训练(最小化cost)的过程中,当某一维的特征所对应的权重过大时,而此时模型的预测和真实数据之间距离很小,通过规则化项就可以使整体的cost取较大的值,从而在训练的过程中避免了去选择那些某一维(或几维)特征的权重过大的情况,即过分依赖某一维(或几维)的特征。

L1正则与L2正则区别:
L1:计算绝对值之和,用以产生稀疏性(使参数矩阵中大部分元素变为0),因为它是L0范式的一个最优凸近似,容易优化求解;
L2:计算平方和再开根号,L2范数更多是防止过拟合,并且让优化求解变得稳定很快速;所以优先使用L2 norm是比较好的选择。

知识点4:二叉树(前、中、后遍历)
(这里的前中后是指的根节点的遍历次序)
1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;
2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树;
3)后序遍历(LRD),首先遍历左子树,然后访问遍历右子树,最后访问根结点。

知识点5:几种基本排序算法
1)冒泡排序(Bubble Sort)
冒泡排序方法是最简单的排序方法。这种方法的基本思想是,将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。
冒泡排序是稳定的。算法时间复杂度是O(n^2)。
2)插入排序(Insertion Sort)
插入排序的基本思想是,经过i-1遍处理后,L[1…i-1]己排好序。第i遍处理仅将L[i]插入L[1…i-1]的适当位置,使得L[1…i]又是排好序的序列。
直接插入排序是稳定的。算法时间复杂度是O(n^2)。
3)堆排序
堆排序是一种树形选择排序,在排序过程中,将A[n]看成是完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系来选择最小的元素。
堆排序是不稳定的。算法时间复杂度O(nlog n)。
4)快速排序
快速排序是对冒泡排序的一种本质改进。快速排序通过一趟扫描,就能确保某个数(以它为基准点吧)的左边各数都比它小,右边各数都比它大。
快速排序是不稳定的。最理想情况算法时间复杂度O(nlog2n),最坏O(n ^2)。

知识点6:SQL知识
1)左连接、右连接、inner连接,full连接
2)修改表:
alter table 教师 add 奖金 in
alter table 教师 drop 奖金
alter table 教师 rename 奖金 to 津贴
3)怎样清空表数据,但不删除表结构
delete from tablename或者delete * from table_name
truncate table tablename
4)外键能不能为空
外键可以为空,为空表示其值还没有确定;
如果不为空,刚必须为主键相同。

知识点7:统计学基础知识
1)方差分析:
用于两个及两个以上样本均数差别的显著性检验,基本思想是:通过分析研究不同来源的变异对总变异的贡献大小,从而确定控制变量对研究结果影响力的大小。
2)主成分分析:
是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分(注:不适用于噪音多的数据,所有成分的方差要很高才行)。
3)幸存者偏差:
意思是指,当取得资讯的渠道,仅来自于幸存者时(因为死人不会说话),此资讯可能会存在与实际情况不同的偏差。

知识点8:缺失值处理
对于主观数据(如用户属性)一般不推荐插补的方法,插补主要是针对客观数据。
1)均值插补:
数据的属性分为定距型和非定距型。如果缺失值是定距型的,就以该属性存在值的平均值来插补缺失的值;如果缺失值是非定距型的,就根据统计学中的众数原理,用该属性的众数(即出现频率最高的值)来补齐缺失的值。
2)利用同类均值插补:
同均值插补的方法都属于单值插补,不同的是,它用层次聚类模型预测缺失变量的类型,再以该类型的均值插补。假设X=(X1,X2…Xp)为信息完全的变量,Y为存在缺失值的变量,那么首先对X或其子集行聚类,然后按缺失个案所属类来插补不同类的均值。(如果在以后统计分析中还需以引入的解释变量和Y做分析,那么这种插补方法将在模型中引入自相关,给分析造成障碍。)
3)极大似然估计:
在缺失类型为随机缺失的条件下,假设模型对于完整的样本是正确的,那么通过观测数据的边际分布可以对未知参数进行极大似然估计。对于极大似然的参数估计实际中常采用的计算方法是期望值最大化。它一个重要前提:适用于大样本。有效样本的数量足够以保证估计值是渐近无偏的并服从正态分布。(但是这种方法可能会陷入局部极值,收敛速度也不是很快,并且计算很复杂。
4)多重插补:
多值插补的思想来源于贝叶斯估计,认为待插补的值是随机的,它的值来自于已观测到的值。具体实践上通常是估计出待插补的值,然后再加上不同的噪声,形成多组可选插补值。根据某种选择依据,选取最合适的插补值。
该方法分为三个步骤:①为每个空值产生一套可能的插补值,这些值反映了无响应模型的不确定性;每个值都可以被用来插补数据集中的缺失值,产生若干个完整数据集合。②每个插补数据集合都用针对完整数据集的统计方法进行统计分析。③对来自各个插补数据集的结果,根据评分函数进行选择,产生最终的插补值。
假设一组数据,包括三个变量Y1,Y2,Y3,它们的联合分布为正态分布,将这组数据处理成三组,A组保持原始数据,B组仅缺失Y3,C组缺失Y1和Y2。在多值插补时,对A组将不进行任何处理,对B组产生Y3的一组估计值(作Y3关于Y1,Y2的回归),对C组作产生Y1和Y2的一组成对估计值(作Y1,Y2关于Y3的回归)。(通过Graham和Schafer验证(于1999),非正态联合分布的变量,在这个假定下仍然可以估计到很接近真实值的结果。)
5)对比贝叶斯极大似然估计和多重插补:
(1)贝叶斯估计以极大似然的方法估计,极大似然的方法要求模型的形式必须准确,如果参数形式不正确,将得到错误得结论,即先验分布将影响后验分布的准确性。而多重插补所依据的是大样本渐近完整的数据的理论,在数据挖掘中的数据量都很大,先验分布将极小的影响结果,所以先验分布的对结果的影响不大。
(2)贝叶斯估计仅要求知道未知参数的先验分布,没有利用与参数的关系。而多重插补对参数的联合分布作出了估计,利用了参数间的相互关系。

知识点9:模型优化
如何优化当前的机器学习模型,首先你要知道当前的模型是处于高方差状态还是高偏差状态,高方差需要增加训练数据或降低模型的复杂度,高偏差则需要优化当前模型,如增加迭代次数或提高模型的复杂度等。

你可能感兴趣的:(招聘,机器学习,数据分析师,笔试面试,机器学习)