仅需3%训练数据的文本归一化技术

28 阅读3分钟

文本归一化与语音合成

在类似某中心语音助手等服务中,文本归一化通常是文本到语音转换过程的第一步。文本归一化将原始文本(如字符串"6-21-21")扩展为语音合成模型可以使用的口语化形式("twenty first of June twenty twenty one")。

传统方法的局限性

历史上,文本归一化算法依赖硬编码规则,这些规则难以跨语言泛化且维护困难:典型的基于规则的文本归一化系统可能包含数千条规则,需要语言学专业知识开发。

机器学习方法的挑战

最近,学术界和工业界研究者开始开发基于机器学习的文本归一化模型,但这些方法也存在缺点:

  • 序列到序列模型偶尔会产生不可接受的错误
  • 符号分类模型需要语言学专家创建的特定领域信息类
  • 两种模型都需要大量训练数据,难以跨语言扩展

Proteno解决方案

在某机构计算语言学北美分会会议上,我们提出了名为Proteno的新文本归一化模型,解决了这些挑战。

核心创新

精简的分类体系:Proteno仅指定少量低级别归一化类别(如序数、基数或罗马数字),这些类别能很好地跨语言泛化。然后从数据中学习大量额外的细粒度类别。

高效的标记化方案:Proteno的标记化技术简单地在空格和Unicode类别转换处拆分文本,无需语言学知识或数据密集型训练。

性能表现

我们在英语、西班牙语和泰米尔语上评估了Proteno:

  • 英语:使用8个预定义类别,Proteno自动生成另外2,658个类别
  • 数据效率:在英语实验中,Proteno仅需3%的训练数据即可达到先前最先进技术的相当性能
  • 多语言表现:西班牙语准确率99.1%,泰米尔语96.7%,英语97.4%

技术方法

处理流程

Proteno将文本归一化视为序列分类问题,大部分类别是学习得到的:

  1. 标记化:基于空格和Unicode类别变化的粒度标记化机制
  2. 标注:对标记化文本进行逐标记标注
  3. 类别生成
    • 预定义类别:8-10个包含基本归一化规则的类别
    • 自动生成类别:通过分析数据集中的未归一化到归一化标记映射自动创建

分类器实验

我们试验了四种不同类型的分类器:

  • 条件随机场
  • 双向长短期记忆模型
  • Bi-LSTM-CRF组合
  • Transformer模型

数据集分析

语言总预定义类别语言特定预定义类别自动生成类别
西班牙语105279
泰米尔语8374
英语842,658

英语生成的自动类别显著多于其他语言,因为书面英语倾向于使用更多缩写。

结论

Proteno是在数据标注要求较低的情况下进行文本归一化的强有力候选方案,同时能遏制不可接受的错误,使其成为生产文本到语音模型的稳健且可扩展的解决方案。