Quizzman Fanqie Engine 的 Candidate Ranking:当一个汉字拥有数十种反切

Quizzman Fanqie Engine 系列(二)・第八篇——Candidate Ranking。 上一篇:为什么演算法无法仅靠 Pure Projection 推导所有汉越音

Quizzman Fanqie Engine 的 Candidate Ranking:当一个汉字拥有数十种反切

建构 Quizzman Fanqie Engine 最大的挑战之一,并非汉越音推导演算法本身,而是一个看似简单的问题:应该相信哪一条反切? 在《广韵》《集韵》《唐韵》《康熙字典》等韵书中,同一个汉字往往记载了多种反切、多个读音层次以及不同的注解。如果系统只是随机选择其中一条反切,结果将缺乏一致性,也难以验证。因此,Quizzman Fanqie Engine 建立了 Candidate Ranking 机制,在产生最终结果之前,先对所有候选方案进行完整评估与排序。

一个汉字,不只有一条反切

初学反切的人,常会直觉认为:

一个汉字
    │
    ▼
一条反切

然而,历史情况远比这复杂。

不同时代编纂了不同的韵书,例如:

  • 《切韵》
  • 《唐韵》
  • 《广韵》
  • 《集韵》
  • 《韵会》
  • 《康熙字典》

每部韵书可能依据不同文献来源,记录同一汉字的不同反切。

因此,一个汉字同时拥有多条反切,是十分正常的现象。

例如:

某字
 │
 ├──《广韵》── AB切
 ├──《集韵》── CD切
 └──《唐韵》── EF切

这并不表示其中某一条反切错误。

它们只是反映不同时期、不同传承的语音资料。

为什么会有多条反切?

造成这种现象,主要有几个原因。

1. 韵书编纂于不同时代

汉语读音始终处于演变之中。

唐代记录的反切,可能与宋代或清代的记载已有差异。

因此,各时代韵书自然可能留下不同的读音。

2. 多种文献来源共同收录

《康熙字典》等大型字书,并非完全重新整理资料,而是大量引用前代文献。

同一字条中,可能同时引用:

  • 《广韵》
  • 《集韵》
  • 《唐韵》
  • 《正韵》
  • 《玉篇》

因此,候选反切数量大幅增加。

3. 同一汉字本来就有多个读音

不少汉字本身就具有:

  • 多重字义
  • 多种读音
  • 不同使用情境

每一种读音,都可能对应不同的反切。

如果系统只保留其中一条,便会失去大量珍贵的历史资讯。

Engine 不会立即选择反切

Quizzman Fanqie Engine 的重要设计理念之一,就是:

读取资料时,不立即决定采用哪一条反切。

相反地,Engine 会保留所有候选方案。

例如:

Character
    │
    ▼
Candidate A
Candidate B
Candidate C
Candidate D

每一个 Candidate 都保存完整资讯,包括:

  • 资料来源
  • 反切
  • 中古汉语音韵资料
  • Metadata
  • 可信度资讯

之后才开始进行评分。

Candidate 是什么?

在 Quizzman Fanqie Engine 中,

Candidate 并不只是某一条反切。

它代表的是:

一套完整的读音假设。

每个 Candidate 包含:

  • 反切
  • 声母
  • 韵母
  • 开/合
  • 声调
  • 重建中古汉语读音
  • 推导汉越音
  • 推导拼音
  • 资料来源

也就是说,

Candidate 是一份完整的语音分析档案,而不只是单一读音。

并非所有资料来源都同样可靠

假设同一个字有四条反切:

《广韵》
   │
   ▼
   A

《集韵》
   │
   ▼
   B

《唐韵》
   │
   ▼
   C

《康熙字典》
   │
   ▼
   D

如果随机选择,

每次执行 Engine 都可能得到不同结果。

这显然无法接受。

因此,

Quizzman 建立了资料来源评分(Source Ranking)

例如:

某些来源可能因为:

  • 更接近标准反切体系
  • 记录较完整
  • 文献可信度较高
  • 更适合作为汉越音重建依据

而获得较高权重。

Candidate Ranking 不只看资料来源

资料来源只是评分的一部分。

Engine 还会综合考量:

  • 中古汉语音韵资料是否合理
  • 汉越音推导是否符合规律
  • 是否符合标准汉越音层
  • Lexical 资料
  • 人工校订读音
  • 历史例外

因此,

即使两个 Candidate 都来自《广韵》,

最后得到的分数仍可能完全不同。

Candidate Scoring 如何运作?

整体流程可概括如下:

Character
      │
      ▼
Candidate Generation
      │
      ▼
Candidate Validation
      │
      ▼
Source Score
      │
      ▼
Phonological Score
      │
      ▼
Lexical Score
      │
      ▼
Final Score
      │
      ▼
Best Candidate

各阶段分工如下:

  • Candidate Generation:产生所有可能候选。
  • Candidate Validation:排除不合理候选。
  • Candidate Scoring:逐一评分。
  • Final Selection:选出最佳 Candidate。

不只是查字典比对

有人误以为:

Candidate Ranking 只是比较哪个读音最接近《康熙字典》或《康熙字典》。

事实并非如此。

如果只是单纯比对字典,

Engine 就只是一本电子辞典。

Quizzman 采用的是多维度评估,同时整合:

  • 音韵规律
  • 历史资料
  • 反切来源
  • 词汇层(Lexical Layer)

只有当 Candidate 同时符合音韵规律与历史证据时,才会被选为最佳结果。

Candidate Ranking 如何处理多音字?

许多汉字本来就具有多个读音。

例如:

Character
     │
     ├── Reading A
     ├── Reading B
     └── Reading C

Candidate Ranking 并不试图删除其他读音。

相反地,

Engine 保留所有候选,

再分析:

  • 哪个是主要读音
  • 哪个属于变体
  • 哪个属于古读
  • 哪个仅见于特定文献

如此既能保存完整历史资料,也能为使用者提供最适合的预设结果。

Candidate Ranking 与 Explainable AI

Quizzman Fanqie Engine 的一大特色是:

不只给答案,也能解释答案。

例如:

Candidate A
Score:92

Candidate B
Score:84

使用者可以清楚知道:

  • Candidate 来自哪部文献
  • 优势在哪里
  • 哪些因素获得加分
  • 为何其他 Candidate 未被采用

这也是许多纯机率式 AI 模型较难提供的能力。

Candidate Ranking 的核心理念:不是删除资料,而是整理资料

Quizzman Fanqie Engine 并不追求唯一「绝对正确」的反切。

历史语言本来就经常同时存在多种合理读法。

真正重要的是:

  • 完整保存所有具有学术价值的候选资料。
  • 以一致的评分标准加以分析。
  • 根据不同应用情境,选出最合适的结果。

透过 Candidate Ranking,Engine 不仅能产生稳定且一致的推导结果,更将《广韵》《集韵》《唐韵》《康熙字典》等典籍中大量零散的反切资料,整合为一个可追溯、可验证、可解释的结构化语音资料空间,让每一个 Candidate 都能依据音韵规律与历史文献获得完整说明。