LLM 面试
文章平均质量分 79
samoyan
分享技术成长的日常
展开
-
LLama的激活函数SwiGLU 解释
3.3 自适应性:GLU是一种类似于长短期记忆网络(LSTM)带有门机制的网络结构,通过门机制控制信息通过的比例,来让模型自适应地选择哪些单词和特征对预测下一个词有帮助。Swish函数结合了线性函数和非线性函数的特点,能够自适应地调整激活函数的形状,因此在某些深度学习模型中,Swish函数的表现优于常见的ReLU函数。其中,Swish_β(x) = x σ(β x),σ为sigmoid函数,⊗为逐元素乘。在LLaMA模型中,使用的激活函数是SwiGLU。它取代了ReLU非线性函数,以提高模型的性能。原创 2024-04-23 20:27:09 · 464 阅读 · 0 评论 -
大模型中的位置编码ALiBi,RoPE的总结和实现
return m这个函数计算了每个头部的斜率。首先,它计算了n,这是最接近n_heads的2的幂。然后,它计算了一个基础斜率m_0,并使用这个基础斜率生成了一个斜率数组m。如果n小于n_heads,则生成另一个斜率数组m_hat并将其添加到m中。结果是一个长度为n_heads的斜率数组。return m这个函数计算了ALiBi的偏置。首先,它获取了斜率数组m,然后计算了一个距离矩阵distance,这个矩阵表示每个位置与其他位置的相对距离。原创 2024-04-23 17:35:58 · 776 阅读 · 0 评论 -
Group Query Attention (GQA) 机制详解以及手动实现计算
Grouped-Query Attention (GQA) 是对 Multi-Head Attention (MHA) 和 Multi-Query Attention (MQA) 的扩展。通过提供计算效率和模型表达能力之间的灵活权衡,实现了查询头的分组。GQA将查询头分成了G个组,每个组共享一个公共的键(K)和值(V)投影。原创 2024-04-19 16:12:22 · 981 阅读 · 0 评论 -
大模型推理常见采样策略总结:贪心解码, Beam Search, Top-k, Top-p, Temperature等
较低的温度值会使得模型倾向于选择概率较高的词,而较高的温度值会增加低概率词被选中的机会,从而增加生成文本的多样性。Top-p Sampling,也称为Nucleus Sampling,是一种更加精细的采样策略,它选择累计概率超过某个阈值p的最小集合,然后从这个集合中随机采样。Top-k Sampling 是一种随机采样策略,它从模型预测的词汇分布中选择概率最高的k个词,然后基于这些词的概率分布随机选择下一个词。贪心解码是一种简单直接的解码策略,它在每一步都选择概率最高的下一个词。原创 2024-04-11 10:50:16 · 373 阅读 · 0 评论 -
Deepspeed的机制学习以及ZeRO-1、ZeRO-2和ZeRO-3的区别
ZeRO(Zero Redundancy Optimizer)是一种为了解决大规模分布式训练中的内存瓶颈问题而设计的优化器。它通过减少冗余数据来优化模型的内存使用,允许训练更大的模型。ZeRO分为三个优化级别:ZeRO-1、ZeRO-2和ZeRO-3,每个级别都在前一个级别的基础上进一步减少内存占用。ZeRO-1、ZeRO-2和ZeRO-3是递进的优化级别,每个级别都在前一个级别的基础上减少更多的内存冗余。原创 2024-03-18 20:13:28 · 2017 阅读 · 1 评论 -
LayerNormalization 和 RMSNormalization的计算方法和区别
Layer Normalization(层归一化)和RMSNormalization(均方根归一化)都是神经网络中用于稳定训练过程的归一化技术。在ChatGLM或其他神经网络模型中替换归一化技术时,需要仔细考虑模型的特定需求和归一化技术的特性,以及可能对训练动态和最终性能产生的影响。RMS值是激活的平方的均值的平方根。: Layer Normalization通过计算一个层内所有激活的均值和标准差,并用这些统计量对激活进行归一化,使得输出的均值为0,方差为1。原创 2024-03-18 16:34:14 · 677 阅读 · 0 评论 -
beam search原理与常见实现,与直接sample的区别
Beam Search 是一种启发式图搜索算法,常用于自然语言处理中的序列生成任务,如机器翻译、文本摘要、语音识别等。它是一种在广度优先搜索的基础上进行优化的算法,通过限制每一步扩展的节点数量(称为"beam width"或"beam size"),来减少搜索空间的大小,从而在合理的时间内找到接近最优的解。总结来说,Beam Search 通过限制每一步的候选状态数量来有效地搜索近似最优解,而直接采样则依赖于随机性来探索更广泛的可能性,两者在实际应用中可以根据具体需求和场景选择使用。原创 2024-03-07 11:27:59 · 979 阅读 · 0 评论 -
bf16 和fp16 ,fp32的区别以及相互转换逻辑
总结来说,FP32、FP16和BF16各有其优势和适用场景,选择使用哪种精度格式通常取决于应用对计算速度、精度和数值范围的具体要求。在深度学习领域,FP16和BF16因其在性能和效率上的优势而越来越受到关注。原创 2024-03-07 10:25:40 · 2014 阅读 · 0 评论 -
DDPM 论文总结 Denoising Diffusion Probabilistic Models
这些论文为深度学习领域的生成模型研究提供了新的视角和方法,尤其在高质量图像合成方面展示出了强大的能力。DDPM的研究不仅推动了生成模型的发展,也为后续的研究者提供了丰富的启发和可能的改进方向。1. 预测噪声而非像素转换。2. 仅预测正态分布的均值。原创 2024-02-23 17:09:40 · 1026 阅读 · 0 评论 -
用于图像生成的Scaling Transformers
Scaling Transformers 是一种用于图像生成的神经网络架构,它通过扩展传统的 Transformer 模型来处理大规模数据集和高分辨率图像。这种模型通过改进注意力机制和网络结构,提高了处理大型图像的效率和生成质量。原创 2024-02-23 16:58:12 · 1033 阅读 · 0 评论 -
图像模型的扩散模型
最近sora 模型大火,据说也用到了扩散模型,简单的查了一些资料。原创 2024-02-22 11:50:56 · 472 阅读 · 0 评论 -
LLaMA 模型和DeepSpeed 框架联系与使用
LLaMA (Large Language Model - Meta AI) 是一个由 Meta AI 开发的大型语言模型。它设计用于理解和生成自然语言文本,支持多种语言,并且能够执行多种自然语言处理任务。LLaMA 模型因其开源特性、优异的性能和广泛的适用性而受到关注。它可以被用于构建不同的应用程序,从简单的文本生成到复杂的对话系统。DeepSpeed 是一个开源深度学习优化库,由微软推出,专为分布式训练而设计。它能够在PyTorch上提供高效的模型训练加速。原创 2024-02-05 10:40:43 · 761 阅读 · 0 评论 -
多模态大模型综述整理
论文:MM-LLMs: Recent Advances in MultiModal Large Language Models。原创 2024-01-30 14:38:39 · 1519 阅读 · 0 评论 -
解释LoRA参数
LoRA是一种参数效率的模型调整技术,它通过在预训练模型的权重矩阵上添加低秩矩阵来实现。这种方法允许模型在微调阶段保持大部分参数不变,从而节省存储空间和计算资源,同时允许模型适应新的任务。这意味着在训练过程中,将使用LoRA技术对模型进行适应,其中秩为128,学习率缩放因子为256。: LoRA代表"Low-Rank Adaptation",是一种模型参数化技术,用于在不显著增加参数数量的情况下调整预训练模型。这个参数影响了低秩矩阵的更新速度。参数指的是LoRA中的秩(rank),它决定了低秩矩阵的大小。原创 2024-01-24 14:45:50 · 2322 阅读 · 0 评论 -
大模型用model.generate 直接产生文本的id以及获得模型生成文本概率的方法
方法直接产生文本时,通常返回的是文本的 token ID 序列。为了获得每个 token 的生成概率,你需要使用模型的。是模型在softmax层之前的输出,表示模型对每个可能的下一个 token 的置信度。应用softmax函数,我们可以得到每个 token 的生成概率。当使用大型语言模型(如 GPT-2、GPT-3、BERT 等)的。应用softmax函数,可以得到概率分布。使得模型返回生成每个 token 时的。以下是一个简化的例子,展示如何在使用。原创 2024-01-23 17:44:42 · 1838 阅读 · 0 评论 -
LLM的评价指标
模型的准确性是通过比较模型的预测结果和实际结果来衡量的,通常使用精确度(precision)、召回率(recall)、F1分数等指标。SuperGLUE是继GLUE之后的一个更为复杂和挑战性的基准测试,它引入了更难的任务和更复杂的数据集,用以推动语言理解模型的发展。泛化能力是衡量模型在未见数据上表现的能力。评价一个模型的可解释性涉及到理解模型的决策是如何做出的,以及模型的预测是否为人类所能理解和接受。最后,大型语言模型的评价还应包括其伦理和社会影响,如模型的使用是否可能造成社会分裂、增加误导信息的传播等。原创 2023-12-29 14:18:14 · 1456 阅读 · 0 评论 -
基于人类反馈的强化学习(RLHF)
例如,在InstructGPT项目中,使用PPO算法训练LM时,会计算LM当前输出与初始输出之间的KL散度作为惩罚项。例如,InstructGPT项目中,标注人员会创造性地编写输入提示(比如,“给出五个重燃职业激情的建议”)和对应的输出,覆盖了开放式问答、创意思考、对话和文本重写等多种创造性任务。值得注意的是,在某些情况下,这一步骤可能不是必需的。以InstructGPT为例,标注人员会将模型生成的输出按照质量从高到低排序,然后基于这些排名训练GPT-3(一个拥有600亿参数的模型)来预测这些排名。原创 2023-12-28 17:38:50 · 485 阅读 · 0 评论 -
gpt4中用到的红队评估(red teaming)
红队评估是一种安全评估活动,其中模拟攻击者(即红队)尝试攻击组织的网络、应用程序、设备、物理安全措施或人员,以评估组织的防御能力。红队评估的目的是发现和强化组织的安全漏洞,提高组织对真实世界攻击的抵抗能力。原创 2023-12-28 17:21:40 · 579 阅读 · 0 评论 -
大模型LLMs 部分常见面试题答案-基础面
具体来说,LLM通常通过最大化训练数据的似然性来进行训练,也就是尽可能地让模型生成的语言与人类语言相似。这主要是因为模型在训练过程中,通过大量的数据学习到了语言的统计规律,从而能够理解和生成符合这些规律的语言。Causal Decoder也是一种解码器结构,它在生成新的输出时,只会考虑到之前的输出,而不会考虑到未来的输出。Prefix Decoder是一种解码器结构,它在生成新的输出时,会考虑到所有之前生成的输出。以上内容主要基于对神经网络结构和大模型的理解,具体的实现可能会因模型和任务的不同而有所不同。原创 2023-10-30 19:32:37 · 525 阅读 · 0 评论 -
大模型LLMs 部分常见面试题答案-进阶面
LLMs复读机问题是指大型语言模型在生成文本时出现的一种现象,即模型倾向于无限地复制输入的文本或者以过度频繁的方式重复相同的句子或短语。这种现象使得模型的输出缺乏多样性和创造性,给用户带来了不好的体验[^1^].原创 2023-10-30 17:48:35 · 670 阅读 · 0 评论 -
大模型LLMs 部分常见面试题答案-微调面
大模型(LLMs)微调常见面试题。原创 2023-10-30 17:41:33 · 932 阅读 · 0 评论