在《大语言模型之七- Llama-2单GPU微调SFT》和《大语言模型之十三 LLama2中文推理》中我们都提到了LoRA(低秩分解)方法,之所以用低秩分解进行参数的优化的原因是为了减少计算资源。
我们以《大语言模型之四-LlaMA-2从模型到应用》一文中的图3 LLama-2 图例过程为例说明内存的消耗。首先是有32层的Transformer,它们每层的内存占用如下图:
图中有六个大矩阵是打了勾的,原始的LLama2中矩阵的维度是4096*4096,单精度是float(4字节),那么一个矩阵的消耗将是64MB,七个矩阵大约是448MB,共计三十二层&