孫杰
(中國勞動關系學院應用技術學院,北京100044)
在教學過程中,難免對學生進行知識學習效果的檢測。在理想情況下,學生的測驗成績是穩(wěn)定的、平穩(wěn)的,但在實際情況下難免出現異常成績情況,這些異常成績情況恰好體現了某些學生在學習過程中的問題及存在的風險。有效檢測學生成績中的異常成績,能夠及時地發(fā)現問題,指導教師教學。
假設在任何一次測驗中所有同學的測驗成績符合正態(tài)分布,且同一個學生在一次測驗中的成績排名是基本穩(wěn)定的。本文采用2016級至2019級本科生共465人的兩次平時測驗成績作為數據樣本。通過對所采集數據樣本的觀察發(fā)現:在測驗成績中,有的同學沒有參加測驗或成績遠低于正常成績。這種情況恰恰說明,某些同學學習過程中可能存在一定的問題。這些學生成績數據與一般的測驗成績的高低或特征不一致,這些數據對象就是孤立點(outlier)。當訓練數據集沒有孤立點污染時,通過訓練數據集構造模型,通過模型判斷新加入的點是否滿足要求(一般通過閾值判斷),不滿足條件的點稱為異常點(novelty)。孤立點和異常點的檢測和分析是一種十分重要的數據挖掘類型。
基于高斯概率密度函數的異常點檢測,首先利用異常較少的數據集擬合出一個高斯分布,當要預測一個樣本是否為異常時,只需將這個新樣本代入高斯分布求出概率,如果概率小于指定的閾值,我們就認為這個樣本是異常的。因此,異常點檢測的關鍵是訓練數據集的收集和閾值的設定。孤立點的檢測不要求用于擬合模型的數據純凈,孤立點的檢測有基于統(tǒng)計學的方法[1]、基于聚類的方法[2]、One Class SVM算法[3]和孤立森林算法[4]等多種。本文基于已有學生成績滿足高斯分布的假設,試圖采用FAST-MCD算法對上述異常成績進行檢測,通過構建限度橢圓檢測學生測驗成績中的異常成績。
n維正態(tài)向量X=(X1,X2,…,Xn)T的密度函數為:
其中,
且矩陣B正定的。此時
假設一組有n個樣本的數據,每個樣本有p個元素,數據構成X=(x1,x2,…,xp)T,其中,xi=(xi1,xi2,…,xip)T,i=1,2,…,n。經 典 的 限 度 橢 圓(Tolerance Ellipse)定義為一組p維數據x,其馬氏距離計算如下:
其中xˉ為均值,B是協(xié)方差矩陣,卡方分布的α分位數。
實驗證明:基于馬氏距離的限度橢圓模型并不能很好地估計孤立點,而基于魯棒距離(the robust distances)的計算方法獲取的限度橢圓模型可以較好地辨識孤立點。魯棒距離的計算方法如下:
FAST-MCD算法的步驟如下:
(1)假設有n個樣本的樣本集X,選取其子集H1,且而和分別是子集H1的均值和協(xié)方差。如果子集則有n個樣本中每個元素到子集H1的距離:
實驗運行在Windows系統(tǒng)中的“Anaconda 3+Python 3.7”環(huán)境下,采集選修《計算機I》課程的465名同學的兩次平時測驗成績?yōu)闃颖军c,其中包含異常成績,所占比例大約為10%。異常成績包含未參加考試的成績?yōu)?或者遠離一般成績范圍的成績。
本文實驗中分別使用經驗協(xié)方差(最大似然估計)和魯棒協(xié)方差(最小協(xié)方差估計)兩種方法對兩次學生測驗成績中的孤立點(或稱為異常成績)進行檢測,兩次測驗成績中的異常成績檢測結果,如圖1所示。
圖1 學生兩次測驗成績中的異常值檢測
可以看出,兩次測驗成績中只要有一次成績較低(或為0),或者兩次測驗成績均較低,即可視為異常成績。另外,雖然經驗協(xié)方差方法更容易被離群點影響[5],但在異常成績比例為10%時,兩種檢測方法在成績檢測的最終效果上并沒有太大的差別。
本文實驗中設置異常成績比例為10%,最終篩選出47個點為異常點。刪除異常成績后兩次測驗成績的散點圖,如圖2所示。
圖2 刪除異常成績后兩次測驗成績的散點分布
可以看出,在刪除異常成績之后,學生成績分布更集中,學生兩次測驗成績集中在70~100和65~95之間的數據區(qū)域。
當設定成績異常比例為1%時,檢測結果如圖3所示。
圖3 學生兩次測驗成績中的異常值檢測
可以看出,通過魯棒協(xié)方差方法得到的限度橢圓完全劃分出了其中一個成績?yōu)?的5個數據點,而經驗協(xié)方差方法卻將第二次測驗成績?yōu)?的一個數據點認為是正常的。這也說明魯棒協(xié)方差方法具有更好的穩(wěn)定性,能夠較為合理地檢測異常成績。
最小協(xié)方差估計(MCD)是能夠較好地識別樣本集中的異常點,但由于計算較為復雜,我們采取FAST-MCD算法簡化計算過程。通過實驗發(fā)現,FAST-MCD方法能夠較快、較穩(wěn)定地檢測出異常成績。但本文實驗存在一些不足,如依據經驗給出的異常成績的比例比較隨意,缺少理論依據。因此,在將來的研究中,希望能夠依據實際采集的樣本值自適應得到異常數據的比例。