暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【数据分析岗】机器学习(一)

数据攻略 2021-08-25
339

几乎所有大厂数据分析JD,都有 建模 二字

尽管,在实际工作中的应用频次并不是最高

但,仍然是面试 需掌握技能 之一


机器学习涉及算法众多,

面试是否一定会考?咋考?

是否有必要全都掌握?

▶ 掌握到什么程度算ok?能面试不慌?

 秋招时间宝贵,怎么复习最高效?


应读者强烈要求,将开启

—— 面试篇之 “ 机器学习 ” 系列 !

文章还是老规矩 围绕考点 ,高效提炼

即,结合高频面试算法,从简到难,逐一介绍


本篇,先从最简单的两个算法开始梳理:

  • 线性回归
  • 决策树

内含 原理解析(含重点) + 高频面试真题 



------正文手动分割线------

本文结构速览:
1. 线性回归

    ▪ 核心定义

    ▪ 面试题(含答案)

2. 决策树

    ▪ 核心定义

    ▪ 特征选择方式

    ▪ 面试题(含答案)



01


 线性回归

一、核心概念理解

“回归”这个词源于弗朗西斯·高尔顿爵士

他发现高个子父亲的儿子身高会比父亲矮一些

而矮个子父亲的儿子身高会比父亲高一些

否则高个子家族越来越高,矮子家族越来越矮

就是说人类的身高都会回到平均值附近

他将这种现象称为 均值回归


高尔顿通过随机抽样,得到一批父子身高样本

然后通过线性回归进行拟合,得到以下结果




这个数据表明:

父亲身高<1.77米,儿子的身高会比父亲高

父亲身高>1.77米,儿子的身高会比父亲矮

父亲身高越高,儿子的身高也会越高


▼ 定义:线性回归就是利用线性回归方程的最小平方函数对一个或者多个自变量和因变量进行建模。

  • 只有一个自变量的情况称为一元线性回归。

  • 大于一个自变量的情况叫做多元回归。


优点相比其他算法,线性回归优势在于可解释性强。即便是不懂算法的产品和开发都可以轻松理解模型的输出结果。

因此,线性回归在数据分析师日常工作中使用频率较高。


二、经典笔面试题


经典问题1:线性回归要求因变量符合正态分布

答:是的。线性回归的假设前提是特征与预测值呈线性关系,误差项符合高斯-马尔科夫条件(零均值,零方差,不相关),这时候线性回归是无偏估计。噪声符合正态分布,那么因变量也符合分布。在进行线性回归之前,要求因变量近似符合正态分布,否则线性回归效果不佳(有偏估计)


经典问题2:如何判断是否符合正态分布?如果不符合正态分布要怎么办?

答:通过计算数据分布的偏度和峰度值,如果偏度大于3,那么需要对数据进行转换。具体的转换公式需要结合数据分布进行决策。常见的转换方法有:Log转换,根号转换等。


经典问题3:线性回归的前提假设有哪些?
  • 自变量和因变量呈线性关系。

  • 误差之间相互独立

  • 自变量相互独立

  • 误差项的方差应为常数

  • 误差呈正态分布


经典问题4:如果线性回归模型效果不好,原因是什么?
  • 自变量和因变量不是线性关系

  • 自变量之间不是相互独立

  • 模型过拟合。


02


 决策树

一、核心概念理解

决策树是树结构,可以是二叉树或非二叉树

使用决策树进行决策的过程就是从根节点开始,根据测试集相应的特征属性,一步步走到树的叶子节点,并将叶子节点存放的类别作为决策的结果。


为方便理解,下面直接引用周志华老师《机器学习》上的某例:


现有一批西瓜的数据集如下,属性集合为{色泽、根蒂,敲声,纹理,脐部、触感} 以及好瓜、坏瓜标记




基于信息增益率生成的决策树。通过这棵树的节点走向,可以判断每个西瓜是好瓜还是坏瓜。



比如现在买了一个西瓜,纹理清洗,根蒂蜷缩,那么根据这个决策树,可以知道,这是一个好瓜。


决策树生成的关键在于如何进行特征选择

一般而言,随着划分过程不断进行,我们希望决策树的分支节点所包含的样本尽可能属于同一类别,即结点的 “纯度” 越来越高。


二、特征选择方法


【1】信息增益(ID3算法)


信息熵是度量样本集合纯度最常用的一种指标。假定当前样本集合D中第k类样本所占的比例为pk(k=1,2,...n),则D的信息熵定义为



▼ 举例:

假设有一批西瓜,一半是好瓜,一半是坏瓜,那么信息熵为

Ent(D) =-( 0.5*log2(0.5)+0.5*log2(0.5) )=1

如果这批西瓜,全部是好瓜,那么信息熵为

Ent(D)=-( 0*log2(0) + 1*log2(1) )=0


▼ 重点:Ent(D)的值越小,则D的纯度越高。


假设离散属性a有V个可能的取值,那么用属性a对样本集D进行划分获得信息增益即为:



简单来说,信息增益就是通过增加某一特征属性,样本将被拆分成N个集合,信息熵的提升量。


比如,根据纹理,我们可以将西瓜数据集拆分成,纹理清晰集合、纹理模糊集合、纹理稍糊集合。通过分别计算这三个集合的信息熵及该集合样本的占比,得到这一特征属性的信息熵。最后比对在不进行集合拆分的情况下,信息熵的差值 即为信息增益。


【2】增益率(C4.5算法)


如果把编号也做了一个属性划分,那么编号的信息增益将达到最大。这很容易理解,编号将产生17个分支,每个分支结点仅包含一个样本,这个分支结点的纯度必定是最大的。然后,这样的决策树显然不具有泛化能力,无法对新样本进行有效预测。


实际上,信息增益准则对可取数目较多的属性有所偏好,为了减少这种偏好带来的不利影响,我们使用增益率进行特征选择,增益率的定义为:

其中,



称为属性a的固定值,属性a的可能取值数目越多(即V越大),则IV(a)的值通常会越大


【3】基尼指数(CART算法)


CART决策树使用基尼指数来选择划分属性,基尼系数的定义为:


直观来说,基尼系数反应了从数据集D中随机抽取两个样本,其类别标记不一致的概率。

因此,基尼系数越小,则数据集D的纯度越高。


那么属性a的基尼指数定义为:




于是,我们候选属性集合A中,选择那个使得划分后基尼指数最小的属性最为最优划分属性。


需要特别说明的是,CART是个二叉树

即当使用某个特征划分样本集合只有两个集合:
  • 等于给定的特征值 的样本集合D1 

  • 不等于给定的特征值 的样本集合D


三、经典笔面试题
经典面试题1:信息增益率有什么优点

信息增益率是信息增益的一种改进,对属性值多的样本做一下惩罚,避免分类的时候偏向于优先划分属性值多的特征。


经典面试题2:C4.5与CART的区别

C4.5可以是多叉树,而CART只能是二叉树

C4.5的特征在每个层级之间不会复用,CART的每个特征可以复用

C4.5只能做分类,CART既可以做分类也可以做回归,分类的时候用Gini指数,回归的时候用平方差。


经典面试题3:为什么要进行剪枝?如何对决策树进行剪枝?

剪枝是为了防止过拟合,剪枝的方法有预剪枝和后剪枝。


经典面试题4:如何避免决策树的过拟合

剪枝、减少特征、增加样本。



以上 就是关于线性回归和决策树算法的梳理。

后续 会针对其他面试高频算法进行系列讲解


注:本篇阅读如破500

立马安排机器学习高频考点(二)

欢迎转发~~



适逢秋招,需要各厂  内推码  可后台联系我~

希望可以帮到正在找工作的你,加油


若本篇对你有帮助,欢迎转发,点亮在看

你的鼓励,是对创造者最大的支持~

也可以在公众号后台找到我,说说你的困惑 ~


 欢迎关注

更多 『求职干货』 & 『日常学习』 系列好文,等你发现~




文章转载自数据攻略,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论