美团暑期推荐实习
一、讲一下self-attention,qkv的含义。
见【搜广推校招面经五】
二、讲一下协同过滤召回,新闻推荐项目为什么不用usercf?
见【搜广推校招号面经六十四】
三、介绍信息增益公式(Information Gain)
见【搜广推校招面经六十二】
信息增益是一种用于特征选择的指标,广泛应用于构建决策树(如 ID3 算法)。它衡量的是某个特征 A 在对数据集 D 进行划分后,信息不确定性的减少量 。信息增益的计算依赖两个核心概念:熵 和 条件熵。
3.1. 熵(Entropy)
熵表示系统的不确定性程度:
H ( D ) = − ∑ i = 1 k p i log 2 p i H(D) = -\sum_{i=1}^{k} p_i \log_2 p_i H(D)=−i=1∑kpilog2pi
- D:当前样本集
- k:类别个数
- p i p_i pi:属于第 i i i 类的样本所占比例
3.2. 条件熵(Conditional Entropy)
条件熵表示在特征 A 的条件下,样本集 D 的期望信息熵:
H ( D ∣ A ) = ∑ j = 1 k ∣ D j ∣ ∣ D ∣ H ( D j ) H(D | A) = \sum_{j=1}^{k} \frac{|D_j|}{|D|} H(D_j) H(D∣A)=j=1∑k∣D∣∣Dj∣H(Dj)
3.3. 信息增益公式
信息增益定义为特征 A 在划分数据集 D 后,信息熵的减少量:
G a i n ( D , A ) = H ( D ) − H ( D ∣ A ) Gain(D,A)=H(D)−H(D∣A) Gain(D,A)=H(D)−H(D∣A)
四、决策树停止分裂的条件
树模型在训练过程中,通过不断分裂节点来划分数据集,但为了防止过拟合和提高泛化能力,决策树在构建过程中需设置停止条件。下面是常见的方法:
4.1. 节点纯度足够高
- 若某个节点中样本基本属于同一类(例如熵小于设定阈值 ε),则停止分裂。
4.2. 样本数量过少
- 若当前节点包含的样本数 < min_samples_split 或 min_samples_leaf,则不再划分。
4.3. 信息增益太小
- 如果当前最优划分特征的信息增益 < min_gain_threshold,说明划分效果不明显,停止。
4.4. 树达到最大深度
- 若当前树的深度 >= max_depth,则不再向下扩展子节点。
4.5. 特征耗尽
- 所有特征均已被用尽,无法再进一步划分。
五、XGBoost的正则项
XGBoost的正则化项用于控制模型的复杂度,防止过拟合。它包含了两部分:L1正则化 (Lasso)和L2正则化(Ridge)。XGBoost通过控制这两个正则化项的参数来实现正则化。
5.1. L1正则化(Lasso Regularization)
L1正则化通过增加特征系数的绝对值之和来惩罚模型。它能够实现特征选择,促使一些特征系数变为零。
- 参数 :
alpha
- 作用 : 控制L1正则化的强度,增大
alpha
值会增加L1正则化的效果,从而使得模型更为稀疏。
5.2. L2正则化(Ridge Regularization)
L2正则化通过增加特征系数的平方和来惩罚模型。它帮助防止过拟合并能够降低模型的复杂度。
- 参数 :
lambda
(也称为reg_lambda
) - 作用 : 控制L2正则化的强度,增大
lambda
值会增加L2正则化的效果,从而使得模型的特征权重更小,避免过拟合。
5.3. 总的正则化目标
XGBoost的目标函数包括了损失函数和正则化项,公式如下:
L ( θ ) = ∑ i = 1 N ℓ ( y i , y ^ i ) + ∑ k = 1 K Ω ( f k ) L(\theta) = \sum_{i=1}^{N} \ell(y_i, \hat{y}i) + \sum{k=1}^{K} \Omega(f_k) L(θ)=i=1∑Nℓ(yi,y^i)+k=1∑KΩ(fk)
其中, ℓ ( y i , y ^ i ) \ell(y_i, \hat{y}_i) ℓ(yi,y^i)是损失函数, Ω ( f k ) \Omega(f_k) Ω(fk)是正则化项,具体为:
Ω ( f k ) = γ T + 1 2 λ ∑ j = 1 T w j 2 \Omega(f_k) = \gamma T + \frac{1}{2} \lambda \sum_{j=1}^{T} w_j^2 Ω(fk)=γT+21λj=1∑Twj2
- T:树的叶子数
- w j w_j wj:每个叶子的权重
- γ \gamma γ:每增加一个叶子时的惩罚项(树的复杂度控制)
- λ \lambda λ:L2正则化的参数
通过调整alpha
和lambda
,可以有效控制模型的复杂度,避免过拟合。