系列第 5 篇 · 改写绕弯
✅ 【实测说明】:本篇「改写绕弯」部分本机真跑——用纯 NumPy 引擎加载本地 Qwen2.5-1.5B,生成 4 段 AI 中文文,再做两种「改写成人话」:(①) 用同一模型做 LLM 人话重写(模拟市面上的 AI humanizer,本身也是 LLM)、(②) 规则同义润色(模拟「懒人 humanizer」只做词面替换+灌水),再用第 1 期自建的困惑度+突兀度+n-gram 三信号检测器复测判定变化。全程无 key、无 torch、无外部 API,脚本 forensics_ep5_rewrite.py 可复现。商业 humanizer 工具(如 Undetectable AI / 改写 API)的绕过效果引用公开研究,未在本机复现(需外部 key),明确标注非本机实测。
一句话结论
网上两类「去 AI 味」教程最火:一类是用 AI 把文「重写得更像人」(humanizer 工具),一类是塞同义词、加口语填充词。我把这两种都用本机 1.5B 真跑了一遍,结果反直觉:看似最聪明的「LLM 人话重写」几乎没用——绕过率只有 25%,跟不处理原版一样,对 3 篇真正像 AI 的文是 0% 有效;反而最土的「同义替换+灌水」绕过了 75%。根因一句话:检测器最难伪造的信号是困惑度(PPL,即文字的「可预测程度」),LLM 重写再怎么改措辞,写出来的还是模型最意料之中的话,PPL 纹丝不动(2.11);灌水式改写靠把文写「飘」、把突兀度(起伏)打到爆表,骗过了「起伏像人」这条软信号——但它留下了 n-gram 冗余度这根更硬的红旗(0.485,是人类的 160 倍)。改写能不能骗过检测器,不看「像不像人」,看「把哪个统计信号搞崩了」。
背景与痛点:为什么「改写」被当成终极破解
第 1 期我们建的检测器,判 AI 靠三件事:困惑度低(AI 每个词都在模型最意料之中)+ 突兀度低(AI 各句难易均匀,没有人类那种忽难忽易的起伏)+ n-gram 冗余度高(AI 爱用模板短语反复出现)。第 4 期试了「翻译绕弯」,靠把文写烂把突兀度打到 2173,绕过 50%。
那「不机翻、直接改写」呢?这是鉴伪圈公认的「终极一招」——因为翻译绕弯代价是可读性归零(碎成病句),而改写理论上能「既降嫌疑又保可读」。市面上的 humanizer 工具、各种「AI 降重」服务,卖的就是这个。我想验证:改写到底能不能真的骗过检测器,还是只是换个姿势暴露自己?
实验设计:本机生成 + 两种改写 + 本机复测
没有外部 humanizer API(本机无 key),我用本地 Qwen2.5-1.5B 把链路跑通,且刻意测两种「段位」:
真实数字表(本机真跑)
A. 逐篇判定(4 段 AI 源的原文 vs 两种改写)
| 1 推理优化 | 2.11 / 25.4 | AI | 2.49 / 31.0 | AI | 3.27 / 83.1 | 人类 |
| 2 向量库 | 2.34 / 1.7 | AI | 1.53 / 0.0 | AI | 5.90 / 11.7 | AI |
| 3 微服务 | 1.86 / 9.8 | AI | 2.11 / 11.5 | AI | 3.04 / 616.8 | 人类 |
| 4 强化学习 | 2.13 / 63.1 | 人类* | 2.30 / 65.6 | 人类* | 3.55 / 229.6 | 人类 |
样本 4 原文就因突兀度 63.1 略超阈值被误判成「人类」——这是第 1 期讲过的边界漏网,不是改写功劳。去掉这个边界样本看「对真正像 AI 的 3 篇」:LLM 改写 0/3 绕过,规则改写 2/3 绕过*。
B. 汇总(绕过率与信号漂移)
| 被判 AI 的篇数 | 3/4 | 3/4 | 1/4 | 0/4 |
| 绕过率 | 25% | 25% | 75% | — |
| 困惑度(PPL)均值 | 2.11 | 2.11 | 3.94 | 90.94 |
| n-gram 冗余度均值 | 0.470 | 0.662 | 0.485 | 0.003 |
横向对比前几期在本机 1.5B 上的绕过率:原版 25% < LLM 人话重写 25% ≈ 翻译绕弯 50%(第4期)< 规则灌水润色 75%。
我试的「骗术」:聪明的没用,土的有用
猫鼠对抗第 5 招,结论要分两层讲,因为它反常识:
第一层(最反直觉):LLM 人话重写 ≈ 没效果。 3 篇真正像 AI 的文,改写后一篇都没被放过(仍判 AI)。看信号:PPL 改写前后都是 2.11——模型再怎么换措辞,写出来的还是它最意料之中的话。humanizer 工具吹的「重写得更自然」,在困惑度这个最硬的信号面前根本不成立。而且 n-gram 冗余度反而升了(0.470→0.662),因为小模型重写容易陷入模板重复,比原文更「AI 味」。
诚实边界:本机只有 1.5B,它做「人话重写」时输出本身已有些退化(样例里出现「支持。向量数据库的出现……」这种断片重复)。用 7B/商用大模型做高质量人话重写,PPL 可能略升。但公开研究一致表明:只要文本仍由模型逐词生成,其似然(PPL)始终显著低于人类写作——这是改写类 humanizer 难以根除的底层特征,不是堆参数就能抹平的。
第二层(更值得防御方警惕):规则灌水润色绕过了 75%。 看样本 1/3/4 的突兀度:83、616、229,远超阈值 58.94。检测器把「突兀度极高」读成了「人写时的起伏大」,于是放行。但它绕的是唯二软信号里的突兀度——看 PPL 仍只有 3~5(远低于人类 90),n-gram 冗余度仍 0.485(是人类的 160 倍)。也就是说:灌水式改写只是把文写「飘」了,没把文写「像人」。
对防御方的启示
- 如果你是检测方:本期最该记住的一条——别让「某一个信号变高」把文本救成人写。我们的判定是「困惑度低 AND 突兀度低」的 AND 逻辑,规则润色只要把突兀度打爆,就整体翻盘。正确做法是:以困惑度(PPL)为主信号(最难伪造),再叠加一个与流畅度无关的独立信号,比如 n-gram 冗余度——规则改写 PPL 低(3.94) 且 ngram 高(0.485) → 双低一高直接判 AI;LLM 改写 PPL 低(2.11) 且 ngram 高(0.662) → 同样判 AI。PPL + n-gram 冗余度这个组合,对本期两种改写、对第 4 期翻译绕弯全部免疫。突兀度适合当「参考分」,不适合当「放行闸」。
- 如果你是写作者 / 想躲检测的人:别迷信 humanizer 工具。本机实测,LLM 重写对强检测器几乎无效;灌水润色能晃弱检测器,但留下 n-gram 红旗、且文本变得啰嗦飘忽——读者和强检测器都会嫌怪。真要降 AI 味,得带着自己的真实经验和语气从零写,而不是让模型「重写模型的话」。
- 如果你是读者:看到一段「语气很飘、但被判人类」的文,别以为它真有人味——它可能只是被灌水工具处理过,困惑度早就出卖了它是机器生成的。
可复用脚本
- forensics_ep5_rewrite.py:本地 Qwen2.5-1.5B 生成 + LLM 人话重写 + 规则同义润色 + 困惑度/突兀度/n-gram 三信号复测 + 阈值与绕过率统计。换你自己的源文即可复现本文全部表格,亲手验证「LLM 重写 0% 有效、规则灌水 75% 绕过、PPL 纹丝不动在 2.11」。
下篇预告
第 5 期证明:改写绕弯能不能骗过检测器,取决于「搞崩了哪个信号」,而最硬的困惑度(PPL)改写类手法基本碰不动。那如果根本不动语义、只在字符层动手呢——往 AI 文里塞零宽空格、隐藏控制符、同形字,人眼完全看不见,但分词器会炸?第 6 期做字符干扰:本机注入 4 类隐形字符,看检测器的困惑度会不会被直接打爆、把 AI 文误判成人写,以及一条「归一化」能不能把防御救回来。
系列《AI 鉴伪实战:猫鼠对抗,我替你试了》持续更新。每篇都本机真跑、给可复用脚本、并收敛成防御方法论。
网硕互联帮助中心





评论前必须登录!
注册