摘? 要:脈沖星是一種具有極大的科學(xué)價(jià)值的中子星。其在旋轉(zhuǎn)時(shí),地球上可探測(cè)到其發(fā)射的無(wú)線電,而且這種輻射存在周期性。對(duì)脈沖星的分類(lèi)主要采用機(jī)器學(xué)習(xí)算法,各種算法表現(xiàn)不同。該研究對(duì)K鄰近,決策樹(shù),樸素貝葉斯,梯度提升樹(shù)算法對(duì)脈沖星信號(hào)進(jìn)行了二分類(lèi),基于F1值和AUC值評(píng)估模型,算法對(duì)脈沖星的旋轉(zhuǎn)軌跡進(jìn)行研究,以此來(lái)判定各種分類(lèi)算法的表現(xiàn),結(jié)果顯示對(duì)于未調(diào)參的算法,邏輯回歸表現(xiàn)最好,梯度提升樹(shù)其次。K鄰近和決策樹(shù)表現(xiàn)相對(duì)較差。
關(guān)鍵詞:脈沖星;脈沖星候選樣本;機(jī)器學(xué)習(xí);分類(lèi)算法;二分類(lèi)
中圖分類(lèi)號(hào):TP181;TP391.41? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2020)07-0076-04
Pulsar Detection Based on Machine Learning Algorithm
ZHOU Yu
(Xuzhou University of Technology,Xuzhou? 221018,China)
Abstract:Pulsar is a neutron star with great scientific value. When it rotates,the radio it sends can be detected on the earth,and the radiation is periodic. The classification of pulsars mainly uses machine learning algorithm,and each algorithm has different performance. In this study,K-neighborhood,decision tree,naive Bayes,and gradient lifting tree algorithm are used to classify pulsar signals. Based on the evaluation model of F1 and AUC values,the algorithm studies the rotation path of pulsar,so as to determine the performance of various classification algorithms. The results show that for the algorithm without parameter adjustment,logical regression is the best,and gradient lifting tree is the second. K-proximity and decision tree performance are relatively poor.
Keywords:pulsar;pulsar candidate samples;machine learning;classification algorithm;binary classification
0? 引? 言
隨著現(xiàn)代搜索設(shè)備性能的不斷提升,可以接收到更弱的信號(hào),到目前為止,候選的脈沖星信號(hào)多達(dá)100萬(wàn)以上[1,2]。關(guān)于脈沖星候選樣本分類(lèi)方法的發(fā)展歷史和發(fā)展?fàn)顟B(tài)主要有人工識(shí)別和機(jī)器學(xué)習(xí)分類(lèi)算法兩種方式。但是人工識(shí)別方式太過(guò)繁瑣,容易出錯(cuò)。機(jī)器學(xué)習(xí)分類(lèi)算法種類(lèi)繁多,需要研究哪一種算法更適合用于識(shí)別脈沖星?;诖?,本文基于Kaggle上公布的脈沖星探測(cè)數(shù)據(jù)集,應(yīng)用主要的幾種分類(lèi)算法對(duì)數(shù)據(jù)集進(jìn)行研究。通過(guò)研究分析邏輯回歸和梯度提升樹(shù)這兩種算法對(duì)識(shí)別脈沖星精確度較高。
1? 相關(guān)知識(shí)介紹
1.1? 機(jī)器學(xué)習(xí)
機(jī)器學(xué)習(xí)是人工智能的一個(gè)分支,作為人工智能的核心技術(shù)和實(shí)現(xiàn)手段,通過(guò)機(jī)器學(xué)習(xí)的方法解決人工智能面對(duì)的問(wèn)題。機(jī)器學(xué)習(xí)關(guān)注的是計(jì)算機(jī)程序如何隨著經(jīng)驗(yàn)積累,自動(dòng)提高性能。他同時(shí)給出了形式化的描述:對(duì)于某類(lèi)任務(wù)T和性能度量P,如果一個(gè)計(jì)算機(jī)程序在T上以P衡量的性能隨著經(jīng)驗(yàn)而自我完善,那么就稱這個(gè)計(jì)算機(jī)程序從經(jīng)驗(yàn)E學(xué)習(xí)。[3]
1.2? 各類(lèi)算法介紹
邏輯回歸:logistic回歸又稱logistic回歸分析,是一種廣義的線性回歸分析模型,常用于數(shù)據(jù)挖掘,疾病自動(dòng)診斷,經(jīng)濟(jì)預(yù)測(cè)等領(lǐng)域。[4]
K鄰近算法:K近鄰(K-Nearest Neighbor,KNN)算法,是一個(gè)理論上比較成熟的方法,同時(shí)也是最簡(jiǎn)單的機(jī)器學(xué)習(xí)算法之一。K鄰近算法的描述是:在特征空間中,如果一個(gè)樣本附近的k個(gè)最近(即特征空間中最鄰近)樣本的大多數(shù)屬于某一個(gè)類(lèi)別,則該樣本也屬于這個(gè)類(lèi)別。決策樹(shù)(Decision Tree)通過(guò)把數(shù)據(jù)樣本分配到某個(gè)葉子節(jié)點(diǎn)來(lái)確定數(shù)據(jù)集中樣本所屬分類(lèi),由三個(gè)節(jié)點(diǎn):決策節(jié)點(diǎn)、分支節(jié)點(diǎn)和葉子節(jié)點(diǎn)組成,因此稱之為決策樹(shù)[5]。在機(jī)器學(xué)習(xí)中,決策樹(shù)是一個(gè)預(yù)測(cè)模型,它代表的是對(duì)象屬性與對(duì)象值之間的一種映射關(guān)系。
和決策樹(shù)模型相比,樸素貝葉斯分類(lèi)器(Naive Bayes Classifier,NBC)發(fā)源于古典數(shù)學(xué)理論,有著堅(jiān)實(shí)的數(shù)學(xué)基礎(chǔ)以及穩(wěn)定的分類(lèi)效率[6]。同時(shí),NBC模型需要估算的參數(shù)很少,對(duì)缺失數(shù)據(jù)也并不敏感,算法也比較簡(jiǎn)單。理論上,NBC模型與其他分類(lèi)方法相比具有最小的誤差率。但是實(shí)際上并非總是如此,這是因?yàn)槭褂肗BC模型假設(shè)的屬性之間是相互獨(dú)立的,而這個(gè)假設(shè)在實(shí)際應(yīng)用中往往是不成立的,這些都給NBC模型的正確分類(lèi)帶來(lái)了一定影響。
2? 研究過(guò)程及方法
2.1? 數(shù)據(jù)說(shuō)明與預(yù)處理
本案例基于Kaggle上公布的脈沖星探測(cè)數(shù)據(jù)集,數(shù)據(jù)集包含由射頻干擾引起的虛假脈沖星樣本和真正的脈沖星樣本,由8個(gè)連續(xù)變量和1個(gè)離散變量組成,前4個(gè)連續(xù)變量是集成脈沖探測(cè)數(shù)據(jù)的各個(gè)統(tǒng)計(jì)量,后4個(gè)連續(xù)變量是從DM-SNR曲線獲得的統(tǒng)計(jì)量,離散變量表示案例是否為脈沖星,如表1所示。
注意到各列均無(wú)缺失值,無(wú)需進(jìn)行缺失值處理。為方便調(diào)用,我們將各列命名簡(jiǎn)化。代碼如下:
fromsklearn.model_selection import train_test_split,cross_val_score,cross_val_predict
x=data.drop('target',axis=1)
y=data['target']
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.3,radom_state=30)
將數(shù)據(jù)集隨機(jī)劃分為訓(xùn)練集和測(cè)試集,其中70%為訓(xùn)練集,30%為測(cè)試集。
2.2? 過(guò)采樣處理
下面探討正類(lèi)(脈沖星,1)和負(fù)類(lèi)(非脈沖星,0)分布的均衡情況。
注意到正類(lèi)樣本與負(fù)類(lèi)樣本分布極不均衡,這可能會(huì)導(dǎo)致訓(xùn)練后模型只適應(yīng)多數(shù)類(lèi)而不適應(yīng)少數(shù)類(lèi)的情況,在這里應(yīng)用SMOTE進(jìn)行過(guò)采樣處理。并應(yīng)用collections包中的Counter()函數(shù)檢查過(guò)采樣后樣本的類(lèi)別分布??梢钥吹剑^(guò)采樣后正類(lèi)和負(fù)類(lèi)分布均衡。
下面我們生成各特征的統(tǒng)計(jì)量,如表2所示。注意到各特征均具有明顯的方差,這保證了其被用于分類(lèi)的有效性。下面我們進(jìn)一步分析,作出特征相關(guān)系數(shù)表,如表3所示。
注意到Mean_Int與Ex_Int,Mean_Int與Sk_Int,Ex_DM與Std_DM,Sk_Int與Ex_Int,Sk_DM與Ex_DM,Std_DM與Mean_DM均表現(xiàn)出較強(qiáng)的相關(guān)性,但由于本案例中特征較少,我們先不進(jìn)行特征選擇。在最后嘗試用特征重要性剔除部分特征,并比較其與未剔除特征算法的優(yōu)劣。
2.3? 分類(lèi)算法訓(xùn)練
下面我們應(yīng)用邏輯回歸、K鄰近、決策樹(shù)、樸素貝葉斯和集成算法梯度提升樹(shù)進(jìn)行訓(xùn)練,輸出結(jié)果包括召回率、精確率、F1值、準(zhǔn)確率、運(yùn)行時(shí)間、AUC值、混淆矩陣、ROC曲線。
我們首先對(duì)各算法應(yīng)用默認(rèn)參數(shù)進(jìn)行分類(lèi),為簡(jiǎn)化代碼,我們將模型擬合和結(jié)果輸出整合在一個(gè)函數(shù)中。需要注意的是,sklearn.metrics中的recall_score()、precision_score()等函數(shù)的計(jì)算基于標(biāo)簽值0表示負(fù)類(lèi),1表示正類(lèi)這一事實(shí),正類(lèi)即為我們關(guān)注的類(lèi),如疾病監(jiān)測(cè)中的患病者、金融風(fēng)險(xiǎn)檢測(cè)中的異常交易等,在本文中為脈沖星。若0表示正類(lèi),1表示負(fù)類(lèi),則上述函數(shù)輸出的召回率、精確率的分子為分類(lèi)正確的負(fù)類(lèi),而非分類(lèi)正確的正類(lèi)。
我們注意到Class列0表示非脈沖星,1表示脈沖星,因此無(wú)需調(diào)整標(biāo)簽,可直接應(yīng)用如上函數(shù)。若要提高輸出結(jié)果的準(zhǔn)確性,還可采用cross_val_score()進(jìn)行多折交叉驗(yàn)證。
2.4? 結(jié)果輸出與分析
輸入要應(yīng)用的算法,運(yùn)行函數(shù),對(duì)于脈沖星探測(cè)問(wèn)題,由于其巨大的科研價(jià)值,我們首先希望能夠?qū)撛诘拿}沖星都探測(cè)出來(lái),即關(guān)注預(yù)測(cè)正確的脈沖星占真正脈沖星數(shù)量的比例,這里對(duì)應(yīng)著召回率Recall,注意到邏輯回歸和梯度提升樹(shù)的召回率較高。然而,在應(yīng)用機(jī)器學(xué)習(xí)算法得到分類(lèi)結(jié)果后,科學(xué)家進(jìn)一步驗(yàn)證被預(yù)測(cè)為脈沖星的數(shù)據(jù)也需要耗費(fèi)較大的人力物力,因此我們也希望預(yù)測(cè)為正的結(jié)果盡可能準(zhǔn)確,即關(guān)注預(yù)測(cè)正確的脈沖星占所有預(yù)測(cè)為正的比例,這里對(duì)應(yīng)著精確率Precise。注意到邏輯回歸和梯度提升樹(shù)精確度也較高。
在這種情況下,我們需要對(duì)召回率和精確率進(jìn)行綜合。一般而言,F(xiàn)1值和AUC值能夠描述模型的綜合效果。我們發(fā)現(xiàn)在F1值上,邏輯回歸表現(xiàn)最好,梯度提升樹(shù)其次;在AUC值上,邏輯回歸表現(xiàn)最好,梯度提升樹(shù)其次,K鄰近和決策樹(shù)表現(xiàn)不佳。因此我們認(rèn)為:如果從F1值和AUC值的角度評(píng)估模型,邏輯回歸表現(xiàn)最優(yōu),其次為梯度提升樹(shù)。我們接下來(lái)的分析也主要基于F1值和AUC值評(píng)估模型。
輸入要應(yīng)用的算法,運(yùn)行函數(shù):
fromsklearn.linear_model import LogisticRegression
fromsklearn.neighbors import KNeighborsClassifier
fromsklearn.tree import DecisionTreeClassifier
fromsklearn.naive_bayes import GaussianNB
fromsklearn.ensemble import GradientBoostingClassifier
models={'邏輯回歸':LogisticRegression(random_state=1),
'K鄰近':KNeighborsClassifier(),
'決策樹(shù)':DecisionTreeClassifier(random_state=1),
'樸素貝葉斯':GaussianNB(),
'梯度提升樹(shù)':GradientBoostingClassifier(random_state=1)
}
forn,m in models.items():
classification_model(n,m,x_train_sm,y_train_sm,x_test)
從混淆矩陣上來(lái)看,各算法具有一定差異,但不顯著,下面我們輸出各指標(biāo)結(jié)果進(jìn)行對(duì)比,如表4所示。
3? 結(jié)? 論
本案例中我們應(yīng)用了邏輯回歸、K鄰近、決策樹(shù)、樸素貝葉斯、梯度提升樹(shù)算法對(duì)脈沖星進(jìn)行了二分類(lèi),基于F1值和AUC值評(píng)估模型,對(duì)于未調(diào)參的算法,邏輯回歸表現(xiàn)最好,梯度提升樹(shù)其次。K鄰近和決策樹(shù)表現(xiàn)相對(duì)較差。
我們選取K鄰近和決策樹(shù)調(diào)參,調(diào)參后二者性能均獲得提升,K鄰近算法F1值從0.684 7提高到0.695 9,AUC值從93.78%提高到95.13%,決策樹(shù)F1值從0.747 7提高到0.856 9,AUC值從91.58%提升到96.48%。K鄰近性能提升相對(duì)不明顯,原因可能是我們?yōu)楣?jié)省運(yùn)算時(shí)間限制了其需調(diào)參數(shù)的取值范圍。
我們選取了F1值最大的模型——調(diào)參后的決策樹(shù)模型探究特征的重要性,發(fā)現(xiàn)Ex_Int(集成脈沖數(shù)據(jù)的超額峰度)對(duì)結(jié)果有決定性影響,Std_DM(DM-SNR曲線數(shù)據(jù)的標(biāo)準(zhǔn)差)有較小影響,而其他特征近無(wú)影響。因此我們僅提取Ex_Int與Std_DM作為特征組成新的訓(xùn)練集,使用邏輯回歸、K鄰近、決策樹(shù)、樸素貝葉斯、梯度提升樹(shù)再次進(jìn)行訓(xùn)練后發(fā)現(xiàn):使用兩個(gè)特征訓(xùn)練的模型相比于全特征訓(xùn)練的模型,可以實(shí)現(xiàn)近似的分類(lèi)效果。
參考文獻(xiàn):
[1] BATES S D,BAILES M,BARSDELL B R,et al. The High Time Resolution Universe Pulsar Survey - VI. An artificial neural network and timing of 75 pulsars [J].Monthly Notices of the Royal Astronomical Society,2012,427(2):1052-1065.
[2] LEVIN L,BAILES M,BATES S D,et al. Radio emission evolution,polarimetry and multifrequency single pulse analysis of the radio magnetar PSR J1622?4950 [J].Monthly Notices of the Royal Astronomical Society,2012,422(3):2489-2500.
[3] KEITH M J,JOHNSTON S,BAILES M,et al. The High Time Resolution Universe Pulsar Survey-IV. Discovery and polarimetry of millisecond pulsars [J].Monthly Notices of the Royal Astronomical Society,2012,419(2):1752-1765.
[4] 王東剛.殘余引力波:引力子、真空與規(guī)則化 [D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2016.
[5] 劉良端.雙中子星并合產(chǎn)生的電磁信號(hào)研究 [D].南京:南京大學(xué),2016.
[6] 張璐.高頻引力波電磁諧振效應(yīng)的最優(yōu)參數(shù)選擇與噪聲初步分析 [D].重慶:重慶大學(xué),2016.
作者簡(jiǎn)介:周宇(1979.06—),男,漢族,江蘇徐州人,工程師,碩士,研究方向:計(jì)算機(jī)。