赞
踩
这篇文章是上年10月Mistral提出的一个小的LLM模型。
作为微软最主要的OpenAI的备胎公司之一,他们的模型自然也是有着不错的效果,文中宣称他们通过对模型本身的调优,使得他们在7B的模型上就获得了超越Llama2 13B模型的效果。尤其后续他们使用Mistral 7B模型进行ensemble获得的SMoE模型更是宣称可以比肩GPT4。
当然,这种夸口自然是多少有一定的水分,不过无碍于我们去了解一下这个模型,看看他们的工作能否在我们自己的工作当中得到一定的借鉴。
不过,考虑到现在的工作越来越像是一个prompt后端工程师,我又双叒叕emo了……
首先,Mistral 7B模型还是一个基于Llama的Transformer架构下的优化模型,其基础的参数设计如下:
而在此基础上,文中主要做出了以下三部分的内容的修改:
下面,我们来注意考察一下这三部分的内容。
首先,文中在Llama的基础上上做出的第一个调整是将attention结构调整为了Sliding Window Attention,其具体结构可以参考下述示意图:
整体来看,SWA就是在attention的context长度窗口上进行了一下截断,和Linear Attention原理上相差不多,不过Linear Attention只保留了临近几个token的attention,而文中的window长度如上述参数表所示,还是保留了比较长的(4096/8192)。
文中做出的第二个改进点在于加入了Rolling Buffer Cache,其具体结构如下:
整体来说,他就是使用一个有限的cache来存储key-value,从而节省内存空间,使得GPU使用上更有效率,对于模型效果倒是没有影响。
文中做出的最后一个调整是关于infer阶段的,具体来说,考虑到prompt往往是固定的,因此文中使用他们称之为Pre-fill and Chunking的方法提前处理掉固定的prompt,将其提前放知道2中提到的cache当中。
其demo示意图如下:
给出了Mistral 7B模型的整体模型设计之后,我们来看一下文中针对Mistral 7B模型的效果考察。
首先,关于Mistral 7B模型的常规实验考察,文中主要是在以下几个任务上进行的考察:
得到实验结果如下:
可以看到,在各类任务当中,Mistral 7B模型基本上是碾压了Llama2 7B甚至13B模型的。
更进一步地,文中绘制了不同size的Llama2模型的效果与Mistral 7B模型进行了比较,并对比了两者的执行效率,得到结果如下:
可以看到,Mistral 7B模型基本就是纯碾压。
除了在预训练模型上的基础考察之外,文中还考察了一下经过了Instruction Tuning之后的Mistral 7B模型的效果,得到结果如下:
可以看到,在排行榜上,Mistral 7B模型也是干掉了Llama2 13B模型,有一个很好的排名。
最后,文中还考察了一下Mistral 7B模型的安全性,具体包括两方面:
文中首先在175个有害prompt下考察了一下Mistral 7B与其他一些模型的效果,得到结果如下:
可以看到Mistral 7B效果不输于Llama 13B模型。
另一方面,文中给出了一个kill linux进程的case来说明了一下Mistral 7B可以更准确地识别出问题的有害性,较不容易带来误伤。
综上,这篇短论文提出了Mistral 7B的模型,它是在Llama2基础上的另一个LLM,且宣称获得了更好的效果。
这个模型已经开源了,有空的话后面可以试一下,作为微软重点押注的AGI公司,可以期待一下后续的发展。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。