2025-11-22T21:25:24.652246

FLToP CTC: Frame-Level Token Pruning via Relative Threshold for Efficient and Memory-Saving Decoding on Diverse Platforms

Shree, Jupuru
CTC-based ASR systems face computational and memory bottlenecks in resource-limited environments. Traditional CTC decoders, requiring up to 90% of processing time in systems (e.g., wav2vec2-large on L4 GPUs), face inefficiencies due to exhaustive token-level operations. This paper introduces Frame Level Token Pruning for Connectionist Temporal Classification (FLToP CTC), a novel decoding algorithm that employs frame-level token pruning guided by a relative threshold probability. By dynamically eliminating low-probability tokens per frame, FLToP CTC reduces compute and memory demands while maintaining negligible WER degradation. On LibriSpeech, FLToP CTC achieves a 10.5x runtime speedup and 2.78x memory reduction versus standard CTC decoders. Its simplicity enables seamless integration into CTC decoders across platforms (CPUs, GPUs, etc.). FLToP CTC addresses CTC bottlenecks, offering scalability for resource-limited environments and realtime applications, enhancing speech recognition accessibility and efficiency.
academic

FLToP CTC: Frame-Level Token Pruning via Relative Threshold for Efficient and Memory-Saving Decoding on Diverse Platforms

基本信息

  • 论文ID: 2510.09085
  • 标题: FLToP CTC: Frame-Level Token Pruning via Relative Threshold for Efficient and Memory-Saving Decoding on Diverse Platforms
  • 作者: Atul Shree, Harshith Jupuru
  • 分类: cs.LG cs.SD eess.AS
  • 发表时间: 2025年10月10日 (arXiv提交)
  • 论文链接: https://arxiv.org/abs/2510.09085

摘要

CTC-based ASR systems face computational and memory bottlenecks in resource-limited environments. Traditional CTC decoders, requiring up to 90% of processing time in systems (e.g., wav2vec2-large on L4 GPUs), face inefficiencies due to exhaustive token-level operations. This paper introduces Frame Level Token Pruning for Connectionist Temporal Classification (FLToP CTC), a novel decoding algorithm that employs frame-level token pruning guided by a relative threshold probability. By dynamically eliminating low-probability tokens per frame, FLToP CTC reduces compute and memory demands while maintaining negligible WER degradation. On LibriSpeech, FLToP CTC achieves a 10.5× runtime speedup and 2.78× memory reduction versus standard CTC decoders. Its simplicity enables seamless integration into CTC decoders across platforms (CPUs, GPUs, etc.). FLToP CTC addresses CTC bottlenecks, offering scalability for resource-limited environments and realtime applications, enhancing speech recognition accessibility and efficiency.

研究背景与动机

问题定义

本研究要解决CTC-based自动语音识别(ASR)系统在资源受限环境下面临的计算和内存瓶颈问题。传统CTC解码器需要在每个时间步对所有可能的token进行穷举式处理,导致严重的效率问题。

问题重要性

  1. 计算资源瓶颈:在配备L4 GPU和wav2vec2-large编码器的系统中,CTC解码过程可占用高达90%的处理时间
  2. 内存限制:传统CTC解码器在大词汇量模型中内存消耗巨大
  3. 实时应用需求:实时语音识别和低资源设备部署对解码效率有严格要求

现有方法局限性

  1. 静态剪枝策略:如KenLM和Flashlight采用的静态top-N剪枝缺乏帧级自适应性
  2. 平台特异性:GPU特定的加速方案忽略了CPU和受限设备场景
  3. 架构依赖性:针对RNN-T模型的优化方法无法直接迁移到CTC架构

研究动机

开发一种通用的、平台无关的CTC解码优化算法,通过动态帧级token剪枝在保持识别精度的同时显著提升解码效率。

核心贡献

  1. 提出FLToP CTC算法:一种基于相对阈值概率的动态帧级token剪枝解码算法
  2. 平台无关设计:算法简单通用,可无缝集成到各种平台的CTC解码器中(CPU、GPU等)
  3. 显著性能提升:在LibriSpeech数据集上实现10.5×运行时加速和2.78×内存减少
  4. 统计行为分析:提供了CTC解码器统计行为的深入研究,为算法设计提供理论支撑

方法详解

任务定义

输入:CTC模型输出的logits序列 [T×V],其中T为时间步数,V为词汇表大小 输出:最优文本序列 约束:在保持WER性能的前提下最小化计算和内存开销

模型架构

FLToP CTC算法核心

算法采用两阶段剪枝策略:

  1. Top-N选择:为当前帧选择前N个最高概率token
  2. 相对阈值剪枝:仅保留分数高于 R × 最高分数 的token,其中R为相对阈值参数

算法流程

procedure BEAMSEARCHFLTOPCTC(logits, beam_size, beam_threshold, LM, N, R):
    B ← {(ε, 0)}  # 初始化beam
    for t in 0...T:
        B' ← {}
        logits_idx_sorted ← PartialSortDesc(logits[t], N)
        logit_t0 ← logits[t][logits_idx_sorted[0]]  # 最高分数
        
        for (prefix, score) in B:
            for i in 0...N:
                logit_ti ← logits[t][logits_idx_sorted[i]]
                if logit_ti ≤ logit_t0 × R:  # 相对阈值剪枝
                    break
                # 扩展hypothesis
                token ← IdToToken(logits_idx_sorted[i])
                prefix' ← prefix + token
                score' ← score + logit_ti + LM(prefix')
                B'.add((prefix', score'))
        
        B ← SelectTopK(B', beam_size, beam_threshold)
    return GetHighestScorePrefix(B)

技术创新点

  1. 动态自适应剪枝:相比静态top-N方法,能根据每帧的概率分布动态调整保留的token数量
  2. 相对阈值设计:使用相对于最高分数的比例阈值,而非绝对阈值,提高了跨不同场景的适应性
  3. 条件终止机制:通过early break机制避免不必要的token评估,进一步提升效率
  4. 平台无关实现:算法设计简单,无需特殊硬件支持,可在各种计算平台上部署

实验设置

数据集

  • LibriSpeech数据集:使用dev-clean、dev-other、test-clean、test-other子集进行评估
  • 语言模型:基于训练集构建4-gram KenLM语言模型
  • 编码器:wav2vec2-large模型,在LibriSpeech和LibriVox数据上预训练并在960小时LibriSpeech数据上微调

评价指标

  • Word Error Rate (WER):衡量识别精度
  • 解码时间:衡量计算效率
  • 内存使用量:通过beam数量间接衡量内存消耗

对比方法

  1. Baseline Configuration:标准CTC解码器,使用全部32个token
  2. Top-N Pruning:静态top-N剪枝方法
  3. FLToP CTC:提出的动态剪枝方法

实现细节

  • 词汇表:32个token(26个字母+撇号+空格+特殊token)
  • Beam参数:beam-size=1000,beam-threshold=25
  • 语言模型权重:lm-weight=1.0,word-score=0.95,sil-score=0.0
  • 工具:使用flashlight-text、fairseq和KenLM进行实验

实验结果

主要结果

Token选择统计分析

通过对所有测试样本的token选择索引统计发现:

  • 99.9823%的情况下算法选择前4个token,支持N=4的设置
  • 索引0(最高概率token)被选择1,123,792次,远超其他索引
  • 平均emission分数显示前几个token具有显著优势

Top-N阈值实验(N=1...32)

  • N=4时达到最佳平衡:WER=3.852,优于baseline的3.864
  • 解码时间线性增长:baseline(N=32)比N=4配置慢3.94×
  • N>4时WER提升微乎其微,证明N=4的合理性

相对阈值实验(N=4,R变化)

关键发现:

  • R=0.007时最优效率:WER=3.843,解码时间369.6秒
  • 相比Top-4方法提速2.78×,相比baseline提速10.5×
  • R=0.001时最佳WER:3.831,略慢于R=0.007但仍快于Top-4
  • WER范围:在不同R值下WER保持在3.831-4.301之间

内存效率分析

FLToP CTC在beam数量控制方面表现优异:

  • 平均beam数:214.4(FLToP CTC)vs 596.26(baseline)vs 461.99(Top-N)
  • 内存减少:相比baseline减少2.78×,相比Top-N减少2.15×
  • 分布特征:均值、中位数、四分位数均显著低于对比方法

消融实验

  1. N值影响:N=1到N=4性能显著提升,N>4收益递减
  2. R值影响:R在0.001-0.007范围内提供最佳性能平衡
  3. 组合效果:N=4与R=0.007的组合实现最优效率-精度权衡

相关工作

CTC解码优化

  • 静态剪枝方法:KenLM、Flashlight等采用固定top-N策略
  • 硬件特定优化:GPU加速方案,但缺乏通用性
  • 模型压缩:通过模型压缩减少计算,但可能影响精度

RNN-T优化

  • 架构差异:RNN-T的优化方法因架构差异无法直接应用于CTC
  • 剪枝策略:提供了一些剪枝思路但需要针对CTC特点重新设计

传统ASR工具

  • HMM/Viterbi方法:Kaldi、HARPY等使用状态依赖剪枝
  • 粒度差异:传统方法在更高粒度操作,而FLToP CTC在帧级操作

结论与讨论

主要结论

  1. 显著效率提升:FLToP CTC实现了10.5×运行时加速和2.78×内存减少
  2. 精度保持:在大幅提升效率的同时保持甚至略微改善WER性能
  3. 通用适用性:算法简单通用,可跨平台部署
  4. 统计驱动设计:基于深入的统计分析设计算法参数

局限性

  1. 词汇表规模依赖:在较小词汇表(32 tokens)上验证,大词汇表效果需进一步验证
  2. 语言特异性:主要在英语数据集上测试,多语言适应性有待验证
  3. 模型依赖性:主要基于wav2vec2模型,其他CTC模型的适应性需要验证
  4. 参数调优:R和N参数可能需要针对不同应用场景调优

未来方向

  1. 自适应参数调整:开发能根据输入特征动态调整R值的方法
  2. 大词汇表扩展:在更大词汇表和多语言场景下验证算法效果
  3. 端到端优化:结合模型训练过程优化解码效率
  4. 硬件特定优化:针对特定硬件平台进一步优化实现

深度评价

优点

  1. 实用价值高:解决了CTC解码的实际瓶颈问题,具有直接的应用价值
  2. 方法简洁有效:算法设计简单但效果显著,易于理解和实现
  3. 实验充分:从统计分析到性能评估,实验设计系统全面
  4. 通用性强:平台无关的设计使其具有广泛的适用性
  5. 性能提升显著:10.5×的加速比和2.78×的内存减少令人印象深刻

不足

  1. 评估范围有限:仅在LibriSpeech数据集和特定模型上评估,缺乏更广泛的验证
  2. 理论分析不足:缺乏对算法收敛性和理论保证的分析
  3. 参数敏感性:R和N参数的选择可能需要针对不同场景调优
  4. 比较基准单一:主要与标准CTC解码器比较,缺乏与其他优化方法的对比

影响力

  1. 技术贡献:为CTC解码优化提供了新的思路和实用方法
  2. 实用价值:对于资源受限环境下的ASR部署具有重要意义
  3. 可复现性:算法描述清晰,实现相对简单,具有良好的可复现性
  4. 推广潜力:方法通用性强,有望在工业界得到广泛应用

适用场景

  1. 资源受限环境:移动设备、边缘计算等计算资源有限的场景
  2. 实时应用:对延迟敏感的实时语音识别应用
  3. 大规模部署:需要处理大量语音请求的云服务场景
  4. 嵌入式系统:IoT设备等对功耗和内存有严格限制的应用

参考文献

论文引用了32篇相关文献,主要包括:

  • CTC基础理论文献:Graves et al. (2006), Bourlard & Morgan (1994)
  • 现代ASR模型:wav2vec 2.0, WavLM
  • 解码优化工具:KenLM, Flashlight
  • 数据集:LibriSpeech, LibriVox
  • 相关优化方法:模型压缩、硬件加速等领域的重要工作

总体评价:这是一篇实用性很强的技术论文,提出的FLToP CTC算法简单有效,在CTC解码优化方面取得了显著进展。虽然在评估范围和理论分析方面还有提升空间,但其实用价值和通用性使其成为ASR领域的有价值贡献。