奇异值分解(SVD)关键概念以及物理意义

news2024/9/22 17:34:13

本文主要用来讨论奇异值分解(SVD)的一些核心概念以及它的物理意义和实际意义,说到底就是:

这东西有什么用?是怎么起作用的?

我们按顺序一步步来拆解这些问题并且分析。


引言

之前也只是模棱两可地了解过SVD的功能,但一直没深入,这次恰好看到一篇论文用SVD作为主要创新点,机缘巧合之下就想完全弄明白,所以这就是这篇文章诞生的原因。

文章信息如下:
在这里插入图片描述

这篇paper所研究的问题

Transformer模型在自然语言处理和其他领域的应用已成为主流。然而,这些模型通常需要大量的计算资源进行训练和推理。本研究发现,通过选择性地移除Transformer模型中某些层的高阶权重成分,可以显著提升模型的性能。这一方法被称为LAyer-SElective Rank reduction (LASER),可以在模型训练完成后进行,无需额外的参数或数据。

这篇文章的作者如何得到这个idea的?

由实验驱动的,而不是从理论开始。

本文中提出的LASER方法主要是基于实验发现,即通过对大型语言模型(LLMs)的特定层进行低秩近似可以改善模型性能。文章中并没有详细描述理论推导来证明为何这种低秩近似会有效,而是通过广泛的实验来展示这种方法在多种情况下的有效性。

实验结果表明,在某些情况下,低秩近似可以提高模型在特定任务上的表现,尤其是在处理训练数据中不常见的信息时。文章中对这种现象进行了一些初步的分析和假设,比如提出高阶分量可能捕获了模型训练过程中的噪声,而去除这些噪声成分可以通过“去噪”来提高模型的准确性。

然而,对于为何特定层的低秩近似能够导致性能提升,以及为何这种现象在后层更为常见等问题,文章承认需要进一步的研究来深入理解背后的机制。因此,可以认为文章的发现主要是实验驱动的,而不是由理论推导所引导。

那么,什么是“低秩近似”?为何需要它?

Q: 为什么需要低秩近似
A:为了减少计算消耗,提高效率。

Q:什么是“低秩近似”?
A:低秩近似(low-rank approximation)是一种通过保留矩阵中最重要的特征分量,来减少矩阵维度和复杂度的方法。

为什么要保留矩阵中最重要的特征分量?

其实很简单,直观来说,我们舍弃了一些不重要的特征分量,那么就会减少模型中的一些数据(在这里,这些特征分量其实就是模型参数),所以保留最重要的那些,就会把模型的大部分能力保留下来,尽管舍弃了一些特征分量,对模型能力的影响也不会很大,因为最重要的数据(最重要的特征分量即最重要的参数)是被保留了的。

接下来,如何计算出特征分量?如何挑选最重要的特征分量?

这时候我们就要用到我们的主角:奇异值分解(SVD)

详细谈谈SVD

在奇异值分解(Singular Value Decomposition, SVD)中,我们将一个矩阵 W W W 分解为三个矩阵的乘积:

W = U Σ V T W = U \Sigma V^T W=UΣVT

其中, U U U V V V 是正交矩阵, Σ \Sigma Σ 是对角矩阵,包含了 W W W 的奇异值,且这些奇异值按从大到小的顺序排列。具体来说, Σ \Sigma Σ 的对角线元素 σ i \sigma_i σi 满足:

σ 1 ≥ σ 2 ≥ ⋯ ≥ σ r ≥ 0 \sigma_1 \geq \sigma_2 \geq \cdots \geq \sigma_r \geq 0 σ1σ2σr0

这里, r r r 是矩阵 W W W 的秩。

高阶和低阶分量的判定

“高阶”和“低阶”分量的判定是基于奇异值的大小。通常,较大的奇异值对应的奇异向量组合起来的分量被称为“低阶”分量,而较小的奇异值对应的分量则被称为“高阶”分量。这样的命名是基于以下原因:

  1. 信息贡献:较大的奇异值 σ i \sigma_i σi 对应的奇异向量组合(即 u i v i T u_i v_i^T uiviT)通常包含了更多的原始矩阵 W W W 的信息。这些成分在重构矩阵时起到了主要作用。

  2. 噪声贡献:较小的奇异值 σ i \sigma_i σi 对应的奇异向量组合包含的信息较少,往往更多地体现为噪声和细节,而不是主要信息。因此,在很多应用中,这些较小的奇异值和对应的分量可以被忽略,从而得到一个低秩的近似。

高阶和低阶分量的命名原因
频率域解释:
在傅里叶变换中,一个信号可以分解为不同频率的正弦波和余弦波的叠加。低频分量(低阶分量)通常包含信号的主要结构和重要信息,而高频分量(高阶分量)通常包含细节和噪声。
类比到奇异值分解,较大的奇异值对应的分量被认为是低频分量,包含了数据的主要信息和结构,而较小的奇异值对应的分量则包含了高频噪声和细节。

具体描述

假设 W W W 是一个 m × n m \times n m×n 的矩阵,通过 SVD 分解后,我们有:

W = ∑ i = 1 r σ i u i v i T W = \sum_{i=1}^{r} \sigma_i u_i v_i^T W=i=1rσiuiviT

其中, σ i \sigma_i σi 是奇异值, u i u_i ui v i v_i vi 分别是 U U U V V V 矩阵的列向量。对于一个秩为 k k k 的近似矩阵 W k W_k Wk,我们只保留前 k k k 个最大的奇异值及其对应的奇异向量:

W k = ∑ i = 1 k σ i u i v i T W_k = \sum_{i=1}^{k} \sigma_i u_i v_i^T Wk=i=1kσiuiviT

这里,保留的 σ i \sigma_i σi 较大,贡献了主要的信息量。这些成分被认为是“低阶”成分。

而被舍弃的部分:

W r − k = ∑ i = k + 1 r σ i u i v i T W_{r-k} = \sum_{i=k+1}^{r} \sigma_i u_i v_i^T Wrk=i=k+1rσiuiviT

这些成分对应于较小的奇异值,往往包含了较多的噪声信息,被称为“高阶”成分。

例子

假设矩阵 ( W ) 的奇异值分解结果为:
W = U ( σ 1 0 … 0 0 σ 2 … 0 ⋮ ⋮ ⋱ ⋮ 0 0 … σ n ) V T W = U \begin{pmatrix} \sigma_1 & 0 & \ldots & 0 \\ 0 & \sigma_2 & \ldots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \ldots & \sigma_n \end{pmatrix} V^T W=U σ1000σ2000σn VT
其中 σ 1 ≥ σ 2 ≥ … ≥ σ n \sigma_1 \geq \sigma_2 \geq \ldots \geq \sigma_n σ1σ2σn 为奇异值。

  • σ 1 \sigma_1 σ1 对应的分量 u 1 v 1 T u_1 v_1^T u1v1T 是最主要的特征。
  • σ n \sigma_n σn 对应的分量 u n v n T u_n v_n^T unvnT 是最不重要的特征。

通过移除 σ n \sigma_n σn 对应的分量,保留 σ 1 \sigma_1 σ1 σ k \sigma_{k} σk 对应的分量,可以实现低秩近似,即:
W ≈ U k Σ k V k T W \approx U_k \Sigma_k V_k^T WUkΣkVkT
其中 Σ k \Sigma_k Σk仅包含前 k k k 个较大的奇异值。

回到文章:采用SVD来保证不严重影响模型能力的前提下而减少模型的参数量

在文章中,作者利用SVD来识别和去除Transformer模型中权重矩阵的高阶分量,这些高阶分量对应于较小的奇异值。通过这种方式,作者们实现了对模型的低秩近似,即LASER(Layer-Selective Rank Reduction)。具体来说,他们保留了权重矩阵中与较大奇异值对应的主要奇异向量,而忽略了那些与较小奇异值相关的高阶分量。这种选择性地去除权重矩阵中的成分,被认为可以减少模型中的噪声,从而提高模型在某些任务上的性能。

在奇异值分解(SVD)中,给定一个矩阵 W W W,可以将其分解为 W = U Σ V T W = U \Sigma V^T W=UΣVT,其中 U U U V V V 是正交矩阵, Σ \Sigma Σ 是对角矩阵,其对角线元素为奇异值,且按降序排列。

在这种分解中:

  • 奇异值的大小表示对应奇异向量在原矩阵中的重要性。
  • 较大的奇异值对应的奇异向量对矩阵的主要特征贡献较大。
  • 较小的奇异值对应的奇异向量对矩阵的特征贡献较小。

因此,“高阶”分量是指那些对应较小奇异值的奇异向量,因为这些分量对矩阵整体特征的贡献较小。相对地,“低阶”分量是指那些对应较大奇异值的奇异向量,因为这些分量对矩阵整体特征的贡献较大。

在这篇文章中,所指的高阶分量是指奇异值分解(SVD)中的奇异值按大小降序排列后,排在后面的那些分量。具体来说:

LASER操作:文章中的LASER操作正是通过这种选择性地忽略较小奇异值来实现的。例如,如果设置 ρ \rho ρ 为某个小于1的值,那么只有排名前 ρ \rho ρ 倍最大秩的奇异值会被保留,其余的则被视为高阶分量并被去除。

通过这种方式,LASER方法可以减少模型的复杂性,有时还能提高模型在特定任务上的性能,尤其是在处理训练数据中不常见的信息时。

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

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

相关文章

计算机网络知识汇总

目录 前言 概述 1、互联网的组成 2、端系统之间的两种通信方式 1、客户-服务器方式 2、对等连接方式(P2P) 3、交换技术 4、时延 5、利用率 6、协议 7、计算机网络体系结构 8、ISP 物理层 链路层 网络层 传输层 应用层 前言 最近准备找工作…

ARL联动AWVS实现自动化漏洞扫描

0x01 前言 很多场景下需要大范围的扫描漏洞和快速排查互联网暴露面的漏洞,需要使用这种自动化的手段,常规渗透测试的找互联网暴露面是,域名>子域名>IP>C段>端口,可以手动收集,也可以借助一些网络搜索引擎…

AI直播手机APP震撼发布!3大场景直播,60秒一键开播!

无需繁琐准备,无需复杂操作,60 秒在抖音及其他平台一键开播,青否数字人AI直播APP正式发布! 3大AI直播类型,6大核心 AIGC 技术,让新手小白也能轻松搞定数字人在全平台直播,并且有效规避违规风险&…

Pytorch模型的推理如何编写-以猫狗分类为例

📚博客主页:knighthood2001 ✨公众号:认知up吧 (目前正在带领大家一起提升认知,感兴趣可以来围观一下) 🎃知识星球:【认知up吧|成长|副业】介绍 ❤️如遇文章付费,可先看…

苹果电脑压缩软件哪个好用一些? mac电脑用什么压缩软件 mac电脑压缩文件怎么设置密码

压缩软件是Mac电脑必不可少的工具,虽然Mac系统自带了一款“归档实用工具”,但是其功能实在匮乏,若你需要加密压缩文件或者把文件压缩成指定格式,那么该工具无法满足你的需求。Mac用户应该怎么选择压缩软件呢?本文就来告…

医疗器械网络安全| 常见安全漏洞与防护措施

医疗器械网络安全顾问​https://link.zhihu.com/?targethttps%3A//www.wanyun.cn/Support%3Fshare%3D24315_ea8a0e47-b38d-4cd6-8ed1-9e7711a8ad5e 一、常见安全漏洞 医疗器械软件在现代医疗体系中扮演着至关重要的角色,然而,随着技术的不断发展&…

江门数字化mes系统定制哪家好 珠海盈致mes系统服务商

对于江门数字化MES系统的定制服务,选择珠海盈致科技是一个不错的选择。珠海盈致科技是一家专业的智能制造解决方案提供商,具有丰富的数字化制造和MES系统定制经验。以下是选择珠海盈致科技的一些优势: 专业团队:珠海盈致科技拥有一…

springboot整合微信公众号实现模版消息推送

欢迎来到我的博客,代码的世界里,每一行都是一个故事 🎏:你只管努力,剩下的交给时间 🏠 :小破站 springboot整合微信公众号实现模版消息推送 前言前提工作整合springboot配置实现逻辑基础1、要获…

【C++】———— 继承

作者主页: 作者主页 本篇博客专栏:C 创作时间 :2024年7月5日 一、什么是继承? 继承的概念 定义: 继承机制就是面向对象设计中使代码可以复用的重要手段,它允许在程序员保持原有类特性的基础上进行扩展…

[工具教程]-31-解决mac扣盖后电池耗电快(谁在偷偷的用电池)

查看耗电模式 $ pmset -g查看 hibernatemode 这一行,如果 hibernatemode 后面的数字是 0 ,那这种休眠模式下,掉电程度就是非常严重,如果 hibernatemode 后面的数字是 3 (大部分人的电脑应该是这个休眠模式&#xff09…

STM32智能电网监控系统教程

目录 引言环境准备智能电网监控系统基础代码实现:实现智能电网监控系统 4.1 数据采集模块 4.2 数据处理与分析 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景:电网监控与优化问题解决方案与优化收尾与总结 1. 引言 智能电网监控系统通过S…

3款自己电脑就可以运行AI LLM的项目

AnythingLLM、LocalGPT和PrivateGPT都是与大语言模型(LLM)相关的项目,它们允许用户在本地环境中与文档进行交互,但它们在实现方式和特点上存在一些差异。AnythingLLM使用Pinecone和ChromaDB来处理矢量嵌入,并使用OpenA…

供应RTL8366SC-CG瑞昱芯片

标17566722766题 长期供应各品牌原装芯片: RTL8366SC-CG RTL8382L-VB-CG RTL8218D-CG RTL8192EU-VP-CG RTL8821CU-CG RTL8811CU-CG RTL8723DU-CG RTL8723DS-CG RTL8711AM-VB1-CG RTL8111H-VB-CG RTL8111H-CG RTL8211F-CG RTL8211E-VB-CG RTL8733BS…

codeforces 1633A

文章目录 1. 题目链接2. 题目代码正确代码错误代码 3. 题目总结 1. 题目链接 Div. 7 2. 题目代码 正确代码 #include<iostream> using namespace std; int main(){int testCase;cin >> testCase;while(testCase --){int ingeter;cin >> ingeter;if(!(inget…

c#类型转换和常见集合类型

目录 1. 整数转换&#xff0c;整数和字符串&#xff0c;字符串和整数之间的转换怎么实现&#xff1f; 2. 日期转换&#xff0c;获取当前日期&#xff0c;字符串转日期&#xff0c;日期转字符串怎么实现&#xff1f; 3. 举例一维、二维、三维数组 4. 需求&#xff1a;有个88…

git 文件没有修改,但一直提示有0行改动,还原也不行

查看文件修改内容 原来是文件的模式(读写可执行权限)发生了变化,内容本是没有变化. 怎么解决 git config --add core.filemode false忽略文件模式

力扣-贪心算法4

406.根据身高重建队列 406. 根据身高重建队列 题目 假设有打乱顺序的一群人站成一个队列&#xff0c;数组 people 表示队列中一些人的属性&#xff08;不一定按顺序&#xff09;。每个 people[i] [hi, ki] 表示第 i 个人的身高为 hi &#xff0c;前面 正好 有 ki 个身高大于或…

基于全国产复旦微JFM7K325T+ARM人工智能数据处理平台

复旦微可以配合的ARM平台有&#xff1a;RK3588/TI AM62X/ NXP IMX.8P/飞腾FT2000等。 产品概述 基于PCIE总线架构的高性能数据预处理FMC载板&#xff0c;板卡采用复旦微的JFM7K325T FPGA作为实时处理器&#xff0c;实现各个接口之间的互联。该板卡可以实现100%国产化。 板卡具…

LangChain(四)工具调用的底层原理!给大模型按上双手吧!(新手向)

背景 经过前面三篇的内容&#xff0c;我想大家对于大模型的构建、Langchain的优势、Chain的构建有了相当程度的理解&#xff08;虽然只是最简单的示例&#xff0c;但是足够有代表性&#xff09;。 后续Chain的使用将会更加丰富多彩&#xff0c;您会了解Langchain开发的大模型…

《向量数据库指南》——Milvus Cloud生成器增强:优化RAG Pipeline的深入探索

在信息检索与生成(Retrieval-Augmented Generation, RAG)的框架下,大型语言模型(Large Language Models, LLMs)如GPT系列、T5等,通过结合外部知识库的能力,极大地扩展了它们的应用场景与准确性。然而,在实际应用中,RAG系统仍面临诸多挑战,如检索到的信息中包含噪声、…