Henry-Z

天道酬勤 知行合一

概述

如下图所示,是llama.cpp加载GGUF格式模型文件时的调用流程:

gguf File Load Flow
  1. 首先根据模型配置参数确定模型推理的后端设备类型和模型调用方式;
  2. 加载获取模型架构类型信息;
  3. 加载模型的超参数,包括模型名、词表大小、嵌入向量大小、模型层数等模型结构相关的超参数;
阅读全文 »

概述

LLM的原始输出是一个 logits 列表,该列表中的每个元素对应一个词元的预测概率,基于它们选择下一个预测的token, 这个过程称为采样。目前llama.cpp存在多种采样方法可供选择,它们适用于不同的应用场景。 例如,在一些自然语言处理任务中,可能会采用贪心采样(Greedy Sampling)方法,即总是选择具有最高概率的token作为下一个 token。 这种方法简单直接,但可能会导致生成的文本缺乏多样性。 另一种常见的采样方法是随机采样(Random Sampling),它会根据 token 的概率分布进行随机选择。虽然这种方法增加了生成文本的多样性, 但也可能引入一些不太合理的选择。 为了在多样性和合理性之间取得平衡,还有一些更复杂的采样方法,如基于温度的采样(Temperature-based Sampling)。通过调整温度参数, 可以控制概率分布的平滑程度,从而影响采样的随机性。 此外,还有一些基于束搜索(Beam Search)的采样方法,它会同时考虑多个可能的序列,并根据一定的评估标准选择最优的序列作为输出。 不同的采样方法在不同的场景下具有各自的优势和局限性,选择合适的采样方法对于生成高质量的文本至关重要。

阅读全文 »

概述

MiniCPM 是面壁与清华大学自然语言处理实验室共同开源的系列端侧大语言模型,主体语言模型 MiniCPM-1B 仅有 12亿(1.2B)的非词嵌入参数量。

模型框架介绍

如下图所示,是MiniCPMV模型的多模态推理流程图。如果有图片输入,会在文本字段中添加 (<image>./</image>)占位符号,表示需要基于该图片特征进行内容的生成,当然也可以支持多个图片的输入,简单示例如下:

  • 单张图片
1
(<image>./</image>)What is this picture?
  • 多张图片
1
(<image>./</image>)(<image>./</image>)What is those pictures?

那么从图片的像素特征空间转到语言模型特征空间后,其等效的文本token长度固定为64,多张图片的token长度则对应为64的倍数。

阅读全文 »

概述

CTC,全称是Connectionist Temporal Classification,中文译为连接时序分类。特别适用于处理序列数据,例如语音识别、手写识别和机器翻译等任务,其中输入序列和输出序列的长度可能不一致。 更具体地说,CTC 解决了序列标注问题中标签与输入长度不匹配的难题。传统的序列标注方法要求输入序列和输出序列长度一致,而 CTC 允许输出序列比输入序列短,并引入了空白符(blank symbol)来处理重复和不必要的标签。

阅读全文 »

概述

目前板端部署的语音模型是通义千问的SenseVoice Small模型,具有如下优点:

  • 多语言识别: 采用超过40万小时数据训练,支持超过50种语言,识别效果上优于Whisper模型。
  • 富文本识别:
    • 具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。
    • 支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。
  • 高效推理: SenseVoice-Small模型采用非自回归端到端框架,推理延迟极低,10s音频推理仅耗时70ms,15倍优于Whisper-Large。
  • 微调定制: 具备便捷的微调脚本与策略,方便用户根据业务场景修复长尾样本问题。
  • 服务部署: 具有完整的服务部署链路,支持多并发请求,支持客户端语言有,python、c++、html、java与c#等。

在语音特征前添加四个嵌入作为输入传递给编码器:

  • LID:用于预测音频语种标签。
  • SER:用于预测音频情感标签。
  • AED:用于预测音频包含的事件标签。
  • ITN:用于指定识别输出文本是否进行逆文本正则化。
阅读全文 »

概述

语音模型常用的语音特征类型如下:

  • 梅尔滤波器组系数(Mel Filter Bank, FBank, 又称 Log-Mel);
  • 梅尔频率倒谱系数(Mel-Frequency Cepstral Coefficients,MFCC); 如下图所示,是提取上述特征的流程:

audio-pre-process

阅读全文 »

概述

在语音活动检测(VAD)中,有多种模型可供选择,每种模型都有其独特的特点和应用场景。

Webrtc-VAD 是一种广泛应用的语音活动检测模型,它基于语音信号的能量和过零率等特征进行检测。SileroVAD 则采用了深度学习技术,通过对大量语音数据的学习,能够更准确地检测语音活动。FSMN-VAD 结合了前馈序列记忆网络,在处理长语音序列时表现出色。

这些模型在不同的环境和应用中都发挥着重要作用。例如,在电话会议中,Webrtc-VAD 可以有效地过滤背景噪声,提高语音质量;在智能语音助手等场景中,SileroVADFSMN-VAD 能够更准确地识别用户的语音指令。

未来,随着技术的不断发展,语音活动检测模型将不断改进和创新,为语音通信和交互提供更好的支持。

阅读全文 »
0%