大模型笔记 【1】 大模型初探

news2024/9/20 22:40:58

以下是Andrej Karpathy一小时讲解chatgpt的笔记。

Andrej Karpathy做自动驾驶的人应该比较熟悉,他是李飞飞的学生。在openAI做了一年半的科学家之后,去了特斯拉。在Tesla AI day讲解tesla自动驾驶方案的就是他。

这里我的主要收获是两个

  1. 大模型是一个有损压缩文件
  2. 大模型可以看成新型操作系统

下面我把比较有关键的PPT笔记总结一下,比较有趣的将其看成操作系统的我会在第二部分介绍。

一 有损压缩

  1. 大模型运行起来只需要两个文件,140GB的参数文件和500行的C代码,参见llama.cpp.

2.  大模型可以理解为对互联网上文本所有内容的有损压缩。

3. 大模型存储了海量的信息,但是并不一定支持从不同的角度问相同的问题。这张幻灯片里,提问汤姆克鲁斯的妈妈是谁,大模型回答了Mary Lee Pfeifeer。但是我们再问大模型,Mary Lee Pfeifeer的儿子是谁,大模型就不知道了。

4. 大模型分为pre-training和fine tuning两个阶段。

  1. Pre-training 预训练主要是获取知识
  2. Fine-tuning 主要是alignment,拉通对齐。

5. 两者的计算量和工作流程相差很多

  1. Pre-training 训练时间以年为单位
  2. Finetuning调优时间以星期为单位,此外fine-tuning也会有大量人工的工作。

6.  Pre-training训练的结果,如果你问pre-training 之后模型一个问题,因为这个模型只是对互联问文本的压缩,你问它一个问题,它可能继续问你其他的问题,因为互联网上有海量的垃圾文本。

Finetuning阶段会让人类针对问题的标准答案,输入给模型,进行fine-tuning,此外也会训练reward-model,建立评判模型,对模型输出结果打分,结合强化学习训练模型。

7. 大模型的效果是可以预测的,由参数数量和文本数量决定。

8. 人脑的思维方式有两种,快速响应和需要思考的两种问题。但是目前LLM只会第一种。也就是现在的LLM只能像刚才所说的,拿到有损压缩文件后,计算下一个token的概率,并没有理解。

(译者注:就像那个经典笑话:

A: 我会速算。

B:1234*4321等于多少?

A:788156。

B:  这对吗?

A:你就说快不快吧。

9. 现在研究人员也在尝试如何让大模型“think”。

10. 完全让模型自我提升是比较困难的,不同于围棋比赛alpha go,有明确的输赢机制。大模型输出的结果进行打分,是比较困难的。毕竟是生成文本类的开放答案。


二 新型操作系统

LLM 可以看成是一种新型的操作系统,它会文件,浏览网页,也可以说话和生成视频,也可以自我提升。

在你向大模型提问,要求它计算或者画图时,他可以调用对应的python或者计算接口。

此外,类似于RAM的概念,大模型有上下文context window的概念。此外类似的概念,还有多线程,多进程和推测执行(但是这里他没有展开讲,我搜索了一下,要是不对,欢迎私信)。

  1. 多线程:正常情况下每次只能产生一个token,如果多个decoder同时工作,那么可以产生多个token。
  2. 多进程:一个问题,多个model同时响应,对各个model的结果进行择优。
  3. 推测执行:transformer处理下一个token,需要等待上一个token一直计算完毕最后一个layer,强依赖。在上一个token还在计算过程中,就推测它的结果,推测计算下一个token。

三 transformer

在这个讲解大模型的视频以外,他也有一个一小时讲解transformer的视频。

3.1 Tranformer

介绍一下transformer视频的收获

  1. Transformer根据之前的单词token,产生新的token,最简单的就是将前面所有的token取均值,但是显然过于简单。因此transformer通过对之前的单词赋以不同的权重,各自的weight*各自的value得到下一个单词的预测

2. Weight是通过当前单词的query和当前单词之前的所有token的各个key的相似度求dot product之后进行softmax得到的。

3. Self-attention层的意义主要在于将当前token和其他token进行交流communication,在feedforward层的意义则进行计算computation。在self-attention层的操作更多的是线性的,在feedforward层引入了非线性。

4. 如果只是线性的矩阵乘法计算,那么当前token对其他token的位置是无感的,因此增加positional encoding,用来将各个token的位置信息也进行编码。

3.2 KV Cache

译者另注:

此外我们可以看到每次新的token计算时,新的token的query都需要和之前的token的key做dot product,然后结果取softmax之后和之前的token的value进行权重相乘。

之前token的key和value都是不变的,因此我们可以将其缓存起来,也就是KV Cache的作用。

加上这个cache之后,更像操作系统了。

引自:

[1][2] Andrej Karpathy 视频讲解

[3] Transformers KV Caching Explained https://medium.com/@joaolages/kv-caching-explained-276520203249

[4] Decoding the Magic of Self-Attention: A Deep Dive into its Intuition and Mechanisms https://medium.com/@farzad.karami/decoding-the-magic-of-self-attention-a-deep-dive-into-its-intuition-and-mechanisms-394aa98f34c5

[5] Self-Attention: A step-by-step guide to calculating the context vector https://medium.com/@lovelyndavid/self-attention-a-step-by-step-guide-to-calculating-the-context-vector-3d4622600aac

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1369949.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

12V 全桥驱动芯片GC9008——可替代TMI8118,应用于摄像机、消费类产品上

GC9008 是一款 12V 全桥驱动芯片,为提供高性价比的方案。它能提供 0.1A 的持续输出电流。可以工作在 4.5~15V 的电源电压上。 具有 PWM(IN1/IN2)输入接口,与行业标准器件兼容.是 SOP8封装,GC9008D是DIP封装芯片特点 ● H 桥电机驱…

关于burpsuite对app(移动端)进行抓包的配置

可以使用手机模拟器,我这里以自己手机(物理机)演示配置过程 如果是使用的模拟器那么肯定和电脑是在同一局域网 如果使用物理机,那么可以通过连接同一WiFi确保在同一局域网环境下 查看电脑内网ip:192.168.1.105 &am…

2023 年精选:ChatGPT 会取代开发者吗?

由于最近发布了ChatGPT,人工智能再次热闹起来,ChatGPT 是一种自然语言聊天机器人,人们用它来写电子邮件、诗歌、歌词和大学论文。早期采用者甚至用它来编写Python 代码,以及对 shellcode 进行逆向工程并用 C 重写。ChatGPT 给那些…

Docker实战09|使用AUFS包装busybox

前几篇文章中,重点讲解了如何实现构建容器,需要回顾的小伙伴可以看以下文章: 《Docker实战06|深入剖析Docker Run命令》《Docker实战07|Docker增加容器资源限制》《Docker实战08|Docker管道及环境变量识别…

1879_什么是丝印

Grey 全部学习内容汇总: GitHub - GreyZhang/g_hardware_basic: You should learn some hardware design knowledge in case hardware engineer would ask you to prove your software is right when their hardware design is wrong! 1873_什么是丝印 丝印这个词…

Android平板浏览器远程Ubuntu服务器使用code-server编程写代码

文章目录 1.ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址6.结语 1.ubuntu本地安装code-server 准备一台虚拟机,Ubuntu或者centos都可以,这里以VMwhere ubuntu系统为例 下载code server服务,浏览器…

我在工作一年时怎么都看不懂的编程写法。今天手把手教给你

作为一名程序员,你一定遇到或亲自写过这样的代码。有人将它形象的形容为shi山,或者被戏称为“面向保就业编程”。 以下面这个代码为例,其中的问题也显而易见,当越来越多的条件判断时,代码会变得非常臃肿,难…

记录汇川:H5U与Fctory IO测试5

主程序: 子程序: IO映射 子程序: 自动程序 Fctory IO配置: 触摸屏如下: 实际动作如下: Fctory IO测试5

mybatis plus相同Id与xml配置错误时,mybatis plus解决逻辑

前言 处理做项目的问题,其中不乏奇奇怪怪的问题,其中mybatis plus的问题感觉有点隐蔽,有些是运行时出现,有些是运行到具体的逻辑触发,对于应用的状态监控提出了极大的挑战,应用的状态由健康检查接口提供&a…

VMware复制粘贴共享文件夹

win和虚拟机之间,无法复制粘贴,共享文件夹的解决方案。 安装VMware tools 1,先检查虚拟机设置部分。共享文件夹已启用。复制粘贴已启用。 2,安装tools.选择重新安装VMware tools. (此图片为安装过的截图) 成功后会显示如图。…

【Python书籍】字节大佬爆肝整理的Python背记手册最佳入门书籍,刷爆这本书你的Python就牛了!

前言: 现今有很多人都想学习Python,但是不乏有一些英语不好和非计算机专业的小伙伴,在最基础入门阶段会跟不上被甩在身后,就是在知识点的理解方面有所缺失,对于计算机的运算,计算机语言,计算机…

家政服务系统有哪些优势及特点

🌈家政系统小程序,有哪些功能优势! 1、平台依托:🌍小程序极速开发。 2、人员保障:顾客轻松注册,家政服务人员也有独立账号。 3、地域无忧:后台自定义开放城市范围。🌟 4、…

MySQL决战:MySQL数据导入导出

目录 前言 一.navact数据导入导出(第三方工具) 1.导入数据 2.数据导出 二. mysqldump命令导入导出数据 1.mysqldump介绍 2.数据导出 3.数据导入 三.load data file进行数据导入导出(只限于单表) 1.数据导出 增加导出权…

SpringCloud系列篇:核心组件之网关组件

🥳🥳Welcome Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于SpringCloud的相关操作吧 目录 🥳🥳Welcome Huihuis Code World ! !🥳🥳 一.网关组件是什么 二. 网关组件的…

C++学习笔记——string类和new函数

目录 string类 1.功能增强 1.1 子字符串提取 1.2 字符串拼接 1.3 大小写转换 1.4 字符串比较 2.性能优化 3.使用示例 下面是一个简单的使用示例,展示了如何使用改进后的String类: NEW函数 2.1NEW函数的基本用法 2.2NEW函数的注意事项 2.3避…

大数据毕业设计:图书推荐系统+可视化+Django框架 图书管理系统 (附源码+论文)✅

毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题&#xff…

Vue3插件开发教程:步步指导如何编写Vue3插件

关注⬆️⬆️⬆️⬆️ 专栏后期更新更多前端内容 文章目录 Vue3 插件插件注册形式插件主要的场景使用插件Vue3 插件 插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。 插件注册形式 一个插件可以是一个拥有 install() 方法的对象,也可以直接是一个安装函数本身。 i…

数 据 分 析 1

1.使用Wireshark查看并分析靶机桌面下的capture.pcapng数据包文件,找到黑客的IP地址,并将黑客的IP地址作为Flag值(如:172.16.1.1)提交;172.16.1.41 查找:tcp.connection.syn 2.继续分析captu…

SpringBoot 如何增强PageHelper入参的健壮性

PageHelper.startPage(int pageNum, int pageSize, boolean count) 参数为外部输入,故存在异常输入场景。比如 pageNum 和 pageSize 输入的值 负数 或者 0,所以引入PageUtils来对入参进行判断矫正,从而避免引入异常。 第1步:支持…

Windows无线网络分析报告

概述信息 客户现场有一套大屏展示系统,它是通过戴尔小主机、无线网络、电视机的方式来工作。大屏展示的内容非常实时,对于内容的刷新也比较高。客户反馈最近经常会出现网络抖动的情况,但远程检查又无法发现问题点。 此时,Window…