从信息论和矩阵计算的角度理解神经网络
根据通用近似定理,深度神经网络是万能函数拟合器。然而,这种视角无法解释RNN、LSTM、GRU、以及Transformer等网络架构存在的原因。本篇文章尝试站在信息论和矩阵计算的角度理解深度神经网络。
信息论视角下的深度神经网络
深度神经网络可被视为一个信息处理系统。在信息论中,信息的方法处理有压缩、编码、解码等。接下来,尝试不同视角下理解神经网络。
压缩
在信息论中,压缩是尝试利用更少的位数表示信息,且能从表示中恢复信息。表示信息的过程被称为编码,恢复信息的过程被称为解码。
在深度神经网络中,压缩是通过减少神经元个数实现的,例如:第一个隐藏层1024个神经元,第二个隐藏层512个神经元。然而,深度神经网络并不一定尝试追求保留全部信息或知识,而是根据学习目标调整自己所需的信息。压缩有利用降低信息的冗余度,从而学习到抽象知识或表示。
进一步的思考,深度神经网络中升维把数据映射到高维空间,有利于数据样本的可分性,这与SVM的高斯核一致。可分性或许是非线性激活函数通常为Sigmoid型的原因。然后,再通过降维对数据进行表示。
根据博客ARC-AGI Without Pretraining,可知,压缩的确可以产生智能,即模型可进行推理。
Encoder-Decoder
深度神经网络中,编码-解码的网络架构可见有VAE、Transformer。其中,VAE不仅要求对数据进行压缩编码,而且要求可通过解码器恢复信息,与信息论中编码器-解码器的能力要求较为一致。Transformer的编码器对一种数据进行编码,解码器把该数据转化为另一种数据。
编码-解码贯穿神经网络架构的发展,几乎任何深度神经网络都在做显示或隐式的编码-解码,只不过根据任务提取相关信息,即学习出提取信息的特定方式。
为什么大部份损失函数均与熵有关
在信息论中,熵是用来衡量信息的不确定性。数学上,熵用于度量随机变量的不确定度,即概率度量。那么,为什么AI系统通过概率学习数据中的模式或知识呢?简单来说,就是:
All knowledge degenerates into probability.
-David Hume
通俗的说,深度神经网络系统以熵相关的度量为目标函数,从而降低系统的不确定性,学习出知识或模式。这些知识无法通过解析式显式的表达,只能通过学习的方式提出。
矩阵计算视角下的深度神经网络
矩阵计算是深度神经网络的数学表达。在几何视角,矩阵计算是在数据空间内对数据进行几何变换,常见的有旋转、缩放、平移、镜像、投影。与欧式几何的三维空间不同,数据所在的空间是一种抽象空间。通过矩阵计算把输入向量变换到其它空间或形式,从而便于信息抽取或表示,这与信号处理领域通过傅立叶变换或拉普拉斯变换把时域变为频域,降低信息的处理难度相一致。
在几何变换中,线性映射是一个空间到另外一个空间的映射,且保持加法和数量乘法的运算;线性变换是线性空间到自身的线性映射,其几何属于平行等距且原点保持不变。
对于神经网络,若向量先进行了线性变换,那么叠加上非线性激活函数属于对向量的非线性变换,几何角度上由平行等距且原点保持不变的网络,变为了平行不等距且原点不变的网格。
常见几何变化的矩阵计算为:
- 旋转:行列式为$1$的矩阵对向量的操作。
- 平移:对向量进行线性变换和平移,即向量由一个仿射空间变为另一个仿射空间。
- 投影:低秩矩阵对向量进行的操作。
- 缩放:对角阵对向量进行的操作。
- 镜像:行列式为$-1$的矩阵对向量进行的操作。
每种几何变化可能对应不同的线性映射、线性变换、仿射变换及其组合,例如:平移只属于仿射变换,而旋转可能对应线性变换也可能对应仿射变换。
One More Thing
除了信息论和矩阵计算角度理解深度神经网络,还有数据处理的角度理解,例如:CNN是专门为处理图像信息而提出的,RNN、LSTM、以及GRU是为处理序列数据而提出的。
最后,笔者认为:通用近似定理只是表示深度神经网络的拟合能力,但没有表示深度神经网络拟合函数的效率,即各种网络架构的产生也有先验知识的存在,例如:序列数据利用全连接拟合效率肯定低于循环神经网络。
引用方法
请参考:
li,wanye. "从信息论和矩阵计算的角度理解神经网络". wyli'Blog (Oct 2025). https://www.robotech.ink/index.php/archives/774.html
或BibTex方式引用:
@online{eaiStar-774,
title={从信息论和矩阵计算的角度理解神经网络},
author={li,wanye},
year={2025},
month={Oct},
url="https://www.robotech.ink/index.php/archives/774.html"
}