多模态大模型篇

LLaMA

GPT一代

模型堆叠了12个transformer的解码器层(有关transformer的内容可以参考Swin Transformer介绍 )。由于这种设置中没有编码器,这些解码器层将不会有普通transformer解码器层所具有的编码器-解码器注意力子层。但是它扔具有自注意力层。    

上图中的GPT包含了12个右边的Decode结构。它没有层级间的SW_MSA (偏移窗口自注意力机制),只有W_MSA (窗口自注意力机制)。

输入:

U = {\(u_1,...,u_n\)}     这里的\(u_i\)是一个一个的词向量,比如"我爱北京天安门",那么\(u_1\)就是"我",\(u_2\)就是"爱",\(u_3\)就是"北京",\(u_4\)就是"天安门"。

\(h_0 = UW_e + W_p\)   神经网络

\(h_l = transformer\_block(h_{l-1}) ∀i∈[1,n]\)    上一层的神经网络需要经过一个trannsformer_block抵达下一层神经网络

输出:

\(P(u) = softmax(h_nW_e^T)\)

  • 训练过程

我们的训练目标就是让某一个词在某个句子中出现的概率最大化,这其实就是一个完形填空。

北京是中国的_____。    (首都)

那我们的目标函数就为

\(L_1(U) = \sum_ilogP(u_i|u_{i-k},...,u_{i-1};θ)\)    θ是神经网络参数

这里的\(u_i\)就是"首都",条件概率中的条件\(u_{i-k},...,u_{i-1}\)就是"北京"、"是"、"中国"、"的"。我们的目的就是要使得概率P最大化。

如此,我们就可以通过语料对该模型去进行一个训练。训练完了之后所得到的参数就可以去做推理测试。而LLaMA用到的语料包含了数万亿个词。

LLaMA背景介绍

LLaMA是一个基础语言模型的集合,参数范围从7B到65B。

  1. 这些模型是在来自公开数据集的数万亿个tokens上训练的。
  2. 它由Meta(前Facebook)于2023年2月发布,作为致力于开放科学和人工智能实践的一部分。
  • 它与其他大型语言模型的关联
  1. LLaMA与GPT、GPT-3、Chinchilla和PaLM等其他大型语言模型类似,因为它使用Transformer architecture来预测给定单词或token序列作为输入的下一个单词或token。
  2. 然而,LLaMA与其他模型的不同之处在于,它使用在更多token上训练,得到较小模型,这使它更高效,资源密集度更低。
  • LLaMA发展史

InstructGPT(基于提示学习的一系列模型)  ->   GPT3.5时代(大规模预训练语言模型,参数量超过1750亿)  -> ChatGPT模型(高质量数据标注以及反馈学习(强化学习)  -> LLaMA

  • LLaMA的特点
  1. 参数量和训练语料:LLaMA有四种尺寸,7B、13B、33B和65B参数。最小的模型LLaMA 7B在一万亿个tokens上进行训练,而最大的模型LLaMA 65B在1.4万亿个tokens上训练。
  2. 语种:LLaMA涵盖了20种使用者最多的语言,重点是那些使用拉丁字母和西里尔字母的语言。这些语言包含英语、西班牙语、法语、俄语、阿拉伯语、印地语、汉语等。
  3. 生成方式:和GPT一样。
  4. 所需资源更小:LLaMA比其他模型更高效,资源密集度更低,因为它使用在更多tokens上训练的较小模型。这意味着它需要更少的计算能力和资源来训练和运行这些模型,也需要更少的内存和带宽来存储和传输它们。例如LLaMA 13B在大多数基准测试中都优于GPT-3(175B),而只使用了约7%的参数。
  • 它对研究界很重要
  1. 它能够在人工智能领域实现更多的可访问性和个性化(垂直领域)。
  2. 通过共享LLaMA的代码和模型,Meta允许其他无法访问大量基础设施的研究人员研究,验证和改进这些模型,并探索新的用例和应用程序。
  3. 开源!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章