593. LLM - Detect AI Generated Text | llm-detect-ai-generated-text
非常感谢主办方举办这次比赛。
我们的解决方案是TF-IDF管道和12个DeBERTa-v3-large模型的加权平均。
作为预处理步骤,我们使用了@sorokin分享的解混淆器(帖子),但仅纠正错误超过15个的文本。同时移除了原始训练集中不存在的符号,并对剩余符号的编码进行了归一化处理。
4个模型在11k精选生成/改写(文章级和句子级)/部分改写文章上训练;部分文章来自共享数据集,部分使用多个LLM自定义生成。我们通过以下算法选择训练样本:
我们每4次迭代评估一次LB分数。当LB停止提升时,我们采用前一个最佳数据集。在此数据上训练的最佳单模型获得了0.927公开分数和0.845私有分数。
受@jsday96帖子启发,我们为Pile和SlimPajama数据集生成续写文本。过滤掉过短/过长文本、包含代码或数学内容、非英语文本以及非字母/字母比例过高的文本。然后使用约35个不同开源模型配合不同参数组合。根据温度值将采样参数分为3种方案,并在各方案指定范围内随机设置top_p/min_p和presence_penalty/frequency_penalty。我们使用50万、100万和120万样本训练了3个模型。所有模型使用默认超参数,最大长度256(推理时1512),大批尺寸48。使用约100万样本训练的最佳单模型获得0.956公开分数和0.967私有分数。
我们还在选定的11k数据集上微调了5个模型(权重来自50万+样本训练的模型)。这些模型的公开LB分数略高,但私有分数降低了约0.005。
我们采用了一个早期公开笔记(链接)并做了若干调整:
这些改进使公开分数保持不变,私有分数从0.893提升至0.927。由于存在一定不确定性,我们同时选择了初始管道和调整后的管道,它们的私有分数分别为0.970和0.974。
我们采用两步加权平均集成概率:
这种集成方式同时提升了私有/公开LB分数和本地CV(尽管本地CV不可靠)。
对于每个prompt_id,若样本数超过1000,我们在TF-IDF上拟合UMAP(与TF-IDF-CatBoost管道相同,但按prompt分别处理),计算到7个最近人工撰写和7个生成样本的距离,并按human_distance/generated_distance比例缩放预测值,限制在(0.9, 1.1)范围内。这轻微提升了公开和私有LB分数。
感谢所有分享想法/假设/数据集的参与者。特别感谢@evilpsycho42在比赛期间的出色工作。