用魔法打败魔法?一个老掉牙的 TF-IDF 就把 AI 网文扒了个底儿掉
· 阅读约 2 分钟
最近有个事儿挺逗的,有人弄了个检测器专抓 AI 生成的网文。这概念之前被讲得挺玄,什么“用 LLM 去检测 LLM”之类的,仿佛非得搞个多大参数的模型去当裁判。
其实根本不用。我一看这哥们儿用的家伙事儿——scikit-learn 里的 TF-IDF 配上 LinearSVC。乐了。这不就是咱前些年做文本分类的祖传手艺吗?
来,画张图看看这玩意儿是怎么转起来的:
┌──── 收集一堆人类写的网文(十年前的老帖子)
│
▼
让各种大模型扩写 ───► 得到对应的 AI 文本
│
▼
按“句子”切碎 ───► 扔进 TF-IDF 提取词频特征
│
▼
训练一堆 SVM 二分类器 ───► 投票:你到底是不是 AI 写的?
就这几步。没有 embedding,没有 attention,就是数词频。
我一开始寻思,现在的 LLM 写东西那么溜,连人都经常骗过去,区区一个词频统计能抓得住?结果我盯着他放出的数据看了半天。
懂了。咔哒一下扣上了 💡
LLM 不管它上下文多长、语感多顺,它骨子里就是个概率机。它在选词的时候,会下意识地往那些“最安全、概率最高”的词上靠。它太“正常”了,正常到词频分布死板得像个……机器。
而人类写东西?人类是用情绪驱动的,用词是偏执的、甚至别扭的。
打个比方:AI 写文章就像一个拿了详细说明书的工人,按部就班地把零件拼起来,每一个衔接处都严丝合缝。而人类写东西就像一个喝多了的工匠,这儿敲一榔头,那儿砸一斧子,虽然歪歪扭扭,但是有“手感”。
这个比喻在这里有个地方漏风,我得老实标出来:这并不意味着 AI 的词汇量小或者它只会用简单词。它一样能拽词,但它拽的词在整篇文章里的统计分布,跟人是不一样的。SVM 这个老东西最擅长的就是找这种分布的超平面。它抓的就是那个机器味儿。
作者还试了几个损招去“洗”这个 AI 文本。比如用提示词让 AI“去 AI 味”,或者用翻译软件把 AI 文本中英互译来回翻几遍。
结果呢?检测率确实掉了一点,从 89.9% 掉到了 80% 上下,但绝大部分还是被一眼识破。
你以为改写一下,换几个高级词汇,加点长难句就能骗过统计规律?没用,底层那个概率分布的底色还在那儿摆着,洗不掉。
拿最新的 LLM 生成的文本,去喂一个十几年前的线性分类器,照样被扒得干干净净。
这玩意儿真的太酷了。本来以为是一场高维的模型攻防战,结果人家直接用初中数学把你给数了。下期我想自己动手跑跑那个 50 万特征的剪枝模型,看看在浏览器里到底是个什么画风。
更多「成本」的实战
评论(1)
有点东西,回头看看那个剪枝模型