跳到主内容
快讯直播
AI智模界
AI 词典

Distinct-n 与 Self-BLEU:给“复读机”称重

一句话定义:Distinct-n 和 Self-BLEU 是一对用来衡量机器生成文本多样性的指标。前者统计文本里有多少不重复的 n 元词组(n-gram),后者计算同一批生成样本彼此之间有多像——分数越高,越像复读机。

Distinct-n 怎么算

把模型生成的所有文本切成连续的 n 个词组成的片段(n-gram,中文里常按字或词切),去重后除以片段总数:

  • Distinct-1:看单个词,衡量用词是否贫乏;
  • Distinct-2:看两词词组,衡量搭配是否单一;

取值在 0 到 1 之间,越高说明重复度越低。打个比方:一个人讲话,如果把“然后”“就是说”“这个”去掉之后没剩下几句新话,他的 Distinct-n 就很低。

Self-BLEU 怎么算

BLEU 原本是机器翻译的评分:拿机器译文和人工参考译文比对,看有多少词组重合。Self-BLEU 借用了 BLEU 的计算方式,但把“参考答案”换成模型自己的输出——一批生成句子轮流当“译文”,其余当“参考”,两两打分再取平均。分数越高,说明这些句子彼此越像,模型在复制自己。

比方:收上来一叠作文互相查重,查重率居高不下,说明大家背的是同一篇范文。

和相邻概念的区别

BLEU 衡量的是“像不像标准答案”,需要参考答案;这两个指标衡量的是“变不变”,不需要参考答案。而它们俩之间也有分工:

维度Distinct-nSelf-BLEU
衡量什么文本自身内部的不重复程度一批样本之间的相似程度
需要几条样本一条文本就能算需要一批样本,两两比较
分数方向越高越多样越低越多样
敏感因素文本长度(越长越容易“撞”出新词组,分数虚高)样本数量、BLEU 的 n 阶数与平滑实现细节
典型刷分方式生成语法崩坏的乱码,分数立刻飙升只输出极短句,互相都不像

实际意义

只盯着 BLEU 或准确率调模型,会奖励“安全但空洞”的输出——一个对话模型句句回“我不知道”,参考答案重合度可能不差,但根本没法用。多样性指标的作用就是把这类“复读机”行为暴露出来,尤其在做闲聊、客服话术、文案和创意写作时,值得放进评估表。

反过来,这两个指标也都能被“胡说八道”刷高:只要句子够乱,Distinct-n 自然漂亮。所以它们必须和人工评估、任务指标一起看。而翻译、摘要这类有明确标准答案的任务,多样性过高往往意味着跑题,别拿这两个指标当唯一目标。

工程上典型的权衡是:束搜索(beam search)输出稳但容易千篇一律,采样策略(top-k、top-p、温度)更活泼但容易跑偏。用多样性指标做监控,找两者的平衡点,比凭感觉调参靠谱。具体实现和阈值以原始论文或官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。