LLM背后的基础模型 1

写在最前面的话

任何开源技术是最有生命力的,也是最具分享精神的。一直觉得大模型领域需要有一个系列能够从零开始系统性的讲述领域知识,给与这个领域的从业人员或者对其有兴趣的门外汉及时的帮助。国外承担“布道者”的公司众多,而数砖公司在这个领域一直走在前面。恰逢数砖的“从头开始大模型的基础模型”于近期发布,借花献佛,在基础上加入自身理解进而形成这个特殊的专栏。

虽然生成式人工智能技术的正在迅猛发展,但是现阶段面临的主要挑战是没有一个模型能够适用于所有情况。所以人们对为特定用例创建定制化模型的兴趣日益浓厚。为了找到实践中的最佳模型,亦或是追求在隐私、品质、成本、服务及模型使用延迟等多方面达到平衡,决定了一定需要定制化模型。由此可见,开发新的大型语言模型是一项浩大的工程。

目前,市场上有许多成功的专有和开源LLM模型,它们由不同的公司和研究团队提供,如Anthropic、ChatGPT、PaLM-2、Databricks的Dolly、Mosaic MPT、StabilityAI的模型以及Hugging Face上的众多模型,这些模型如何选择让人左右为难。通过这个专栏,能够帮助大家更好地理解和应用这些模型,通过理解它们的基本原理和应用方法,进而构建出高品质的应用程序和模型。

令人兴奋的是随着开源模型的兴起,免费模型的品质正在快速提升,相关的知识也在不断积累。源源不断出现的新开源模型和研究社群正在探索的技术,能够帮助需要者快速的构建出色的语言模型和应用。即便是许多开源模型源于最初无法商业使用的技术。例如,Meta或Facebook在2023年初发布的Llama模型,激发了许多研究人员的创新。史丹佛大学的一个团队基于Llama模型开发了Alpaca模型,它擅长聊天和遵循指示,使其在多种应用中更具实用性。此外,Databricks的Dolly、MosaicML的MPT等模型也开始提供商业许可,让模型的使用更加灵活和广泛。评估模型也是极为重要,如何有效的构建评估体系也是这个专栏会讨论之一。Hugging Face已经存在LLM排行榜专注于不同任务的评估,帮助开发者了解模型的表现,并构建更好的模型。

虽然LLM领域的知识和技术日新月异,但是万地高楼平地起,在这个系列中会更加关注基础。通过细节了解模型的基本运作原理、预训练数据和推理过程,以及各个阶段的可用选项,这些基础知识的微小变化构成了其他所有内容。

Transformer架构

在这个系列的第一部分将进入深度学习和自然语言处理的奇妙世界,首先聚焦于Transformer架构——这是现代大型语言模型的核心技术。本部分内容不仅是整个系列的基石,也是理解后续章节的关键所在。

Transformer的当前形式首次亮相是在2017年的BERT论文中。自那以后,大多数的大型语言模型都是基于Transformer的某种变体,包括OpenAI推出的GPT,这是一个预训练的Transformer模型,对当前基于聊天的语言模型产生了深远的影响。有趣的是,在Transformer出现之前,虽然有许多深度学习模型的快速实验,但它们更像是寒武纪大爆炸,各种不同层次和模块的组合。而Transformer的出现,至少在自然语言处理领域,使得许多模型设计都遵循了相同的基本构建块。这使得研究的关注点转移到了不同的训练技术和数据生成方法上。

尽管底层架构并没有经历过大规模的改变,但Transformer架构的强大之处在于它允许模型学习输入不同方面之间的多种交互,并且可以堆叠到不同的深度,以便理解模型的不同特性。即使今天存在一些变化,这些变化可能旨在提高速度或降低成本,但基本的构建块仍然是相同的。

2023年,在大型语言模型领域见证了思想、概念和创新的爆炸式增长,这些创新不断给我们带来惊喜。ChatGPT和其他类似技术代表了人类与技术之间的一种新型交互方式,因为它们基于自然语言处理,我们能够更自然地与它们交流。同时,它们广泛的应用和深厚的技术知识也使我们能够更好地处理日常生活中的事务。

对于过去10年左右熟悉深度学习世界的人来说,您可能已经注意到,在2010至2012年初,我们经历了一个类似的热潮时刻。当时,卷积神经网络的创新震撼了计算机视觉世界。这项创新就是卷积层,它使我们能够查看不同空间区域中的图像,尝试了解图像内部的情况。正如您在图片中看到的,这意味着我们可以与旧技术竞争并将其彻底击败。通过ImageNet的测试,卷积神经网络轻松地在竞争中占据主导地位,并且自2012年以来,每个模型都基于卷积神经网络,使得结果达到了饱和状态。自然语言处理领域也在等待这样的发展。

我们在2018年左右迎来了这一突破,释放大型语言模型力量的创新被称为“注意力机制”。正如这个词所暗示的,注意力机制允许计算机(或者在这个情况下是Transformer)准确地了解一个单词如何按照特定顺序与其他单词相关联,并给出序列中每个单词之间的重要性分数。对我们来说,这似乎是一个显而易见的概念,它是我们在生命早期就开发出来的,但它对于自然语言处理来说是至关重要的一部分,能够释放以前无法实现的能力。虽然注意力机制在我们掌握自然语言处理方面迈出了一大步,但它实际上只是构建我们现在看到的Transformer和类似模型所需的一小部分。因此,深入了解Transformer非常重要。后续的旅途将围绕着如下的问题展开:

  • 明确掌握如何使用Python代码实现Transformer模型。

  • 深入理解不同类型Transformer架构中的构建块,包括编码器、解码器以及编码器-解码器组合模型。

  • 充分理解注意力机制的原理、工作方式及其重要性

  • 将大模型应用于多种自然语言处理(NLP)任务,并评估它们的性能。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

prometheus docker部署

1.安装Docker sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF {"registry-mirrors":["https://hub-mirror.c.163.com"] } EOF export DOWNLOAD_URL"https://hub-mirror.163.com/docker-ce" curl -fsSL https://ge…

python如何安装pyqt4

第一步&#xff0c;下载.whl文件&#xff0c;地址&#xff1a;https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4&#xff0c;这里可以下载不同的python版本对应的包。 第二步&#xff0c;选择一个目录&#xff0c;将下载好的文件放到该目录下&#xff0c;然后cmd下&#xff…

基于IoTDB 平台的学习和研究

Apache IoTDB&#xff08;物联网数据库&#xff09;是一个针对物联网领域的高性能原生数据库&#xff0c;适用于数据管理和分析&#xff0c;并可在边缘计算和云端部署。由于它轻量级的架构、高性能和丰富的功能集&#xff0c;以及与Apache Hadoop、Spark和Flink的深度集成&…

将 vue文件转为字符串在Codemirror里面展示

第一种直接引入 import index from "./FFCesiumExample/basicOperationInterface/addIconMap.vue?raw"; index直接就是字符串。但是出现一个问题就是build的时候可以出警告&#xff0c;。so还有第二种 const readFile (filePath) > {// 创建一个新的xhr对象l…

查看VUE3代理后真正请求的URL

在vite.config.ts中添加如下配置&#xff1a; server: {host: "0.0.0.0", // 指定服务器应该监听哪个 IP 地址port: 8848, // 指定开发服务器端口open: true, // 开发服务器启动时&#xff0c;自动在浏览器中打开应用程序cors: true,// Load proxy configuration fr…

【TB作品】MSP430G2553单片机,智能储物柜

智能储物柜将实现的功能&#xff1a; 1在超市或者机场场景下&#xff0c;用户需要进行物品暂存时。按下储物柜键盘的需求按键&#xff0c;智能储物柜将会随机为用户分配一个还没使用的柜子&#xff0c;屏幕提示用户选择密码存储方式或者身份证存储方式&#xff1b; 2 用户选择密…

【JavaEE进阶】——Mybatis操作数据库(使用注解和XML方式)

目录 &#x1f6a9;三层架构 &#x1f388;JDBC操作回顾 &#x1f6a9;什么是MyBatis &#x1f6a9;MyBatis⼊⻔ &#x1f388;准备工作 &#x1f4dd;创建⼯程 &#x1f4dd;数据准备 &#x1f388;配置数据库连接字符串 &#x1f388;写持久层代码 &#x1f388;单…

【基本数据结构】平衡二叉树

文章目录 前言平衡二叉树1 简介2 旋转2.1 左旋2.2 右旋2.3 何时旋转 3 插入节点4 删除节点5 代码 参考资料写在最后 前言 本系列专注更新基本数据结构&#xff0c;现有以下文章&#xff1a; 【算法与数据结构】数组. 【算法与数据结构】链表. 【算法与数据结构】哈希表. 【…

33【Aseprite 作图】树——拆解

1 树叶 画树叶真累啊&#xff0c;可以先画一个轮廓&#xff0c;细节一点点修 2 1 2 &#xff1b;2 2 2 &#xff08;横着横&#xff09;&#xff0c;这样一点点画树叶 填充颜色&#xff0c;用了喷雾工具 2 树干部分 轮廓部分&#xff0c;左边的是3 3 3 &#xff1b;上下都是…

从不同角度看如何让大模型变得更聪明呢?

算法创新&#xff0c;从代码上优化大模型&#xff0c;可以采取一系列策略来提升其性能和效率。 算法优化&#xff1a;对模型的算法进行精细调整&#xff0c;如改进神经网络架构&#xff0c;使用更高效的层&#xff08;如深度可分离卷积&#xff09;&#xff0c;或者优化递归神经…

前端地图中,已知一个点位,获取相同经度或者纬度下的,某个距离的另一个点位

效果图说明&#xff1a;我在圆的中心点位&#xff0c;找到他某个直线距离的另个一点&#xff0c;标注两者之间的距离。如图所示是25000米。 沿纬度方向移动 在相同经度下&#xff0c;计算沿纬度方向移动1000米的新点位&#xff1a; function calculateLatitudePoint(lat, ln…

回归预测 | MATLAB实现基于GOOSE-LightGBM的多特征输入单输出数据回归预测(鹅优化算法)

回归预测 | MATLAB实现基于GOOSE-LightGBM的多特征输入单输出数据回归预测(鹅优化算法) 目录 回归预测 | MATLAB实现基于GOOSE-LightGBM的多特征输入单输出数据回归预测(鹅优化算法)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 MATLAB实现基于LightGBM算法的数据回归预…

Qt第三方库QicsTable简单实例(1)

闲来无事&#xff0c;无意间看到一个Qics表格操作第三方库&#xff0c;自己写了一个特别简单的实例&#xff0c;效果如图所示&#xff1a; 操作界面的数据还是特别快的&#xff0c;因为使用了模型

java并发处理机制

在Java中&#xff0c;并发处理机制主要是通过线程来实现的。Java提供了丰富的类和接口来支持多线程编程&#xff0c;主要集中在 java.util.concurrent 包中。以下是一些关键的并发处理机制&#xff1a; 1.线程创建&#xff1a;可以通过继承 Thread 类或实现 Runnable 接口来创建…

前端Vue小兔鲜儿电商项目实战Day06

一、本地购物车 - 列表购物车 1. 基础内容渲染 ①准备模板 - src/views/cartList/index.vue <script setup> const cartList [] </script><template><div class"xtx-cart-page"><div class"container m-top-20"><div…

C语言:如何写文档注释、内嵌注释、行块注释?

技术答疑流程 扫描二维码&#xff0c;添加个人微信&#xff1b;支付一半费用&#xff0c;获取答案&#xff1b;如果满意&#xff0c;则支付另一半费用&#xff1b; 知识点费用&#xff1a;10元 项目费用&#xff1a;如果有项目任务外包需求&#xff0c;可以微信私聊

Wpf 使用 Prism 实战开发Day31

登录数据绑定 1.首先在LoginViewModel 登录逻辑处理类中&#xff0c;创建登录要绑定属性和命令 public class LoginViewModel : BindableBase, IDialogAware {public LoginViewModel(){ExecuteCommand new DelegateCommand<string>(Execure);}public string Title { ge…

Arduino烧录esp8266

default_encoding: cp936 Assume aggressive ‘core.a’ caching enabled. Note: optional global include file ‘arduino_modified_sketch_764314\Blink.ino.globals.h’ does not exist. Read more at https://arduino-esp8266.readthedocs.io/en/latest/faq/a06-global-bui…

数据管理知识体系必知的14张语境关系图

近期对数据管理知识体系中的语境关系图进行了整体学习梳理,总共有14张图,具体如下,供大家参考。应该说语境关系图和环境因素六边形图是各有侧重、互为补充关系。语境关系图是环境因素六边形图的细化,描述了每个知识领域中的细节,相当于数据管理的微观视角, 包括与人员、 …

秒杀基本功能开发(显示商品列表和商品详情)

文章目录 1.数据库表设计1.商品表2.秒杀商品表3.修改一下秒杀时间为今天到明天 2.pojo和vo编写1.com/sxs/seckill/pojo/Goods.java2.com/sxs/seckill/pojo/SeckillGoods.java3.com/sxs/seckill/vo/GoodsVo.java 3.Mapper编写1.GoodsMapper.java2.GoodsMapper.xml3.分别编写Seck…