python调用中如果发现时间戳普遍不准确如何调整 #1394
-
时间戳结束时间大部分停在语音片段上,而不是静音处,如图: 使用模型: damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch
试图修改
|
Beta Was this translation helpful? Give feedback.
Replies: 17 comments 4 replies
-
It appears that 'start' and 'end' are timestamp predictions from a model, not the results of a VAD (Voice Activity Detection) model. |
Beta Was this translation helpful? Give feedback.
-
大佬,有参数可以调吗,我试了下cif_predictor的参数,感觉调了没啥效果,主要是调小noise_threshold2、tail_threshold,没变化 |
Beta Was this translation helpful? Give feedback.
-
thx for reply, I had changed issue title. time stamp predictor params: ~/.cache/modelscope/hub/damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch/config.yaml
|
Beta Was this translation helpful? Give feedback.
-
我也发现了同样的问题,请问大佬解决了吗 @Jackiexiao |
Beta Was this translation helpful? Give feedback.
-
没有,现在不使用这个时间戳~ |
Beta Was this translation helpful? Give feedback.
-
@lyblsgo 请问这个可以通过其他config来调整优化吗,谢谢 |
Beta Was this translation helpful? Give feedback.
-
@lyblsgo 是否可以调节vad的参数,可以把长视频切得更碎,这样时间戳的对齐问题就会好很多呢 |
Beta Was this translation helpful? Give feedback.
-
@lyblsgo 我看短的(比如2分钟内)音视频的时间戳相对准的,而vad的配置里也设置max_single_segment_time为60s了,也就是说vad分段的片段最大只有60s,那是不是说明vad切分的每个片段的起始时间、结束时间的时间戳和paraformer预测的时间戳在叠加的时候计算出现了偏差?请大佬指点下迷津啊⊙(・◇・)? |
Beta Was this translation helpful? Give feedback.
-
@ericg108 @Jackiexiao @fclearner |
Beta Was this translation helpful? Give feedback.
-
MAX_TOKEN_DURATION=12时的前两句: CIF时间戳在理论上无法精准的预测字尾尤其是尾字的尾点,只能调整最大token时长的经验值。 其他与时间戳有关的问题也欢迎反馈。 |
Beta Was this translation helpful? Give feedback.
-
@R1ckShi 感谢回复! |
Beta Was this translation helpful? Give feedback.
-
vad时间戳不会有这样的偏移,上面说的偏移是时间戳预测模型在vad切出来的有效时长内预测字级别时间戳时的问题。 |
Beta Was this translation helpful? Give feedback.
-
@R1ckShi 谢谢!这里是不是做一个后处理呢?比如vad切出来的时长是3分钟,但预测的时间戳结果时长是3分20秒,那是不是可以把这多的20秒均匀地在字或句的预测结果里均匀地减掉,就能保证时长是对齐的,也不会让后面的片段的时间戳也因此后移了呢。 |
Beta Was this translation helpful? Give feedback.
-
字级别的时间戳是基于vad切出来的一个个子句进行的,肯定在vad时间戳以内,上面提到的cif时间戳的偏移不会跨子句积累,所以不会有你说的这个问题,如果有就是相关代码的bug,可以反馈。 |
Beta Was this translation helpful? Give feedback.
-
借楼问个问题,请问这个时间戳如何转换为时间(s)或者音频向量的index呢 |
Beta Was this translation helpful? Give feedback.
-
单位是毫秒,/1000为秒,*16为16k音频的采样点。 |
Beta Was this translation helpful? Give feedback.
-
了解,比较奇怪的是,我用librosa读音频出来的长度和用soundfile读出来的音频时长不一样,用soundfile读出来的音频才能和时间戳时间对上,总之,问题解决了。感谢~
…---原始邮件---
发件人: "Shi ***@***.***>
发送时间: 2024年2月2日(周五) 下午4:37
收件人: ***@***.***>;
抄送: ***@***.******@***.***>;
主题: Re: [alibaba-damo-academy/FunASR] paraformer-large-vad-punc_asr_nat-zh 模型 时间戳 不准确 (Issue #1226)
借楼问个问题,请问这个时间戳如何转换为时间(s)或者音频向量的index呢
单位是毫秒,/1000为秒,*16为16k音频的采样点。
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
@ericg108 @Jackiexiao @fclearner
sentence信息中输出的不是vad的子句时间戳,是根据标点切分出的子句中的字级别时间戳的首字开始和尾字结束,所以调整vad的参数是无效的,这里推荐两种方式 1)如果你需要的是子句的时间戳,可以输出一下vad的结果,funasr/auto/auto_model.py:269;2)如果你反馈的是字级别时间戳不准确,可以尝试调整funasr/utils/timestamp_tools.py ts_prediction_lfr6_standard这个函数中的MAX_TOKEN_DURATION,例如本case中往往是尾点早结束,可以调大。这里使用没有暴露接口的hardcode是因为cif时间戳预测往往有这样的badcase,调整难度比较大。