Note为什么矩阵能够表示高维信息,为什么线性变化是在改变特征坐标系?
依旧前面是 AI,后面是流水账(不断改进自己的表达!)
矩阵的设计
首先,我们可以将矩阵简单理解为一个二维表格:
那么,为什么一个二维表格能够表示高维度的信息呢?
关键在于:矩阵中的每一行(或每一列)其实都是一个高维向量。
例如,在 Embedding 中,一个文本经过编码后,会被表示为一个:
的向量。其中, 表示向量维度。
如果一个矩阵包含 个词的表示:
那么它本质上表示:
N 个对象,每个对象由 D 维特征描述。
为什么一个 D 维向量可以表示一个词?
一个词本身并没有明确的数学属性,例如“苹果”这个词并不存在天然的:
这样的特征。
Embedding 的核心思想是:
通过学习,将语义信息映射到高维空间中。
例如 Word2Vec,通过大量文本上下文学习词之间的关系,使得语义相似的词在向量空间中更加接近:
- “苹果”和“香蕉”的距离较近;
- “苹果”和“汽车”的距离较远。
这里的距离成为衡量语义关系的重要工具。
因此,一个词向量可以理解为:
一个词在高维语义空间中的坐标。
矩阵之所以能够表示复杂信息,本质上是因为:
它为每一个对象构建了一个高维坐标,并利用坐标之间的关系表示信息。
矩阵的线性变换
矩阵最重要的能力之一,就是进行线性变换:
其中:
- :原始特征;
- :变换矩阵;
- :新的特征表示。
从数学角度看,矩阵乘法实际上是在重新组合原始特征。
例如:
经过线性变换:
可能得到:
也就是说,原来的特征空间:
被转换成了新的特征空间:
坐标系转化的理解
线性变换可以理解为:
不断改变数据的表示坐标系,使信息更加符合当前任务的需求。
原始空间中,我们可能关注:
- 单独的物理能力;
- 单独的数学能力。
经过变换后,模型可能发现:
- 综合能力更重要;
- 两者之间的差异更有意义。
因此,深度学习中的矩阵计算,本质上是在不断学习:
什么样的特征空间更适合当前任务。
在 Transformer 中,线性层和注意力机制也可以理解为:
不断重新组织语义空间,让模型在新的表示空间中理解信息。
信息本身没有增加,只是编码方式发生了变化。
矩阵中的不变量
虽然矩阵可以改变数据表示,但一些结构信息不会轻易改变,这些称为矩阵的不变量。
1. 线性结构
线性变换保持基本的空间关系。
例如:
- 三点共线;
- 向量之间的线性关系。
经过线性变换后,这些关系仍然存在。
2. Rank(秩)
矩阵的秩表示:
数据中真正独立的信息数量,也就是空间自由度。
例如:
如果一个二维数据实际上都落在一条直线上:
说明虽然数据存在二维坐标中,但真正有效的信息只有一个方向。
无论如何进行线性变换,这种自由度不会凭空增加。
3. 特征值与特征向量
特征值是矩阵中非常重要的结构信息。
满足:
其中:
- 是特征向量;
- 是特征值。
它表示:
某些特殊方向经过矩阵变换后,只发生缩放,而不会改变方向。
因此,特征值反映了矩阵对不同方向的信息放大或压缩程度。
在深度学习中,特征值常用于分析:
- 信息传播;
- 稳定性;
- 过平滑现象;
- 表示空间变化。
总结
矩阵能够表示高维信息的核心原因是:
矩阵中的每一个向量都是高维空间中的一个坐标,而整个矩阵描述了大量对象之间的关系。
矩阵乘法的核心意义是:
通过线性变换不断改变坐标系,重新组织特征表示,使信息更容易被模型理解。
而矩阵的不变量(如秩、特征值等)则描述了:
在不断变化的表示空间中,哪些信息结构始终保持。
流水账
矩阵的设计
首先其实我们可以知道,其实矩阵可以理解成一个二维表格,那他为什么能够表示更高维度的信息呢?
其实这个在 用 Embedding 的角度去理解的话,就是 Embedding 的设计 就是将文本变成 一个 [1 * D] 的向量形式,也就是矩阵形式,所以相当于一个矩阵,其实就是 有 N 个词,然后每一个词用 D 维度的 向量表示,为什么能够用 D 维度的向量去表示一个词呢?这个 D 维度的 向量真的能够刻画一个词的性质吗?其实是真的可以的,比如 Word2Vec(好像是这个名字),非常NB的词嵌入设计,[1 * D] 的向量其实放到坐标系中可以理解成一个 坐标,那如果把词看成坐标,怎么去刻画 词之间的关系呢?引入了坐标系中最重要的设计:距离,这个距离就是用来刻画 词之间的关系的,词相关程度高,距离也就会更近,这个我在前面的文章中其实有解释过,好像是那个”GPT 为什么会胡言乱语 的文章中”
通过这种理解,其实我的理解就是 的矩阵中,可以表示有 N 个 D 维度的向量,然后每一个 向量 其实可以理解成一个特征,所以叫特征向量,其实我认为最为巧妙的就是,将**特征(可能是描述事物)**转变成一个高维度的向量,这个其实也是 矩阵为什么能够表示高维度信息,其实他本身就是对每一个特征构建的一个高维坐标系
矩阵的线性变化
Note为什么矩阵的线性变化其实是矩阵最为重要的设计,也是他能够应用在 深度学习的一个重要角度
首先我举一个简单的例子:
如果这个 x 是一个 维度的向量,其实 这个 A 就是对这个 x 做了一个线性变化,其实就是 行列之间的求和变化啥的,这个其实就是很厉害的一个点,就是行列之间的操作
坐标系转化
其实 可以将 线性变化 可以理解成特征性质改变(坐标系改变),其实如果一开始的特征如果是[物理,数学],两种特征,但是如果 进行了线性变化,其实可能特征就变成了[综合能力,物理和数学的差异],这两种特征形式,其实就是 旋转一下坐标系,如下图所示:

其实线性变化的意思就是在不断的更换坐标系,换成目前的模型能够很好的处理的特征,我认为这个角度真的很有意思,不断的去改变坐标系,在 Transformer 的角度,其实就是在不断的组织语义空间,其实信息总量是没有改变的,只是编码的方式改变了
矩阵中的不变量
- 向量的空间结构: 始终保持的这个线性关系,比如 三点共线,进行线性变化以后还是共线的
- Rank(秩): 其实是表示 矩阵的自由度,比如 在某一个坐标系中,所有特征都在一个圆内,无论怎么进行线性变化,这个节点都会在一个圆内
- 特征值: 其实也是矩阵最重要的一个东西,相当于可以理解成,把矩阵中最为重要的不变的信息给提取出来的
这个 就是 特征值,其实也是认为是矩阵的一个表示特性
