决策树在Fashion-MNIST分类中的实战:连续特征分箱与注意力可视化
当工程师尝试用决策树处理Fashion-MNIST这样的图像数据时,往往会遇到一个典型困境:784个像素维度(每个取值0-255)导致决策树疯狂生长,最终在训练集上表现完美却在测试集上惨不忍睹。本文将揭示如何通过连续特征离散化和注意力可视化两大核心技术,让决策树在图像分类任务中重获新生。
1. 连续特征分箱:从多叉树到健壮二叉树
1.1 像素值分箱的数学原理
对于取值0-255的像素特征,原始决策树会在每个可能取值处进行分裂,导致树结构极度复杂。我们采用等宽分箱法将连续值转换为离散区间:
# 将像素值二值化(0-127为0,128-255为1)
def binary_binning(pixel_values):
return np.where(pixel_values < 128, 0, 1)
# 更精细的四等分分箱
def quantile_binning(pixel_values):
bins = np.linspace(0, 256, 5) # [0,64,128,192,256]
return np.digitize(pixel_values, bins) - 1
分箱后的信息增益计算变化(以基尼系数为例):
| 分箱策略 | 分裂点数量 | 训练时间(s) | 测试准确率 |
|---|---|---|---|
| 原始值 | 255 | 38.2 | 0.112 |
| 二值化 | 1 | 4.7 | 0.803</ |


2797

被折叠的 条评论
为什么被折叠?



