大模型到底是什么?小白也能看懂的科普贴,让你从大模型入门到大模型精通

(图源网络)

从去年到今年,大模型、chatGPT等概念和技术越来越火,但是像笔者一样的技术小白一直对大模型是一种似懂非懂的状态。鉴于最近在做基于大模型和Agent的上层AI应用,如若不了解底层概念,始终还是会限制产品层的能力,因此,最近2周零散时间读完了这本由复旦团队出版的《大规模语言模型:从理论到实践》,基本涉及到了大模型入门所需的核心框架内容,适合扫盲看。

因此,基于这本书的核心框架,来结合自己的理解聊一聊大模型到底是什么?

01 大模型到底是什么?和以前的AI有何区别?

当我第一次听到大模型(LLM,Large Language Model)这个词的时候,我的关注点就落在了「大」上面:难道是因为最近这个AI模型所用到的各类数据量很大,所以起名叫大模型?

看完书后,确实没太大毛病。「大」的确是大模型几大特性之一,这是因为底层芯片、算力、分布式等领域的飞跃,导致了模型拥有百亿、千亿级参数量以及训练更大数量级的的数据量有了可能性。以OPENAI公司的chatGPT3为例,其拥有1750亿模型参数量,而盘古甚至有10850亿。大家可能对这个数量级没太大概念,可以简单理解为以前很难做到这样的量级,既昂贵又看不到效果,而现在的大模型不仅能做到,甚至还能够因为参数量、训练量越多,其效果呈现更好的正相关性。

我们来看看其官方定义:大规模语言模型,是一种由包含数百亿以上参数的深度神经网络构建的语言模型,通常使用自监督学习方法、通过大量无标注文本进行训练。

那它和以前的AI有什么区别呢?除了前面提到的「参数量海量」之外,个人总结还有以下几点:

1、更像人一样的自然语言对话

以前我们和AI对话,它的「AI感」很重、不太类人,而现在的大模型则能够做到在对话过程中基本像真实的自然语言。这其实和大模型是生成式输出内容的原因有关,这里我用一个不太准确的例子形象化去说明一下(后面我们会用严谨的方式来准确描述):

这个大模型很厉害,它先是将世界上的所有知识(无论是书籍、论文、网站、微博等,还是各类语法结构、逻辑推理知识等)统统咽进肚子里进行消化。那么,它是怎么消化的呢?它将每一个知识拆成小块后都打上标签后存储起来。

当你向他问「今天成都天气咋样?」,他会先将你问的问题和问题背景等信息汇集在一起后,拆成小块并打上标签。打完标签后,它会命令10000个小人拿着这些标签同时去肚子里找出能够回答对应问题所对应的已有知识标签,挑出其中最匹配、概率最高的一个,假设是「成」,这时候,它就会在对话框里展示出第一个「成」字;紧接着,它再将你问的问题和问题背景等信息、再结合「成」这个回答,再次找10000个小人同时去找「成」之后可能性最高的那个字,假设是「都」,然后,它再在对话框里展示出第二个字「都」……最终,经过6次让这10000个小人无脑循环工作后,它会一个字一个字的告诉你「成 都 今 天 晴 天」。

在生成式形态之下,它的每一个字都是通过已有自然语言表达中拎出来的单词、词组结合而成的、每一句话也会遵循相对严谨的语法结构等,所以,大部分情况下,很难让人觉得它的AI感那么重。但是,也同时偶尔在出现大模型幻觉的时候,说一些看似语法结构各方面都正确但内容其实胡说八道的话,类似于「今天成都晴天,你要记得带雨伞」。

2、多任务可集成在一个对话框里

以前想让AI帮忙翻译、推理等,都需要各自找特定的产品,而现在,一个集成的对话框就可以同时做各类任务:文本摘要、翻译、文本创作、知识问答、逻辑推理等,而无需自行拆分场景。能力的扩展固然是好事,但也带来了2个弊端:

1是用户不知道其能力边界在哪里,则会随意的去进行对话尝试,最开始固然是有新鲜感,但碰壁几次后可能就想放弃了,这时也许还不如使用一些指令和路径明确的功能型产品去完成任务;

2是这种更像人在对话的交互形式,会让人不禁对AI产生更多无尽的想象、拉高了期望预知,以为其是真的拥有了智力;然而我们通过前面对其工作方式的理解来看,它并不是拥有了真正的智力,只是拥有了更高效和贴近答案的一种旁门侧路。

因为笔者更多关注文本领域,所以AI在其他在文生图、图生文等上面的多模态(多种媒体形态,如图片、视频等)上的新增能力点就不再展开了。

02 大模型是怎么被训练出来的?

其实大模型的构建原理并不难,这个过程和我们教会一个小孩学习的思路很类似。其包含了5个阶段:预训练阶段、有监督微调、奖励建模、强化学习、语言模型训练。

预训练指通过海量的训练数据(包含互联网网页、维基百科、书籍论文、问答网站等)预先喂给模型海量的数据,来构建基础语言模型,从而使得模型具有语言生成的能力。这其实是先让这个能够没日没夜学习的超级小孩先自己恶狠狠的吃一大堆多啦A梦那样的记忆面包,先把最基础的能力打好。

但这时候,超级小孩回答的内容还不一定是效果最好的,可能你问「我想出门玩,今天天气咋样」,他会告诉你「今天天气还行」,但其实你背后隐含想了解的可能是:今天会不会下雨,需不需要带伞;或者是今天太阳大不大,需不需要防晒等。

这时候,就需要通过「有监督微调」来帮助模型给出更贴合用户想问问题的答案。通过少量高质量数据集合(包含用户输入问题及对应理想的输出结果),再进一步让这个小孩能够照猫画虎,回答出更好的答案。

前几百次超级小孩的回答我可以人工来逐个去反馈好坏,但针对这么庞大的训练量,不可能全部都去人工进行。因此,就引入到了奖励模型和强化学习部分,模拟人类评估的过程。那具体是怎么来提升超级小孩的回答表现呢?

系统先构建好对应的奖励模型,在对问题进行每一次回答后,超级小孩都能及时收到来自环境给予他对应的「打分」反馈,为了获取最高分,他就需要多次尝试、改善得分策略从而最终有最好的表现。

当我们基本构建好这些方面后,就可以将这样的一套模型进行训练和不断优化,最终就构建好了一个可用的大模型。

03 大模型为什么是一个字一个字蹦出来答案的?

语言模型目标就是建模自然语言的概率分布,因此,生成式模型通常基于概率分布进行生成。其本质上是根据已生成的部分来预测下一个最有可能的元素,就像在玩接龙游戏中根据前面的词语来猜测下一个词语一样,每个新的元素都会影响后续元素的概率分布。

当基于提问「今天成都天气咋样」,答案第一个字生成「成」之后,模型会根据上下文和「成」重新更新概率分布,选择下一个词「都」……以此类推,逐步展示模型是如何逐步构建答案的。

那么,这个答案具体是如何通过概率计算得来的呢?

首先会通过分词器(Tokenizer)将文本分割成较小单元——即词元(Token),这些tokens可以是单词、子词、字符等,例如一个wonderful可以单独是一个token,也可以拆分为won der ful这3个token;然后再将文本转换为适合模型输入的tokens序列,从而进一步编码成向量表示,然后输入到模型中进行训练或者推理。

(以下例子从字节的AI聊天机器人平台——豆包扒来的)假设我们有一个简单的句子:“I love natural language processing.”,会按照以下方式进行token化:

(图源网络)

(1)分割文本并转换为 token 序列‍

使用预训练的 Tokenizer对这个句子进行处理。首先,它会将句子分割成 tokens,可能会在开头加上特殊标记[CLS],在结尾加上特殊标记[SEP]。经过处理后,这个句子可能变成:[CLS] I love natural language processing. [SEP]。然后进一步将其转换为具体的 token 序列,假设每个单词对应一个 token,就变成:[‘[CLS]’, ‘I’, ‘love’, ‘natural’, ‘language’, ‘processing’, ‘.’, ‘[SEP]’]。

(2)编码成向量‍‍

Tokenizer 通常会与一个模型(如 BERT)一起使用。模型会为每个 token 分配一个向量表示。这个过程通常是通过查找预先训练好的词向量表或者通过模型的内部计算来实现的。例如,对于上面的 token 序列,模型可能会输出一个形状为(序列长度,向量维度)的张量。假设向量维度为 768,那么这个张量可能是一个 8×768 的矩阵,其中每一行代表一个 token 的向量表示。

这样,原始的文本句子就被转换为了一个由向量组成的序列,然后再输入到语言模型中。然后,语言模型再根据已有的向量信息预测下一个可能的向量(包含多头自注意力机制、前馈神经网络、残差连接和层归一化…),然后再将这个向量转换回文本形式,逐步生成新的文本内容。

当然,我们看起来一个字一个字蹦出来,其实不一定是严格一个字一个字算的,这得看词元(Token,即对词的拆分)是按照什么方式去拆的。至于为什么要做成一个字一个字蹦出来的样式,除了其生成方式本身就是逐步式的之外,其余也包含了以下2点出发点:一是快速响应用户,不至于全部加载完再一并展示回来,从而让用户先基于已经生产出来的内容快速判断该内容是否是想要的;二是基于不满意的内容,用户能够快速进行反馈,假设觉得不满意,即可停止生产or重新发起问题,从而不浪费过多计算资源。

以上就是从大致逻辑上跟大家梳理了大模型底层运作的大致框架,其很多思路和细节还有待进一步深入学习。看完书后,有些内容当时感觉自己懂了,但是真要写出来说明白,还是又查了很多资料。

目前先整理一些理论性内容,后续也希望结合自己工作上对于AI聊天产品设计、prompt调优上逐步积累的小经验和大家做一分享(本文内容如有不妥之外,还望大佬们及时帮忙指正,感谢。)

在这里插入图片描述

大模型&AI产品经理如何学习

求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。

1.学习路线图

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

在这里插入图片描述

在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方图片前往获取

3.技术文档和电子书

这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。
在这里插入图片描述

4.LLM面试题和面经合集

这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。
在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

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

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

相关文章

qt QStandardPaths 详解

1、概述 QStandardPaths是Qt框架中的一个类,它提供了一种跨平台的方式来访问标准的位置,如应用程序的数据目录、配置目录、缓存目录、临时文件目录等。这些位置通常是用户特定的,并且遵循操作系统的标准和惯例。通过使用QStandardPaths&…

对node工程进行压力测试与性能分析

在系统上线前,为了看下系统能承受多大的并发和并发下的负载情况,进行了一轮压测。在压测过程中,发现服务器的cpu飚的的非常高,而tps,接口耗时、服务可用等都是正常的,卧槽,这就奇了怪了&#xf…

昆明华厦眼科医院在大观小学开展近视科普教育讲座

为响应全社会对青少年近视防控的号召,昆明华厦眼科医院组织了一场近视科普教育讲座,活动走进大观小学,旨在通过专业的眼科知识普及,提升小学生们对眼健康的认知,培养他们爱眼护眼的意识。讲座结束后还特地为教师群体进…

MPLS基本原理

Multiprotocol Label Switching 多标签交换 前言 MPLS位于TCP/IP协议栈中的链路层和网络层之间,用于向IP层提供连接服务,同时又从链路层达到服务.MPLS以标签交换代替IP转发. MPLS并不是一种业务或者应用,它实际上是一种隧道技术.这种技术不仅支持多种高层协议与业务,而且在一…

《MarsCode:编程领域的智能新势力》

《MarsCode:编程领域的智能新势力》 一、MarsCode 的诞生与发展(一)逐步崛起的历程(二)与各方的合作与影响 二、MarsCode 的独特魅力(一)强大的功能特点(二)多语言支持与…

PyInstaller未包含预编译引导程序

1 现象 在使用 PyInstaller 打包 Python 应用时,遇到了一个错误,错误信息如下: Fatal error: PyInstaller does not include a pre-compiled bootloader for your platform. For more details and instructions how to build the bootloade…

华为HCIP-openEuler考试内容大纲:备考必看!

华为HCIP-openEuler认证考试作为ICT领域的一项重要技术认证,已经成为越来越多IT从业者追求的目标。无论你是想提升自己的技术能力,还是为了未来的职业发展,HCIP-openEuler都是一个极具价值的认证。那么,如何高效备考,顺…

编程之路,从0开始:知识补充篇

Hello大家好,很高兴我们又见面了! 给生活添点passion,开始今天的编程之路! 这一篇我们来补充一下在之前篇目没讲到的知识,并结合一些码友的私信提问和我在编程中遇到的问题,做一些易错点或易混点的讲解。 …

免费PC游戏加速器--慕讯公益加速器

百度网盘链接: 慕讯公益加速器 提取码: y54m 官网: 慕讯公益加速器 优点: 1.不像其他加速器假免费,但支持的话可以向软件捐款 2.加速游戏很全(Nikke等游戏都可以选择它),可以自由选择节点 …

git 常用命令大全

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、git是什么?二、工作中常用git命令集合三、部分git命令注意事项四、git reset 的五种模式五、总结 前言 git命令 其实不管是服务端还是前端&am…

【JAVA毕业设计】基于Vue和SpringBoot的校园资料分享平台

博主说明:本文项目编号 T 059 ,文末自助获取源码 \color{red}{T059,文末自助获取源码} T059,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…

typedef 与 extern 的结合:一场误解的澄清

typedef 与 extern 的结合:一场误解的澄清 一、typedef 的基本用法二、extern 的基本用法三、typedef 与 extern 的结合:一场误解的澄清示例二:使用 extern 声明外部变量示例三:错误的用法:尝试在 typedef 中使用 extern四、总结在C语言编程的世界里,typedef和extern是两…

腾讯的AI困局

科技新知 原创作者丨林书 编辑丨蕨影 2024年已经逐渐步入了尾声,但国产大模型的内卷之战却还在继续着…… 最近,腾讯终于有了新动作,在开源模型上卯足了劲。11 月 5 日,腾讯宣布开源 MoE 大语言模型混元 Large,腾讯称…

想部署一个自己的抖音,但是不会写代码怎么办? 部署一个自己的抖音系统

想部署一个自己的抖音,但是不会写代码怎么办? 看完这篇文章,你也快速拥有自己的抖音 上效果 安装教程 docker pull ghcr.io/zyronon/douyin-vue:latest docker run -d -p 10002:80 ghcr.io/zyronon/douyin-vue:latest 使用 浏览器打开ip:10002 然后就可以使用你自己的抖音…

QT之QString常用函数

1、构造函数 char类型可以直接通过构造函数构造QString,std::string不能直接作为参数构造QString对象,可以使用QString中的静态函数转换为QString: std::string stdstr"world"; QString str4QString::fromStdString(stdstr); 2、格式化构造(…

Dubbo源码解析(三)

一、Dubbo整合Spring启动流程 Dubbo的使用可以不依赖Spring,但是生产环境中Dubbo都是整合到Spring中一起使用,所以本章就解析Dubbo整合Spring的启动流程 一、传统的xml解析方式 一、Dubbo配置解析流程 在Java 中,一切皆对象。在JDK 中使用…

用两行命令快速搭建深度学习环境(Docker/torch2.5.1+cu118/命令行美化+插件),包含完整的 Docker 安装步骤

深度学习环境的配置过于繁琐,所以我制作了两个基础的镜像,希望可以帮助大家节省时间,你可以选择其中一种进行安装,版本说明: base 版本基于 pytorch/pytorch:2.5.1-cuda11.8-cudnn9-devel,默认 python 版本…

怎么在MindMaster里插入剪贴画?

使用MindMaster绘制思维导图时,可以通过插入剪贴画的方式,让整个思维导图更具表现力。思维导图软件提供大量极具设计感的剪贴画,涉及商业活动、学习教育、社会生活等各个方面。本文中将详细为你解说怎样在MindMaster里插入剪贴画。 打开Mind…

shell脚本(1)脚本创建执行与变量使用

声明!!! 学习视频来自B站UP主泷羽sec,如涉及侵权马上删除文章 视频链接:泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 执行文件方法 首先…

智能体创新大赛|全球规模最大智能体赛事,超3成获奖者已使用智能体赚钱

11 月 12 日,百度搜索联合技术合作伙伴NVIDIA举办的「2024百度搜索文心智能体创新大赛」决赛颁奖典礼在百度世界2024「文心智能体,新智生产力」分论坛举行。 据了解,这是全球规模最大的智能体大赛,共吸引近万名参与者提交近 4000…