LLM的基础模型4:初识Embeddings

2024-06-05 01:36

本文主要是介绍LLM的基础模型4:初识Embeddings,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型新阅读。而最新科技(Mamba,xLSTM,KAN)则提供了大模型领域最新技术跟踪。若对于具身智能感兴趣的请移步具身智能专栏。技术宅麻烦死磕AI架构设计。

Embeddings

Embeddings会分为两个章节,前部分主要还是放在常规方法总结,后者主要放在神经网络技术。其实这个英文单词不难理解,就是将对象用数字标识描述。其实一直纠结是否要讲述这个话题,因为可深可浅。

若要用一句话概括,就是给输入分配一个数字标识,可以是一个整数数值也可以是一个向量。不过最重要的目的是在模型训练的过程中能够高效且有效的学习参数。

这里需要解释下向量,例如apple可以使用三维的向量[0.95,0.23,-0.23]来表示,也可以使用四维的向量来表示[0.95,0.23,-0.23,0.12],请注意下图中Embedding Dimensions这一列,不同模型的Embedding维度不一

one-hot encoding

这是一种最直观,也是最不需要动脑子的编码模式。假如有10000个对象,那么每个对象就是一个10000维的向量,朴素也暴力。例如apple这个词在第50个,那么apple对应的编码就是:10000维的向量,这个向量除了第50个为1之外,其余的数值均为0。

#词汇表Vocabulary:{'mat', 'the', 'bird', 'hat', 'on', 'in', 'cat', 'tree', 'dog'}#词汇表中词汇和位置的映射Word to Index Mapping:{'mat': 0, 'the': 1, 'bird': 2, 'hat': 3, 'on': 4, ……}#输入一句话的编码矩阵One-Hot Encoded Matrix:cat: [0, 0, 0, 0, 0, 0, 1, 0, 0]in:  [0, 0, 0, 0, 0, 1, 0, 0, 0]the: [0, 1, 0, 0, 0, 0, 0, 0, 0]hat: [0, 0, 0, 1, 0, 0, 0, 0, 0]dog: [0, 0, 0, 0, 0, 0, 0, 0, 1]on:  [0, 0, 0, 0, 1, 0, 0, 0, 0]the: [0, 1, 0, 0, 0, 0, 0, 0, 0]mat: [1, 0, 0, 0, 0, 0, 0, 0, 0]bird:[0, 0, 1, 0, 0, 0, 0, 0, 0]in:  [0, 0, 0, 0, 0, 1, 0, 0, 0]the: [0, 1, 0, 0, 0, 0, 0, 0, 0]tree:[0, 0, 0, 0, 0, 0, 0, 1, 0]

这种编码方式的缺点显而易见,One-hot编码会产生高维向量,使其计算成本高昂且占用大量内存,尤其是在词汇量较大的情况下;它不捕捉单词之间的语义关系;它仅限于训练期间看到的词汇,因此不适合处理词汇表之外的单词。

Feature Vector

第二种编码方式是基于特征,其实彩色图片是一种很好的例子。做过视觉学习的都知道彩色图片常见的有三种通道(三维向量),分别代表RGB(红绿蓝)。三种颜色取不同的值就可以合成任意一个位置的色块。举个例子橘色其实就可以使用orange = [1, .5, 0]来表示。说白了就是每个维度代表一种特征,然后组合起来就能代表一个输入对象。

为了加深大家的理解,上图这个例子更加直观。假如约定的编码只有4个维度,分别是“春夏秋冬”,那么上图右侧框框中的事物都可以使用下面的编码来替代。具体的意思就是这个物体是不是在四季节出现,当然学过数学组合的都知道这种编码方式只能将整个世界的对象分成16类。但是它已经开始在编码中存储对象之间的某种关系。

emoji = [spring, summer, autumn, winter]🌳    = [1, 1, 1, 0]🍂    = [1, 0, 0, 0]🍁    = [1, 0, 0, 0]🌻    = [0, 1, 0, 0]🎁    = [0, 0, 1, 1]🎅    = [0, 0, 1, 1]...etc

这种编码模式更加符合人脑,人类在记忆某种事物的时候其实也是某种编码,例如看到笔,一般会浮现它的形状,属性和相关的事物,例如纸张。

Document Vector

换个思路,假如收集了大量的文章,然后将文章里面的字词在文章中出现的次数做个标记。可以得到如下的矩阵:每一列代表着文章编号,每一行代表某个词,通过观察图片你就会发现其实traffic和network是不是有点相似,按照这个编码其实也是一种思路。

Co-occurrence Vector

顺着刚才的思路,其实还有一种编码的办法:可以将文章按照特定的长度进行窗口的滑动,然后统计在这个窗口里面单词之间的关联次数。下图给出例子,从其中可以发现其实data和mining还是挺相似的。这种编码的好处在于这种类型的embedding可以准确地捕获单词的使用含义(毕竟单词的含义会根据使用的时间、社区和上下文而变化)。

Neural Embedding

除了基于传统的统计学方法,其实可以采用神经网络来帮助自动化的抽取信息,方法很多。为了帮助大家更好的理解,这里先引入较早机器学习的一个术语,自编码器。其实它的历史很悠久,只不过到近期才被发扬光大而已。

如何理解自编码器呢,请看下图:

当输入一副图、一段语音或者一段文字的时候,通过绿色部分的神经网络,然后输出一个向量,紧接着再将这个向量输入紫色部分的神经网络,紫色部分的输出为重建之后的图、语音或者文字。最后用输出和真实值对比出差异反过来调整两个神经网络的参数。如此循环!

聪明的你一定反应过来了,要是重建之后的正确率很高的话。那么中间变量是不是经过压缩的向量,代表了原图,原语音或者原文。对了!这个就是自编码器。

那么中间的向量代表什么,其实是可以的解释。以输入“图片”为例,中间的向量有些维度描述对象特征,有些描述了材质。有人曾经做过实验,语音通过自编码器之后,中间向量有一部分代表内容,一部分代表音调。取一段中文和一段日文的语音输入编码器,然后将两个向量拆分组合,是可以重建出日语说中文。

如何用神经网络用于Embedding,下文会展开详细讲解。整体的基本思路还是在于将单词的上下文和情景信息,通过神经网络的参数训练进行编码。

这篇关于LLM的基础模型4:初识Embeddings的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1031705

相关文章

RedHat运维-Linux文本操作基础-AWK进阶

你不用整理,跟着敲一遍,有个印象,然后把它保存到本地,以后要用再去看,如果有了新东西,你自个再添加。这是我参考牛客上的shell编程专项题,只不过换成了问答的方式而已。不用背,就算是我自己亲自敲,我现在好多也记不住。 1. 输出nowcoder.txt文件第5行的内容 2. 输出nowcoder.txt文件第6行的内容 3. 输出nowcoder.txt文件第7行的内容 4. 输出nowcode

一份LLM资源清单围观技术大佬的日常;手把手教你在美国搭建「百万卡」AI数据中心;为啥大模型做不好简单的数学计算? | ShowMeAI日报

👀日报&周刊合集 | 🎡ShowMeAI官网 | 🧡 点赞关注评论拜托啦! 1. 为啥大模型做不好简单的数学计算?从大模型高考数学成绩不及格说起 司南评测体系 OpenCompass 选取 7 个大模型 (6 个开源模型+ GPT-4o),组织参与了 2024 年高考「新课标I卷」的语文、数学、英语考试,然后由经验丰富的判卷老师评判得分。 结果如上图所

Vim使用基础篇

本文内容大部分来自 vimtutor,自带的教程的总结。在终端输入vimtutor 即可进入教程。 先总结一下,然后再分别介绍正常模式,插入模式,和可视模式三种模式下的命令。 目录 看完以后的汇总 1.正常模式(Normal模式) 1.移动光标 2.删除 3.【:】输入符 4.撤销 5.替换 6.重复命令【. ; ,】 7.复制粘贴 8.缩进 2.插入模式 INSERT

零基础STM32单片机编程入门(一)初识STM32单片机

文章目录 一.概要二.单片机型号命名规则三.STM32F103系统架构四.STM32F103C8T6单片机启动流程五.STM32F103C8T6单片机主要外设资源六.编程过程中芯片数据手册的作用1.单片机外设资源情况2.STM32单片机内部框图3.STM32单片机管脚图4.STM32单片机每个管脚可配功能5.单片机功耗数据6.FALSH编程时间,擦写次数7.I/O高低电平电压表格8.外设接口

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

ps基础入门

1.基础      1.1新建文件      1.2创建指定形状      1.4移动工具          1.41移动画布中的任意元素          1.42移动画布          1.43修改画布大小          1.44修改图像大小      1.5框选工具      1.6矩形工具      1.7图层          1.71图层颜色修改          1

人工和AI大语言模型成本对比 ai语音模型

这里既有AI,又有生活大道理,无数渺小的思考填满了一生。 上一专题搭建了一套GMM-HMM系统,来识别连续0123456789的英文语音。 但若不是仅针对数字,而是所有普通词汇,可能达到十几万个词,解码过程将非常复杂,识别结果组合太多,识别结果不会理想。因此只有声学模型是完全不够的,需要引入语言模型来约束识别结果。让“今天天气很好”的概率高于“今天天汽很好”的概率,得到声学模型概率高,又符合表达

智能客服到个人助理,国内AI大模型如何改变我们的生活?

引言 随着人工智能(AI)技术的高速发展,AI大模型越来越多地出现在我们的日常生活和工作中。国内的AI大模型在过去几年里取得了显著的进展,不少独创的技术点和实际应用令人瞩目。 那么,国内的AI大模型有哪些独创的技术点?它们在实际应用中又有哪些出色表现呢?此外,普通人又该如何利用这些大模型提升工作和生活的质量和效率呢?本文将为你一一解析。 一、国内AI大模型的独创技术点 多模态学习 多

OpenCompass:大模型测评工具

大模型相关目录 大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容 从0起步,扬帆起航。 大模型应用向开发路径:AI代理工作流大模型应用开发实用开源项目汇总大模型问答项目问答性能评估方法大模型数据侧总结大模型token等基本概念及参数和内存的关系大模型应用开发-华为大模型生态规划从零开始的LLaMA-Factor

模型压缩综述

https://www.cnblogs.com/shixiangwan/p/9015010.html