hello汰蜘,接上一篇文章10X空間轉(zhuǎn)錄組聚類分析之圖卷積網(wǎng)絡(luò)(graph convolutional network)糙麦,我們回來解讀SpaGCN對(duì)空間聚類和找空間高邊基因的算法玷犹。當(dāng)然,數(shù)學(xué)的知識(shí)就很難了肉盹,大家如果想深入學(xué)習(xí)罕扎,要做好準(zhǔn)備??摹恰。
Data preprocessing
SpaGCN 將空間基因表達(dá)和組織學(xué)圖像數(shù)據(jù)(如果可用)作為輸入(兩部分信息進(jìn)行處理,通常我們只對(duì)基因表達(dá)深入分析硼婿,圖片只是作為輔助)虑润。 空間基因表達(dá)數(shù)據(jù)存儲(chǔ)在一個(gè) ??×?? 矩陣中,該矩陣包含 ?? 樣本和 ?? 基因的唯一分子標(biāo)識(shí)符 (UMI) 計(jì)數(shù)加酵,以及每個(gè)樣本的 (??, ??) 二維空間坐標(biāo)拳喻。 在基于測(cè)序的數(shù)據(jù)中,每個(gè)樣本代表一個(gè)包含多個(gè)細(xì)胞的點(diǎn)猪腕,而在基于單分子熒光原位雜交 (smFISH) 的數(shù)據(jù)中冗澈,每個(gè)樣本代表一個(gè)細(xì)胞。 為簡單起見陋葡,我們將使用“spot”來指代樣本亚亲,因?yàn)榉治龅拇蠖鄶?shù)數(shù)據(jù)都是基于測(cè)序的。 在少于三個(gè)點(diǎn)中表達(dá)的基因被消除。 對(duì)每個(gè)點(diǎn)中的基因表達(dá)值進(jìn)行標(biāo)準(zhǔn)化捌归,以便每個(gè)基因的唯一分子標(biāo)識(shí)符 (UMI) 計(jì)數(shù)除以給定點(diǎn)中所有基因的總 UMI 計(jì)數(shù)肛响,再乘以 10,000,然后轉(zhuǎn)換為自然對(duì)數(shù)刻度(這個(gè)轉(zhuǎn)換跟seurat對(duì)基因的處理是一樣的)惜索。
空間轉(zhuǎn)錄組學(xué)數(shù)據(jù)到圖結(jié)構(gòu)數(shù)據(jù)的轉(zhuǎn)換
預(yù)處理后特笋,SpaGCN 將基因表達(dá)和組織學(xué)圖像數(shù)據(jù)轉(zhuǎn)換為加權(quán)無向圖,??(??,??)巾兆。 在該圖中猎物,每個(gè)vertex ??∈?? 代表一個(gè)點(diǎn),?? 中的每兩個(gè)vertex通過具有指定權(quán)重的邊連接角塑。 將分析重點(diǎn)放在具有組織學(xué)信息的空間轉(zhuǎn)錄組學(xué)數(shù)據(jù)上蔫磨,但該方法可以很容易地適用于分析基于 smFISH 的數(shù)據(jù),但組織學(xué)信息不可用圃伶。
計(jì)算兩個(gè)之間vertex的距離
圖中任意兩個(gè)頂點(diǎn)??和??之間的距離反映了兩個(gè)對(duì)應(yīng)點(diǎn)的相對(duì)相似度堤如。 這個(gè)距離由兩個(gè)因素決定:1)斑點(diǎn)??和??在組織切片中的物理位置,以及2)這兩個(gè)斑點(diǎn)對(duì)應(yīng)的組織學(xué)信息窒朋。盡管組織中的某些spot在物理上彼此接近煤惩,但組織學(xué)圖像可能會(huì)顯示它們屬于不同的組織層。 因此炼邀,SpaGCN 認(rèn)為兩個(gè)spot是接近的魄揉,當(dāng)且僅當(dāng) 1) 兩個(gè)spot在物理上接近,2) 它們具有相似的像素特征拭宁,如組織學(xué)圖像中所示洛退。 為了定義考慮到這兩個(gè)方面的距離度量,SpaGCN 將組織切片中的 2 維空間擴(kuò)展為包含組織學(xué)信息的 3 維空間杰标。 對(duì)于spot ??兵怯,其在組織切片中的物理位置由二維坐標(biāo)表示(????,????)腔剂。 為了確定spot ??在組織學(xué)圖像中的對(duì)應(yīng)像素媒区,SpaGCN根據(jù)其像素坐標(biāo)(????,????)將spot ??映射到組織學(xué)圖像掸犬。不是使用像素的顏色在(????袜漩,????)的,SpaGCN繪制一個(gè)正方形為中心在包含50×50像素(????湾碎,????)宙攻,并計(jì)算對(duì)RGB通道的平均顏色值,(????介褥,????座掘,????)递惋, 落在正方形中的所有像素。 這一步平滑了顏色值溢陪,并確保顏色不受單個(gè)像素的支配萍虽。 為了導(dǎo)出一個(gè)單一的值來表示組織學(xué)圖像特征,SpaGCN 使用了 RGB 值的加權(quán)和形真,如下所示杉编,
其中????=方差(????),????=方差(????)没酣,??=Variance(????)) 在這個(gè)轉(zhuǎn)換中,具有更大方差的通道被賦予更高的權(quán)重卵迂,以便這個(gè)組合值???? 捕獲組織學(xué)圖像中模式的準(zhǔn)確表示裕便。
接下來,SpaGCN 將???? 重新縮放為
其中??是平均????见咒,σ??的偿衰,σ??,σ??是??ν改览,??ν和??ν的標(biāo)準(zhǔn)偏差,ν∈??下翎,和??是縮放因子。 在分析中宝当,?? 通常設(shè)置為 1视事,以確保 ????? 與 ???? 和 ???? 具有相同的尺度方差,并且我們將??設(shè)置為大于 t 的權(quán)重值的目標(biāo)庆揩。 在擴(kuò)展的3維空間中俐东,spot ??的坐標(biāo)設(shè)置為(????, ???? , ?????)。
Finally, the Euclidean distance between every two spots ???? and ???? is calculated as:
計(jì)算每條邊的權(quán)重并構(gòu)建圖
每條邊(??订晌,??)的權(quán)重衡量點(diǎn) ??和 ?? 之間的相關(guān)程度虏辫,并與它們的距離呈負(fù)相關(guān)。 圖結(jié)構(gòu)??存儲(chǔ)在一個(gè)??×??鄰接矩陣??=[??(??,??)]中锈拨,其中spot ??和spot ??定義為:
超參數(shù) ??砌庄,也稱為特征長度尺度,確定權(quán)重作為距離的函數(shù)衰減的速度奕枢。 SpatialDE 中也使用了類似的功能娄昆。 讓??表示單位矩陣。 對(duì)于 spot ??缝彬,對(duì)應(yīng)的?????的行和稿黄,用????表示,可以解釋為其他spot對(duì)其基因表達(dá)的相對(duì)貢獻(xiàn)跌造。 我們選擇 ??的值杆怕,使得所有點(diǎn)的 ???? 的平均值等于預(yù)先指定的值族购,例如 0.5.
圖卷積層
SpaGCN 使用主成分分析 (PCA) 減少預(yù)處理基因表達(dá)矩陣的維度。 前 50 個(gè)主成分用作輸入陵珍,它們適用于分析的所有數(shù)據(jù)集寝杖。 接下來,利用圖卷積網(wǎng)絡(luò)的強(qiáng)大功能互纯,SpaGCN 將 ?? 中的基因表達(dá)信息和邊權(quán)重連接起來以對(duì)節(jié)點(diǎn)進(jìn)行聚類瑟幕。 遵循 Semi-supervised classification with graph convolutional networks,圖卷積層可以寫為
其中??是從PCA得到的??×50嵌入矩陣留潦,??是表示卷積層濾波器參數(shù)的50×50矩陣只盹,而??(?)是非線性激活函數(shù)(這個(gè)大家可以參考文章幾種非線性激勵(lì)函數(shù)(Activation Function)),如ReLU兔院。圖卷積層確保??中對(duì)應(yīng)的參數(shù)行將控制??中每個(gè)特征的鄰域信息的聚合殖卑,從而提供由相鄰點(diǎn)提供的特征特定信息聚合的靈活性。 ?? 中的過濾器參數(shù)在圖中的所有vertices之間共享坊萝,并在迭代訓(xùn)練過程中自動(dòng)更新孵稽。通過圖卷積,SpaGCN根據(jù)??中指定的邊權(quán)重聚合了基因表達(dá)信息十偶。該層的輸出是一個(gè)聚合矩陣菩鲜,其中包括有關(guān)基因表達(dá)、空間位置和組織學(xué)的信息惦积。圖卷積層是基于Semi-supervised classification with graph convolutional networks實(shí)現(xiàn)的接校,其中反向傳播通過光譜圖卷積的局部一階近似進(jìn)行操作。
Spatial domain identification by clustering
接下來狮崩,基于上述圖卷積層的輸出馅笙,SpaGCN 采用無監(jiān)督聚類算法將spot迭代聚類到不同的空間domain中。 從該分析中識(shí)別出的每個(gè)cluster都被視為一個(gè)空間域厉亏,其中包含在基因表達(dá)和組織學(xué)上一致的spot董习。 為了初始化cluster質(zhì)心,我們?cè)趫D卷積層的聚合輸出矩陣上使用 Louvain 方法爱只。 如果組織中域的數(shù)量已知皿淋,則將設(shè)置 Louvain 中的分辨率參數(shù)以生成相同數(shù)量的空間domain。 否則恬试,我們將分辨率參數(shù)從 0.2 更改為 1.0窝趣,并選擇提供最高Silhouette score的分辨率。
為了迭代地更新cluster分配训柴,我們定義了一個(gè)度量來測(cè)量從一個(gè)spot到一個(gè)cluster質(zhì)心的距離哑舒,使用 ?? 分布作為內(nèi)核。 點(diǎn)??的嵌入點(diǎn)???與cluster ??的質(zhì)心????之間的距離:
可以解釋為將cell ??分配到cluster ??的概率幻馁。
接下來洗鸵,我們通過基于????定義一個(gè)輔助目標(biāo)分布??來迭代地細(xì)化cluster:
它增加了高置信度分配的spot越锈,并將每個(gè)質(zhì)心對(duì)整體損失函數(shù)的貢獻(xiàn)歸一化,以防止大cluster扭曲隱藏特征空間膘滨。 現(xiàn)在我們有了軟分配 ???? 和輔助分布 ???? 甘凭,我們可以將目標(biāo)函數(shù)定義為 Kullback-Leibler (KL) 散度損失,
通過使用帶有動(dòng)量的隨機(jī)梯度下降最小化??火邓,同時(shí)優(yōu)化網(wǎng)絡(luò)參數(shù)和cluster質(zhì)心丹弱。 這種無監(jiān)督的迭代聚類算法以前曾用于 scRNA-seq 分析,并且表現(xiàn)出優(yōu)于 Louvain 方法的性能铲咨。
Detection of spatially variable genes
檢測(cè)在每個(gè)空間域中豐富的空間可變基因 (SVG)躲胳。注意到一些基因可能在多個(gè)但不連續(xù)的域中表達(dá)。盡管它們不是在特定域中唯一表達(dá)纤勒,但這些基因仍然有助于理解基因表達(dá)的空間變異坯苹,并可用于形成在特定域中唯一表達(dá)的meta gene。因此踊东,我們不是使用來自目標(biāo)域的spot與所有其他點(diǎn)進(jìn)行差異表達(dá) (DE) 分析北滥,而是首先選擇spot以形成目標(biāo)domain的相鄰集刚操。目標(biāo)是檢測(cè)在目標(biāo)domain中高表達(dá)但在相鄰spot中不表達(dá)或低表達(dá)的基因闸翅。為了確定哪些spot應(yīng)該被視為鄰居,我們?cè)谀繕?biāo)domain中的每個(gè)spot周圍繪制一個(gè)具有預(yù)先指定半徑的圓菊霜。來自圈內(nèi)非目標(biāo)domain的所有spot都被視為其鄰居坚冀。半徑設(shè)置為目標(biāo)域中的所有點(diǎn)平均有大約 8 個(gè)鄰居。接下來鉴逞,收集目標(biāo)domain中所有spot的鄰居并形成一個(gè)鄰居集记某。對(duì)于每個(gè)非目標(biāo)domain,如果超過 50%(默認(rèn))的點(diǎn)在相鄰集合中构捡,則該domain被選為相鄰domian液南。設(shè)置此標(biāo)準(zhǔn)是為了避免選擇一個(gè)domian作為相鄰domain,但只有一小部分點(diǎn)與目標(biāo)域相鄰的情況勾徽。
確定相鄰domain后滑凉,SpaGCN 然后使用 Wilcoxon 秩和檢驗(yàn)在目標(biāo)domian和相鄰domain中的spot之間執(zhí)行 DE 分析。 選擇錯(cuò)誤發(fā)現(xiàn)率 (FDR) 調(diào)整 p 值 <0.05 的基因作為 SVG喘帚。 為了確保只選擇在目標(biāo)domian中具有豐富表達(dá)模式的基因畅姊,我們進(jìn)一步要求基因滿足以下三個(gè)標(biāo)準(zhǔn):1) 在目標(biāo)domain中表達(dá)基因的點(diǎn)的百分比,即分?jǐn)?shù)>80 %; 2)對(duì)于每個(gè)相鄰domain吹由,在目標(biāo)domain和相鄰domain中表達(dá)基因的點(diǎn)的百分比若未,即in/out分?jǐn)?shù)比>1; 3) 目標(biāo)domain和相鄰domain之間的表達(dá)倍數(shù)變化 >1.5倾鲫。 如果有興趣為特定的空間域組合查找 SVG粗合,SpaGCN 提供了這樣做的選項(xiàng)(就是meta gene)萍嬉。
Detection of spatially variable meta genes(重點(diǎn))
上面描述的特定于空間domain的 DE 分析通常會(huì)檢測(cè)大多數(shù)domain的具有豐富表達(dá)的 SVG。對(duì)于未檢測(cè)到此類 SVG 的domain舌劳,目標(biāo)是確定一組基因帚湘,當(dāng)組合形成meta gene時(shí),在給定domain中顯示出豐富的表達(dá)模式甚淡。為了識(shí)別形成meta gene的基因大诸,采用了多步方法。首先贯卦,降低 SVG 過濾的閾值资柔,例如,將最小倍數(shù)變化閾值從 1.5 更改為 1.2撵割,以識(shí)別在目標(biāo)domain中顯示較弱富集表達(dá)模式的基因贿堰。在存在多個(gè)這樣較弱的 SVG 時(shí),隨機(jī)選擇其中一個(gè)作為基礎(chǔ)基因啡彬,并將其表示為 gene0羹与。其次,目標(biāo)是將其他基因的表達(dá)聚合到基礎(chǔ)基因庶灿,以增強(qiáng)目標(biāo)domain的空間模式纵搁。為了實(shí)現(xiàn)這一目標(biāo),首先計(jì)算目標(biāo)domain中spot的gene0 的平均表達(dá)水平為??0往踢。然后腾誉,所有來自非目標(biāo)domain的spot與gene0的表達(dá)水平高于對(duì)照組gene0的平均表達(dá)水平被提取到一組gene0's接下來,我們使用目標(biāo)domain中的spot與對(duì)照組中的spot進(jìn)行 DE 分析峻呕,使用 Wilcoxon 秩和檢驗(yàn)利职。在目標(biāo)domain中具有最小 FDR 調(diào)整 p 值和更高表達(dá)的基因被選擇為gene0+。類似地瘦癌,我們使用來自對(duì)照組的spot與來自目標(biāo)domain的spot進(jìn)行 DE 分析猪贪,并在對(duì)照組中選擇具有最小 FDR 調(diào)整 p 值和更高表達(dá)的基因作為 gene0+。 meta gene的表達(dá)計(jì)算為
其中 ??0 是一個(gè)常數(shù)讯私,使 log(meta_gene1) 非負(fù)热押。 對(duì)數(shù)轉(zhuǎn)換用于重新調(diào)整表達(dá)并使不同基因的表達(dá)水平具有可比性。 發(fā)現(xiàn)包括陰性基因可以加強(qiáng)沒有富集陽性標(biāo)記基因的域的空間表達(dá)模式妄帘。 該算法可以迭代地用于尋找額外的基因楞黄,以形成具有更清晰的目標(biāo)domain空間模式的更新meta gene。 對(duì)于 (??+1)??? 迭代抡驼,meta gene表達(dá)計(jì)算為
Evaluation of spatially variable genes using Moran’s I statistic(關(guān)于這個(gè)鬼廓,用過monocle3的人應(yīng)該都知道)
Moran's I 統(tǒng)計(jì)量是空間自相關(guān)的度量,可用于度量基因表達(dá)的空間變異程度致盟。 Moran's I值范圍從–1到1碎税,其中接近1的值表示空間模式清晰尤慰,接近0的值表示隨機(jī)空間表達(dá),接近-1的值表示類似棋盤的模式雷蹂。 為了評(píng)估給定基因的空間變異性伟端,我們使用以下公式計(jì)算 Moran's I,
其中????和????spot ??和??的基因表達(dá)匪煌,???是該基因的平均表達(dá)责蝠,??是spot的總數(shù),????j是使用點(diǎn)的2維空間坐標(biāo)計(jì)算spot ??和??之間空間權(quán)重 萎庭,而 ?? 是 ????j 的總和霜医。 對(duì)于每個(gè)spot,我們使用空間坐標(biāo)選擇 ?? 最近的鄰居驳规。 Moran's I 統(tǒng)計(jì)量對(duì)于 ?? 的選擇是穩(wěn)健的肴敛,在分析中設(shè)置為 4。 如果spot ??在spot ??的最近鄰居中吗购,我們分配????j =1医男,否則分配????j =0。
最后一部分捻勉,Detection of subclusters within a spatial domain
為了更好地表征空間domain內(nèi)由于其鄰domain的影響而產(chǎn)生的異質(zhì)性镀梭,SpaGCN 可以利用來自相鄰spot的信息進(jìn)一步檢測(cè)每個(gè)空間domain內(nèi)的子domain。 SpaGCN 以預(yù)先指定的半徑圍繞每個(gè)spot繪制一個(gè)圓贯底,所有位于該圓內(nèi)的spot都被視為該點(diǎn)的鄰居丰辣。設(shè)置半徑值以確保目標(biāo)domain中的每個(gè)spot平均有十個(gè)鄰居撒强。接下來禽捆,SpaGCN 為每個(gè)spot記錄來自不同空間domain的鄰居數(shù),并將此信息存儲(chǔ)在 ??×?? 矩陣中飘哨,其中 ?? 是目標(biāo)domain中的點(diǎn)數(shù)胚想,?? 是檢測(cè)到的空間domain總數(shù)。 ?????行和?????列的值是屬于domain ??的spot ??的鄰居數(shù)芽隆。接下來浊服,這個(gè)矩陣被送入一個(gè) K-means 分類器來檢測(cè)子集群∨哂酰可以進(jìn)行如上所述的差異表達(dá)分析以鑒定富集亞群的基因牙躺。
數(shù)學(xué)的知識(shí)往往都很難,但是卻是我們認(rèn)識(shí)一切的基礎(chǔ)腕扶,希望有能力的人可以好好鉆研孽拷。
生活很好,有你更好