RAG的基石:大语言模型文本向量化能力对比

news2024/9/24 3:18:45

什么是具象的高维向量空间?也许这是一个,在不同的平行空间里面,对不同的物体有各自的表示…

图片

一、概述

大家都比较关心大语言模型的能力,但往往容易忽略其向量化(Embedding)的能力。在RAG应用中,对文本进行向量化后再计算向量相似度,如余弦相似度,是文本检索生成的基础和前置环节。如果向量不准确,必定会影响相似度计算,进一步影响招回和重排,甚至知识抽取等下游任务,影响甚大。因而我们需要认真来对待其结果,并且对其正确性和合理性进行评价。

本中对一些简单的文本对,使用不同的开源7B大语言模型来进行向量化,最终以其余弦相似度作为输出作为测试结果。语义的相似度如何进行评价很难达成一致意见,就下面的输出结果而言,可能人很难来评价其合理性。但我们可以通过比较不同大语言模型输出之间的差异,对比分析其文本向量化的能力、跨模型一致性和偏差。

先直接贴结果:

图片

图:不同大语言模型对字符串对向量相似度比较

可以看出,不同的大语言模型,对同一对字符串向量相似度的理解存在较大的差异。我第一次看到结果时感觉有点惊讶。我现在还没有理出头绪,但显然其中部分大语言模型的输出是不合理的,并且有的输出和其他大语言模型的输出存在较大的偏离,很显然,如果其中一个是正确的情况,那其他就是偏离甚至错误的情况。比如同一组词的相似度,不同大语言模型的输出范围包括从负值到0.7以上。


二、评测对象

  • Baichuan2-7B-Chat
  • CodeLlama-7B
  • Mistral-7B
  • Chinese-Alpaca-2-7B
  • Llama 2 7b
  • Chinese-Llama-2
  • WizardLM-2-7B
  • Qwen1.5-7B
  • Meta-Llama-3-8B
  • WizardMath-7B
  • Mixtral-8x7B
  • Yi-chat-9B
  • WizardMath-7B-V1.1-Mistral-7B

三、测试方法

用LlamaSharp用,以Embedding模式加载大语言模型,实现文本向量化:
在这里插入图片描述

四、评测结果

1、爱好比较

  • 我喜欢看电视,不喜欢看电影。
  • 我不喜欢看电视,也不喜欢看电影。
序号大语言模型余弦相似度
1Mistral-7B0.9194595217704773
2WizardMath-7B-V1.1-Mistral-7B0.9722315669059753
3WizardMath-7B0.9659444093704224
4WizardLM-2-7B0.9000769257545471
5Meta-Llama-3-8B0.9120883941650391
6Chinese-Llama-20.9997099041938782
7Qwen1.5-7B0.8777709603309631
8Llama 2 7b0.9997739791870117
9Yi-chat-9B0.9656155109405518
10Chinese-Alpaca-2-7B0.9418708682060242
11Baichuan2-7B-Chat0.7609831690788269
12CodeLlama-7B0.9805717468261719
13Mixtral-8x7B0.9723657369613647

图片

2、下班注意事项

  • 下班离开办公室之前要把门窗关好
  • 公司管理规定
序号大语言模型余弦相似度
1Mistral-7B0.6006873250007629
2Chinese-Alpaca-2-7B0.5809993743896484
3Mixtral-8x7B0.8583651185035706
4WizardMath-7B0.5944302678108215
5Qwen1.5-7B0.5158098340034485
6Meta-Llama-3-8B0.5567445755004883
7WizardMath-7B-V1.1-Mistral-7B0.606997549533844
8Llama 2 7b0.5725998282432556
9Yi-chat-9B0.6222318410873413
10CodeLlama-7B0.7767068147659302
11Baichuan2-7B-Chat0.4148940443992615
12Chinese-Llama-20.4173697233200073
13WizardLM-2-7B0.4826260805130005

图片

3、购买皮鞋

  • 这只皮靴号码大了。那只号码合适。
  • 这只皮靴号码不小,那只更合适。
序号大语言模型余弦相似度
1WizardMath-7B-V1.1-Mistral-7B0.9549105763435364
2Mixtral-8x7B0.9740864038467407
3Qwen1.5-7B0.9682160019874573
4CodeLlama-7B0.8389745354652405
5Mistral-7B0.9343295693397522
6Chinese-Alpaca-2-7B0.2915574610233307
7Yi-chat-9B0.9639067053794861
8WizardLM-2-7B0.9335297346115112
9WizardMath-7B0.9227038621902466
10Chinese-Llama-2-0.008517207577824593
11Baichuan2-7B-Chat0.9351896047592163
12Meta-Llama-3-8B0.9342775344848633
13Llama 2 7b0.021673066541552544

图片

4、猫和狗比较

  • 京哈
  • 蓝猫
序号大语言模型余弦相似度
1WizardLM-2-7B0.6294927000999451
2Meta-Llama-3-8B0.5248777866363525
3Baichuan2-7B-Chat0.16035179793834686
4WizardMath-7B0.7749522924423218
5WizardMath-7B-V1.1-Mistral-7B0.7058834433555603
6Mistral-7B0.7224012017250061
7Chinese-Alpaca-2-7B0.15339423716068268
8CodeLlama-7B0.5445933938026428
9Chinese-Llama-20.194538414478302
10Qwen1.5-7B0.5761963129043579
11Mixtral-8x7B0.7579318881034851
12Yi-chat-9B0.5578252673149109
13Llama 2 7b0.44038861989974976

图片

5、Englishvs 汉语

  • Please buy a cup for me, plus a car.
  • 他让你帮助买什么东西?
序号大语言模型余弦相似度
1CodeLlama-7B0.33356600999832153
2Baichuan2-7B-Chat0.57098788022995
3Chinese-Alpaca-2-7B0.11986920237541199
4Mixtral-8x7B-0.30094829201698303
5Llama 2 7b-0.005667471326887608
6Mistral-7B0.10879462957382202
7Meta-Llama-3-8B0.18513920903205872
8WizardLM-2-7B0.0768003985285759
9Qwen1.5-7B0.713830292224884
10WizardMath-7B-V1.1-Mistral-7B0.08147571235895157
11WizardMath-7B0.09978950768709183
12Chinese-Llama-2-0.029241781681776047
13Yi-chat-9B0.43288084864616394

图片

6、English:go home

  • When will you go home?
  • I bet i can return to my house at 5pm.
序号大语言模型余弦相似度
1Qwen1.5-7B0.6420629024505615
2WizardLM-2-7B0.7205202579498291
3Meta-Llama-3-8B0.6660025715827942
4Chinese-Alpaca-2-7B0.27626731991767883
5CodeLlama-7B0.7119967937469482
6Yi-chat-9B0.791547954082489
7WizardMath-7B0.7313649654388428
8Llama 2 7b-0.04700035974383354
9Mistral-7B0.6904579401016235
10Baichuan2-7B-Chat0.7068948745727539
11Mixtral-8x7B0.9776806831359863
12Chinese-Llama-2-0.027995778247714043
13WizardMath-7B-V1.1-Mistral-7B0.740699052810669

图片

7、处罚规定

  • 在办公室抽烟一次罚款200元
  • 有哪些处罚规定
序号大语言模型余弦相似度
1Mixtral-8x7B0.9126697182655334
2Mistral-7B0.7717455625534058
3Baichuan2-7B-Chat0.5083956718444824
4Yi-chat-9B0.7497902512550354
5Qwen1.5-7B0.6885314583778381
6CodeLlama-7B0.47839587926864624
7Chinese-Alpaca-2-7B0.6295954585075378
8WizardMath-7B0.746604323387146
9Meta-Llama-3-8B0.7041338682174683
10WizardMath-7B-V1.1-Mistral-7B0.7953561544418335
11Chinese-Llama-20.414549857378006
12WizardLM-2-7B0.6535733342170715
13Llama 2 7b0.6160202026367188

图片

8、狗和狗比较

  • 哈士奇
  • 拉布拉多
序号大语言模型余弦相似度
1Baichuan2-7B-Chat0.5302562713623047
2WizardMath-7B-V1.1-Mistral-7B0.8843305110931396
3Meta-Llama-3-8B0.7624377012252808
4Yi-chat-9B0.9097429513931274
5WizardLM-2-7B0.7355867624282837
6CodeLlama-7B0.68620365858078
7WizardMath-7B0.8989375829696655
8Llama 2 7b0.7147634029388428
9Mixtral-8x7B0.9531522989273071
10Qwen1.5-7B0.8283199667930603
11Mistral-7B0.8669305443763733
12Chinese-Alpaca-2-7B0.7255567908287048
13Chinese-Llama-20.6491625905036926

图片

五、评测结果初步分析

不考虑文本内容,相似度数据汇总对比如下?

爱好比较下班注意事项购买皮鞋猫和狗比较English vs 汉语English:go home处罚规定狗和狗比较
Baichuan2-7B-Chat0.7609831690.4148940440.9351896050.1603517980.570987880.7068948750.5083956720.530256271
Chinese-Alpaca-2-7B0.9418708680.5809993740.2915574610.1533942370.1198692020.276267320.6295954590.725556791
Chinese-Llama-20.9997099040.417369723-0.008517210.194538414-0.02924178-0.027995780.4145498570.649162591
CodeLlama-7B0.9805717470.7767068150.8389745350.5445933940.333566010.7119967940.4783958790.686203659
Llama 2 7b0.9997739790.5725998280.0216730670.44038862-0.00566747-0.047000360.6160202030.714763403
Meta-Llama-3-8B0.9120883940.5567445760.9342775340.5248777870.1851392090.6660025720.7041338680.762437701
Mistral-7B0.9194595220.6006873250.9343295690.7224012020.108794630.690457940.7717455630.866930544
Mixtral-8x7B0.9723657370.8583651190.9740864040.757931888-0.300948290.9776806830.9126697180.953152299
Qwen1.5-7B0.877770960.5158098340.9682160020.5761963130.7138302920.6420629020.6885314580.828319967
WizardLM-2-7B0.9000769260.4826260810.9335297350.62949270.0768003990.7205202580.6535733340.735586762
WizardMath-7B0.9659444090.5944302680.9227038620.7749522920.0997895080.7313649650.7466043230.898937583
WizardMath-7B-V1.1-Mistral-7B0.9722315670.606997550.9549105760.7058834430.0814757120.7406990530.7953561540.884330511
Yi-chat-9B0.9656155110.6222318410.9639067050.5578252670.4328808490.7915479540.7497902510.909742951

初步分析,可以发现几个情况:

  • 对于同一个字符串对,不同大语言模型的向量化后结果的余弦相似度存在较大的差异,个别模型明显不稳定,不合群;
  • 在将中文和英文进行余弦相似度比较时,结果差异更大,并且在值空间中基本呈均匀分布,是否表现出其跨语言能力存在巨大差异?是否需要翻译后再进行向量相似度计算?
  • 如果波动很大的不同值都具有合理性,那在实战中我们应该采取多个大语言模型并行进行向量化和向量招回的策略吗?将词的向量加到一起得到句子的向量,这种方法合理吗(比如对否定词如何进行准确的向量化语义表达)?
  • 大语言模型为什么在向量化的能力有如此大的差距?是因为其中文能力不够强,或者对一些特殊的词组没有识别能力,从而影响到其准确对文本进行向量化的能力吗?
  • Llama 2在添加中文语料后,Chinese-Llama-2对相同字符串对的向量相似度的理解上也存在较大差异。这种差异可否作为模型退化的指标?
  • 向量相似度和语义相似度应该存在比较大的差异,应该如何减少这种差异?还是完全利用大语言模型的语义理解能力来生成内容?
  • 如果不同的文本存在确定的语义,是否经过不同的大语言模型向量化后应该有相似的表示?差异的来源在哪?
  • 对不同大语言模型的输出结果,可以画出一个重叠度比较高的区域,见下图红色半透明区域。在这个区域内有大约5个模型相对稳定,各个字符串对的输出比较接近。为什么会出现这种情况?是因为这些大语言模型的能力比较高,已经进化到了一定的程度,还是因为他们在训练的语料上相似?

图片

希望能给你启发。

你是什么观点?你觉得这些测试数据中还隐含哪些信息?欢迎分享。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

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

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

相关文章

USB3202N多功能数据采集卡16位模拟量250K频率LabVIEW采集卡

品牌:阿尔泰科技 系列:多功能数据采集卡 概述: USB3202N多功能数据采集卡,LabVIEW无缝连接,提供图形化API函数,提供8通道(RSE、NRSE)、4通道(DIFF)模拟量输…

计算机毕业设计hadoop+spark+hive物流预测系统 物流大数据分析平台 物流信息爬虫 物流大数据 机器学习 深度学习

流程: 1.Python爬虫采集物流数据等存入mysql和.csv文件; 2.使用pandasnumpy或者MapReduce对上面的数据集进行数据清洗生成最终上传到hdfs; 3.使用hive数据仓库完成建库建表导入.csv数据集; 4.使用hive之hive_sql进行离线计算&…

matlab可以把多个二维图合成为三维瀑布图吗??

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

小皮服务器无法启动Mysql服务器

一、用小皮服务器启动mysq,启动后几秒钟就停止了 出现了这种情况怎么办? 二、因为电脑已经启动了mysql服务 关闭掉已启动的mysql服务就好 在电脑任务栏的空白处右键,出现‘任务管理器’ 找到mysql服务,右键“结束任务” 三、再…

【论文笔记】独属于CV的注意力机制CBAM-Convolutional Block Attention Module

目录 写在前面 一、基数和宽度 二、通道注意力模块(Channel Attention Module) 三、空间注意力模块(Spatial Attention Module) 四、CBAM(Convolutional Block Attention Module) 五、总结 写在前面 …

调试JS代码

一、vs code调试 1.在vs code中如何进行代码调试? 首先,在vs code中配置 auto-attach,通过ctrl shift p,输入 auto-attach。设置成smart(智能)。如下图: 然后,对需要调试的语句在…

AWS子账号的创建与管理:提升安全性与灵活性

在现代云计算环境中,亚马逊网络服务(AWS)提供了强大的功能,允许用户创建和管理子账号。通过合理地使用子账号,企业可以有效地提升安全性、管理复杂性以及资源的灵活性。我们九河云一起细探讨AWS子账号的创建方法。 为什…

2-78 基于matlab-GUI的DTW算法语音识别

基于matlab-GUI的DTW算法语音识别,具有16页分析报告。能识别0-9数字,正确率90。预处理过程包括预滤波、采样和量化、分帧、加窗、预加重、端点检测等。经过预处理的语音数据进行特征参数提取。在训练阶段,将特征参数处理之后,每个…

双目相机实现物体尺寸的精准测量

双目视觉系统是一种模拟人类双眼的立体视觉原理,通过两个摄像头从不同的角度捕捉同一场景的图像,从而获取目标物体的三维信息。 目录 1,设备选型 2,双目相机测量的现实意义 2.1 技术优势 2.2 面对的挑战 2.3 发展趋势 3&am…

黑神话的大头怪幽魂很简单! 黑神话悟空幽魂打法攻略

《黑神话:悟空》已经发售了三天,玩家们也已经踏上了“天命人”的路程。不过因游戏Boss太难打成为取经路上的拦路虎,有不少玩家被幽魂挡住了脚步,并纷纷叫苦。 近日,“你希望黑神话悟空出难度调节吗”这个话题也登上微博…

MyBatis查询 ▎修改 ▎删除

前言: 在现代应用开发中,数据库操作是核心环节。MyBatis 作为一款灵活的持久层框架,提供了直接编写 SQL 语句的能力,避免了其他 ORM 框架可能带来的性能和功能限制。MyBatis 的查询、修改和删除操作是开发者必须掌握的基本技能。这些操作不仅…

基差、升水与贴水,股指期货市场的重要概念解析

在股指期货市场中,基差、升水和贴水是三个至关重要的概念。它们不仅影响着市场的价格动态,还对套利和套期保值者的策略制定具有重大意义。本文将详细解析这三个概念,帮助读者更好地理解期货市场的运作机制。 一、基差:现货与期货…

公司叫你写three.js 编辑器不会写,我这有思路

低代码------就是将一些复用的流程和操作进行封装简化使用,目前 web 二维 在市场上已经非常普遍,而web 三维低代码普及率并不是很高。 这是我早期创造three低代码内核的一个思维导图 开源地址 https://github.com/z2586300277/three-editor 预览查看 …

如何将ip地址随机更换

在数字化时代,‌IP地址作为网络身份的重要标识,‌其管理和使用方式对于个人和企业都具有重要意义。‌在某些场景下,‌如‌突破地域限制、‌数据抓取或隐私保护等,‌用户可能需要实现IP地址的随机更换。‌本文将深入探讨如何将IP地…

Citrix ADC Release 13.1 Build 54.29 (nCore, VPX, SDX, CPX, BLX) - 混合多云应用交付控制器

Citrix ADC Release 13.1 Build 54.29 (nCore, VPX, SDX, CPX, BLX) - 混合多云应用交付控制器 Citrix ADC - 混合多云应用交付控制器 请访问原文链接:https://sysin.org/blog/citrix-adc-13/,查看最新版。原创作品,转载请保留出处。 作者…

电脑开机之后进入emergency mode

电脑开机之后进入emergency mode 本章只针对统信系统 emergency mode 统信UOS Cannot open access to console. The root account is locked 故障现象 电脑开机之后进入emergency mode,提示Cannot open access to console. The root account is locked,按回车也无法进系…

SQLi-LABS 通关攻略【36-40】

SQLi-LABS 36关 1.本关依旧是宽字节注入 2.测试闭合方式 ?id1 //正常显示 ?id1 //显示错误 ?id1%df //显示错误 ?id1%df -- //显示正常 3.测试回显点 ?id-1%df%27…

海康二次开发学习笔记5-二次开发小技巧

二次开发小技巧 1. VM安装目录 Samples内包含C#,QT,VC应用程序 Documetnations内包含C#和C语言的帮助文档 2. 错误码 private void button4_Click(object sender, EventArgs e){try{VmSolution.Load(textBox1.Text);listBox1.Items.Add("方案加载成功.");listBox1.…

RAG 技术真的“烂大街”了吗?

大语言模型技术迅猛发展的脚步,正引领着信息检索技术进入一个新的纪元。在这一领域中, RAG 技术将传统信息检索技术与大语言模型技术相结合,为知识理解、知识获取提供了全新的解决方案。然而,尽管 RAG 在很多任务上表现出色&#…

高空抛物目标检测

高空抛物目标检测是一个技术领域,它关注于从高空向下抛掷或坠落的物体的自动识别和检测。这类目标检测在视频监控、安全防范以及事故预防中扮演着重要角色。 视频监控与分析:通过摄像头持续录制特定区域的视频,使用图像处理和机器学习技术分析…