当前位置: 首页 > news >正文

大模型学习笔记3【大模型】LLaMA学习笔记

文章目录

  • 学习内容
  • LLaMA
  • LLaMA模型结构
  • LLaMA下载和使用
  • 好用的开源项目[Chinese-Alpaca](https://github.com/ymcui/Chinese-LLaMA-Alpaca)
  • Chinese-Alpaca使用
  • 量化
  • 评估

学习内容

  • 完整学习LLaMA

LLaMA

  • 2023年2月,由FaceBook公开了LLaMA,包含7B,13B,30B,65B。
  • 2023年7月,发布LLaMA2,包含7B,13B,65B。
    • 可商用
    • 模型架构不变,但训练数据增加了40%
    • 34B模型由于未满足安全要求并未发布
    • 包含基座模型和Chat模型:LLaMA 2 - chat

论文部分介绍:

  • 数据来源于公开数据集
  • 目的:在推理预算有限的情况下,达到更好的效果。
  • LLaMA 13B在大多数测试中优于GBT3-175B,65B相比当时最好的模型也有竞争力。
  • 主要工作:通过更多的token训练语言模型。
    在这里插入图片描述
  • 主要针对英语进行训练,也使用了部分其他语言。

LLaMA模型结构

和 GPT 系列一样,LLaMA 模型也是 Decoder-only 架构,但结合前人的工作做了一些改进,比如:

  • Pre-normalization [GPT3]. 为了提高训练稳定性,LLaMA 对每个 transformer 子层的输入进行归一化,使用 RMSNorm 归一化函数,Pre-normalization 由Zhang和Sennrich(2019)引入。
  • SwiGLU 激活函数 [PaLM]. 将 ReLU 非线性替换为 SwiGLU 激活函数,且使用 2 3 4 d \frac{2}{3} 4d 324d 而不是 PaLM 论文中的 4d,SwiGLU 由 Shazeer(2020)引入以提高性能。
  • Rotary Embeddings [GPTNeo]. 模型的输入不再使用 positional embeddings,而是在网络的每一层添加了 positional embeddings (RoPE),RoPE 方法由Su等人(2021)引入。
    在这里插入图片描述

LLaMA下载和使用

  • 模型申请:地址
  • 模型代码:地址(可以使用download脚本,只保留7b)
  • 我对校验不太了解,大家可以校验一下,我就肉眼看大小校验了。
  • 模型无法运行LLaMA初始权重,需要用transformers的脚本,convert_llama_weight_to_hf.py
  • 简单推理函数脚本和其中的文件

好用的开源项目Chinese-Alpaca

  • 本地GPU、CPU部署

  • 开源中文LLaMA模型,和指令微调的Alpaca大模型

  • 在原模型的基础上,扩充vocab词表,使用中文数据进行“继续训练”,并使用中文指令数据进行微调。

  • 该仓库的中包含的大模型。Chinese-LLaMA-7B是在原版LLaMA-7B的基础上,在20GB的通用中文语料库上进行预训练。Chinese-LLaMA-Plus-7B是在原版LLaMA-7B的基础上,在120GB的通用中文语料库上进行预训练
    在这里插入图片描述
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7af06255ff3449f在这里插入图片描述
    ea26e0bbd92aba9b6.jpeg)

  • 完全使用LoRA进行预训练和微调,需要原版的LLaMA模型。

  • LoRA居然能有这么强……太离谱了。

Chinese-Alpaca使用

  • 根据官方教程即可,仅记录不同之处。
  • 单LoRA权重合并效果一般,建议使用多LoRA合并。(Plus和Pro)

量化

  • 量化:使用llama.cpp进行量化
  • 加入-t和别的参数之后效果极快

评估

  • 使用wikitext或自己构建数据集评估困惑度
  • 也可以使用GPT4或人类打分
http://www.lryc.cn/news/390930.html

相关文章:

  • 工程师 - 什么是SMP
  • Webpack: 并行构建
  • Vue的介绍与使用
  • MYSQL双主双从,使用Keepalived双机热备+LVS高可用群集
  • 9.计算机视觉—目标检测
  • 构造函数深入理解
  • Rocky Linux 9 快速安装docker 教程
  • go语言并发编程1-Gouroutine
  • Sylar服务器框架——Http模块
  • 7km远距离WiFi实时图传模块,无人机海上无线传输方案,飞睿智能WiFi MESH自组网技术
  • 2024年上半年网络工程师下午真题及答案解析
  • Jmeter下载、安装及配置
  • 掌握高效实用的VS调试技巧
  • 实验2 字符及字符串输入输出与分支程序设计实验
  • docker容器间网络仿真工具-pumba
  • A36 STM32_HAL库函数 之PCD通用驱动 -- B -- 所有函数的介绍及使用
  • vue2 + element三级菜单实现模板
  • vue H5页面video 视频流自动播放, 解决ios不能自动播放问题
  • 自闭症儿童:探索症状背后的多彩内心世界
  • 在Centos7上安装PostgreSQL16的详细步骤
  • MySQL 图形化界面
  • 【人工智能】GPT-5的即将到来:从高中生进化到,,,博士生?
  • 【收录率高丨投稿范围广 | 往届均已EI检索】第四届光学与通信技术国际学术会议(ICOCT 2024,8月9-11)
  • 小阿轩yx-LVS负载均衡群集
  • CPP知识点记录总结
  • Spring源码(一) 如何阅读 Spring 源码
  • 【代码随想录训练营】【Day 63】【单调栈-2】| Leetcode 42, 84
  • CTF常用sql注入(一)联合注入和宽字节
  • 薄冰英语语法学习--冠词1
  • 基于Java中的SSM框架实现野生动物公益保护系统项目【项目源码+论文说明】计算机毕业设计