Deciphering Oracle Bone Language with Diffusion Models
用扩散模型破译甲骨文
📖导读:本篇博客有
🦥精读版
、🐇速读版
及🤔思考
三部分;精读版是全文的翻译,篇幅较长;如果你想快速了解论文方法,可以直接阅读速读版部分,它是对文章的通俗解读;思考部分是个人关于论文的一些拙见,欢迎留言指正、探讨。
目录
🦥精读版
Abstrct
甲骨文(OBS)起源于约 3000 年前的中国商朝,是语言史上的一块基石,比许多已确立的书写系统都要古老。尽管已发现了数千个铭文,但仍有大量甲骨文尚未被破译,给这一古老语言蒙上了一层神秘的面纱。现代人工智能技术的出现为甲骨文的破译开辟了新的前沿领域,对传统的自然语言处理(NLP)方法提出了挑战,因为传统方法严重依赖大量文本语料库,而这对于历史语言来说是难以实现的。本文通过采用图像生成技术,特别是通过开发甲骨文破译器(OBSD),提出了一种新的方法。OBSD 利用条件扩散策略生成破译的重要线索,为人工智能辅助分析古代语言开辟了新道路。为了验证其有效性,在甲骨文数据集上进行了广泛的实验,定量结果证明了 OBSD 的有效性。代码和破译结果将在https://github.com/guanhaisu/OBSD上提供。
1. Introduction
甲骨文(OBS)是一种刻在龟甲和兽骨上的古代文字,在中国3000年前的封建王朝商朝被广泛使用。这种文字不仅记录了当时的人文地理和日常活动,还蕴含着宝贵的历史意义,为了解早期中国文明的语言和文化习俗提供了一个独特的窗口。然而,尽管已经发现了数以万计的甲骨碎片,但仍有很大一部分文字尚未被破译(Wang和Deng,2024年),其余部分则笼罩在神秘之中。到目前为止,已经发现了超过4500个甲骨文(OBS)字符,但其中只有约1600个已经被破译并与现代汉字相对应。在现代汉字中,Unicode包含超过90000个汉字,不过在当代中国社会中,常用的汉字大约只有3500个。理解剩余未破译的甲骨文并将其与现代汉字联系起来这一挑战吸引了大量的研究兴趣,人们试图利用现代人工智能技术来理解这种古老的语言(Zhang等,2022年;Jiang等,2023年;Wang和Deng,2024年;Guan等,2024年)。
然而,大多数现有方法主要集中在对已破译甲骨文的识别和理解上(Guo等,2015年;Meng等,2018年;Zhang等,2019年;Hu,2023年),利用人工智能辅助破译未知铭文仍然是一个未被充分探索的领域。部分原因是,与现代语言由于有既定的编码系统可以数字化并以文本形式存储不同,甲骨文缺乏标准的输入法或编码方案,导致其主要以图像形式保存,而不是自然语言处理(NLP)方法中通常使用的数字化文本。此外,由于甲骨文是刻在龟甲和兽骨上的,许多在发现时已经损坏或破碎,基本上没有完整的语料库可用。这种完整语料库的缺失严重限制了需要大量数据集进行训练的语言模型(如BERT(Devlin等,2018年)、RoBERTa(Liu等,2019年)和GPT(Brown等,2020年))的适用性。
为应对传统NLP方法破译甲骨文(OBS)所固有的挑战,本文引入了一种新方法,即采用图像生成技术来辅助破译甲骨文。具体而言,我们训练了一个条件扩散模型,该模型将未见过类别的甲骨文作为条件输入,以生成与之对应的现代汉字图像。这种直接提供现代表示或潜在破译线索的方式利用了模型所学习到的从古代文字到现代字体的演变规律,规避了传统NLP方法在处理古代语言时面临的语料库构建等挑战。值得注意的是,虽然我们的实验重点是甲骨文,但这种训练范式有潜力扩展到其他古代语言,如楔形文字和象形文字。总之,本文做出了三个关键贡献:
-
我们引入了一种利用图像生成技术来完成古代文字破译任务的新方法,为传统NLP方法难以解决的挑战提供了新的解决方案。
-
我们提出了甲骨文破译器(OBSD),这是一种针对甲骨文破译进行优化的条件扩散模型。我们的局部结构采样技术提高了模型识别和解读复杂字符图案的能力。
-
甲骨文破译器(OBSD)通过全面的消融研究和基准比较,证明了其在破译方面的有效性。它为人工智能辅助古代语言破译提供了开创性的方法,可能为未来的研究奠定基础。
2. 相关工作
将机器学习应用于古代语言研究代表着语言学和铭文学领域的一个显著转变。这一领域与通常和现代语言相关的自然语言处理(NLP)任务有所不同,它涉及数字化、语言分析、校勘、翻译以及破译等方面(Jin等,2023年;Nuhn等,2012年;Ravi和Knight,2011年)。若想全面了解这一领域,我们建议感兴趣的读者查阅Sommerschield等人所做的综述(Sommerschield等,2023年;Li等,2020年;Huang等,2019年;Yang和Fu,2020年;Guo等,2015年)。由于篇幅限制,我们的相关工作回顾仅限于与甲骨文语言破译最为相关的文献。
甲骨文语言被认为是一种象形文字,它使用图形符号来表示特定含义。其起源于公元前1500年左右,历经数千年演变成现代汉字。其演变历程可概括为以下七个阶段:甲骨文(公元前1500年)、金文(公元前1300年 - 公元前221年)、篆书(公元前1100年 - 公元前221年)、春秋文字(公元前770年 - 公元前476年)、战国文字(公元前475年 - 公元前221年)、隶书(公元前221年 - 公元220年)和楷书(大约公元3世纪)。这种连续的演变路径使得甲骨文在古代文字中独具特色。许多甲骨文的字符形式保留在了现代规范汉字中。虽然相邻时期的字符在形式和含义上有大量重叠,但在相隔较远的时期之间能发现更大的差异。一些字符在不同时期消失后又重新出现,凸显了这一古老书写系统的动态变化特性。
虽然大多数与甲骨文相关的工作侧重于运用计算机视觉(CV)或自然语言处理(NLP)技术来识别(Zhang等,2021a;Fu等,2022;Wang等,2022年)或理解(Han等,2020年;Qi等,2023年;Hu,2023年)已破译的字符,但利用人工智能辅助破译含义未知的字符在很大程度上仍是一项未被充分探索且颇具挑战性的任务。其中,Zhang等人提出的基于案例的推理策略(Zhang等,2021b)在通过参照已解读字符来破译甲骨文的方法上较为突出。尽管在一定程度上有效,但这种方法本质上受限于对先前已破译字符语料库的依赖,可能会阻碍新含义的发现。在另一方面,Chang等人的级联生成对抗网络框架(Chang等,2022年)在破译方面做出了创新性尝试,但由于甲骨文的演变间隔以及训练数据的完整性问题,它面临诸多挑战。这些挑战之所以产生,是因为当某个字符在特定时期消失时,此类方法所依赖的演变路径就不再完整,这会极大地影响破译成功率,并将其有效性限制在具有清晰演变路径的小数据集范围内。

3. 方法
3.1 预备知识
在本研究中,我们聚焦于甲骨文(OBS)破译任务,旨在预测甲骨文对应的现代汉字形式。这项工作不仅力求匹配已知字符,还旨在揭示新的字符形式,从而阐明这些古代文字的含义。形式上,训练集记为 S = { ( s i , c i ) ∣ s i 是一个甲骨文实例且 c i ∈ C } S=\{(s_i,c_i) | s_i 是一个甲骨文实例且c_i∈ C\} S={(si,ci)∣si是一个甲骨文实例且ci∈C} ,它将甲骨文实例与来自已知类别集合中的相应现代汉字进行配对。我们设计的模型旨在超越训练集 S S S,为甲骨文实例 s ′ s^{\prime} s′识别出现代等价形式,并在不存在现有匹配的情况下提出新的字符形式。
为实现这一目标,我们的方法利用了一种基于扩散的(Ho 等,2020 年)模型,用于将甲骨文字符图像 X ~ \tilde{X} X~ 转换为它们对应的现代汉字,如图 1 所示。该模型分两个阶段运行:在正向过程中,正向阶段会给现代汉字图像 X 0 X_0 X0引入噪声,通过受控马尔可夫链过程使其朝着类似纯噪声的状态转变,最终符合高斯分布 N ( 0 , I ) \mathcal{N}(0,I) N(0,I)。其数学表述如下:
其中 T T T 表示总步数。对于每一步 t t t,噪声是依据以下公式添加的:
其中, α t \alpha_t αt是一个控制噪声强度的超参数,而 I I I表示单位矩阵。从 X 0 X_0 X0 经过 t t t 步过渡到有噪声状态 X t X_t Xt 的过程由以下公式描述:
其中 γ t \gamma_t γt 是截至 t t t 步的 α \alpha α 值的累积乘积。
去噪阶段采用了一种U-Net架构(Ronneberger等人,2015)作为模型 f θ f_{\theta} fθ,经过训练后可用于预测噪声 ϵ \epsilon ϵ 并恢复图像。训练目标是使损失函数最小化:
该损失函数用于衡量实际噪声 ϵ \epsilon ϵ与其通过 f θ f_{\theta} fθ所做估计之间的差异。在推理阶段 p θ ( X t ∣ X t , X ~ ) p_{\theta}(X_{t}|X_{t},\tilde{X}) pθ(Xt∣Xt,X~),我们反转添加噪声的过程,从噪声最多的状态 X T X_{T} XT开始,迭代地进行去噪,直至 t = 1 t = 1 t=1。
其中, ϵ t ∼ N ( 0 , I ) \epsilon_{t} \sim \mathcal{N}(0, I) ϵt∼N(0,I)引入了随机性,以增强模型生成结果的多样性。最终得到的去噪图像 X ^ 0 \hat{X}_{0} X^0就代表了解密结果。
在此基础上,我们的OBSD模型将初始解密阶段与零样本细化阶段相结合,以提高解密的准确性。如图2所示,首先,一幅古汉字图像 X ~ \tilde{X} X~经过条件扩散以近似得到一个初始解密图像 X 0 X_{0} X0,然后利用零样本学习方法对其进行细化,借助具有独特风格的参考样式图像 X r e f X_{ref} Xref来校正并强化其结构,使其从现代汉字的结构中学习,从而对 X 0 X_{0} X0进行完善。最终结果 X F X_{F} XF作为预期现代汉字的精细化表示呈现出来,得益于细化过程中所获得的结构方面的认知。
图2:所提出的甲骨文破译器(OBSD)的整体流程。输入的甲骨文
X
~
\widetilde{X}
X
经过扩散模型生成初始破译结果
X
0
X_0
X0,然后参照特定风格对其进行细化,从而产生最终输出
X
F
X_F
XF。


3.2 初始破译
在回顾了3.1节中的基本原理之后,一个初步且有些简单的想法是直接利用古汉字图像作为条件 X ~ \tilde{X} X~,并将现代汉字作为目标图像 X 0 X_0 X0来训练一个用于解密的条件扩散模型。然而,如图3所示,我们观察到直接训练这样一个模型并不能准确生成对应的现代汉字图像。相反,该模型生成的图像是由大量随机的笔画片段组成的,就像胡言乱语的乱码一样。我们推测这种差异产生的原因在于,扩散模型主要是为生成自然图像而设计的,在生成自然图像时,诸如边缘和草图等输入条件会提供结构信息来指导目标图像的生成。然而,在解密古汉字的情境下,输入的古汉字图像与预期的现代汉字结果之间的结构差异是显著的(见图4(a)),这使得标准的条件扩散模型无法有效地准确重建目标现代汉字。为了应对这一挑战,我们引入了局部结构采样(LSS)的概念,以此作为一种手段来帮助扩散模型学习如何将古汉字的局部部首结构映射到相应的现代汉字空间(见图4(b)中的红色标记),从而增强该模型弥合古代铭文与当代语言形式之间结构差距的能力。

图4已经表明,尽管从古汉字到现代汉字发生了相当大的结构演变,但某些局部结构得到了保留。如图5所示,为了使扩散模型能够学习这些局部的部首特征,局部结构采样(LSS)模块采用滑动窗口方法,将目标现代汉字图像 X 0 ∈ R H × W × 3 X_0\in R^{H\times W\times3} X0∈RH×W×3以及相应的古汉字图像 X ~ ∈ R H × W × 3 \tilde{X}\in R^{H\times W\times3} X~∈RH×W×3分割成尺寸为 p ~ × p ~ \tilde{p}\times\tilde{p} p~×p~的 D D D个小块,分别记为 X ~ ( d ) \tilde{X}^{(d)} X~(d)和 X t ( d ) ∈ R p ~ × p ~ × 3 X_{t}^{(d)}\in R^{\tilde{p}\times\tilde{p}\times3} Xt(d)∈Rp~×p~×3,其中 d = 1 , 2 , … , D d = 1, 2, \ldots, D d=1,2,…,D, p ~ = 64 \tilde{p} = 64 p~=64。这里, X t X_{t} Xt表示在时间步 t t t添加了高斯噪声 ϵ t \epsilon_{t} ϵt的现代文本图像。因此,我们着重于学习如下的条件逆向过程:
通过采用这种方法,该模型通过学习从古汉字的局部结构到其现代对应结构的细微映射,对每个小块进行迭代式的细化。于是,公式4中的损失函数可重写如下:
此处模型的目标是使每个小块内估计噪声 ϵ ^ t ( d ) \hat{\epsilon}_{t}^{(d)} ϵ^t(d)与实际噪声 ϵ t ( d ) \epsilon_{t}^{(d)} ϵt(d)之间的差异最小化。
在推理阶段,我们的方法包括通过结构化的网格布局将古汉字图像 X ~ \tilde{X} X~分割成尺寸为 p ~ × p ~ \tilde{p}×\tilde{p} p~×p~(其中 p ~ \tilde{p} p~设为64)的小块,利用滑动窗口进行系统性提取。网格的排列方式是每个单元格容纳 r × r r×r r×r个小块(其中 r r r设为16),这使得细分程度比小块尺寸 p ~ \tilde{p} p~更精细。通过在水平和垂直方向上以步长 r r r在网格中移动来提取小块。然后,初始解密模型通过去噪和采样逐步对每个小块进行细化。
我们方法的独特之处在于对小块之间重叠部分的处理。我们不会等到去噪完成后才处理,而是在每个时间步 t t t对重叠部分进行平均处理,以确保在共享区域能产生均匀的效果。在每个时间步持续进行这种平均处理,可防止在小块被独立处理时通常会出现的拼接伪影的形成。通过在采样过程中对小块之间的过渡进行平滑处理,我们避免了边缘差异,从而保持了重建图像的视觉连贯性。每个步骤的采样动态由公式5定义,该公式引导整个过程朝着生成无缝且无伪影的图像组合的方向进行。算法1展示了局部结构采样(LSS)的伪代码。图5展示了初始解密的整体流程。
算法1 LLS算法 |
---|
![]() |

3.3 零样本细化
尽管利用局部结构采样在生成现代汉字方面取得了一些进展,但初始解密工作仍遇到了显著的障碍,比如结构变形和伪影等问题,如图 6 所示。这些问题源于所采用的多对一训练方法,即多个古汉字实例被映射到单个现代汉字图像上(见图 8),这导致在捕捉汉字演变过程中出现混淆和不准确的情况,并且由于现代汉字样本种类有限,还会产生伪影或不完整的结构。


为了克服这些挑战,我们提出了一种零样本细化策略,该策略涉及在多种多样的现代汉字集合上训练一个模型。考虑到现代汉字存在多种书写风格,我们旨在通过采用不同风格之间的转换任务来提高模型对其结构的理解。我们使用 20 种不同的现代汉字字体对该模块进行训练,以学习不同现代汉字书写风格之间的结构转换。如图 8 所示,这种训练过程是一对一的。这种方法通过利用现成的字体变体简化了数据收集工作,从而增强了模型对汉字结构的理解,并能够运用这些知识来改进初始解密结果,而无需直接针对古汉字到现代汉字的映射进行训练。
我们的零样本细化方法基于一个通用的字体风格转换框架,如图7所示且基于(Yang等人,2024年)的研究。该过程涉及一个双编码器系统,用于将源字体图像 X 0 X_0 X0的风格适配到目标风格 X r e f X_{ref} Xref,同时保持内容的完整性。风格编码器 E s E_s Es从 X r e f X_{ref} Xref中提取风格特征 e s e_s es,而内容编码器 E c E_c Ec对 X 0 X_0 X0和 X r e f X_{ref} Xref进行处理,以获得多尺度内容特征 F 0 = { f o 1 , f o 2 , f o 3 } F_0 = \{f_{o}^{1}, f_{o}^{2}, f_{o}^{3}\} F0={fo1,fo2,fo3}和 F r e f = { f r e f 1 , f r e f 2 , f r e f 2 } F_{ref} = \{f_{ref}^{1}, f_{ref}^{2}, f_{ref}^{2}\} Fref={fref1,fref2,fref2},这些特征通过一个带有多尺度内容聚合(MCA)和参考结构交互(RSI)模块的专用U-Net进行细化,以实现更强的特征整合。该模型采用交叉注意力机制来对齐特征并解决结构差异,其形式化表述如下:
其中, o i o_{i} oi表示由 f 0 i f_{0}^{i} f0i和 e s e_{s} es派生得到的U-Net特征,而 Φ q \varPhi_{q} Φq、 Φ k \varPhi_{k} Φk、 Φ v \varPhi_{v} Φv表示线性投影。变形偏移量 δ offset \delta_{\text{offset}} δoffset的计算如下:
输出的 I f I_{f} If是在考虑到所计算出的变形偏移量的情况下,利用可变形卷积网络(DCN,Dai等人,2017年)对源图像进行渲染的结果:
在将该框架应用于古汉字解密的适配过程中,我们通过聚焦于单一字体风格对模型进行了精简,从而省去了风格对比细化模块及其对比损失,简化了训练过程。编码器是使用偏移损失 L offset \mathcal{L}_{\text{offset}} Loffset进行训练的,该损失用于衡量变形偏移量的平均幅值:
其中, δ offset \delta_{\text{offset}} δoffset表示变形偏移量,它包含了从参考特征中收集到的结构信息,而求平均操作则是计算这些偏移量的平均幅值。
在训练完成后,零样本细化模块被直接用于对扩散模型所生成的结果进行细化。
4. 实验
4.1 数据集与评估指标
为了训练和评估所提出的古汉字解密(OBSD)模型,我们选用了华中科技大学甲骨文数据集(HUST-OBS 数据集,Wang等人,2024 年)和演化中的古汉字数据集(EVOBC 数据集,Guan等人,2024 年),后者是甲骨文最大的存储库之一,包含 71,698 张图像,描绘了 1,590 个不同的字符。考虑到解读未知甲骨文所涉及的复杂性,这通常需要全面的专家验证,我们在测试集中选择了已经解读过的铭文,以简化评估过程。重要的是,测试集中字符的类别是特意从训练集中排除的,确保模型面临解读未见过的新类别字符的真正挑战。数据集按照 9:1 的比例划分为训练集和测试集,为评估提供了一个稳健的框架。
虽然所提出的 OBSD 模型是从图像生成的角度来处理甲骨文解密问题,但必须认识到,传统的图像生成指标,如结构相似性指数(SSIM,Nilsson 和 Akenine-Möller,2020 年),并不适用于这一独特的挑战。相反,我们采用了光学字符识别(OCR)技术作为衡量解密成功与否的更客观的指标。我们自行构建的 OCR 工具 —— 甲骨文 - OCR(OBS-OCR),是一个使用 ResNet - 101 骨干网络的简单分类器,专门在一个包含 88,899 类现代汉字的大型数据集上进行训练,用于评估模型的输出。这个自行构建的 OCR 工具在 88,899 类汉字上实现了 99.87% 的识别准确率,这表明它在评估解密结果方面具有可靠的性能。其目的是自动识别扩散模型生成的结果,并将这些结果与真实情况进行比较,以评估模型的解密性能。通过将 OCR 识别出的字符与其真实标签进行比较,我们模拟了一种可量化的专家验证形式。为了进行更可靠和客观的评估,我们还引入了广泛使用的开源中文 OCR 工具 —— 飞桨 OCR(PaddleOCR)作为额外的 OCR 工具,以支持进一步的评估。这种双 OCR 方法为评估模型准确解读甲骨文语言的效能提供了一个稳健的框架。
4.2 定量结果
在对我们所提出的 OBSD 进行性能的定量评估时,我们运用了两种不同的评估标准:单轮解密和多轮解密。单轮解密评估旨在衡量该方法准确解密单个样本的能力,借此洞察其即时有效性。另一方面,多轮解密评估为该方法的性能提供了一种更具实践性的评估方式,在此评估中,允许针对单张图像开展多次解密尝试。这种方式映照了现实世界中解密任务的迭代特性,能够针对该方法在连续试验中的韧性与适应性展开全面评估。
鉴于当下缺乏专门用于甲骨文语言解密的工具,我们采用了一个比较框架,将一些领先的图像到图像翻译方法适配到这项专门任务上。这组方法涵盖了基于 GAN 的方法,比如 Pix2Pix(Isola 等人,2017 年)、CycleGAN(Zhu 等人,2017 年)、DRIT++(Lee 等人,2020 年),以及基于扩散的方法,像 CDE(Saharia 等人,2022b)、Palette(Saharia 等人,2022a)、BBDM(Li 等人,2023 年)。这种设定不仅呼应了我们 OBSD 方法的核心机制,而且能够在图像翻译的最新进展背景下展开全面评估。每种方法都经过精心调整以适应 OBS 情境,确保训练和测试条件的一致性,从而实现公平评估。

如表 1 所示,在单轮解密评估中,我们的 OBSD 在甲骨文语言解密方面相较于经过适配的图像到图像翻译方法展现出显著优势。值得注意的是,OBSD 所达成的 OBSOCR 和 PaddleOCR 的首位准确率(top - 1 accuracy)分别为 41.0% 和 30.0%,超越了其他方法的表现。随着排名的提升,准确率呈现出明显的上升趋势,在排名前 500 的准确率(Top - 500 accuracy)方面,OBSD 达到了 64.5% 的 OBSOCR 识别准确率。值得一提的是,所有基于 GAN 的方法,如 Pix2Pix、Palette、DRIT++ 和 CycleGAN,在这种情境下成效甚微,首位准确率均为 0%。这可能是由于 GANs 在准确将甲骨文语言解密为现代汉字所需的复杂且细微的映射捕捉方面存在固有挑战。令人惊讶的是,经过适配的扩散模型尽管具有通用性,但也展现出了值得称赞的性能,这凸显了利用图像生成技术来应对传统自然语言处理(NLP)算法在解密任务中所遇挑战的可行性。这与我们的方法前提相符,验证了将基于图像的生成模型融入语言解密领域的新颖做法。

此外,表 2 呈现了多轮解密结果,从中可以看到在多次试验中解密成功率呈现逐步上升的态势。OBS - OCR 指标的成功率起始于 41.0%,到第 10 次试验时稳定在 80.0%,展现了迭代测试的累积效益。同样地,PaddleOCR 指标也呈现出持续上升的趋势,起始于 30.0%,在最后一次试验时达到 58.5%。这些结果验证了通过连续尝试可实现的逐步改进。

4.3 消融实验
为进一步检验我们所提方法中各组件的影响,我们针对LSS模块和零样本细化开展了消融研究。表3中呈现的结果凸显了仅使用基本条件扩散模型进行甲骨文破译的局限性,这种情况下准确率相当低。具体而言,在未做任何增强的情况下训练扩散模型,其输出基本毫无意义,呈现为随机且无法解读的笔画组合(见图3)。LSS模块的引入带来了显著的改进,使得生成的破译结果对于OBS-OCR有37.5%的首位识别率,对于PaddleOCR有24%的Top-1识别率。零样本细化模块与LSS模块相结合,进一步将OBS-OCR和PaddleOCR的Top-1准确率分别额外提高了3.5%和6%。

4.4 定性结果
图 9 展示了多种图像到图像转换模型的定性结果,我们提出的方法——OBSD 表现突出,它能从甲骨文输入中生成最为准确的现代汉字重构结果。例如,Pix2Pix(Isola et al, 2017)生成的输出在不同输入情况下高度一致,这表明其在字符破译方面缺乏区分度。另一方面,DRIT++(Lee et al, 2020)很难生成完整的字符,往往产生碎片化且难以辨认的形式。与之形成鲜明对比的是,OBSD 展现出强大的能力,能够识别并重构每个甲骨文的复杂细节,从而生成连贯且精准的字符形式,与真实情况高度吻合。这些结果不仅凸显了 OBSD 的有效性,还体现了它作为甲骨文语言破译领域工具的潜力。
为展示 OBSD 在真实的、未破译的甲骨文上的性能表现,我们在附录中进行了广泛的评估,如图 10、11、12 和 13 所示。这一评估展示了一系列破译结果,从能揭示甲骨文字符结构要素(如部首和笔画)的部分重构,到与现代汉字高度相似的完整字符形式都有涉及。虽然这些结果大多提供了结构线索,但完全重构的字符尤其具有前景,这表明 OBSD 有可能为甲骨文语言破译领域做出有意义的贡献。
4.5 讨论
实验结果:我们针对甲骨文破译任务,将所提出的甲骨文破译器(OBSD)与其他通用图像生成模型进行了对比。如图 9 所示,大多数通用图像生成模型都无法生成结构完整的汉字。这是因为这些基于条件生成的方法试图将输入的甲骨文图像直接映射到现代汉字上,忽略了汉字的结构及书写规范。相比之下,所提出的甲骨文破译器(OBSD)通过将局部部首结构信息融入训练过程解决了这些问题,从而生成了更准确的输出结果。
对所提出模块的分析:根据实验结果,我们发现所提出的LSS模块有效地引导扩散模型将关注点聚焦于甲骨文和现代汉字的局部结构上。这使得字符笔画更加清晰,字符结构也更加合理。此外,零样本细化模块通过学习现代汉字的结构特征对初始破译结果进行细化,确保了结构更加精确且连贯。
对其他语言的通用性:所提出的方法最初是为表意文字或象形文字语言(如汉字或玛雅文字)而设计的,在这类语言中,单个字符代表一个词或语素。这种设计使得该方法能够适用于类似的语言。对于字母文字而言,其通常字母数量较少,破译一般不是什么问题。这些方法对其他语言的适用性是一个有趣的研究问题,我们将在未来的工作中对此进行探索。
5. 结论
在这项工作中,我们提出了OBSD,这是一种利用条件图像生成来破译甲骨文(OBS)的创新方法。我们新颖的局部结构采样技术解决了从有限样本中学习现代汉字结构时所固有的挑战,使得能够在甲骨文和现代汉字之间有效地进行结构对应学习。此外,零样本细化模块的融入显著提高了破译的准确率,这一说法通过在HUST-OBS数据集和EVOBC数据集上颇具前景的结果得到了证实。OBSD的潜力不止于甲骨文,它为破译其他古代文字(如象形文字和玛雅文字)提供了前景。展望未来,我们旨在与金石学专家展开合作,进一步验证并完善OBSD,期望推动人工智能在古代语言破译方面发挥更大的作用。
6. 局限性
在这项研究中,我们运用了OCR技术,包括一款定制工具以及现成的PaddleOCR软件包,来评估我们的甲骨文破译器(OBSD)在破译甲骨文语言方面的成效。尽管这种方法提供了一种新颖且客观的衡量标准,但认识到其固有的局限性也很重要。然而,这些方法无法直接应用于评估那些真正未被破译的甲骨文,因为对于这类没有真实参照的甲骨文,需要专家进行验证。
评估完全未知的甲骨文字符的破译结果带来了独特的挑战,这超出了OCR技术的能力范围。这项任务涉及对深深植根于这些语言之中的历史、文化以及语言背景进行解读。因此,要对我们的模型针对此类铭文的破译结果进行最终验证,需要甲骨文研究领域的学者和专家参与其中。我们深知这种专家验证的重要性,并且正在探索与该领域的专业人员展开合作,以评估我们的模型针对真正未被破译文本所输出结果的相关性和准确性。
🐇速读版
1. 论文要解决什么问题?
背景介绍: 人工智能破译甲骨文,研究价值与意义不用多说。
难点: 大多数现有方法主要集中在对已破译甲骨文的识别和理解上,但对未破译的甲骨文进行识别理解仍然是一个未被充分探索的领域。部分原因是,与现代语言由于有既定的编码系统可以数字化并以文本形式存储不同,甲骨文缺乏标准的输入法或编码方案,导致其主要以图像形式保存,而不是NLP方法中通常使用的数字化文本。此外,由于甲骨文是刻在龟甲和兽骨上的,许多在发现时已经损坏或破碎,基本上没有完整的语料库可用。这种完整语料库的缺失严重限制了需要大量数据集进行训练的语言模型(如BERT、RoBERTa和GPT)的适用性。因此,这篇文章旨在开发一种能够破译甲骨文的人工智能工具。
2. 如何解决的?
思路:
既然已有的甲骨文数据多为图像形式,那传统的NLP方法肯定不适用,自然会想到使用CV方法。又因为要解决的是可能没有Ground-Truth的图像识别任务,也就是Open-Set问题,而非Off-Set问题,因此图像识别、分割等CV方法肯定不适用,此时会想到使用图像生成的方式来处理,因为图像生成方式可以更好的解决类别外推,很适合未破译甲骨文识别。而条件扩散模型又是当下最火热的图像生成技术,因此一个简单粗暴的做法就是直接训练一个用于解密的条件扩散模型,生成以甲骨文图像作为条件输入,以现代汉字作为输出的图像,如论文原图1所示。

作者也确实这么做了,但是效果很差(如论文原图3所示)。

因此,作者现在面临的问题是如何使得扩散后的结果变好,由此展开了一系列方法探索。
论文方法:
作者推测效果差的原因在于,扩散模型主要是为生成自然图像而设计的,仅仅适合那些具有强对应关系的输入输出图像生成。然而对于甲骨文,输入的甲骨文图像与预期的现代汉字之间的结构有很大差异,没有那么强的对应关系,如论文原图4(a)所示。因此,作者根据论文原图4(b)所展现的特性提出了局部结构采样(LSS)的概念,将全局图像分割为很多局部图像块(如原始112x112的图像通过滑动窗口裁剪为多个64x64的patch对),然后对每个patch进行条件扩散,如论文原图5所示。


但这种方法有个问题,每个patch进行图像生成的过程中相互独立,没有任何信息交互,这就导致生成的图像在相邻patch重叠部分可能不连续,过渡不自然。因此,这里作者很巧妙的在去噪的过程中引入了一个滑动平均的操作,如算法1红框部分所示(若对这部分感兴趣,详见🦥精读版
3.2节)。
算法1 LLS算法 |
---|
![]() |

经过这一系列优化后,效果确实得到的很大改善,但是仍有瑕疵,比如伪影等现象,如论文原图6所示。作者认为这一现象是由多对一训练所导致的,如论文原图8所示,现代的“巴”字可能存在很多不同写法的甲骨文形式,这会导致模型生成结果瑕疵。

针对多对一问题,作者想到了使用另外一个现有的扩散模型Font U-Net(这是一个可以实现将输入文字按照指定的字体风格进行转换的模型),让它专门来学现代汉字的字体结构,然后使用学到的现代汉字结构知识来矫正上一步得到的具有瑕疵的结果,如论文原图7所示。至此,得到最终的破译结果。

整体来看,作者开发的甲骨文破译器(OBSD)由两个级联的扩散模型构成,先使用第一个扩散模型得到有瑕疵的现代汉字,再使用第二个扩散模型进行矫正、细化,得到最终破译结果。
3. 方法优点
-
可以用在真正未被破译(即没有Ground-Truth)的甲骨文破译工作中。
-
理论上也可以适用于破译其他古代文字(如象形文字和玛雅文字)。
4. 局限性
详见🦥精读版
第6节。
🤔思考
-
很有意思的工作,是AI技术应用于实际的典例。所提出的方法很复杂,但是每一步又很必要。整个研究过程呈现出一种循序渐进且不断探索的状态,发现一个问题,解决一个问题。并且在实际研究过程中遇到的每一个问题,都需要强大的数学和编程能力,而不是一些简单的小trick就可以解决的,不愧是Best Paper。
-
论文中也提到了,甲骨文到现代汉字演变历程有七个阶段:甲骨文、金文、篆书、春秋文字、战国文字、和楷书,论文所提出的方法并没有利用这些中间演变信息,这些中间演变信息可能有助于进一步提升破译效果。
-
实验也报告了在真正未被破译的甲骨文上的结果,貌似不是那么理想,如下图所示。这是什么原因造成的?训练过拟合?或者是这类基于字结构进行破译方法的固有局限?这是一个值得进一步探索的问题。
想进一步了解这篇论文的工作,可以跳转至B站视频,作者亲自解读。
参考文献
Haisu Guan, Huanxin Yang, Xinyu Wang, Shengwei Han, Yongge Liu, Lianwen Jin, Xiang Bai, and Yuliang Liu. 2024. Deciphering Oracle Bone Language with Diffusion Models. In Proceedings of the 62nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pages 15554–15567, Bangkok, Thailand. Association for Computational Linguistics.