wenet_onlinedecode icon indicating copy to clipboard operation
wenet_onlinedecode copied to clipboard

识别效果

Open Aimeelulu opened this issue 3 years ago • 8 comments

您好,我用的wenet官方第一个conformer模型,识别效果很差,在exp/unified conformer下增加了那个模型的global_cmvn、final.pt、lang_char.txt文件,请问还需要改动什么地方吗

Aimeelulu avatar Jul 09 '21 02:07 Aimeelulu

@Aimeelulu 大神好,global_cmvn、final.pt、lang_char.txt这三个文件怎么生成啊?

yfq512 avatar Aug 27 '21 09:08 yfq512

我用了202108……的那个模型识别效果还不错。

yfq512 avatar Jan 18 '22 03:01 yfq512

请问怎么改动,我用官方最新的训练模型会出现错误,是新版预训练模型对模型结构调整了导致无法加载吗?

RuntimeError: Error(s) in loading state_dict for ASRModel:
        Missing key(s) in state_dict: "encoder.encoders.0.conv_module.norm.running_mean", "encoder.encoders.0.conv_module.norm.running_var", "encoder.encoders.1.conv_module.norm.running_mean", "encoder.encoders.1.conv_module.norm.running_var", "encoder.encoders.2.conv_module.norm.running_mean", "encoder.encoders.2.conv_module.norm.running_var", "encoder.encoders.3.conv_module.norm.running_mean", "encoder.encoders.3.conv_module.norm.running_var", "encoder.encoders.4.conv_module.norm.running_mean", "encoder.encoders.4.conv_module.norm.running_var", "encoder.encoders.5.conv_module.norm.running_mean", "encoder.encoders.5.conv_module.norm.running_var", "encoder.encoders.6.conv_module.norm.running_mean", "encoder.encoders.6.conv_module.norm.running_var", "encoder.encoders.7.conv_module.norm.running_mean", "encoder.encoders.7.conv_module.norm.running_var", "encoder.encoders.8.conv_module.norm.running_mean", "encoder.encoders.8.conv_module.norm.running_var", "encoder.encoders.9.conv_module.norm.running_mean", "encoder.encoders.9.conv_module.norm.running_var", "encoder.encoders.10.conv_module.norm.running_mean", "encoder.encoders.10.conv_module.norm.running_var", "encoder.encoders.11.conv_module.norm.running_mean", "encoder.encoders.11.conv_module.norm.running_var".

phoenixsfly avatar Jan 20 '22 11:01 phoenixsfly

我没修改,就是找了个模型,改几个配置参数,就可以跑了

yfq512 avatar Jan 21 '22 01:01 yfq512

我用了202108……的那个模型识别效果还不错。

我发现模型参数读不进来 直接四个都替换掉吗

chengming1108 avatar Jul 06 '22 02:07 chengming1108

我没修改,就是找了个模型,改几个配置参数,就可以跑了

您好 wenet_decoder.py 那几个参数怎么修改。可以分享一下吗 后面的参数读不进来

chengming1108 avatar Jul 06 '22 07:07 chengming1108

@chengming1108

加载模型和字典等

……
    ASR_model = WeNetDecoder("20210815_unified_conformer_exp/train.yaml")
    with open('./test5.wav','rb') as audiostream:
        for dataflow in iter(lambda:audiostream.read(4000),""):
            if len(dataflow) == 0:
                break
            sig = struct.unpack("%ih" % (len(dataflow) / 2), dataflow)
            data = np.array([float(val) for val in sig])
            ASR_model.detect(data)
            ASR_model.ctc_prefix_beam_search_purn()
            #SR_model.ctc_greedy_search_purn()
            # time.sleep(0.1)
    s = ASR_model.decoder_recoring()
    print('result', s)
……

20210815_unified_conformer_exp/train.yaml 修改配置

……
cmvn_file: 20210815_unified_conformer_exp/global_cmvn
checkpoint: 20210815_unified_conformer_exp/final.pt
dict: 20210815_unified_conformer_exp/words.txt
……

yfq512 avatar Jul 06 '22 07:07 yfq512

@chengming1108

加载模型和字典等

……
    ASR_model = WeNetDecoder("20210815_unified_conformer_exp/train.yaml")
    with open('./test5.wav','rb') as audiostream:
        for dataflow in iter(lambda:audiostream.read(4000),""):
            if len(dataflow) == 0:
                break
            sig = struct.unpack("%ih" % (len(dataflow) / 2), dataflow)
            data = np.array([float(val) for val in sig])
            ASR_model.detect(data)
            ASR_model.ctc_prefix_beam_search_purn()
            #SR_model.ctc_greedy_search_purn()
            # time.sleep(0.1)
    s = ASR_model.decoder_recoring()
    print('result', s)
……

20210815_unified_conformer_exp/train.yaml 修改配置

……
cmvn_file: 20210815_unified_conformer_exp/global_cmvn
checkpoint: 20210815_unified_conformer_exp/final.pt
dict: 20210815_unified_conformer_exp/words.txt
……

收到 谢谢

chengming1108 avatar Jul 06 '22 11:07 chengming1108