背景
我们线上用 SenseVoice-Small 做普通话 +粤语识别(已部署),输出标准中文。现在想在不损失现有普通话/粤语识别能力的前提下,新增潮汕话识别。
难点:潮汕话不在 SenseVoice 现有语种里;而且我们拿不到官方普通话/粤语的原始训练数据,担心直接微调会导致普/粤能力灾难性遗忘。
想请教的问题
-
如何防遗忘:在没有原始 zh/yue 训练数据的情况下,微调新增一个语种,有没有官方推荐做法避免遗忘?是否只能靠混入其他 zh/yue
数据"复习"?新增语种数据 vs 复习数据的推荐配比大概是多少?
-
能否部分参数微调:SenseVoice-Small 微调是否支持冻结部分参数(比如冻结encoder、只训练部分层)用于低资源/防遗忘?文档里我只看到全量微调,请问有没有冻结/adapter 的官方做法?
-
语种标签冲突:SenseVoice 的语种 token 是闭集(<|zh|> <|en|> <|yue|> <|ja|> <|ko|>),没有潮汕话槽位。我打算把潮汕话标成
<|zh|>(因为输出目标是标准中文)——这样会不会干扰原有普通话(同为 <|zh|>)的识别?能否新增一个自定义语种 token?如何添加?
-
有没有增量扩展新语种的官方示例或建议?
我已经尝试/了解的
计划使用的命令
计划用 examples/industrial_data_pretraining/sense_voice/finetune.sh + jsonl(潮汕话样本 text_language 标为
<|zh|>)。尚未开跑,想先确认方向是否正确。
背景
我们线上用 SenseVoice-Small 做普通话 +粤语识别(已部署),输出标准中文。现在想在不损失现有普通话/粤语识别能力的前提下,新增潮汕话识别。
难点:潮汕话不在 SenseVoice 现有语种里;而且我们拿不到官方普通话/粤语的原始训练数据,担心直接微调会导致普/粤能力灾难性遗忘。
想请教的问题
如何防遗忘:在没有原始 zh/yue 训练数据的情况下,微调新增一个语种,有没有官方推荐做法避免遗忘?是否只能靠混入其他 zh/yue
数据"复习"?新增语种数据 vs 复习数据的推荐配比大概是多少?
能否部分参数微调:SenseVoice-Small 微调是否支持冻结部分参数(比如冻结encoder、只训练部分层)用于低资源/防遗忘?文档里我只看到全量微调,请问有没有冻结/adapter 的官方做法?
语种标签冲突:SenseVoice 的语种 token 是闭集(
<|zh|> <|en|> <|yue|> <|ja|> <|ko|>),没有潮汕话槽位。我打算把潮汕话标成<|zh|>(因为输出目标是标准中文)——这样会不会干扰原有普通话(同为<|zh|>)的识别?能否新增一个自定义语种 token?如何添加?有没有增量扩展新语种的官方示例或建议?
我已经尝试/了解的
finetune.sh与 jsonl 数据格式(key/source/target/text_language等)。<|zh|>是否会干扰普通话。计划使用的命令
计划用
examples/industrial_data_pretraining/sense_voice/finetune.sh+ jsonl(潮汕话样本text_language标为<|zh|>)。尚未开跑,想先确认方向是否正确。