學習一點簡單的基礎知識
單細胞RNA測序(single-cell RNA-seq,scRNA-seq)數據是非常有特點的數據,具有很高的稀疏性(high sparsity),具體表現為0非常多(zero inflation)。對于數據的分布給出合理的假設是非常關鍵的工作,是downstream analysis的基礎。顯然對于scRNA-seq的reads count數據,最常用的正態分布是不合理的。首先正態分布描述的是連續型數據,而reads count數據是離散的;其次reads count數據的取值只能為非負整數。經過不斷的嘗試,ZINB被證明是一種可以較好的描述scRNA-seq數據的模型,并且作為一些更advanced的模型的基礎比如SAVER,scVI等。下面我們來看這個模型的細節。
1 Poisson Distribution
基于reads count數據的取值均為非負整數的特點,一個直觀的想法就是用泊松分布來擬合scRNA-seq數據。泊松分布的定義如下:
這里X即為gene在細胞內的表達水平(reads count的數值)。但是用泊松分布來描述scRNA-seq數據面臨了一個新的問題。我們都知道,泊松分布的期望和方差是相等的,即:
但是對于實際的數據來說,隨著gene的平均表達水平越高,其樣本方差與樣本均值的差越大,也即scRNA-seq數據的另一個特點——over-dispersion。我們用一張圖來舉例說明
如圖所示,直線(y = x)為基于泊松分布的假設下,基因表達的理論均值與方差的關系,可以看到對于每一種基因,其理論均值與方差相同。而直線之上的部分體現了實際數據中,基因表達的樣本均值與樣本方差的關系,我們看到,隨著基因表達樣本均值的增大,基因表達的樣本方差與均值的差越來越大,不符合泊松分布的性質。
2 Gamma Distribution
對于泊松分布來說,λ是固定不變的,如果我們給λ一個prior呢。 我們關于prior的選擇是Gamma分布。而選擇Gamma分布作為λ的prior在生物學含義上似乎沒有比較直觀的解釋(其實是我自己沒搞懂hhh),但是從統計觀點看,Gamma分布是泊松分布的共軛先驗(conjugate prior),會使得計算posterior非常方便。
Gamma分布的定義如下:
3 Negative Binomial Distribution
上述問題現在匯總為:
證明X服從負二項分布:
根據上述證明,X服從負二項分布。但是新的問題接著產生,在產生數據的過程中,由于一些technical noises(比如某段RNA沒有能夠被逆轉錄)和intrinsic biological variability會導致數據中0的比例非常高,這也就是所謂的zero inflation。于是人們在NB的基礎上,進一步發展出了ZINB。
4 Zero-inflated Negative Binomial
其中δ0為Dirac function,π可以視為真實的基因表達值被觀測為0的概率。至此,整個ZINB模型被完整的建立起來。除了以上這種利用Poisson和Gamma mixture構造NB的方法外,也有人通過NB的兩個參數mean μ和inverse dispersion parameter σ構造NB,即
5 Zero-inflated? (UMI based or read based).
已經有很多工作證明了對于UMI based sequencing來說, NB其實可以很好的刻畫scRNA-seq data(可以參考Nancy Zhang的SAVER)。所以到底用ZINB還是NB還是要取決于測序的技術。不過目前大部分測序都是UMI-based了,所以NB可能會成為更general的選擇。
Reference:
https://en.wikipedia.org/wiki/Poisson_distribution
https://en.wikipedia.org/wiki/Dirac_delta_function
https://en.wikipedia.org/wiki/Gamma_distribution
https://en.wikipedia.org/wiki/Negative_binomial_distribution
https://gregorygundersen.com/blog/2019/09/16/poisson-gamma-nb/
https://zhuanlan.zhihu.com/p/95299303