王牌站士Ⅶ--理解大型语言模型LLM的参数

模型的大小并不一定决定其成功

在学习任何大型语言模型 (LLM) 时,您首先会听到的事情之一就是给定模型有多少个参数。如果您查看下面的图表,您会注意到参数大小范围很广 - 一个模型可能有 10 亿或 20 亿个参数,也可能有超过 1.75 万亿个参数。

现在能下载到的模型普遍都是6/7B(小)、13B(中)、大(130B) 三种,比如ChatGLM 和Llama2 等。

LLM现在一般都是基于Transormer结构,参数总和可以看作Embedding部分参数和Transormer-Decoder部分参数,Embedding部分参数由词表大小和模型维度决定;Decoder部分参数由模型层数和模型维度决定。

这当然会引发一些显而易见的问题——参数是什么?它们为什么重要?模型中的参数越多越好,这是真理吗?为了理解和评估大型语言模型,让我们考虑这些问题。

什么是参数?

我们可以将参数视为大型语言模型中的内部设置或拨盘,可以对其进行调整以优化获取标记和生成新标记的过程。就像音响工程师可以通过转动混音板上的拨盘来优化音质一样,数据科学家也可以转动大型语言模型中的拨盘来优化其性能。

回想一下,token 是一个文本单位 - 单词、单词组合或标点符号 - 其格式使得 LLM 可以高效地使用它。在训练大型语言模型时,参数是 LLM 的特征,可以进行调整以优化模型预测序列中下一个 token 的能力。请考虑以下关于参数如何训练和运行的简化解释:

  1. 模型的参数被设置为初始值,可以是随机的,也可以是基于之前的训练。
  2. 正在训练的大型语言模型需要输入大量文本数据。
  3. 在模型训练过程中,它会接受输入并预测正确的输出是什么。
  4. 在训练中,LLM 将其预测与实际文本进行比较,以查看其预测是否正确。如果预测不正确,模型会从错误中“学习”,并调整其参数。
  5. 该过程持续数百万或数十亿个示例,模型每次都会调整其参数并提高其预测准确性。

通过这种预测、错误检查和参数调整的迭代过程,LLM 的语言能力变得更加准确和复杂。

参数越多总是越好吗?

最简洁的答案是

诚然,LLM 的参数越多,它就可以调整越多的“设置”来捕捉人类语言的复杂性,从而比参数较少的模型更好地处理人类语言。因此,在其他条件相同的情况下,如果模型 A 和模型 B 仅在处理和生成语言的能力上有所不同,那么你当然应该选择语言处理能力更出色的模型。

但在现实世界中,并非所有事物都是平等的。还必须考虑其他重要因素。也许最明显的是,模型越大,运行成本就越高。训练模型的过程和持续维护模型都需要大量的计算能力和数据。正是出于这个原因,像 GPT-3 或 GPT-4 这样的 LLM 通常由拥有大量资源的组织开发。

运行大型语言模型也会对环境产生影响。马萨诸塞大学阿默斯特分校最近的一项研究发现,训练一个具有 2.13 亿个参数的大型模型会产生超过 626,000 磅的二氧化碳排放量。相比之下,普通美国汽车的终生排放量(包括汽车制造)为 126,000 磅二氧化碳 - 约为训练具有 2.13 亿个参数的 LLM 所产生的碳排放量的五分之一!模型越大,消耗的能量越多,随后产生的碳排放量也越多。较小的模型对环境的影响要小得多。

您可能会担心,选择具有更少参数的更具成本效益、可持续性的模型会损害 LLM 的有效性和准确性。然而,这引出了评估 LLM 时的一个重要问题——模型的大小并不能统一定义其成功。给定的单词在不同的上下文中可能具有不同的含义。平均而言,较大的模型往往能够区分这种语义区别,但是,使用较低质量训练数据的较大模型不一定会胜过较小且更集中的模型。使用高质量数据训练的具有较少参数的模型将胜过使用低质量数据训练的较大模型。换句话说,用于训练模型的数据的质量与模型本身的大小同样重要。


欢迎你分享你的作品到我们的平台上:www.shxcj.com 或者 www.2img.ai 让更多的人看到你的才华。

创作不易,觉得不错的话,点个赞吧!!!

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

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

相关文章

c++学习30自平衡树

#pragma once // 定义AVL树节点结构 template<class K, class V> struct AVLTreeNode {// 节点默认构造函数AVLTreeNode(): _left(nullptr), _right(nullptr), _parent(nullptr), _by(0){}AVLTreeNode<K, V>* _left; // 左子节点指针AVLTreeNode<K, V>…

Java —— abstract关键字

abstract关键字 1.抽象类与抽象方法 随着继承层次中一个个新子类的定义&#xff0c;类变得越来越具体&#xff0c;而父类则更一般&#xff0c;更通用。有时将一个父类设计得非常抽象&#xff0c;以至于它没有具体的实例&#xff0c;只提供该顶层类的功能&#xff08;只有顶层…

了解redis

1.什么是redis&#xff1f; redis是一款高性能的NOSQL系列的非关系型数据库 想了解非关系型数据库概念前往上期(NoSQL Not Only SQL)&#xff0c;意即“不仅仅是SQL”-CSDN博客 Redis是用C语言开发的一个开源的高性能键值对&#xff08;key-value&#xff09;数据库&#x…

老年生活照护实训室:让养老护理更个性化

本文探讨了老年生活照护实训室在实现养老护理个性化方面的重要作用。通过分析其提供的实践环境、专业培训、模拟案例和评估机制&#xff0c;阐述了如何培养护理人员的个性化服务能力&#xff0c;以满足老年人多样化的需求&#xff0c;提高养老护理的质量和满意度。 在老龄化社会…

CentOS7.X系统部署Zabbix6.0版本(可跟做)

文章目录 一、部署环境说明二、基本环境部署步骤1、环境初始化操作2、部署并配置Nginx3、部署并配置PHP4、测试NginxPHP环境5、部署并配置MariaDB 三、Zabbix-Server部署步骤1、编译安装Zabbix-Server2、导入Zabbix初始化库3、配置Zabbix前端UI4、启动Zabbix-Server5、WEB页面配…

java代码:单链表的实现

1、代码 package LinkList;public class Linklist {//定义节点&#xff0c;内部类只为其外部类使用//要创建嵌套类的对象&#xff0c;并不需要其外围类的对象&#xff0c;直接使用.nextstatic class ListNode{int val;//数据域ListNode next;//指针&#xff0c;指向下一个结点…

前端面试题日常练-day90 【Less】

题目 希望这些选择题能够帮助您进行前端面试的准备&#xff0c;答案在文末 在Less中&#xff0c;以下哪种语法适用于定义变量&#xff1f; a) $var b) variable c) #variable d) &variable Less中的Mixin是用来做什么的&#xff1f; a) 定义变量 b) 创建循环 c) 处理函数…

数据建设实践之大数据平台(二)安装zookeeper

安装zookeeper 上传安装包到/opt/software目录并解压 [bigdatanode101 software]$ tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/services/ 重命名文件 [bigdatanode101 services]$ mv apache-zookeeper-3.5.7-bin zookeeper-3.5.7 配置环境变量 export JAVA_H…

GPT-4从0到1搭建一个Agent简介

GPT-4从0到1搭建一个Agent简介 1. 引言 在人工智能领域&#xff0c;Agent是一种能够感知环境并采取行动以实现特定目标的系统。本文将简单介绍如何基于GPT-4搭建一个Agent。 2. Agent的基本原理 Agent的核心是感知-行动循环&#xff08;Perception-Action Loop&#xff09;…

C#与倍福Plc通信——使用仿真软件模拟倍福PLC运行

前言 我们在编写上位机与倍福PLC通信的过程中,有时候我们没有真实的Plc,但是我们又想提前测试与倍福PLC的通信,那么这个时候我们就可以使用倍福的仿真软件模拟PLC,然后我们上位机就可以与仿真PLC进行通信了,下面进行详细介绍: 1、下载并安装倍福PLC编程软件TwinCAT 安…

Elasticsearch集群健康检查与监控

在大数据时代&#xff0c;Elasticsearch作为一款高性能、可扩展的搜索与分析引擎&#xff0c;广泛应用于各种需要快速数据检索和分析的场景中。然而&#xff0c;随着数据量的不断增加和集群规模的扩大&#xff0c;保持Elasticsearch集群的健康状态和高效运行变得尤为重要。本文…

python 如何处理图片 举例说明

Python有很多库可以用于处理图片&#xff0c;常用的有Pillow和OpenCV。 举例说明如下&#xff1a; 使用Pillow库读取图片并显示&#xff1a; from PIL import Image# 打开图片 image Image.open(image.jpg)# 显示图片 image.show()使用Pillow库调整图片大小&#xff1a; f…

关于 LayoutInflater.inflate 的取值结论

根节点是否是 mergeViewGroup rootboolean attachToRoot返回值否notNullfalse返回的是 xml 布局的根节点 View 对象&#xff0c;并且对象上拥有根节点上的布局参数。否notNulltrue返回的是添加了根节点View对象以及布局参数的root对象。否nullfalse返回的是没有布局参数信息的根…

Java中的输入输出

输出到控制台 【基本语法】&#xff1a; System.out.println(msg); // 输出一个字符串, 带换行 System.out.print(msg); // 输出一个字符串, 不带换行 System.out.printf(format, msg); // 格式化输出 println 输出的内容自带 \n, print不带 \n printf 的格式化输出方式和…

面试题: C++11用过哪些特性

面试题&#xff1a; C11用过哪些特性 考察重点&#xff1a; 回答问题的层次学习总结的思路 语法糖 关键字&#xff1a; auto, decltypenullptrfinal, overrideconstexpr 语法&#xff1a; 基于范围的for循环 function函数对象&#xff0c;bind, lambda STL容器 array…

Android TabLayout+ViewPager2如何优雅的实现联动详解

一、介绍 Android开发过程中&#xff0c;我们经常会遇到滑动导航栏的做法&#xff0c;之前的做法就是我们通过ViewGroup来转动&#xff0c;然后通过大量的自定义来完成&#xff0c;将导航栏item与viewpage 滑动&#xff0c;达到业务需求 二、现实方案 通过介绍&#xff0c;我…

机器人前沿--PalmE:An Embodied Multimodal Language Model 具身多模态大(语言)模型

首先解释这篇工作名称Palm-E&#xff0c;发表时间为2023.03&#xff0c;其中的Palm是谷歌内部在2022.04开发的大语言模型&#xff0c;功能类似ChatGPT&#xff0c;只是由于各种原因没有那样火起来&#xff0c;E是Embodied的首字母&#xff0c;翻译过来就是具身多模态大语言模型…

36、快手视频解析API接口,免费好用

1、前言 快手视频解析API接口&#xff0c;这个是RollToolsApi通用系列接口的其中一个&#xff0c;内部包含了1个小接口&#xff0c;解析快手链接&#xff0c;获取视频Mp4下载链接&#xff0c;即可下载视频到本地。 查看接口完整信息&#xff1a;https://www.mxnzp.com/doc/de…

Typora中插入LaTex数学公式的使用

文章目录 Typora中插入LaTex数学公式的使用公式的插入上下标括号和分隔符分数开方省略号矢量和均值积分极限累加、累乘及交集、并集希腊字母特殊字符字体大括号和行标字体 大括号和行标其他命令矩阵方程式序列条件表达式配置行高数组与表格嵌套表格或数组方程组连分式交换图表其…

宠物浮毛克星!最值得买的猫用空气净化器排名

作为用了3年宠物空气净化器的铲屎官来说&#xff0c;为什么铲屎官每到春秋换季就开始疯狂打喷嚏、突然开始全身过敏。其原因是猫毛一到换季就开始疯狂掉毛&#xff0c;相对于可见猫毛&#xff0c;漂浮在空气中的浮毛就是罪灰祸首。微小的浮毛在空气总容易被人体吸入体内&#x…