是先做vad,然后根据vad结果,动态组装batch来做modelscope-funasr转文本吗?

长音频模型,pipeline推理的时候,是先做vad,然后根据vad的结果,动态组装batch来做modelscope-funasr转文本吗?比如vad结果得到:seg1,seg2,seg3,seg4,seg5,...,asr推理的时候,可能会这样组batch:{seg1,seg2,seg3}组成一个batch,batch size=3,{seg4,seg5}组成一个batch,batch size=2。具体怎么组装,由参数控制

展开
收起
三分钟热度的鱼 2024-01-10 16:52:28 131 分享 版权
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    是的,在长音频模型中,pipeline推理时通常会先进行语音活动检测(VAD),然后根据VAD的结果动态组装batch来进行modelscope-funasr转文本。具体组装方式由参数控制,例如:

    def assemble_batches(segments, batch_size):
        batches = []
        current_batch = []
        for segment in segments:
            current_batch.append(segment)
            if len(current_batch) == batch_size:
                batches.append(current_batch)
                current_batch = []
        if current_batch:
            batches.append(current_batch)
        return batches
    
    vad_results = ['seg1', 'seg2', 'seg3', 'seg4', 'seg5']
    batch_size = 3
    batches = assemble_batches(vad_results, batch_size)
    print(batches)
    

    输出结果为:

    [['seg1', 'seg2', 'seg3'], ['seg4', 'seg5']]
    

    这样,我们就可以根据VAD的结果动态组装batch来进行modelscope-funasr转文本。

    2024-01-13 14:34:54
    赞同 展开评论
  • 是的,在长音频模型中,通常会先进行语音活动检测(VAD)以确定哪些部分包含有意义的语音信息。然后,根据VAD的结果动态组装批次来进行ModelScope-FunASR转文本。

    具体来说,假设VAD结果得到以下分段:seg1、seg2、seg3、seg4、seg5等。在进行ASR推理时,可能会这样组装批次:将{seg1, seg2, seg3}组成一个批次,批次大小为3;将{seg4, seg5}组成一个批次,批次大小为2。具体的组装方式和参数控制可以根据实际需求进行调整。

    需要注意的是,组装批次的大小和顺序可能会影响到模型的性能和准确性。因此,在实际应用中,可能需要对不同的批次组合进行实验和比较,以找到最佳的组合方式。

    2024-01-12 10:14:25
    赞同 展开评论

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352

还有其他疑问?
咨询AI助理