图神经网络(三):数学基础
一.復數空間
在實數空間中,加法、減法可以看成是沿數軸的左右平移,乘法、除法可以看成是沿數軸的拉伸和壓縮。但是在現實生活中除了平移和縮放以外,還存在旋轉。在復數發明之前,處理旋轉問題是非常麻煩的。
1.復數的定義
i2i^2i2 = -1,這就是復數中虛數的基本定義。對該式的直觀理解可以將其拆解成1 x i x i = -1,即數字“1”經過2次完全一樣的操作,變成了“-1”,由此我們可以聯想到下圖旋轉操作:先旋轉90度,再旋轉90度,即i代表旋轉操作。
2.eixe^{ix}eix代表了什么
我們知道,e是能夠表征物質的連續變化,本質是一種極限,定義為:
ex=lim?n→∞(1+xn)ne^x = \lim_{n \to \infty} (1+\frac{x}{n})^n ex=n→∞lim?(1+nx?)n
如果將定義中的x換成ix,則可以得到:
eix=lim?n→∞(1+ixn)ne^{ix} = \lim_{n \to \infty} (1+\frac{ix}{n})^n eix=n→∞lim?(1+nix?)n
該式用MATLAB可視化如下:
當n=20時:
當n=50時:
當n=500時:
當n=5000時:
從上可見,當n足夠大的時候,eixe^{ix}eix其實就是一個單位圓。并且容易看出eixe^{ix}eix代表一簇矢量,矢量的角度為x,矢量的幅值為1,于是可以得到下面的圖形:
二.歐拉恒等式
eix=cos(x)+isin(x)e^{ix} = cos(x) + isin(x)eix=cos(x)+isin(x)這就是著名的歐拉恒等式。取式中的x=πx=\pix=π便可得到:
eiπ+1=0e^{i\pi} + 1 = 0eiπ+1=0
歐拉恒等式被認為是數學上最優美的公式之一,在各大最美的公式排行榜中都留有一席之地,因為它將自然常數e,圓周率π\piπ,虛數單位iii,自然數1以及0這五個最基本的數字用兩個基本的運算符+和=連接在一起了,被認為是上帝寫下的音符。該式可以理解為:自然數1,繞坐標中心旋轉180度(eiπe^{i\pi}eiπ),再平移1,就回到坐標原點。
三.傅里葉變換
傅里葉變換的核心是從時域到頻域的變換,而這種變換是通過一組特殊的正交基來實現的。
1.時域
時域是描述一個數學函數或物理信號對時間的關系,這也是我們日常中最容易直觀感受的一種域。從我們學物理開始,很多物理量的定義都是跟時間相關的。
- 速度:位移與發生這個位移所用的時間之比
- 電流:單位時間里通過導體任一橫截面的電量
- 功率:物體在單位時間內所做的功的多少
很多物理量的定義都是基于單位時間產生的效果或變化,以時間為參考讓我們更容易理解。但是容易理解不代表方便使用或計算。
比如截取一段音頻的波形圖(來自李榮浩《麻雀》的副歌部分——“我飛翔在烏云之中,你看著我無動于衷…”),如下圖:
其中橫軸是時間t,縱軸是振幅A[-1,1]。
假設播放器讀入這段音頻進行音頻播放?,F在想讓音量大一些,播放器應該怎么做?
因為上面的波形圖的振幅對應的其實就是聲音的強度,如果想讓音量大一些,只需要將整體的振幅同比例擴大即可。這個需求看起來很容易滿足。
但如果有人比較喜歡低音效果,想加強上面這段音樂的低音部分,使其更厚重一些,那此時播放器應該怎么做呢?
雖然這是一段美妙的音樂,但是從時域的圖像看起來,似乎雜亂無章,想找到低音部分根本無從下手,更不用說將低音部分加強了。因為高中低音在時域中是雜糅在一起的,因此無法將他們剝離開來,隨便改動波形圖中的一小部分,都會同時影響到高中低音,所以如果播放器僅僅對時域信號進行處理時無法完成這個需求的。
2.頻域
頻域就是描述頻率所用到的空間或者說坐標系。頻率雖然抽象,但是在我們的生活中時無處不在的。對于波來說,頻率是每秒波形重復的數量。再比如家里用的交流電是50Hz,意思就是電壓每秒完成50次振蕩周期。更普遍的說,頻率就是物質每秒鐘完成周期性變化的次數。
而前面提到的低音效果是什么樣的效果呢?就好比家庭影院中的低音炮,它是如何實現重低音的呢?簡單來說,可以將它簡化成一個低通濾波器,下圖是低通濾波器的頻率響應曲線。
橫軸是頻率(Hz),縱軸是聲音大小(dB)。
所謂的低音效果,其實就是對人聲中的低音部分保留或增強,對應上圖中左側的橫線部分;而對于人聲中的高音部分進行衰減,對應上圖中右側的斜坡部分。通過這個低通濾波器,我們就能將低音過濾,將高音衰減。
可見,低音效果是在頻率范圍內考慮問題,而波形圖是在時域內的圖像,所以如果想在時域內解決低音效果的問題,就好比雞同鴨講。所以我們就需要找到一個溝通時域和頻域的橋梁,也就是一個翻譯,讓時域和頻域能夠無障礙的溝通。但是,時域和頻域表達的又只能是同一種信息,只是表現形式不同。就好比人們想了解古埃及文化,但完全不了解古埃及象形文的含義,所以也就無法根據記載的文字了解當時的文化。直到商博良破譯了羅塞塔石碑上的古埃及象形文,才打開了古埃及文化的大門。
3.時域轉頻域
傅立葉變換將原來難以處理的時域信號轉換成了易于分析的頻域信號(信號的頻譜),可以利用一些工具對這些頻域信號進行處理、加工。最后還可以利用傅立葉反變換將這些頻域信號轉換成時域信號。從現代數學的眼光來看,傅里葉變換是一種特殊的積分變換。它能將滿足一定條件的某個函數表示成正弦基函數的線性組合或者積分。在不同的研究領域,傅里葉變換具有多種不同的變體形式:
- 非周期性連續信號:傅立葉變換 (Fourier Transform)
- 周期性連續信號:傅立葉級數 (Fourier Series)
- 非周期性離散信號:離散時域傅立葉變換 (Discrete Time Fourier Transform)
- 周期性離散信號:離散傅立葉變換 (Discrete Fourier Transform)
傅里葉變換的功能是把時域上的函數變成頻域上的函數。
可以看到,傅里葉變換的定義就是信號函數和基函數的積分。這個基函數就是拉普拉斯算子Δ\DeltaΔ的特征函數,即滿足以下特征方程:Δg=λg\Delta g = \lambda gΔg=λg
稱為傅里葉變換的基函數。
3.1 拉普拉斯算子
就是說,拉普拉斯算子的作用是對各個分量的二階偏導求和,把e?ωtie^{-\omega ti}e?ωti代入特征方程,得到$\Delta e^{-\omega ti}=- \omega2e{-\omega ti} ,即,即,即e^{-\omega ti}$ 是拉普拉斯算子的特征函數。
3.2 二階差分
要在圖上建立其對應關系,首先看離散化的二階導數是什么。為方便討論,設自變量為x0,x1,…,xnx_0,x_1,…,x_nx0?,x1?,…,xn?,令h=xi+1?xih = x_{i+1} - x_ih=xi+1??xi?,考慮xkx_kxk?處的二階導,分別將yk?1y_{k-1}yk?1? 和yk+1y_{k+1}yk+1?泰勒展開:
將兩式相加,把余項丟掉,整理得到:
這樣便有了離散形式下的二階導了。
3.3 圖上的二階導和拉普拉斯算子
注意到上面 x0,x1,…,xnx_0,x_1,…,x_nx0?,x1?,…,xn? 是一維在實軸上從左到右的, xk?1,xk+1x_{k-1},x_{k+1}xk?1?,xk+1?是xkx_kxk? 的“鄰居”。圖上的結點對應的是自變量,信號函數是“結點域”上的函數,而圖上結點之間并沒有這種全序關系因此考慮所以鄰居結點。拉普拉斯算子是對各個方向的二階導數求和,那圖上 的拉普拉斯算子就是對各個鄰居結點方向上的二階導求和,不妨設h=1,則圖上的拉普拉斯算子可以推廣為:
3.4 圖上的拉普拉斯矩陣
L = D - A
我們把這個L作用的信號函數上
可以看到L相當于拉普拉斯算子,雖然他們之間相差了一個符號,但是沒有關系,因為特征向量前面添個負號依然是特征向量。
3.5 圖上的傅里葉變換
傅里葉變換就是時域上的信號函數乘以拉普拉斯特征函數對時間進行積分。
圖上的傅里葉變換就是“結點域”上的信號函數乘以拉普拉斯矩陣的特征向量對結點進行求和:
其中uku_kuk?是L的特征向量,寫成矩陣的形式Ff=UTfFf = U^T fFf=UTf。
總結
以上是生活随笔為你收集整理的图神经网络(三):数学基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 淘宝新手如何做推广 最新最全的淘宝店铺免
- 下一篇: 逻辑顺序