UA MATH567 高維統計III 隨機矩陣7 亞高斯矩陣的應用:Stochastic Block Model與社群發現 問題描述

一個不願透露姓名的孩子發表於2021-01-01

UA MATH567 高維統計III 隨機矩陣7 亞高斯矩陣的應用:Stochastic Block Model與社群發現

我們來介紹亞高斯矩陣的一個應用:評估社群發現演算法的效率。Community detection in networks是一個比較重要的非監督學習問題,這一講我們用Stochastic Block Model (SBM)來描述一個網路:

假設這個網路有 n n n個節點,網路中有兩個社群,它們的規模相當,各擁有 n / 2 n/2 n/2個節點,記這兩個社群為 C 1 , C 2 C_1,C_2 C1,C2,我們用 G ( n , p , q ) G(n,p,q) G(n,p,q)表示這個隨機網路,其中 p p p表示某條邊連線的兩個點屬於同一個社群的概率, q q q表示某條邊連線的兩個點屬於不同社群的概率,假設 p > q p>q p>q,用 A A A表示這個網路的伴隨矩陣,顯然它是一個隨機矩陣,
P ( A i j = 1 ∣ i , j ∈ C 1   o r   i , j ∈ C 2 ) = p P ( A i j = 1 ∣ i ∈ C 1 , j ∈ C 2   o r   i ∈ C 2 , j ∈ C 1 ) = q P(A_{ij}=1|i,j \in C_1\ or\ i,j \in C_2)=p \\ P(A_{ij}=1|i \in C_1,j \in C_2\ or\ i \in C_2,j \in C_1)=q P(Aij=1i,jC1 or i,jC2)=pP(Aij=1iC1,jC2 or iC2,jC1)=q

Community detection in networks試圖回答的問題是尋找一種分割:
C 1 ⊔ C 2 = { 1 , 2 , ⋯   , n } C_1 \sqcup C_2 = \{1,2,\cdots,n\} C1C2={1,2,,n}

使得 C 1 , C 2 C_1,C_2 C1,C2分別包含兩個不同社群中的節點。


簡單分析

我們可以將 A A A分解為它的期望與殘差矩陣:
A = E [ A ] + R A = E[A]+R A=E[A]+R

其中
E [ A ] = [ p ⋯ p ⏞ C 1 q ⋯ q ⏞ C 2 p ⋯ p q ⋯ q q ⋯ q p ⋯ p q ⋯ q p ⋯ p ] E[A] = \left[ \begin{matrix} \overbrace{p \cdots p}^{C_1} & \overbrace{q \cdots q}^{C_2 } \\ p \cdots p & q \cdots q \\q \cdots q & p \cdots p\\ q \cdots q & p \cdots p \end{matrix} \right] E[A]=pp C1ppqqqqqq C2qqpppp

不妨假設 n n n是一個偶數,顯然 r a n k E [ A ] = 2 rank E[A]=2 rankE[A]=2,它有兩個特徵值與對應的特徵向量: λ 1 = n ( p + q ) 2 , λ 2 = n ( p − q ) 2 u 1 = 1 n [ 1 1 ⋯ 1 1 ] , u 2 = 1 n [ 1 1 ⋯ − 1 − 1 ] \lambda_1=\frac{n(p+q)}{2},\lambda_2 = \frac{n(p-q)}{2} \\ u_1 = \frac{1}{\sqrt{n}} \left[ \begin{matrix} 1 \\ 1 \\ \cdots \\ 1 \\ 1 \end{matrix} \right],u_2 = \frac{1}{\sqrt{n}} \left[ \begin{matrix} 1 \\ 1 \\ \cdots \\ -1 \\ -1 \end{matrix} \right] λ1=2n(p+q),λ2=2n(pq)u1=n 11111,u2=n 11111

其中 u 2 u_2 u2 n / 2 n/2 n/2 1 1 1 n / 2 n/2 n/2 − 1 -1 1 u 2 u_2 u2是一個非常重要的值,對於一般情況,如果一個隨機網路中有兩個社群,那麼它的期望的 u 2 u_2 u2的符號可以指示節點的社群。於是Community detection in networks的目標是給定一個某個隨機矩陣的樣本資料集,要還原隨機矩陣的期望的特徵向量

在一般情況下,我們無法算出 E [ A ] E[A] E[A],但我們可以對 A A A做類似的分解:
A = D + R A = D+R A=D+R

其中 D D D表示確定性的部分, R R R代表隨機性,假設 R R R是亞高斯矩陣,則
∥ D ∥ = λ 1 ∼ n P ( ∥ R ∥ ≤ C K ( n + t ) ) ≥ 1 − 4 e − t 2 \left\| D\right\| = \lambda_1 \sim n \\ P(\left\| R \right\| \le CK(\sqrt{n}+t)) \ge 1-4e^{-t^2} D=λ1nP(RCK(n +t))14et2

這說明signal D D D比噪聲 R R R更強得多,比如取 t = n t=\sqrt{n} t=n ,則
P ( ∥ R ∥ ≤ 2 C K n ) ≥ 1 − 4 e − n P(\left\| R \right\| \le 2CK\sqrt{n}) \ge 1-4e^{-n} P(R2CKn )14en

顯然 ∥ D ∥ \left\| D\right\| D的階比 ∥ R ∥ \left\| R \right\| R大,接下來我們要做的分析是這個隨機噪聲會對社群發現的結果造成怎樣的影響。


攝動方法(perturbation method)
研究一個小噪聲矩陣對確定性矩陣的影響,我們可以使用攝動方法,下面先介紹一些需要的結論:

Weyl不等式 對於任意兩個矩陣 S , T S,T S,T
max ⁡ i ∣ λ i ( S ) − λ i ( T ) ∣ ≤ ∥ S − T ∥ \max_i|\lambda_i(S)-\lambda_i(T)| \le \left\| S-T \right\| imaxλi(S)λi(T)ST

證明
∀ x ∈ S n − 1 \forall x \in S^{n-1} xSn1,根據三角不等式,
∥ S x ∥ 2 ≤ ∥ T x ∥ 2 + ∥ ( S − T ) x ∥ 2 ≤ ∥ T x ∥ 2 + ∥ S − T ∥ \left\| Sx \right\|_2 \le \left\| Tx \right\|_2 + \left\| (S-T)x \right\|_2 \le \left\| Tx \right\|_2 + \left\| S-T \right\| Sx2Tx2+(ST)x2Tx2+ST

根據Courant-Fischer minimax定理
λ i ( S ) = max ⁡ d i m E = i min ⁡ x ∈ S ( E ) ∥ S x ∥ 2 ≤ max ⁡ d i m E = i min ⁡ x ∈ S ( E ) ∥ T x ∥ 2 + ∥ S − T ∥ ≤ λ i ( T ) + ∥ S − T ∥ ⇒ λ i ( S ) − λ i ( T ) ≤ ∥ S − T ∥ \lambda_i(S) = \max_{dim E = i}\min_{x \in S(E)}\left\| Sx \right\|_2 \\ \le \max_{dim E = i}\min_{x \in S(E)}\left\| Tx \right\|_2 + \left\| S-T \right\| \le \lambda_i(T)+\left\| S-T \right\| \\ \Rightarrow \lambda_i(S) -\lambda_i(T) \le \left\| S-T \right\| λi(S)=dimE=imaxxS(E)minSx2dimE=imaxxS(E)minTx2+STλi(T)+STλi(S)λi(T)ST

類似地,
λ i ( T ) − λ i ( S ) ≤ ∥ S − T ∥ \lambda_i(T) -\lambda_i(S) \le \left\| S-T \right\| λi(T)λi(S)ST

相關文章