592. Linking Writing Processes to Writing Quality | linking-writing-processes-to-writing-quality
我要向Kaggle和学习代理实验室(Learning Agency Lab)表示感谢,感谢他们组织了这场精彩的比赛。从比赛开始以来,我们的交叉验证分数与排行榜分数保持了高度一致性,所有三个最终提交的方案都进入了金牌区,这令人非常欣慰。
我要感谢我的队友们:@jaideepvalani、@rohitsingh9990、@mori123 和 @phoenix9032,感谢他们的贡献和坚持到最后一刻的努力。
我将简要总结哪些方法有效,哪些没有效果。
我将大部分时间花在了特征工程上,其余时间用于确保交叉验证(CV)和排行榜(LB)分数的可靠性。
https://www.kaggle.com/code/chaudharypriyanshu/light-automl-lgbm-22/notebook
大多数特征都基于一个问题:
问: "评估者最终会看到什么?"
答: 文章文本。因此最重要的特征将从文章的结构中衍生出来。
我创建了以下几类特征:
我们的团队使用了4个神经网络模型和3个基于树的模型(共7个模型)。
大多数神经网络模型来自lightautoML,在此公开笔记本中分享。
| 模型 | CV | LB |
|---|---|---|
| MLP | 0.589 | - |
| Denselight | 0.590 | - |
| Autoint | 0.599 | - |
| NODE | 0.593 | - |
| 1DCNN | 0.602 | 0.592 |
| 集成 | 0.5868 | 0.582 |
1) Light autoML模型训练10个epoch
2) 由于结果有些不稳定,我使用了随机加权平均,并采用了最佳的3个验证分数(使用早停)
3) 由于CV可能过于乐观,我将它们与未使用早停的模型分开集成
| 模型 | CV | LB |
|---|---|---|
| LGBM | 0.598 | 0.580 |
| CATBoost | 0.6007 | - |
| XGBoost | 0.6001 | - |
| 集成 | 0.5963 | 0.582 |
1) 训练1500次迭代,不使用早停
1) 按分数进行分层K折交叉验证
2) 使用5个随机种子训练:[42, 2022, 7, 4, 1]
3) 所有模型和CV使用相同的随机种子
1) 我们独立优化神经网络和树模型的权重,并给予两者相等的权重
2) 使用Optuna确定每个模型的权重
最终CV分数为0.5858,LB = 0.578,Private = 0.560
结果:
- 采用此策略后,我们前15个可靠且更新的提交方案中有12个进入了金牌区
- 所有三个最终提交的方案都在金牌区内
- 最佳CV方案 = 最佳Private LB方案
1) 超过1个n-gram的TFIDF
2) 来自以往比赛的数据(如Feedback比赛)
3) Word2vec特征
4) svd+tfidf
5) 基于时间窗口的文章结构特征
请给他们点赞
特征工程:句子与段落特征 https://www.kaggle.com/code/hiarsl/feature-engineering-sentence-paragraph-features LGBM和NN在句子上的应用 https://www.kaggle.com/code/alexryzhkov/lgbm-and-nn-on-sentences 银弹 | 单模型 | 165个特征 https://www.kaggle.com/code/awqatak/silver-bullet-single-model-165-features 进入时间序列空间 - 第三部分新聚合特征 https://www.kaggle.com/code/abdullahmeda/enter-ing-the-timeseries-space-sec-3-new-aggs