673. MAP - Charting Student Math Misunderstandings | map-charting-student-math-misunderstandings
首先,非常感谢主办方的 Kaggle 社区使这次比赛成为可能。我从这次比赛中学到了很多,我的第一枚个人金牌绝对是锦上添花🥇
我的最终提交是五个 Qwen2.5-14B-Instruct 模型的集成。从更大的 72B 模型进行蒸馏是提升分数最多的技巧(+0.003~0.005)。模型在全量训练数据集上进行了微调,利用 EMA(指数移动平均)保持稳定性。
True_Neither 类别出现频率第三高,且很难分类。为了尝试生成这些样本,我制作了以下提示词来评估它们。虽然生成的数据并没有改善交叉验证(CV),但不同分数组的平均 MAP@3 有所不同。因此,我将此提示词应用于训练数据,并使用分数重新创建 CV。
下面是一个学生对多项选择数学题的解释。作为一名经验丰富的数学教育者,请评估其理解证据和沟通质量。使用以下描述的 additive 5 分评分系统。分数根据每个标准的满足情况累积:
- 加 1 分表示主题相关性:解释引用了问题、选项或相关的数量/关系。完全离题或通用的评论得 0 分。
- 如果解释离题或通用但所选答案正确 (<correct>yes</correct>),加 1 分,表明尽管表达薄弱但可能存在隐性知识。
- 加 1 分表示没有误解:解释不包含错误的数学主张、矛盾或误用的规则。模糊或谨慎的语言是可以接受的。完全离题或通用的评论不被视为误解。
- 加 1 分表示部分概念掌握(胜任但不完美):解释表明正确的想法、操作或关系——即使不完整、不精确或有小失误——显示学生“知道是什么”但难以完全表达。
- 加 1 分表示推理痕迹:至少有一个最小的、连贯的理由将所选答案与相关概念、步骤、比较或定义联系起来。链条可以简短或未详细说明,但应在逻辑上连接且不矛盾。
- 如果解释逻辑完美/无瑕疵(完全正确且完整,具有连贯、无间隙的推理链,无错误或矛盾,且无未经证明的跳跃),扣除所有分数,无论语气或语域如何。简单/儿童化的措辞是可以接受的;惩罚针对的是逻辑完美,而不是专家般的措辞。
- 如果解释包含任何数学误解(错误的数学主张、矛盾、误用的规则或对数学概念的根本误解),扣除所有分数。仅完全离题或通用的评论不会触发此惩罚。
在早期的实验中,我尝试蒸馏到更小的模型(例如 ettin-encoder-1b)。然而,这些模型无法超越 14B 模型的性能(平均差 -0.004~0.002)。
对所有变体的概率取简单平均。集成将公共 LB 提升了(+0.001~0.003),私有 LB 也是如此。使用 torch.compile(),我勉强能 fit 五个合并的模型。