自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Linux常用命令

12、head/tail:显示文件的前几行或者后几行。11、more/less:逐页显示文本文件内容。9、touch:创建空文件或更新文件的时间戳。18、wget/curl:从网络下载文件。1、ls:列出当前目录中的文件和子目录。13、 grep:在文件中搜索指定文本。2、pwd:显示当前工作目录的路径。8、mv:移动或重命名文件或目录。19、tar -czvf:解压文件。14、ps:显示当时运行的进程。20、df:显示磁盘使用情况。4、mkdir:创建新目录。7、cp:复制文件或目录。

2024-07-21 20:51:24 326 1

原创 大模型学习-GQA、MQA、MHA

而每个注意力头都有自己的感知域,可以独立学习输入中的不同特性。事实上,不同的”头“可以分别专注于词序列的不同方面,语义、语法。从 MHA 到 MQA 将 H 键和值头减少到单个键和值头,减少了键值缓存的大小,因此需要加载的数据量 H 倍。MQA是MHA的变体,不同的是MQA让所有的头之间共享同一份Key和Value矩阵,每个头只单独保留一份query参数,从而大大减少了Key和Value矩阵的参数量,以此达到提升推理速度,但是会带来精度的损失。注意力机制的核心概念在于把不同的重要性赋予输入的不同部分。

2024-07-16 20:31:28 492

原创 深度学习-样本不均衡损失函数

相对于交叉熵,focal loss 相当于多了一个modulating faction,对于分类准确的样本,pt->1,modulating faction趋近于0。当样本分布失衡时,在损失函数L的分布也会发生倾斜,如m

2024-07-15 19:49:15 559

原创 深度学习-T5

使用了简化的相对位置embedding,即每个位置对应一个数值而不是向量,原来的Transformer采用sin/cos习得position embeddings,而T5将(key和query)相对位置的数值加在attention softmax之前的logits上,每个head的有自己的position embeddings,所有的层共享一套position embeddings,每一层都计算一次,让模型对位置更加敏感。15%的文本破坏比;masked法,将被破坏的token替换成特殊字符,如[M]

2024-07-15 10:34:01 429

原创 深度学习-BART

BART 结合双向的 Transformer 编码器与单向的自回归Transformer解码器,通过对含有噪声的输入文本去噪重构进行预训练,是一种典型的 去噪自编码器 (Denoising autoencoder)。5、文本填充:随机采样多个文本片段,片段长度根据泊松分布(λ=3)进行采样得到。4、文档旋转变换:随机选择输入文本中的一个单词,并旋转文档,使其以该单词作为开始。3、句子排列变换:根据句号将输入文本为多个句子,并将句子顺序打乱,为了恢复句子顺序,模型对整段文本语义具备一定的理解能力。

2024-07-15 09:54:00 523 1

原创 大模型学习-ChatGLM、Llama、ChatGPT系列

等同于同时融合了两者的优点,但是注意,分组查询注意力并没有减少模型的计算量,只是优化的显存的换入换出,在解码过程中由于key和value的数量级远远小于query的数量级,所以在自回归解码时可以将已经计算出来的key和value一直存储在高速缓存中,减少数据换入换出的次数,以此来提升速度。可以有效地保持位置信息的相对关系,相邻位置的编码有一定的相似性,远离位置的编码有一定的差异性,增强模型对位置的感知能力,可通过旋转矩阵来实现位置编码的外推,来实现生成超过预训练长度的位置编码,增强模型的泛化能力和鲁棒性。

2024-07-12 16:41:23 1900

原创 深度学习-beam search

通过调整温度参数 T 的值,可以改变输出向量 y中每个元素的相对大小。而当温度参数T趋近于零时,softmax函数的输出将趋近于一个独热编码,即只有最大值对应的类别的概率接近于1,其他类别的概率接近于0。top k 采样 这个方法就是在采样前将输出的概率分布截断,取出概率最大的k个词构成一个集合,然后将这个子集词的概率再归一化,最后从新的概率分布中采样词汇。top p 采样 累加概率,前若干个词多概率进行累加一直到达到p的阈值,然后取出前面这若干个词,重新进行概率归一化,并把剩下词的概率设为0。

2024-06-28 15:31:07 230

原创 深度学习-学习率lr调整

Warmup是在ResNet论文中提到的一种学习率预热的方法,指训练开始的时候先选择使用一个较小的学习率,训练了一些epoches或者steps(比如4个epoches,10000steps),再修改为预先设置的学习来进行训练。在模型刚开始训练时,模型权重是随机初始化的,一个较大的学习率可能会给模型的不稳定,选择预热方式,模型可以慢慢趋于稳定,等模型相对稳定后再选择预先设置的学习率进行训练,使得模型收敛速度变得更快,模型效果更佳。以初始学习率为最大学习率,在一个周期内先下降后上升。

2024-06-28 11:17:36 760

原创 深度学习-layernorm、batchnorm和RMSNorm

BN:不同样本同一特征做标准化,抹杀了同一特征之间的大小关系,保留了不同特征之间的大小关系。训练过程中需要保存每个神经元的均值和方差。LN:对同一样本的不同特征做标准化(标准正态分布),抹杀了不同样本间的大小关系,但是保留了一个样本内不同特征之间的大小关系。相同点:都是为了让参数稳定下来,避免梯度消失或者爆炸。

2024-06-27 20:54:16 138

原创 深度学习-Transformer

一个多头注意力采用了masked操作(通过 Masked 操作可以防止第i个单词知道第i+1个单词之后的信息,只是在Softmax之前需要进行Mask操作)、第二个的多头注意力机制KV由encode的编码信息C计算,而Q来自上一个Decode计算(这样做的好处是在Decoder的时候,每一位单词(这里是指"I am a student")都可以利用到Encoder所有单词的信息(这里是指"Je suis etudiant")。第三步:将获得的编码句子C输入到Decode中,逐个单词进行解码。

2024-06-27 17:17:22 309 1

原创 深度学习-优化器Optimizer

小批量梯度下降法就是结合BGD和SGD的折中,对于含有n个训练样本的数据集,每次参数更新,选择一个大小为m的mini-batch数据样本计算其梯度。momentum算法思想:参数更新时在一定程度上保留之前更新的方向,同时又利用当前batch的梯度微调最终的更新方向,简言之就是通过积累之前的动量来加速当前的梯度。随机梯度下降法SGD每次参数计算仅仅计算一个样本,训练速度很快,每次迭代都不能代表整体最优方向,导致梯度下降波动大,更容易从一个局部最优跳到另一个局部最优,准确度下降。模型参数为Θ,损失函数为。

2024-06-27 11:01:06 14

原创 深度学习-梯度消失和梯度爆炸

梯度消失和梯度爆炸本质上是因为神经网络的更新方法,梯度消失是因为反向传播过程中对梯度的求解会产生sigmoid导数和参数的连乘,sigmoid导数的最大值为0.25,权重一般初始都在0,1之间,乘积小于1,多层的话就会有多个小于1的值连乘,导致靠近输入层的梯度几乎为0,得不到更新。,,反向传播式子对w求偏导,那么会有x的存在,所以的大小影响了梯度的消失和爆炸,batchnorm就是通过对每一层的输出做scale和shift的方法,通过一定的规范化手段,本质上是解决反向传播过程中的梯度问题。

2024-06-26 21:43:48 177

原创 深度学习-过拟合和欠拟合

过拟合和欠拟合都属于模型泛化能力不强的两种原因,均是模型学习能力和数据复杂性失调的表现。

2024-06-24 20:42:40 143

原创 深度学习-Dropout、L1、L2

如果你在训练的时候,经过置0后,没有对y1。y1000进行缩放(rescale),那么在测试的时候,就需要对权重进行缩放。10个人拉一个10吨车,第一次(训练时),只有5个人出力(有p=0.5的人被dropout了),那么这5个人每个人出力拉2吨(扩大1/1-p)。第二次(预测时),10个人都被要求出力,这次每个人出的力就是2*(1-0.5)(缩小p)=1吨了。Dropout是在前向传播时,让某个神经元以一定概率p停止工作,可以加强模型的泛化能力,不依赖某些局部特征,解决过拟合问题。

2024-06-24 16:46:23 119

原创 大模型学习-大模型微调

通过优化这些提示向量,模型可以在不改变主体模型参数的情况下,根据不同的任务调整其输出。Prefix-tuning则更具体地将可学习的“前缀”向量应用于模型的自回归部分,而非输入序列的开头.这种方法允许模型动态地调整其生成行为,同时保持主体模型参数不变,但是它不是以插入额外的词汇项形式进行,而是改变了模型内部计算的初始状态。微调时冻结预训练模型的主体部分,添加adapter模块,结构由两个前馈神经网络和一个中间层组成,第一个前馈层和中间层起到一个降维的作用,后一个前馈层和中间层起到升维的作用。

2024-06-24 11:56:26 1337

原创 大模型学习-RAG Indexing

许多RAG方法侧重于将文档分割成块,并在LLM检索时返回相关的一部分块。然而,块大小和块数量是很难设置好的参数;如果返回的块不包含回答问题的所有上下文,则两者都会显著地影响结果。解决思路:针对检索优化,使用LLM生成文档摘要。在此基础上,我们创建了两种检索器:(1)multi-vector retriever将摘要向量化,但将完整文档返给LLM。(2) parent-doc retriever将块向量化,但将完整文档返给LLM。

2024-06-19 17:27:38 408

原创 大模型学习-RAG Query Construction

典型的RAG方法将用户query转换为向量表示,然后将该向量与源文档的向量表示进行比较,找到具有最相似的向量表示的源文档。这种方式对非结构化数据相当有效,但对结构化数据呢?世界上大部分数据都有一定的结构,这些数据大多存储在关系数据库(例如SQL)或图形数据库中,甚至非结构化数据也经常与结构化元数据(例如,作者、流派、发布时间等)相关联。许多用户query的最佳答案不仅是通过在embedding空间中找到相似的文档或数据,而且还利用数据中固有的以及在用户query中表达的结构。

2024-06-19 14:42:30 287

原创 大模型学习-RAG Routing

Routing为了根据query的内容匹配正确的数据源。

2024-06-19 11:23:16 203

原创 大模型学习-RAG Query Transformations

Query Transformations有五种方法:1、Multi Query Retriever5、HyDE主要目的将输入的query变为一种便于检索的形式。

2024-06-18 21:18:24 271

原创 大模型学习-RAG入门

基本上,RAG是通过检索算法找到的信息作为上下文,帮助大模型回答用户问询。查询和检索到的上下文都被注入到发送给LLM的提示中。检索增强生成(又名RAG)为大语言模型提供从某些数据源检索到的信息,作为其生成答案的依据。

2024-06-17 17:13:26 147

原创 大模型学习 - 向量数据库

向量数据库介绍,Vector和Embedding关系 #大模型 #向量数据库_哔哩哔哩_bilibili

2024-06-17 14:05:24 132

原创 大模型学习 - 基础组件Tokenizer

Tokenizer分词算法是NLP大模型最基础的组件,基于Tokenizer可以将文本转换成独立的token列表,进而转换成输入的向量成为计算机可以理解的输入形式。

2024-06-17 11:38:53 1833

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除