返回列表

[Simplest Gold medal ?]11th solution (Ridge + Detoxify + LightGBM)

475. Jigsaw Rate Severity of Toxic Comments | jigsaw-toxic-severity-rating

开始: 2021-11-08 结束: 2022-02-07 内容安全 数据算法赛
[最简单的金牌方案?] 第11名解决方案 (Ridge + Detoxify + LightGBM)

警告

首先,祝贺所有的获胜者。
虽然非常幸运地获得了金牌,但这个结果可能90%(甚至更多?)只是运气好而已。

因此,我的解决方案可能对大家来说并不是那么有趣、特别或有价值。

我所做的仅仅是:

  • 在 Kaggle 数据集中搜索额外的数据
  • 使用一些库来获取文本的毒性评分
  • 构建特征并训练简单的 LightGBM 模型

如果没问题的话,请阅读我的解决方案(或者说是我的诗)。

四行概述

步骤1:使用大量数据集的 TF-IDF 训练 Ridge 回归器
步骤2:毒性预测库
步骤3:将 validation_data.csv 转换为“更具毒性比率”用于训练
步骤4:使用这些特征和额外的朴素特征训练 LightGBM

概览图

概览图

步骤1:使用大量数据集的 TF-IDF 训练 Ridge 回归器

1-1:阅读 Ridge 回归 Notebook

我从这个 Ridge 回归 Notebook 开始。

该 Notebook 的内容包括:

  • 使用 TF-IDF 进行向量化
  • 结合大量外部数据的 Ridge 回归
  • 对 Ridge 结果进行暴力加权
    (这非常占用内存,所以我无法对太多模型进行加权)

在阅读并运行了这个 Notebook 后,我想到了:

  • 外部数据越多,我能做出的预测就越多样化
    • 我认为需要多样化的预测器,因为分数是由许多工作人员平均得出的。
  • 通过另一种方法对 Ridge 结果进行加权
    • 最终,我选择了 LightGBM 来对 Ridge 结果进行最佳加权。

1-2:搜索额外数据

该 Notebook 包含以下用于训练 Ridge 回归的数据:

而我添加了:

我使用它们来训练 Ridge 回归器,并使用该回归器的输出来训练 LightGBM。
(接步骤4)

步骤2:调用毒性预测库

我使用了 Detoxify。这是一个通过基于 Bert 的模型训练而成的毒性评分库,使用了过去的 Jigsaw 竞赛数据。
我还找到了一个离线运行 Notebook

该库有三种预

同比赛其他方案