【面试问题】(非常详细)基础知识,一般人看不完!(大全)(all in one)

机器学习八股文

在机器学习和信息论中,熵(Entropy) 是一个用于衡量随机变量不确定性或信息量的概念。它最初由信息论的创始人克劳德·香农(Claude Shannon)提出,因此也称为香农熵(Shannon Entropy)。熵越高,表示系统的混乱度或不确定性越大;熵越低,表示系统越有序或不确定性越小

熵的定义

对于一个离散的随机变量 X X X ,其可能的取值为 { x 1 , x 2 , … , x n } \{x_1, x_2, \dots, x_n\} {x1,x2,,xn},每个取值的概率为 P ( x i ) P(x_i) P(xi),则熵的定义如下:

$$

H(X) = -\sum_{i=1}^{n} P(x_i) \log_2 P(x_i)

$$

其中:

  • H ( X ) H(X) H(X) 是随机变量 X X X 的熵。

  • P ( x i ) P(x_i) P(xi) 是随机变量 X X X 取值为 x i x_i xi 的概率。

  • l o g 2 log_2 log2 表示以2为底的对数,这是因为熵的单位通常以比特(bit)为单位。

直观理解

熵可以理解为对随机变量的平均信息量的度量。具体来说:

  • 如果一个系统非常有序(例如,所有事件的概率都是确定的),那么系统的熵较低,甚至为0(如果只有一个确定的结果)。

  • 如果系统非常混乱(例如,所有事件发生的概率相等且不可预测),那么系统的熵较高。

举个例子

假设有一个二分类问题,其中类别A的概率是0.8,类别B的概率是0.2。则该系统的熵可以计算为:

$$

H(X) = - (0.8 \log_2 0.8 + 0.2 \log_2 0.2)

$$

计算得出:

$$

H(X) \approx - (0.8 \times (-0.322) + 0.2 \times (-2.322)) = 0.721

$$

如果两个类别的概率都是0.5,则熵为:

$$

H(X) = - (0.5 \log_2 0.5 + 0.5 \log_2 0.5) = 1

$$

这表示当系统中两个事件的概率相等时,熵最大,系统的混乱度也最大。

熵在机器学习中的应用

  1. 决策树:在构建决策树(如ID3和C4.5)时,熵用于衡量数据集的纯度或不确定性。算法通过选择能最大化信息增益(即熵的减少量)的特征来分割数据,从而逐步减少系统的不确定性。

  2. 信息增益:信息增益是基于熵的一个概念,用于判断某个特征对于目标变量的不确定性减少的程度。信息增益越大,表示选择该特征进行分裂后,分类的不确定性减少得越多。

  3. 聚类:在一些聚类算法中,熵可以用于衡量聚类结果的好坏,例如,通过计算聚类中心与每个数据点之间的熵来评估聚类效果。

总结

熵是一个重要的概念,广泛应用于信息论和机器学习中,用于度量系统的混乱度或不确定性。通过理解熵,我们可以更好地选择特征、构建模型,并分析数据的内在结构。


在机器学习中,偏差(Bias)方差(Variance) 是两个衡量模型预测误差的关键概念,它们共同影响着模型的性能。理解偏差和方差对于平衡模型的复杂度、避免过拟合和欠拟合至关重要。

什么是偏差(Bias)?

偏差衡量的是模型预测值与真实值之间的差距。它反映了模型本身的简化程度以及对训练数据的拟合能力。偏差越大,表示模型对数据的拟合程度越差,往往表现为欠拟合。

  • 高偏差:模型对数据的拟合能力不足,过于简化,不能很好地捕捉数据中的模式和规律,导致系统性误差较大。比如,使用线性模型拟合非线性数据时,模型可能会出现高偏差,因为线性模型无法捕捉非线性关系。

什么是方差(Variance)?

方差衡量的是模型预测值的波动性,即模型对训练数据的敏感程度。方差越大,表示模型的预测结果对训练数据的变化非常敏感,表现为过拟合。

  • 高方差:模型对训练数据过于敏感,即使是数据中的噪声也会被模型捕捉,从而导致模型在训练数据上表现很好,但在新数据上表现较差。这种情况通常出现在模型过于复杂的情况下,比如深度神经网络或高阶多项式回归。

偏差-方差权衡

在模型训练过程中,偏差和方差往往存在一种权衡关系:

  • 低偏差的模型通常较复杂,能够很好地拟合训练数据,但可能会产生高方差,导致过拟合。

  • 高偏差的模型通常较简单,对训练数据的拟合能力不足,可能会欠拟合,但方差较低,预测结果较为稳定。

高偏差 vs. 高方差

  • 高偏差,低方差

- 模型过于简单,无法捕捉数据的复杂模式(欠拟合)。

- 预测结果较为稳定,但与真实值偏差较大。

- 例子:使用线性回归模型拟合复杂的非线性数据。

  • 低偏差,高方差

- 模型过于复杂,捕捉到了训练数据中的噪声(过拟合)。

- 在训练集上表现很好,但在测试集或新数据上表现较差,预测结果不稳定。

- 例子:使用高阶多项式回归拟合少量数据点,模型可能会对每个点都拟合得很好,但在新数据上表现很差。

直观示例

假设我们有一个目标是在一个二维平面上射箭,箭靶的中心表示我们想要预测的真实值,而每次射箭的着落点表示我们模型的预测结果:

  1. 高偏差,低方差:箭通常集中在箭靶中心的某个偏移区域(不是靶心),但分布比较紧密。表示模型在系统性地错估真实值,但预测稳定。

  2. 低偏差,高方差:箭分布在靶心周围,但分布很散乱。表示模型预测结果与真实值差距小,但不稳定。

总结

  • 偏差:反映模型对数据模式的简化程度,高偏差表示模型欠拟合。

  • 方差:反映模型对数据的敏感性,高方差表示模型过拟合。

  • 高偏差,低方差:模型太简单,无法捕捉数据的复杂模式,预测稳定但不准确。

  • 低偏差,高方差:模型太复杂,捕捉了数据中的噪声,预测准确但不稳定。

在机器学习中,关键在于找到偏差和方差之间的平衡,选择一个既能有效捕捉数据模式,又不过于复杂导致过拟合的模型。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值