返回列表

#1: A Zoo of Models

542. Playground Series - Season 3, Episode 11 | playground-series-s3e11

开始: 2023-03-20 结束: 2023-04-03 定价与促销 数据算法赛
第一名解决方案:模型动物园

第一名解决方案:模型动物园

作者:AmbrosM (GRANDMASTER) | 发布日期:2023-04-04 | 投票数:90

我的解决方案基于以下观察:

  1. 只有一部分特征是有用的,尽管并不完全清楚哪些特征属于该子集。在不确定哪个子集是正确的情况下,我们可以为不同的特征子集建立模型并进行融合。
  2. 特征选择后,训练数据中存在大量重复项。通过将这些重复项分组,可以大幅缩短训练时间。使用3000个组进行训练,而不是360,000个样本,极大地加快了开发周期。
  3. 如果将原始数据添加到训练数据集中,分数会有所提升。
  4. store_sqft 只有二十个唯一值,看起来像是一个数值特征,但实际上是分类特征。
  5. 由于库中的大多数回归算法都是为了优化均方根误差(rmse)而开发的,我们应该让所有模型预测转换后的目标值 log1p(cost),并提交 expm1(pred)
  6. "模型动物园",即多样化的集成,可以平均各模型的预测误差。
  7. 训练数据和测试数据遵循相同的分布,因此我们可以完全信任交叉验证(cv)分数。

第4点通过下图进行说明。store_sqft 的部分依赖图看起来不像典型的回归曲线,而像一个被误认为是连续变量的分类特征。这一观察表明,我们可以对 store_sqft 进行独热编码或目标编码。

依赖关系图

模型动物园的多样性可以通过树状图进行分析。树状图表示模型的层次聚类,相似的模型最终会归入同一簇。我们可以轻松识别出四个簇:

  1. 四个使用额外特征 unit_salesstore_sales 进行训练的模型
  2. 所有随机森林和极端随机树模型
  3. 神经网络
  4. 所有梯度提升模型

树状图

条形图展示了所有模型和集成的交叉验证分数及训练时间。最终提交结果是通过岭回归确定的权重对所有18个模型进行加权融合的结果。

条形图

同比赛其他方案