GPT应用_llamaindex
llamaindex结构图
1 功能
大模型学习的主要是通用数据,而用户可能需要让 ChatGPT
在本地的知识库中寻找答案。
普通用户不太可能训练大模型;由于本地数据格式丰富,内容烦多,且考虑到使用成本和
token 大小限制,也不可能在每次提问时都将所有数据传给 ChatGPT。
llamaindex 提供了解决此问题的方法:通过 ChatGPT 把本地文本转成
Embedding,然后在本地建立数据索引;询问时先在本地查询,再用 ChatGPT
将查询结果合成答案,llamaindex 是用户数据和大模型之间的接口。
2 原理
2.1 模块
llama_index 由三个主要模块组成:
数据模块:用于读取本地或网络数据,并将大块文本切分成 Node 块。
索引和存储模块:将文本块通过 ChatGPT 转换成 Embedding
嵌入表示存储在本地,构建本地知识库。
搜索模块:根据使用者提出的问题,在本地知识库中定位可能的答案,然后将问题和答案传给
ChatGPT 整合出最终答案。
2.2 组织数据
当用户提出问题时,需要与本地知识库进行匹配,如果数据库中内容很多,会花费大量 ...
主题笔记_增强语言模型
以 ChatGPT
为主的大语言模型出现已有半年时间,研究逐渐从针对模型本身的进化和功能,延展到如何更为有效地利用大模型,将它与其它工具结合,落地,以解决实际领域中的问题。
这里的增强主要指让大语言模型(LM)与外部扩展模块相结合,从而获得超越单纯的自然语言建模的能力。具体能力包含:推理、使用工具、行动。它不仅能解决更多类型的问题,在连接外部模块后,其处理自然语言处理能力也得到突破性进展。
本文介绍一篇增强语言模型综述,以及几篇最近发表的具体应用方法和框架的文章。
增强语言模型综述
论文阅读_增强语言模型综述
英文题目: Augmented Language Models: a Survey
中文题目: 增强语言模型综述
论文地址: http://arxiv.org/abs/2302.07842
解读:https://blog.csdn.net/xieyan0811/article/details/130910473?spm=1001.2014.3001.5501
(将近 5000 字,太长就不贴了)
一篇综述性文章,来 Meta,发布时间为 2023-02-15。
文章从方法论的角论 ...
主题笔记_音频大模型
1 介绍
本次分享包含音频压缩,语音识别,语音合成,以及近两年来大模型在音频领域的应用,涉及八篇论文和一个近期
github 霸榜的语音合成工具。
结果如下图所示:(图链接:audio_llm)
|500
共涉及三种主要技术:音频压缩、音频表示、语音合成;
主要技术来自:google(绿色),微软(紫色)、Facebook(黄色)、Suno-ai(红色)
图中也大致描绘了各技术出现的先后顺序(从上到下)
图中线条表示各技术的依赖和包含关系
除了最近霸榜
Bark,其它都能找到技术论文,并在下文中进行了简单介绍
2 基本概念
本部分介绍音频领域的基本概念。
2.1 音素
语音中最小的、不可再分的语音单元。在不同语言中,音素数量也有所不同,例如英语中有大约
44 个音素,中文普通话中有约 20 个声母和 38 个韵母。
2.2 语义特征与声学特征
语义特征是指语音合成的内容,如:音调、语速、语调;而声学特征则是指语音的物理属性,如基频、共振峰等。二者在不同场景及文章中定义也不完全一致。可以简单地理解为:语义与文本内容更相关,声学与声音更相关,即:文本
->语义 ->声 ...
语音合成工具_bark
1 介绍
多语言的文字转语音模型。
地址: https://github.com/suno-ai/bark
2 模型原理
Bark 通过三个 Transformer 模型,将文本转换为音频。
2.1 文本到语义 Token
输入:由 Hugging Face 的 BERT 标记器分词的文本
输出:编码生成音频的语义 Token
2.2 语义到粗略 Token
输入:语义 Token
输出:来自 Facebook 的 EnCodec 编解码器的前两个 codebooks 的
Token
2.3 粗略到细节 Token
输入:EnCodec 的前两个 codebooks
输出:EnCodec 的 8 个 codebooks
3 使用方法
3.1 环境配置
1docker pull pytorch/pytorch:2.0.0-cuda11.7-cudnn8-runtime
运行 docker
1nvidia-docker run -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all -p 889 ...
论文阅读_音频表示_w2v-BERT
name_ch: W2V-BERT:结合对比学习和 Mask
语言建模进行自监督语音预训练
name_en: w2v-BERT:Combining Contrastive Learning and Masked Language
Modeling for
Self-Supervised Speech Pre-Training
paper_addr: https://ieeexplore.ieee.org/document/9688253/
date_publish: 2021-12-13
1 读后感
w2v-BERT 是音频的表示学习。模型可用于优化语音识别。可以看作对 w2v 2.0
的延展。
2 摘要
文中提出自监督的语音表示学习 w2v-BERT,它结合了对比学习和 Mask
语言模型,前者使用模型将输入的连续语音信号离散化为一组有限的可辨别的语音标记;后面通过
Mask 方法生成结合上下文的语音表示。
相对于之前模型,w2v-BERT 结合了两个不同模型,实现了 end-to-end
训练。w2v-BERT 优于 wav2vec 2.0 30% 以上。
3 介绍
主要贡献
提 ...
论文阅读_音频压缩_SoundStream
name_ch: SoundStream:一种端到端的神经音频编解码器
name_en: SoundStream:An End-to-End Neural Audio Codec
paper_addr: http://arxiv.org/abs/2107.03312
date_publish: 2021-07-07
1 读后感
高效压缩语音、音乐和一般音频。模型由编码器,量化器,解码器组成,主要使用了卷积技术。
2 摘要
基于神经网络的音频编码器,可高效生成文本,音乐。模型结构由全卷积编码器/解码器网络和残差矢量量化器组成。它结合了对抗和重建损失技术,可将量化的嵌入作为输入,生成高质量音频。
单模型生成 3kbps~18kpbs
的音频。该模型适用于低延迟实现,支持流式推理,并可在智能手机
CPU 上实时运行。通过主观质量证明,SoundStream
输出音频高于之前模型。
3 介绍
主要贡献:
提出音频编码器
SoundStream,由编码、解码、量化器组成;通过重建和对抗损失训练模型,实现高品质音频生成。
提出新的残差量化器,平衡速率/失真/复杂度;提出 quantizer
d ...
论文阅读_音频压缩_Encodec
name_ch: 高保真神经音频压缩
name_en: High Fidelity Neural Audio Compression
date_publish: 2022-10-24
paper_addr: http://arxiv.org/abs/2210.13438
code: github.com/facebookresearch/encodec
1 读后感
方法与 SoundStream 相似,模型主要使用了卷积,LSTM,还加入 Transformer
优化量化单元,以减少带宽。
2 摘要
Encodec 也是一个音频编码器 audio codec,包括编码器 -
解码器架构、量化方法和感知损失等要素。EnCodec
在多个音频压缩比和采样率条件下,在语音和音乐的压缩中均达到了最先进的质量水平。
文章还讨论了神经网络压缩模型的两个问题:如何表示噪音和如何高效地压缩,作者通过构建大而多元化的训练集和引入辨别器网络,解决了第一个问题,而通过引入熵编码和实时模式流的控制来解决第二个问题。
检验了 EnCodec 的运算速度、实时和压缩效果,得到了较好的实验效果。
3 方法
模型由 ...
论文阅读_音频表示_wav2vec_2
12345中文名: wav2vec 2.0:语音表示自监督学习框架英文名: wav2vec 2.0:A Framework for Self-Supervised Learning of Speech Representations地址: http://arxiv.org/abs/2006.11477代码: https://github.com/pytorch/fairseq时间: 2020-10-22
1 读后感
模型用于语音识别,模型结构结合了 CNN 和
Transformer。文章言简意赅,结构非常舒服。
2 摘要
先从未标注语音中学习音频的表示,然后通过少量标注数据精调,得到模型优于用大量标注数据训练的模型,且其原理非常简单。
仅使用十分钟的标记数据和 53k
小时的未标记数据的预训练,可达到 4.8/8.2
WER。这证明了使用有限数量的标记数据进行语音识别的可行性。
3 介绍
语音识别系统一般需要成千上万小时的转录语音(语音 +
对应文本)才能达到可接受的性能,而对于全球近 7,000
种语言中的大多数来说,并没有这么多标注数据。
神经网络受益于大量无标记训练数据。自监督 ...
论文阅读_语音合成_Spear-TTS
name_ch: 说话、阅读和提示:少量监督实现高保真文本转语音
name_en: Speak, Read and Prompt:High-Fidelity Text-to-Speech with
Minimal Supervision
paper_addr: http://arxiv.org/abs/2302.03540
code: https://google-research.github.io/seanet/speartts/examples/
date_publish: 2023-02-07
1 读后感
这是一个完整的 TTS 系统,可视为 AudioLM 的延展。
2 摘要
多语言的语音合成系统,使用大量无监督数据,少量有监督数据训练,结合了两种类型的离散语音表示,解耦了:从文本生成语义标记(读),由语义标记再生成声音标记(说)两部分,用大量纯音频数据训练“说模块”,减少“读模块”对并行数据(并行数据指:文本语音数据对)的需求。
为控制说话人,使用提示方法,只需要 3
秒音频即可合成在训练集中未见过的说话人的语音。
实验表明,SPEAR-TTS 仅使用 15
分钟的并行数据 ...
论文阅读_语音合成_VALL-E
name_ch: 神经网络编解码器语言模型实现零样本 TTS
name_en: Neural Codec Language Models are Zero-Shot Text to Speech
Synthesizers
date_publish: 2023-01-05
paper_addr: http://arxiv.org/abs/2301.02111
code: https://github.com/microsoft/unilm/tree/master/valle
1 读后感
语音合成模型,输入是待合成的文本,3
秒的录音,输出为与录音一致的合成后的语音内容。
2 与传统 TTS 的差异
之前的语音模型是:音素 ->梅尔倒谱 ->音频;VALL-E 是:音素
->离散编码 ->音频。
3 主要贡献
• 我们提出了 VALL-E,有效使用上下文学习能力的 TTS
框架,音频编解码器代码作为中间表示,以取代传统的梅尔声谱图。
•
通过利用大量的半监督数据在说话者维度构建了一个通用的
TTS 系统。
• VALL-E
能够以相同的输入文本提供不同的输出,并 ...