姜 斌, 趙梓良, 王淑婷, 韋紀(jì)宇, 曲美霞
山東大學(xué)機(jī)電與信息工程學(xué)院, 山東 威海 264209
隨著天文光譜數(shù)據(jù)量呈指數(shù)級(jí)增加, 人工分類(lèi)方法由于具有效率低、 在低信噪比數(shù)據(jù)上分類(lèi)準(zhǔn)確率較低等缺陷, 已經(jīng)無(wú)法滿(mǎn)足需要。 目前機(jī)器學(xué)習(xí)算法在天文光譜分類(lèi)中得到廣泛應(yīng)用, 并取得了較好的效果。 Navarro等[1]利用人工神經(jīng)網(wǎng)絡(luò)對(duì)不同信噪比的光譜數(shù)據(jù)進(jìn)行分類(lèi), 分類(lèi)結(jié)果對(duì)低信噪比的光譜數(shù)據(jù)也具有高度的可信度; Kheirdastan等[2]使用概率神經(jīng)網(wǎng)絡(luò)作為大質(zhì)量恒星光譜的自動(dòng)分類(lèi)工具, 得到了準(zhǔn)確的光譜型分類(lèi)結(jié)果。 此外, 利用熵學(xué)習(xí)機(jī)對(duì)恒星光譜數(shù)據(jù)進(jìn)行分類(lèi), 分類(lèi)結(jié)果也較為準(zhǔn)確[3]: Chen等利用受限玻爾茲曼機(jī)[4]提高了光譜分類(lèi)的效率。
光譜降維是準(zhǔn)確分類(lèi)的重要前提。 傳統(tǒng)的降維方法如局部線(xiàn)性嵌入[5]以及線(xiàn)性判別分析[6]已被廣泛應(yīng)用到光譜降維并取得較好的效果。 自編碼器[7]也已被廣泛應(yīng)用于數(shù)據(jù)的降維。
針對(duì)傳統(tǒng)的主成分分析(principal component analysis, PCA)在低維空間內(nèi)出現(xiàn)的交叉問(wèn)題, 本文研究流形學(xué)習(xí)方法, 對(duì)光譜進(jìn)行降維。 實(shí)驗(yàn)表明經(jīng)流形學(xué)習(xí)算法t-SNE (t-distributed stochastic neighbor embedding)降維后的恒星光譜能夠產(chǎn)生更加明顯的分類(lèi)邊界, 并很少發(fā)生數(shù)據(jù)的重疊問(wèn)題, 訓(xùn)練出的分類(lèi)器具有更好的效果。
t-SNE[8]是一種基于SNE (隨機(jī)鄰接嵌入)的非線(xiàn)性降維算法, 適合將數(shù)據(jù)降維至2~3維從而利于可視化。 在SNE算法中, 首先構(gòu)建一個(gè)高維對(duì)象間的概率分布, 使得類(lèi)似的數(shù)據(jù)有更高的概率被選擇, 而差異大的數(shù)據(jù)被選擇的概率較低。 隨后SNE在一個(gè)低維空間里再構(gòu)建這些點(diǎn)的概率分布, 使得高維與低維空間的概率分布之間盡可能的相似。 SNE通過(guò)將數(shù)據(jù)點(diǎn)之間的高維歐式距離轉(zhuǎn)換為表示數(shù)據(jù)間相似性的條件概率。 數(shù)據(jù)樣本點(diǎn)xi、xj之間的條件概率pj|i由式(1)給出
(1)
其中σi是以數(shù)據(jù)點(diǎn)xi為中心的高斯方差。 對(duì)于高維數(shù)據(jù)點(diǎn)xi和xj的低維對(duì)應(yīng)點(diǎn)yi和yj, 可以計(jì)算類(lèi)似的條件概率qj|i
(2)
SNE的目標(biāo)是最小化條件概率的差異。 為了計(jì)算條件概率差的最小值, SNE使用梯度下降法最小化KL距離。 然而, SNE的代價(jià)函數(shù)關(guān)注于映射中數(shù)據(jù)的局部結(jié)構(gòu), 該函數(shù)的優(yōu)化難以實(shí)現(xiàn), 因此需要在實(shí)現(xiàn)方式上加以改進(jìn)。
t-SNE在低維空間中使用更注重長(zhǎng)尾分布的t分布代替高斯分布表示兩點(diǎn)之間的相似度, 對(duì)于相似度較大的點(diǎn),t分布在低維空間中的距離稍?。?而對(duì)于低相似度的點(diǎn),t分布在低維空間中的距離需要更遠(yuǎn)。 該分布能夠有效處理數(shù)據(jù)中的離群點(diǎn), 即異常數(shù)據(jù), 以提高降維效果。
基于屬性值相關(guān)距離的K近鄰算法(feature correlation difference k-Nearest Neighbor, FCD-KNN)[9]是一種對(duì)于傳統(tǒng)K近鄰算法在距離函數(shù)上改進(jìn)的算法。 算法首先用改進(jìn)的距離函數(shù)計(jì)算待分類(lèi)樣本與已知類(lèi)別的訓(xùn)練樣本之間的距離, 再選取前K個(gè)最小距離, 擁有K個(gè)最小距離的樣本稱(chēng)為鄰近點(diǎn), 根據(jù)類(lèi)可信度確定待分類(lèi)樣本的種類(lèi)。 算法更重視數(shù)據(jù)在統(tǒng)計(jì)上的相關(guān)性, 而不僅僅是衡量數(shù)據(jù)之間的歐式距離。
改進(jìn)的距離函數(shù)為相關(guān)距離函數(shù), 樣本x1和x2的相關(guān)系數(shù)為
(3)
定義樣本x1和x2之間的相關(guān)距離為
(4)
樣本之間的相關(guān)距離越小, 兩個(gè)樣本間的相關(guān)性越大。
類(lèi)可信度的定義為:Cr代表種類(lèi),Xtest為待分類(lèi)樣本,Xr為鄰近點(diǎn)中屬于Cr的樣本,N為鄰近點(diǎn)樣本總數(shù),Nr為鄰近點(diǎn)中屬于Cr的樣本數(shù)量。T(Cr,Xtest)為Xtest對(duì)Cr的類(lèi)可信度, 表示為
(5)
屬于Cr類(lèi)的樣本數(shù)越多, 且類(lèi)可信度越小, 待分類(lèi)樣本被標(biāo)為Cr類(lèi)的可能性越大。 綜上所述, 基于屬性值相關(guān)距離的K近鄰算法的算法步驟如下:
(1) 計(jì)算訓(xùn)練樣本與測(cè)試樣本間的相關(guān)距離;
(2) 設(shè)定合適的K值, 選擇相關(guān)距離最小的K個(gè)訓(xùn)練樣本, 計(jì)算屬于不同類(lèi)的鄰近點(diǎn)數(shù)Nr;
(3) 計(jì)算出待分類(lèi)樣本與每一類(lèi)的類(lèi)可信度T(Cr,Xtest), 待分類(lèi)樣本的種類(lèi)確定為擁有最小的類(lèi)可信度的種類(lèi)。
實(shí)驗(yàn)數(shù)據(jù)使用SDSS-DR14[10]中的A, F, M以及O四種類(lèi)型的恒星光譜共12 000條(5
經(jīng)過(guò)PCA降維后的數(shù)據(jù)在二維平面上的分布如圖1所示: A類(lèi)恒星與F類(lèi)恒星存在較大的數(shù)據(jù)重合, 而O類(lèi)與M類(lèi)的數(shù)據(jù)具有較為明顯的類(lèi)別邊界。
圖1 PCA降維后的數(shù)據(jù)分布
圖2展示了經(jīng)過(guò)t-SNE降至二維后的數(shù)據(jù)分布。 由于t-SNE基于流形學(xué)習(xí), 降維后的數(shù)據(jù)被劃分至不同的流形當(dāng)中, 而PCA降維后的數(shù)據(jù)基本呈塊狀和線(xiàn)狀。 更重要的是, 除了極少量的數(shù)據(jù), 同類(lèi)型的數(shù)據(jù)均能夠聚集在一個(gè)區(qū)域, 不同類(lèi)別數(shù)據(jù)之間具有明顯的分類(lèi)邊界。
對(duì)比圖1和圖2, 可以看出, 在將數(shù)據(jù)降至二維時(shí), t-SNE能夠產(chǎn)生更加魯棒的分類(lèi)邊界, 為分類(lèi)提供了更好的條件。
為了驗(yàn)證降維算法的有效性, 首先使用樸素的KNN算法以及FCD-KNN算法進(jìn)行分類(lèi)準(zhǔn)確度的測(cè)試。 在多次實(shí)驗(yàn)后得到的分類(lèi)準(zhǔn)確率均值如表1所示。
圖2 t-SNE降維后的數(shù)據(jù)分布
表1 KNN和FCD-KNN算法的分類(lèi)準(zhǔn)確率結(jié)果
從表1可以看出, t-SNE在二維情況下的降維效果遠(yuǎn)超PCA, 而FCD-KNN算法在光譜數(shù)據(jù)的分類(lèi)能力超過(guò)了傳統(tǒng)的KNN算法。 圖3描述了t-SNE將數(shù)據(jù)降至1~3維以及PCA將數(shù)據(jù)降至1~10維后使用FCD-KNN算法進(jìn)行分類(lèi)的準(zhǔn)確率變化圖。
圖3 PCA與t-SNE的降維效果比較
可以看出, 當(dāng)維數(shù)較低時(shí), t-SNE降維后數(shù)據(jù)的分類(lèi)準(zhǔn)確率明顯高于PCA降維后的結(jié)果。 隨著維數(shù)的增加, PCA降維后數(shù)據(jù)的分類(lèi)準(zhǔn)確率也在逐漸增加, 隨后達(dá)到了收斂, 并在第10維時(shí)出現(xiàn)了分類(lèi)準(zhǔn)確率下降的趨勢(shì), 這是因?yàn)镻CA在提取出數(shù)據(jù)第10個(gè)主成分時(shí), 光譜噪聲開(kāi)始被部分提取, 反而影響了分類(lèi)準(zhǔn)確率。 圖3表明PCA能夠達(dá)到的最高降維能力與t-SNE有較大差距。 實(shí)驗(yàn)結(jié)果表明, t-SNE與FCD-KNN算法的配合使用可以用于低信噪比恒星光譜分類(lèi)并能夠達(dá)到較高的分類(lèi)準(zhǔn)確率, 超過(guò)了傳統(tǒng)方法。
傳統(tǒng)的降維算法PCA的思想是使數(shù)據(jù)在降維后保留最大化的方差, 而對(duì)于光譜數(shù)據(jù), PCA的降維過(guò)程易產(chǎn)生數(shù)據(jù)重疊的問(wèn)題。 圖4和圖5展示了三維數(shù)據(jù)在經(jīng)PCA降至二維時(shí)產(chǎn)生的重疊現(xiàn)象。
圖4 假設(shè)的三維原始數(shù)據(jù)
圖5 PCA的交疊現(xiàn)象
在t-SNE算法中, 該問(wèn)題得到了很好的解決。 根據(jù)流形學(xué)習(xí)算法的基本思想, t-SNE能夠有效抽取高維空間中的流形結(jié)構(gòu), 從而避免了數(shù)據(jù)在低維空間內(nèi)的重疊。 圖6為圖4所示數(shù)據(jù)經(jīng)t-SNE降維后的結(jié)果, 可以看出數(shù)據(jù)在降維后依然保持了其在高維空間的間距, 未發(fā)生重疊現(xiàn)象。
圖6 t-SNE的降維結(jié)果無(wú)交疊現(xiàn)象
低信噪比恒星光譜分類(lèi)是天文數(shù)據(jù)處理的重要研究?jī)?nèi)容。 本文分析了光譜數(shù)據(jù)在高維空間內(nèi)的分布, 使用流形學(xué)習(xí)中的t-SNE方法對(duì)SDSS恒星光譜數(shù)據(jù)進(jìn)行降維, 并使用FCD-KNN算法對(duì)光譜分類(lèi)。 實(shí)驗(yàn)結(jié)果表明, t-SNE方法在低信噪比恒星光譜數(shù)據(jù)上的降維效果超過(guò)傳統(tǒng)的PCA方法, 而FCD-KNN算法也比基于歐式距離的KNN算法有更好的表現(xiàn)。 本文提出的方法可以被直接應(yīng)用于天體光譜分類(lèi), 且不僅局限于文中提到的恒星類(lèi)型。 所使用的算法能夠顯著減少天文工作者的工作量, 具有一定的應(yīng)用價(jià)值。 下一步的工作可以應(yīng)用t-SNE算法對(duì)郭守敬望遠(yuǎn)鏡(large sky area multi-object fiber spectroscopic telescope, LAMOST)[11-12]最新發(fā)布的光譜數(shù)據(jù)進(jìn)行降維后根據(jù)數(shù)據(jù)的分布尋找稀有天體, 如碳星、 激變變星等。