本帖最后由 Oumin 于 2024-12-24 11:19 编辑
很多客户需要在原有词条上想要替换或更改一些命令词,分享一下如何完成这些操作。 注意:本帖以“分词合成语言模型”为例更改词条。
一、修改分词.txt文件 1、打开使用的SDK文件夹下的asr文件中的G.fst0.txt、G.fst1.txt进行编辑修改,路径【D:\CI130X_SDK_Offline_alg_2_3_X\projects\offline_asr_alg_pro_sample\firmware\asr】 2、“G.fst0.txt”是命令词的分词文件,“G.fst1.txt”则是唤醒词的分词文件,如果要更改唤醒词,两个.txt文件都需要做更改,如果只更改命令词,在“G.fst0.txt”文件中更改即可 以更改唤醒词为例,将原来的唤醒词“智能管家”更改为“小爱小爱”,在两个文件中进行更改,更改完毕后记得保存
二、进行语言模型开发 2、填写好相应的“项目名称”、“产品类型”、“芯片选择”、“语言类型”; 3、“模型类型”---> 模型类型需要与SDK的版本配合使用 - “普通声学模型V1”:支持百条命令词的识别,仅支持与V1.XX.XX版本SDK配合使用
- “pro声学模型V2”:支持十万以上命令词条的识别,仅支持与V2.XX.XX版本的SDK配合使用;词条相同的情况下,识别效果优于普通声学模型V1
4、“选择操作类型”---> 选择操作类型有以下几种,本帖以“分词合成语言模型”为例 - “命令词合成语言模型”:上传命令词表或填写命令词进行语言模型合成;
- “分词合成语言模型”:上传分词文件进行语言模型合成;(使用该功能需要开通企业用户权限)
- “语言模型自动优化”:选择此功能后,系统自动对唤醒词和命令词进行优化,优化后的识别体验效果更佳,但优化耗时相对较长,根据系统当前繁忙程度,优化耗时在一般20-120min不等,请耐心等待优化完成;(使用该功能需要开通企业用户权限)
5、“声学模型” 选择声学模型时,必须与语言模型相匹配,不同的声学模型在不同环境会有不同的效果,可查看【D:\CI130X_SDK_Offline_alg_2_3_X\projects\offline_asr_alg_pro_sample\firmware\dnn】文件,能获取到声学模型信息。 6、分别上传刚刚编辑修改过的G.fst0.txt、G.fst1.txt附件,点击【提交】 注意:每次只能上传一个,所以两个分词文件需要进行两次提交
7、等待语言模型开发完成 若当前流程显示“已完成”并且反馈描述显示“OK”,即可到操作栏点击【下载文件】;若当前流程显示“失败”,同样可点击【下载文件】,解压查看G.fst_check.log文件中的说明,看看是哪部分出现问题,解决后重复以上的步骤提交。在这个步骤需下载两个文件(命令词、唤醒词的语言模型文件)。
三、完成文件替换 1、前面提到G.fst0.txt”是命令词的分词文件,“G.fst1.txt”则是唤醒词的分词文件,所以我们要将下载好的文件重命名 2、将修改后的4个文件替换【D:\CI130X_SDK_Offline_alg_2_3_X\projects\offline_asr_alg_pro_sample\firmware\asr】的文件
四、修改表格 修改【D:\CI130X_SDK_Offline_alg_2_3_X\projects\offline_asr_alg_pro_sample\firmware\user_file\cmd_info】中的表格,将两个子表中的“智能管家”词条更改为“小爱小爱”。
五、升级固件:【合成打包bin文件】--->【编译代码】--->【打包升级】 到这步已经完成所有,如果新的词条无法识别,注意检查以下几点: >>> 分词文件中是否已经有相应词条;
>>> asr和dnn的模型是否一致;
>>> 模型是否适配SDK版本;
>>> {60000}表格是否有更改、保存;
>>> 是否有进行合成打包bin文件;
>>> 所有bin文件是否重新打包......

|