查看原文
其他

【强基固本】从三角函数变换到图神经网络

“强基固本,行稳致远”,科学研究离不开理论基础,人工智能学科更是需要数学、物理、神经科学等基础学科提供有力支撑,为了紧扣时代脉搏,我们推出“强基固本”专栏,讲解AI领域的基础知识,为你的科研学习提供助力,夯实理论基础,提升原始创新能力,敬请关注。

来源:知乎—白歌

地址:https://zhuanlan.zhihu.com/p/440361857


01

从基于三角函数进行向量空间变换说起
首先,要理解向量旋转的一种表示方式,以下图为例:

目标:单位向量    逆时针旋转θ角,到达单位向量    ,已知单位向量   的坐标为  ,求单位向量   的坐标
解:由上图知    ,但    不易获得也可能不需要获得,同时亦知:

那么

为了构建包含  的表达式,以归并甚至消除    和 cosα 两式的等号两边同时提取出  ,所得结果如下:

将   替换为   ,同时借助   ,得:

以矩阵和向量的方式重构上式,可得:

由此可见,矩阵可作为向量旋转/坐标移动的一种数学工具,而逆时针旋转    角的运算矩阵为:


02

从向量旋转到坐标系的转换
我们已经知道,在现实生活中动则几万几十万的变化折线图坐标系上,单位长度可能代表着大量的数字,如下人口变化图所示:

纵坐标每个单元格表示1亿,横坐标每格表示10年,如果把它们还原成1:1大小,那就需要进行如下变换:

每个坐标点    进行的(矩阵)运算应是:

而上式与之前向量旋转的表达式:

的结构是如此相似,因此,我们有理由认为伸缩坐标系所使用的运算属于同一类运算即:
新坐标=操作矩阵*旧坐标
根据之前的推导,以及思考,我们可以知道新坐标和旧坐标指的都是同一个坐标点,那么同一个坐标点为为什么会有新坐标和旧坐标呢?因为我们换了坐标系,为什么换了坐标系坐标就会变换?那么那个或多或少困扰了我们多年的问题又重新浮了上来——什么是坐标系?
要解答这个问题,我们又要回到坐标系变换上,什么时候,新旧坐标位置相同?根据矩阵运算规则,可以比较方便地得到:
当操作矩阵为   时,所得到的新旧坐标相同,那么根据我们把之前点   坐标的表示形式转换为   之后,我们脑海里也可能有一种印象——或许矩阵的每一列也可以表示成一个坐标?于是,我们把矩阵每一列表示成坐标后所得向量 (1,0) 和 (0,1) 图像如下:

所以当前,我们得到的坐标,可以说是相对 (1,0) 和 (0,1) 两个单位向量的位置表示,也就是说,我们常见的1:1的坐标系中,每个点的坐标应当表示的是这个点的坐标是 (1,0) 和 (0,1) 这两个单位向量的多少倍,那么, 新坐标=操作矩阵*旧坐标 ,是否也可替换为:
新坐标=参考向量矩阵(又称“基”)的转置*旧坐标
由于参考向量矩阵又是基于(1,0) 和 (0,1)这两个点构造的,所以,参考向量矩阵(又称“基”)*旧坐标的本质还是该坐标点相对是(1,0) 和 (0,1)的多少倍,所以,最终我们获得两类变换:
相对于基的坐标=参考向量矩阵(又称“基”)的转置*旧坐标 \\ 旧坐标=参考向量矩阵(又称“基”)的逆运算(操作矩阵)*相对于基的坐标
例:
回到之前关于   与   的关系,我们可以认为,   是以    为基的坐标系得坐标,而  是   映射回以  为基的坐标系之后的坐标。

03

从坐标系的转换到相对运动
根据沪科国标初二物理可知,物体间的运动是相对的,所以当坐标点相对坐标(基)变换位置时,对坐标(基)也相对坐标点变换,而这样的相对变换有什么用呢?从伸缩角度看,如果是1:1坐标系,人口变化图将会变得异常陡峭,对观测者来说,无法获取应有的规律;从旋转角度看,下图如果直线    和所有坐标点顺时针旋转45°(    ),那么,在x轴之下的就是负值,x轴以上的就是正值,就不需要专门去寻找直线  了:


更进一步,设M为m行n列  操作矩阵(从  映射到任意新空间),为m行n列  的数据样本,我们将X映射到新的坐标系    ,然后求新矩阵与其自身的内积  。我们就可以看到,   为形状为    的矩阵,我们暂且将其定为单位矩阵   ,意味着不对原数据进行映射),于是   ,在   中,样本与样本之间进行了笛卡尔积运算,鉴于   是单位矩阵,那么   同时反应了 X 样本与样本之间的关系,例如,若 X 被归一化过,那么该矩阵就能反应各个样本之间的余弦相似度。

同时考虑到    为单位矩阵时,  的每一项应为   ,也就是说,   不改变样本中的每个个体之间的运算对应关系,那么,如果该矩阵被换成其他形式如   (  为针对两个x的任意运算函数) ,就等于对样本进行了非线性变换,而其中针对每个个体的变换体现了该个体与其他样本之间的关系对该个体某一特性的不同影响。(SVM的升维就是基于这个原理(参考SVM对偶问题))

04

从坐标系线性回归
如果我们看待下图一维数轴(一维坐标系),以颜色表示每一个点的”值的大小“(该值可能为股价,可能为人口等),纯黑点为0,白色点为5。

我们我们很自然地发现这样的观察其实并不是非常有利于我们对各个点的实际情况进行辨别,因此我们构建了二维坐标轴,并在二维坐标轴上迅速锁定了各个坐标点的自变量与因变量的线性关系,而基于    进行升维的操作也是这么个道理。现在我们回到线性回归的内容上。
我们已经知道线性回归一般形式,即    ,同时已经获取了自变量X和对应因变量Y的部分样本,估计W的值,以确定这些样本所处的大致坐标位置。从矩阵角度看,令 Y 为真实因变量向量, X 为自变量向量, W 为我们需要求取的系数,    为基于  计算得到的因变量向量,那么在    两侧同时左乘X得到结果为    ,再在等式两边乘上  即可得到W的值   ,此为最小二乘法的矩阵表示形式。(部分推导条件先略过啦)

05

PageRank的矩阵表示形式
PageRank用于在一个图中,根据各个节点所处邻接位置,为每一个节点赋予一个反应其重要程度的分数。其基本公式如下:

其中,   表示第    个节点的PageRank值,    表示第  个节点的邻居节点,由此可见,第    个节点的PageRank值与该节点邻居节点的PageRank值有较强关系,  为蒸发系数,用于平衡邻居较少的节点,同时归一化各个节点的PageRank值。
PageRank的计算步骤为:
初始化图中节点的 PageRank=1 ;
根据PageRank计算公式   计算每个节点的PageRank值
由于PageRank不断更新,重复第二步,直至所有的节点的PageRank值收敛
因此,计算PageRank的第二步矩阵运算方式可以表示如下(I为PageRank初始化向量,a为收敛系数(作用同上式的蒸发系数d)):
第一次迭代:
  
第二次迭代:
  
第三次迭代:
  
......
经过(k-2)次迭代后,PageRank向量收敛,结果如下:
  
由于PageRank向量收敛,所以可以令    ,则上式可转换为:
  
则    ,可7看出,该式非常符合特征值计算模式    ,所以 PageRank 可视为    的特征函数,其中越大的值表示该值越重要,于是,在学习特征值时候一直困扰我的问题解决了——特征向量中的值可以表示在图结构中,各个节点相对于其他节点的重要程度。

06

图神经网络(谱分析)
图神经网络的主要特征在于能够整合各个实体之间的关联关系,并作为下游任务的参考形成各个实体的图embedding属性。图神经网络最大的问题在于其谱分析方式的构建,即构建拉普拉斯矩阵    ,然后进行标准化    。其中, D 表示每个节点的度矩阵, A 表示邻接矩阵,于是我们就看到   本质上表示的是借助各个节点之间的相关程度构造每个节点在这个图中的重要程度。根据PageRank的计算过程,我们能了解到    的基本特征很像PageRank矩阵的构造过程——经过多次迭代后该矩阵中每个节点之间相对重要程度趋于收敛。
得到了每个节点关系的相对重要性系数矩阵后(前文的拉普拉斯矩阵),而神经网络的非线性变换层的主要目的就在于决定哪些节点的关系应该被如何关注,因此,GCN与MLP的对接口便在于  ,所以图神经网络的输出值    最终表达方式为:
  
其中    为神经网络层的非线性变换。

本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。

“强基固本”历史文章


更多强基固本专栏文章,

请点击文章底部“阅读原文”查看



分享、点赞、在看,给个三连击呗!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存