使用传统机器学习检测 LLM 生成的文本
使用传统机器学习检测 LLM 生成的文本
传统机器学习可以有效地将 AI 与人类文本区分开来
主流的大语言模型 (LLM) 生成的文本表现出强烈的统计模式,使用传统的机器学习方法可以将其与人类编写的内容区分开来。一个结合了 TF-IDF (Term Frequency-Inverse Document Frequency) 和 Linear Support Vector Classification (SVC) 的项目在检测 AI 生成的句子时达到了约 85% 的准确率,这表明“传统”机器学习通常比使用另一个 LLM 进行检测更有效且计算成本更低。
方法论:TF-IDF 和 Linear SVC
与其依赖文本困惑度 (perplexity)——这往往会导致高推理成本和较差的跨模型泛化能力——该方法使用了来自 scikit-learn 的标准分类流水线。
数据生成
为了训练分类器,使用以下方式创建了一个平衡的数据集:
- 人类编写的样本: 约 10,000 篇在 2010 年至 2022 年间(ChatGPT 出现之前)发表的多千字符文本。
- AI 生成的样本: 使用 LLM 对相同的文本进行摘要,然后使用这些摘要重新生成全文。这确保了 AI 内容在体裁和主题上与原始人类内容紧密匹配。
为了确保多样性,使用了七种不同的模型来生成 AI 训练数据:gemini-3-pro, qwen-coder-plus, glm-5, glm-4.7, kimi-k2.5, doubao-seed-code, 和 deepseek-v3.2。
训练与架构
该系统在七个独立的二分类器上采用多数投票机制。如果七个模型中至少有两个检测到 AI 生成,则该句子被标记为 AI 生成。
性能指标:
- 句子级准确率: 在大多数模型中约为 85%。
- F1 Score: 所有二分类器均超过 80%。
- 特征集: 最终的 Web 演示版本使用 500,000 个特征来保持准确率,同时针对浏览器端推理进行优化。
性能与泛化能力
检测率
在训练集和未见过的模型上进行测试显示了高度的鲁棒性:
- 已知模型: Deepseek V3.2 和 Doubao Seed Code 的检测率分别为 78.4% 和 93.0%。
- 未见过的模型: Claude Sonnet 4.6 和 GPT 5.2 的检测率分别为 71.9% 和 73.3%。
- 人类基准: 2022 年之前的网络小说和同人小说在 AI 检测中持续得分低于 30%,在使用 70% 阈值时,误报率低于 0.01%。
规避检测
使用常见的“抗 AI”技术尝试规避分类器显示出极小的成功率:
- 语言回译: 将文本从中文翻译成英文再翻译回中文,仅轻微降低了检测率(例如,通过 Google Translate,从 89.9% $\rightarrow$ 85.0%)。
- 提示词工程: 使用诸如“重写上述文章以尽量减少 AI 味”之类的提示词,将检测率从 89.9% 降低到 83.0%。
技术实现:基于浏览器的推理
为了避免服务器维护并遵循无服务器 (serverless) 理念,该模型在 JavaScript 中实现,以便在客户端执行。TF-IDF 和 SVM 逻辑被移植到了 JS,从而允许对典型输入进行近乎即时的推理。虽然完整的模型以 JSON 格式约为 107MB(大约 38MB gzipped),但将特征集减少到 50k-80k 会导致误报率出现显著波动,因此作者保留了 500k 特征集。
社区观点与反论点
技术同行之间的讨论突出了关于 AI 检测器长期有效性和可靠性的一个根本辩论:
- “军备竞赛”论点: 有人认为,任何可检测的模式都会最终被被模型训练者使用来优化 LLM,从而使这些模式消失。正如一位用户所说,“如果一种廉价的模式可以有效地捕捉 AI,那么它很可能会被用于重训,从而使其消失。”
- 信息密度: 批评者认为,文本过于稀疏,不足以包含永久的来源证明信号。一位评论者认为,图像具有明显的伪影,而文字没有,目前的检测是仅仅在识别“今天的特征”而非本质上的差异。
- 误报风险: 对于高风险环境(如学术论文)中的误报风险,人们存在显著的担忧,是否一个“足够好”的检测器可能会不公平地惩罚那些写作风格结构化、可预测的习惯性人类作者。
- 替代方案: 有些人建议将关注点从“谁写了它”转向“投入了多少精力”,认为文本的价值在于其吸引读者的能力以及去除冗余信息的能力——无论使用什么工具,这些任务仍然需要人类的投入。
社区观点与反论点
技术同行之间的讨论突出了关于 AI 探测器长期有效性与可靠性的一个根本辩论:
- **The