语音模型GLM-4-Voice微调重庆话

edwin99
edwin99
2025-01-19 17:10
31 阅读
0 评论
目录
正在加载目录...

收集重庆话语音-文本数据集

  • 语音数据:需包含重庆话的语音样本,覆盖多种场景(如日常对话、问答、故事讲述),并标注对应的文本转录。建议时长至少数百小时以覆盖方言的多样性35。

  • 文本数据:若需提升模型在重庆话文本生成中的表现,可补充重庆话的文本语料(如方言对话、俚语等),并转化为语音Token与文本Token交错的数据格式,以适配GLM-4-Voice的预训练架构5。

  • 情感与风格标注:若需增强情感表达,需标注语音的情感标签(如高兴、生气)及语速、语调参数16。

 

数据预处理

  • 使用GLM-4-Voice的Tokenizer(基于Whisper Encoder改进的监督式Tokenizer)将重庆话语音转换为离散Token(12.5Hz帧率,超低码率175bps),保留语义和副语言信息(如语速、情感)35。

 

微调方法

GLM-4-Voice基于GLM-4-9B的LLM主体,支持参数高效微调(PEFT)。可能会选择以下方法:

  1. LoRA(低秩适应)

    • 原理:在模型的自注意力或前馈网络层引入低秩矩阵,仅微调少量参数。例如,在GLM-4-Voice的LLM主体中定位关键权重矩阵,注入低秩更新模块28。

    • 优势:显著减少显存占用,适合计算资源有限场景。Datawhale团队已发布GLM-4的LoRA微调教程,可直接参考其代码框架8。

    • 实现:使用Hugging Face的PEFT库,结合重庆话数据集调整低秩矩阵参数。

  2. 适配器调整(Adapter Tuning)

    • 原理:在模型层间插入小型神经网络模块(适配器),仅训练适配器参数。适用于需要保留原模型通用能力的场景2。

    • 适配对象:可针对GLM-4-Voice的语音Tokenizer或Decoder模块插入适配器,优化方言生成效果。

但是具体用哪种方法我还不清楚,目前还需要更多论证支持,还在不断探索。

 

通用微调流程

  1. 模型加载与配置

    • 下载GLM-4-Voice开源代码,预训练权重36。

    • 根据官方文档配置环境,安装依赖(如PyTorch、Transformers、PEFT等)38。

  2. 训练设置

    • 输入格式:将重庆话语音Token与文本Token交错排列,模拟预训练阶段的“Speech2Text”和“Text2Speech”任务5。

    • 训练目标:采用Next Token Prediction,结合语音生成质量评估指标(如MOS评分、ASR-WER)优化模型4。

    • 超参数调整:学习率设为较低值(如1e-5),批次大小根据显存调整,训练轮次建议10-20个epoch8。

  3. 流式生成优化

    • 启用Streaming Thoughts模板,实现低延迟的重庆话实时对话。模型交替生成文本和语音Token,确保内容连贯性5。

 

评估+部署

  1. 性能评估

    • 基础任务:测试重庆话的语音识别(ASR)和语音合成(TTS)准确率,对比微调前后效果4。

    • 主观评价:通过人工评测或ChatGPT自动评分,评估生成语音的自然度、情感表达及方言地道性46。

  2. 部署应用

    • 集成至清言App或自定义语音助手,支持用户通过语音指令调用重庆话交互功能6。

    • 结合视频通话模块(如即将上线的功能),实现多模态方言交互6。



项目时间安排

1月-5月:收集数据集

6月-9月:项目开销,范围等项目方案管理

9月-11月:代码阶段,代码阶段

11月-12月:测试阶段

评论区 (0)

登录后参与评论

暂无评论,抢沙发吧!