一、常用的特征縮放算法有兩種:
歸一化(normalization)和標(biāo)準(zhǔn)化(standardization)
二、歸一化(normalization)
1、什么是歸一化
歸一化是利用特征(可理解為某個(gè)數(shù)據(jù)集合)的最大值,最小值,將特征的值縮放到[0,1]區(qū)間,對(duì)于每一列的特征使用min - max函數(shù)進(jìn)行縮放。
2、為什么需要?dú)w一化
消除綱量,加快收斂:
不同特征往往具有不同的量綱單位,這樣的情況會(huì)影響到數(shù)據(jù)分析的結(jié)果,為了消除指標(biāo)之間的量綱影響,需要進(jìn)行數(shù)據(jù)歸一化處理,以解決數(shù)據(jù)指標(biāo)之間的可比性。原始數(shù)據(jù)經(jīng)過數(shù)據(jù)歸一化處理后,各指標(biāo)處于[0,1]之間的小數(shù),適合進(jìn)行綜合對(duì)比評(píng)價(jià)。
提高精度。
3、歸一化的方法
1)、線性歸一化:
利用數(shù)據(jù)集每個(gè)特征的最大值,最小值,將特征的值縮放到[0,1]區(qū)間:
公式:新數(shù)據(jù)=(原數(shù)據(jù)-極小值)/(極大值-極小值)
2)、非線性歸一化:
經(jīng)常用在數(shù)據(jù)分化比較大的場(chǎng)景,有些數(shù)值很大,有些很小。通過一些數(shù)學(xué)函數(shù),將原始值進(jìn)行映射。該方法包括 log、指數(shù),正切等。需要根據(jù)數(shù)據(jù)分布的情況,決定非線性函數(shù)的曲線,比如是log(V,2)還是log(V, 10)等。(這部分還需要理解)
三、標(biāo)準(zhǔn)化(standardization)
1、什么是標(biāo)準(zhǔn)化
標(biāo)準(zhǔn)化是通過特征的平均值和標(biāo)準(zhǔn)差,將特征縮放成一個(gè)標(biāo)準(zhǔn)的正態(tài)分布,縮放后均值為0,方差為1。但即使數(shù)據(jù)不服從正態(tài)分布,也可以用此法。特別適用于數(shù)據(jù)的最大值和最小值未知,或存在孤立點(diǎn)。
2、為什么要標(biāo)準(zhǔn)化
1)、標(biāo)準(zhǔn)化是為了方便數(shù)據(jù)的下一步處理,而進(jìn)行的數(shù)據(jù)縮放等變換,不同于歸一化,并不是為了方便與其他數(shù)據(jù)一同處理或比較。
2)、標(biāo)準(zhǔn)化后的變量值圍繞0上下波動(dòng),大于0說明高于平均水平,小于0說明低于平均水平。
3、標(biāo)準(zhǔn)化的方法
Z-score(標(biāo)準(zhǔn)化):
公式:新數(shù)據(jù)=(原數(shù)據(jù)-均值)/(標(biāo)準(zhǔn)差)
(z-score標(biāo)準(zhǔn)化方法適用于屬性A的最大值和最小值未知的情況)
四、在生物信息數(shù)據(jù)分析中,標(biāo)準(zhǔn)化和歸一化的應(yīng)用場(chǎng)景:
1、歸一化(SampleNormalization)?
為了消除樣本自身或者測(cè)樣的技術(shù)差異,使樣本間可以比較,可以理解為組間數(shù)據(jù)的處理。例如
1)、轉(zhuǎn)錄組不同樣本如果測(cè)序深度不同,就會(huì)導(dǎo)致基因的read數(shù)不同,不做歸一化就會(huì)影響結(jié)果
2)、代謝組不同樣本,例如尿液樣本可能濃度不同就會(huì)影響結(jié)果
2、標(biāo)準(zhǔn)化(standardization)
標(biāo)準(zhǔn)化是為了使不同變量之間可以比較,消除極大值和極小值帶來的影響,可以理解為組內(nèi)數(shù)據(jù)的處理,例如
1)、轉(zhuǎn)錄組中有些基因本身表達(dá)量就大,有些表達(dá)量小,不做標(biāo)準(zhǔn)化的話,直接做PCA之類的模型,會(huì)默認(rèn)表達(dá)量大的對(duì)模型貢獻(xiàn)就大,影響正確結(jié)果
2)、代謝組中有些代謝物含量天然高,有些天然低,同理
舉個(gè)栗子:
轉(zhuǎn)錄組數(shù)據(jù)分析:
轉(zhuǎn)錄組分析流程中標(biāo)準(zhǔn)化和歸一化被統(tǒng)一叫成了標(biāo)準(zhǔn)化,或者有些資料里稱為組內(nèi)標(biāo)準(zhǔn)化和組間標(biāo)準(zhǔn)化。
轉(zhuǎn)錄組的標(biāo)準(zhǔn)化有多種方法,但是很多是兼顧了組內(nèi)和組間兩方面
尋找差異基因的時(shí)候,只涉及單個(gè)變量組間對(duì)比,不涉及樣本內(nèi)不同變量的比較,因此不需要做組內(nèi)標(biāo)準(zhǔn)化,這也是為什么DESeq2等軟件要求用原始counts數(shù)據(jù)的原因,這些軟件設(shè)計(jì)了只針對(duì)組間的標(biāo)準(zhǔn)化。而目前常見的標(biāo)準(zhǔn)化方法則包含了組內(nèi)標(biāo)準(zhǔn)化
做PCA的時(shí)候,需要衡量一個(gè)樣本內(nèi)不同變量的權(quán)重,因此需要做組內(nèi)標(biāo)準(zhǔn)化。R自帶的scale可以進(jìn)行組內(nèi)標(biāo)準(zhǔn)化,但是用原始counts數(shù)據(jù)做PCA可能還需要組間標(biāo)準(zhǔn)化,因此可以考慮用DESeq2標(biāo)準(zhǔn)化之后的數(shù)據(jù)
參考出處丟了。。。。。。