机器学习面试考点大杂烩

^_- 更新中 ……


一、决策树

1 划分规则

1.1 如何选择最优划分属性? 划分过程中,在每一次划分时,选取能使其“不纯度”减小最大的属性。

1.2 常用的衡量“不纯度”的指标。信息增益,信息增益比(信息增益率),基尼系数。

1.3 以上三种指标的具体公式

  1)信息增益(对应算法:ID3)

  

  先介绍一下信息熵的公式:

Entropy(D)=i=1Ip(iD)log(p(iD))Entropy(D) = -\sum_{i=1}^{I}p(i|D)log(p(i|D))

  其中,DD 表示当前样本集合;II 为样本类别数;p(iD)p(i|D) 为第 ii 类样本的占比。

  信息增益 (Information Gain):

Gain(D)=Entropy(D)v=1VDvDEntropy(Dv)Gain(D) = Entropy(D) -\sum_{v=1}^{V}\frac{|D^v|}{|D|}Entropy(D^v)

  其中,D|D| 表示当前样本总的数目;VV 为根据某一属性划分后的分支数(类数);Dv|D^v| 为划分后第 vv 类的样本数目。

  2)信息增益比(对应算法:C4.5)

  信息增益比是对信息增益的改进,因为信息增益偏向于例如 ID 这样的属性。

Gain_ratio(D)=Gain(D)IV(D)Gain\_ratio(D)=\frac{Gain(D)}{IV(D)}

  其中,

IV(D)=v=1VDvDlogDvDIV(D)={-\sum_{v=1}^{V}\frac{|D^v|}{|D|}log\frac{|D^v|}{|D|}}

  信息增益比的使用对可取值数目较少的属性有所偏好,在 C4.5 算法并没有直接选择增益比最大的候选划分属性,而是使用了一个启发式方法:先从候选划分属性中找出增益高于平均水平的属性,再从中选择增益比最高的。

  3)基尼系数(对应算法:CART)

  CART 决策树选择“基尼系数”来选择划分属性。

  直观来说,Gini(D) 反应了从数据集 D 中随机抽取两个样本,不属于同一类样本的概率。

Gini(D)=1i=1Ip(iD)2 Gini(D) = 1-\sum_{i=1}^{I}p(i|D)^2

  其中,DD 表示当前样本集合;II 为样本类别数;p(iD)p(i|D) 为第 ii 类样本的占比。

1.4 决策树中,连续值如何处理?

  最简单的策略是采用二分法;将某连续属性的值进行排序,假设有n个值,插入n-1个切分点,相当于每相邻两个值之间插入一个切分点,插入到切分的值一般为这两者值的平均值。然后遍历切分点的值,例如遍历到的值为 num,那么将大于num的作为一类,小于num的作为一类。根据两类求解指标(如信息增益),并取最优指标对应的切分点为作为属性的切分点。

1.5 连续属性可多次作为划分属性。与离散属性不同,若当前节点划分属性为连续属性,该属性还可以作为其后代节点的划分属性。

二、逻辑回归

补充:逻辑回归原理详解

2.1 简单描述一下逻辑回归的原理

  逻辑回归模型:假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来对参数进行优化,最后通过sigmoid函数将其转化为概率形式,并通过设定阈值实现二分类。

2.2 逻辑回归概率公式整理

P(yx;θ)=(hθ(x))y(1hθ(x))1yP(y|x;\theta)=(h_{\theta}(x))^{y}(1-h_{\theta}(x))^{1-y}

2.3 最大似然估计

  为使模型更好,钥匙的预测值更接近真实值,即条件概率越大越好;对于m个样本,可以通过 最大似然估计,得到最优解。

L(Θ)=i=1mP(yixi;θ)=i=1m(hθ(xi)))yi(1hθ(xi))1yiL(\Theta) = \sum_{i=1}^{m}P(y_i|x_i;\theta)= \sum_{i=1}^{m}(h_{\theta}(x_i)))^{y_i}(1-h_{\theta}(x_i))^{1-y_i}

2.4 通过对数将连乘转为连加

  便于计算,且并不影响其单调性

l(Θ)=logL(Θ)=i=1m(y(i)log(hΘ(x(i)))+(1y(i))log(1hΘ(x(i))))l(\Theta) =logL(\Theta) =\sum_{i=1}^{m}(y^{(i)}log(h_{\Theta}(x^{(i)}))+(1-y^{(i)})log(1-h_{\Theta}(x^{(i)})))

2.5 逻辑回归的损失函数

  计算损失,即m个样本的平均损失,将求和的式子乘以1m\frac{1}{m},这里将最大似然估计(以上式子)转化为最小 损失函数,便于利用梯度下降法求解。

J(Θ)=1mi=1m(y(i)log(hΘ(x(i)))+(1y(i))log(1hΘ(x(i)))) J(\Theta) = -\frac{1}{m}\sum_{i=1}^{m}(y^{(i)}log(h_{\Theta}(x^{(i)}))+(1-y^{(i)})log(1-h_{\Theta}(x^{(i)})))
2.6 损失函数求导

  对损失函数求导,用于更新各参数。

J(Θ)Θj=1mi=1m(hΘ(x(i)y(i))xj(i) \frac{\partial J(\Theta)}{\partial \Theta_j}= \frac{1}{m}\sum_{i=1}^{m}(h_{\Theta}(x^{(i)}-y^{(i)})x_j^{(i)}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章