武國勝,張月琴
(太原理工大學信息與計算機學院,山西 晉中 030600)
信息化時代及快節奏生活讓社會進入到信息碎片化、作息時間碎片化的時代。為適應利用碎片化時間進行學習的需求,2005年微學習[1]的概念應運而生。作為一種新的在線學習方式,微學習和其他學習方式最大的不同,在于微學習資源廣泛存在于網絡上,MOOC、SNS等平臺中的短文本、短視頻、圖片等都可以成為微學習資源,讓學習者可以在短時間內進行學習。隨著微學習這種新學習方式的出現,學習者不僅可以無處不在地學習,更可以利用碎片化時間進行學習。近年來,微學習獲得了越來越多的學者的關注和研究,并取得了一定的研究成果[2]。但是,隨著學習資源的日益豐富,同一學習內容的多源異構形式也給學習者帶來了“學習迷航”和“信息過載”等問題,導致學習者很難在短時間里找到適合自己的學習資源。為此,實現對微學習資源的合理組織,對促進學習者的個性化學習具有重要意義。
聚類技術通過無人監督的方式廣泛應用于發現信息間的隱藏關系。為了便于發現微學習資源間的隱藏關系,本文把微學習過程中最小的學習單元[3]——微學習單元作為研究對象。從微學習單元的構成形式來看,文本是重要形式之一,所以本文將嘗試對文本形式的微學習單元進行聚類,以方便學習者甄別適合自己的學習資源。
文本聚類是文本挖掘的研究方向之一,其研究成果被廣泛應用于信息檢索。而語義分析處理等方面的研究成果也被用于改善文本聚類的效果。經過多年的發展,文本聚類取得了大量成果,但是微學習單元的聚類準確度還有進一步改善的空間。首先,目前傳統的文本聚類方法使用向量空間模型VSM(Vector Space Model)[4],采用特征詞及其權重構成向量表示文本。由于微學習單元文本信息具有短小、精煉且數量巨大的特點,文本特征向量表現出高維稀疏性,使得模型在表征微學習單元文本主題時容易失焦。其次,雖然文本聚類算法數量眾多[5],但在微學習單元文本聚類方面表現不佳。例如,K-means算法[6]需要事先指定類別數,迭代過程中容易陷入局部最優;基于層次的算法[7,8]聚類過程中不可逆,合并終止條件對聚類結果影響較大。而基于密度的聚類算法[9,10]通過將關聯緊密的樣本劃為一類,來獲取不同聚類類別,可適用于凸樣本集和非凸樣本集,鑒于其適合的樣本集較為廣泛,故本文嘗試利用基于密度的聚類算法來實現對微學習單元文本的聚類處理。作為一種基于密度的經典聚類算法DBSCAN(Density-Based Spatial Clustering of Applications with Noise)[8],該算法具有不需預置聚類數量,能分辨噪聲,可找出任何形狀的聚類等優點。但同時也存在調參過程復雜的問題,如果未能充分把握數據的密度比例,將很難選擇適合的參數。
2014年,Rodriguez等人[11]提出了密度峰值聚類CFSFDP(Clustering by Fast Search and Find of Density Peaks)算法。CFSFDP算法較DBSCAN算法擁有更多的優點,但在處理存在高維稀疏問題的向量空間數據時,也存在計算局部密度時沒有統一的度量,選擇歐氏距離作為度量會導致所表示的微學習單元數據缺乏全局性的問題,且截斷距離(Cutoff Distance)的選擇對聚類結果的影響較大。此外,密度中心的選擇依賴于人工監督,在處理大規模數據時會影響算法效率和計算的準確率。為解決原有文本聚類算法在微學習單元文本聚類方面存在的上述問題,本文采用潛在語義分析LSA(Latent Semantic Analysis)模型[12]對微學習單元建模,并利用奇異值分解SVD(Singular Value Decomposition)方法對高維稀疏特征向量進行降維處理;然后通過密度敏感距離重定義密度計算方式,并改進密度峰值中心獲取方法,使其更適用于微學習單元文本聚類。用人工和微學習真實數據集在Matlab中進行仿真實驗,通過和原算法以及一些經典文本聚類算法進行比較發現,本文提出的微學習單元聚類算法更適用于微學習單元文本聚類。
本節首先介紹與文本聚類相關的向量空間模型,然后介紹密度峰值聚類算法,最后對與密度聚類算法密切相關的參數密度敏感距離進行說明。
向量空間模型VSM是由Salton等人[4]在1969年提出的。該模型將文本內容轉換為特征詞及其權重構成的向量,在多維空間表示為1個點,使文本處理問題復雜度大幅降低。VSM模型表示文本的流程包括分詞、停用詞處理、詞根處理以及權重計算等。模型中文本集D中存在M個特征詞、N個文本,任一文本dj都可以表示成dj={(t1j,ω1j),(t2j,ω2j),…,(tMj,ωMj)}的形式,其中tij(i=1,2,…,M;j=1,2,…,N)為特征詞,ωij(i=1,2,…,M;j=1,2,…,N)為特征詞對應的權重。權重計算方法使用得較多的是由Salton等人[13]提出的詞頻及逆向文檔頻TF-IDF函數。
向量空間模型以其基于線性代數的簡單模型,允許以文本間可能的相關性進行排序,以及對相似度進行連續取值,受到廣泛青睞。不過,由于向量空間模型假定文本在統計上是獨立的,即認為詞與詞之間是相互獨立的,割裂了文本固有的語義關系,因此該模型處理微學習單元短文本時存在因特征不足而帶來的嚴重稀疏性問題。
Rodriguez等人[11]提出的CFSFDP算法基于2個簡單直觀的假設:(1)聚類中心的密度高于其鄰居點的密度;(2)聚類中心與具有較高局部密度的任何點的距離都相對較遠。根據這2個假設,CFSFDP算法首先需要確定2個參數:(1)局部密度;(2)與高密度點間的截斷距離。并以此為依據把其他點分配到以潛在的密度峰值點為中心的聚類里。其中,局部密度為與當前數據點間的距離小于截斷距離的數據點的個數。截斷距離為聚類時的數據點到當前數據點的最大距離。該算法在計算數據點間的距離時采用歐氏距離。
文獻[11]中使用大量實驗證明了密度峰值算法對凸型和非凸型數據均具有良好的處理效果。但是,在針對微學習單元文本聚類的應用中發現,CFSFDP算法中計算局部密度和選取密度峰值中心的方法未能適應微學習數據的特點。
首先,CFSFDP算法使用的“截斷距離”參數,采用取鄰近的平均數據點數是總數據點數的1%~2%作為截斷距離,該選擇沒有明確的選擇依據。如圖1所示,在不同截斷距離下,聚類準確度和效果會出現差異。
圖1表示在pathbased2數據集上選取不同截斷距離進行實驗的結果。圖1a表示在截斷距離選取不合適時的聚類結果,其類簇數變為4,出現錯誤。圖1b表示選取截斷距離合適的聚類結果,其正確的類簇數為3。
近年來許多學者也注意到了該不足,如Mehmood 等人[14]提出了一種利用熱擴散的方法和核密度來重新定義密度,此方法可以自適應計算帶寬,以不依賴任何參數的方式解決階段距離敏感的問題。Xie等人[15]提出了一種使用模糊加權K-最近鄰的方式來定義點的局部密度并搜索和發現聚類中心,只需要1個參數來解決CFSFDP算法密度測量不均的問題。Liu等人[16]引入共享近鄰的概念重新設計了一種分配策略,可以快速搜索和找到密度峰值進行聚類。
其次,CFSFDP算法在選取密度峰值點時,采用人工監督的方式。在預先知道類簇數目的前提下繪制密度-距離決策圖,并認為密度峰值點是局部密度和與高密度點之間的距離均較大的點,這些點在決策圖中一般出現在所有數據點右上角的位置,且通過人為選出圖中表現“突出”的已知類簇數目的數據點作為密度峰值點。這一選擇方法在面對大量數據處理時難度大,會影響算法的準確度和執行效率。許多學者針對此問題取得了一些研究進展。Gao等人[17]設計了一種非視覺決策圖,采用基于降序碰撞選擇聚類中心的方法選取聚類中心。Liang 等人[18]利用DBSCAN框架中的分而治之和密度可達概念提出了自動選擇聚類中心的策略,該策略可以以遞歸方式自動查找正確數量的簇。

Figure 1 Influence of different cutoff distances on clustering results圖1 不同截斷距離對聚類結果產生的影響
2007年,王玲等人[19]通過觀察樣本數據的空間分布情況,設計了一種簡單有效的空間一致性距離測度:密度敏感距離。密度敏感距離測度可以度量沿著流形上的最短路徑,從而實現了放大位于不同高密度區域上數據點間的距離,而縮短位于同一高密度區域內數據點間距離的目的。
密度敏感距離建立在密度可調節距離的基礎之上,其思路是引入伸縮因子,并把歐氏距離作為伸縮因子的冪因子;然后通過調節伸縮因子的大小來增大或縮小2個數據點間的距離。
密度敏感距離則用于發現不同流形數據點上的最短路徑,這使得位于同一高密度區域內的2點可以用較短的邊相連接,而位于不同高密度區域內的2點要用較長的邊相連接,從而實現了放大位于不同高密度區域上數據點間的距離,縮短位于同一高密度區域內數據點間距離的目的[20]。
潛在語義分析(LSA)模型最早由Deerwesster等人[12]提出,其原理為將高維向量空間通過奇異值分解SVD映射到低維的潛在語義空間,在擴展語義信息的同時達到降維去噪的目的[21]。
相比于VSM模型的獨立性假設,LSA模型假設文本中詞語間存在緊密的聯系,構造M×N維特征詞-文本矩陣來描述文本中詞項的共現性,其中M表示文本集特征詞個數,N表示文本集中文本個數。特征項A通常采用TF-IDF[12]向量計算權重。
對原始空間矩陣A做奇異值分解(SVD),如式(1)所示:
(1)
其中,矩陣UM×M為M×M的左奇異向量矩陣,存儲了語義相關的詞向量。矩陣VN×N為N×N的右奇異矩陣,存儲了主題相關的文本向量。Σ=diag(σ1,σ2,…,σr)∈Rr×r是一個由A的特征值組成的r×r的對角陣,σ稱為奇異值。奇異值按降序排列且前k(k< (2) 本文提出的微學習單元文本聚類算法由以下4部分組成:微學習單元分割和標記、微學習單元文本數據預處理、微學習單元特征提取、微學習單元聚類。該聚類方法的流程圖如圖2所示。 Figure 2 Process of proposed algorithm applied to micro-learning unit text clustering圖2 本文算法應用于微學習單元文本聚類流程 第1部分微學習單元分割和標記是將獲取的微學習文本資源中標題和描述作為數據處理對象,對其內容類別進行手工標注和分割,從而獲取微學習單元。第2部分文本數據預處理階段將標注的微學習單元文本數據進行文本的分詞處理、停用詞處理、詞干提取。第3部分微學習單元特征提取對處理過的文本數據進行建模和特征降維,得到合適的文本特征向量。第3和第4部分構建模型及微學習單元聚類是本文研究的重點。 微學習單元是微學習過程中最小的學習單位,每個課程C由一系列微學習單元構成。假設微學習過程中存在n個課程,任意1個課程Ci(i=1,2,…,n)可以由m個微學習單元組成,即Ci={U1,U2,…,Um}。 在進行模型構建過程中,由于本文使用微學習單元的標題、描述和文本內容作為微學習單元的文本數據,故數據有著單一文本長度較短、文本特征詞數據量少、文本數量較多的特點。若使用VSM模型(向量空間模型)建立微學習單元模型,會遇到微學習單元特征不足、特征詞向量高維稀疏等問題。故本文選擇采用潛在語義分析模型LSA進行微學習單元建模及特征降維工作。 在上述基礎之上,本文對密度峰值算法在微學習單元文本聚類中存在的問題,提出2點改進。 首先,本文改進了數據點間距離計算時的度量方法,提出了自然指數型距離度量方法,以解決文獻[19]中伸縮因子大于1時遇到的伸縮比例不易調整的問題。 定義1 基于密度峰值算法的自然指數型距離度量矩陣L如式(3)所示: L(xi,xj)=eρ×dij-1 (3) 其中,dij表示數據xi與xj之間的歐氏距離,ρ表示伸縮因子(ρ>0),ρ可用于調節數據點間的距離度量。使用指數型調節函數,并通過伸縮因子ρ在次冪上進行調節,這樣可以使得調節的幅度得到合理的控制。 通過改進距離度量方法來引入密度敏感距離,將密度敏感距離作為微學習單元文本聚類的相似性度量,以此來改進CFSFDP算法對微學習單元文本聚類時遇到的全局一致性不足的缺陷,并通過該方法更好地尋找密度峰值中心。 定義2(數據點局部密度) 根據改進的自然指數型距離度量計算方法,并將其引入密度敏感矩陣中,即得到任意2個數據點xi,xj密度敏感距離矩陣S。 (4) 其中,p∈Vl表示圖G中1個長度為l=|p|-1的連接點p1和p|p|的路徑,且邊(pk,pk+1)∈E(1≤k≤|p|-1),Pij表示xi與xj之間所有路徑的集合,L(pk,pk+1)表示連接pk與pk+1之間基于密度峰值算法的自然指數型距離。采用Dijkstra[22]計算最短路徑長度。 隨后,將密度敏感距離作為相似性度量,重新定義不依賴于截斷距離的局部密度公式。已知空間X={x1,x2,…,xi,…,xn}中對象xi的密度記作density(xi),如式(5)所示: (5) 該局部密度定義可以描述為數據點xi與其相連接的所有數據點間距離的比值之和。這樣的密度定義方法降低了算法對截斷距離取值的敏感性,并且可以反映數據的密度分布,和CFSFDP算法的密度計算方法相比,能更好地保持全局一致性,便于聚類分配時正確地分配微學習單元,提高文本聚類的效果。具體描述如算法1所示。 算法1 基于密度敏感距離重定義局部密度 輸入:微學習單元文本子空間X={x1,x2,…,xn},伸縮因子ρ。 輸出:數據點局部密度density(xi)。 步驟1 計算文本子空間X中各數據點間的歐氏距離,得到歐氏距離的矩陣D: D(xi,xj)=dij,1≤i≤n,1≤j≤n 步驟2 根據歐氏距離矩陣D用式(3)計算密度可調節線段長度,在ρ∈(0,3)調整伸縮因子,得到自然指數型距離度量矩陣L; 步驟3 將自然指數型距離度量矩陣L代入式(4),得到密度敏感距離矩陣S; 步驟4 將密度敏感距離矩陣代入式(5),得到每個數據點的局部密度density(xi) 步驟5 算法結束。 本文從CFSFDP算法選取密度峰值中心的原理出發,提出根據殘差分析異常點,進而選取密度峰值的方法。如圖3a和圖3b所示,密度峰值點A、B、C與普通數據點距離較遠,且處于右上方的位置(圖3b)。如果嘗試將ρ-δ組成的數據進行線性擬合,可發現該數據集密度峰值中心就是經過線性擬合后的那些最為偏離大部分數據的異常點——野值點。 線性回歸是利用數理統計中的回歸分析,來確定2種或2種以上變量間相互依賴的定量關系的一種統計分析方法[23]。即對于n個數據的數據集,ρ和δ擬合時的線性關系為:δi=f(ρi)=a+bρi,i=1,2,…,n。所以,當利用殘差分析的方法對ρ-δ線性擬合以找出線性擬合過程中的奇異點時,如圖4所示,其中,A1、B1、C1分別對應圖3b中A、B、C3個密度峰值點的殘差,奇異點包括密度峰值點,但奇異點不都是密度峰值點,這是因為密度峰值中心是那些ρ和δ均比較大的數據點,而有些數據點是ρ或δ其中1項較大,而另1項較小,這些點往往是遠離類簇的點或類間點。本文算法的目標是去除這些點,而保留最為偏離大部分數據的點——野值點。所以,在進行線性擬合時,并不能1次性地選擇出這些野值點作為正確的密度峰值中心。 Figure 3 Using density peak algorithm to find the peak center point law圖3 密度峰值算法尋找峰值中心點規律 Figure 4 Analysis of outliers by residuals in Matlab圖4 在Matlab中通過殘差分析異常點 為選擇出野值點,本文集中對使用殘差法進行線性擬合時得到的參數進行分析。本文觀察到野值點與其他奇異點在殘差上存在較大不同,為此本文對殘差分析后得到的殘差加以約束,使用這個約束條件將野值點和其他奇異點分離,保留野值點,剔除其他的奇異點。保留的野值點由于ρ和δ均較大,而導致其進行線性擬合時成為奇異點,而密度峰值點是一些被低密度點包圍且到其他高密度點的距離較大的點,為此這些野值點能夠代表整個類作為類簇中心,即野值點就是密度峰值中心點。具體描述如下文所述: 假設密度峰值中心數據點下標為DPCDP(Density Peak Center Data Point),線性擬合過程中得到的數據點殘差為ri,殘差下限為rli,殘差平均值為ra,殘差的方差為rσ,則約束條件為: DPCDP={i|rli>0&&(ri-ra)>3×rσ} (6) 其中, (7) (8) 其中,約束條件中的數字3為實驗得到的最佳約束參數。 使用這樣的約束條件后,其他奇異點被剔除,剩下的就是經過線性擬合得到的野值點,而這些奇異點在數據集中表現為各類的密度峰值中心,下標點的個數即為密度峰值算法需要聚類的類簇數。如此,通過殘差分析和條件約束可以避免CFSFDP算法中人工選擇的不準確以及不夠智能的缺陷,提高算法選擇密度峰值中心的準確率以及算法運行效率。通過Matlab仿真實現改進的CFSFDP選取峰值中心的具體步驟如算法2所示。 算法2 自動選取密度峰值中心 輸入:局部密度ρ,最近且密度比數據點大的點的距離δ。 輸出:密度峰值中心數據點下標DPCDP。 步驟1 由局部密度ρ和距離δ繪制ρ-δ決策圖; 步驟2 根據以ρ為橫坐標、δ為縱坐標的數據點在Matlab上進行線性擬合,由Matlab自帶的殘差分析工具得到殘差ri和殘差下界rli; 步驟3 根據式(7)和式(8)計算殘差平均值ra和殘差的方差rσ; 步驟4 根據式(6)計算密度峰值中心數據點的下標,得到DPCDP; 步驟5 算法結束。 本次實驗采用微學習單元的真實數據集,并和經典文本聚類算法以及CFSFDP算法進行對比實驗,從而分析以得到最后的結論。對比的經典文本聚類算法是K-means算法[6]、DBSCAN算法[9]和DPC-KNN算法[24]。K-means算法是由Matlab自帶的庫函數進行測試工作的,DBSCAN算法是根據作者提供的源碼進行測試和實驗。DPC-KNN算法是一種采用K-最近鄰方式避免截斷距離敏感的算法,由于其性能近年來得到了廣泛的關注,且該算法類簇分配策略與本文算法一致,便于進行對比,所以本文選擇該算法進行對比實驗。DPC-KNN算法按照文獻[25]理論使用Matlab模擬。 本次實驗使用的微學習真實數據集來自于網絡平臺。使用Python 2.7在Windows 10系統下,通過官方提供的Scrapy模塊進行爬取。數據來源網站是 Coursera,Coursera是世界上三大MOOC平臺之一,由于其課程免費,且課程數量較多,內容較為豐富,便于系統收集學習課件,所以選擇該平臺作為數據來源。最后,實驗模擬使用的測試軟件為Matlab R2016a ,實驗環境是Intel Core i5, 8 GB內存,Windows 10操作系統。 在實驗中采用聚類準確率(ACC)、調整互信息指數(AMI)[26]和調整蘭德指數(ARI)[27]來評價聚類結果。 ACC指標定義如下: 其中,n是數據點的數量,yi和ci是真實標簽和數據點xi的預測標簽。當yi=ci時,δ(yi,ci)=1,否則為0。 ARI指標定義如下: AMI指標定義如下: 其中,U表示實際類別集合,V表示真實聚類類別集合,p(u)和p(v)分別為u和v的邊緣概率密度函數,p(u,v)為聯合概率密度函數。H(U)和H(V)為U和V的信息熵。 這3種度量指標取值上界均為1,值越接近1表示聚類結果越好。 按照本文聚類算法的4個組成部分,本次實驗的步驟如下所示: (1)微學習單元分割和標記。選擇課程平臺中每個課程的課程名稱及課程標題作為主要文本內容。課程提供平臺并沒有已存在的微學習單元,所以本文以周為分割周期將課程分割成微學習單元,每個課程由多個微學習單元組成,每個單元獨立存在。為微學習單元標注4個屬性,分別為微學習單元編號、微學習單元類別、微學習單元標題(Unit Title)和微學習單元描述(Unit Description)。部分微學習單元內容如表1所示,手工標注后的微學習單元所屬類別和編號如表2所示。 (2)微學習單元文本數據預處理。數據預處理的操作包括:文本的分詞處理、停用詞處理、詞干提取。本文使用Python NLTK[28]工具實現文本分詞工作,通過設置停用詞表的方式將停用詞進行過濾處理,詞干提取方法采用波特詞干提取法[29]。 (3)微學習單元特征提取。經過預處理后的微學習單元數據需要進一步結構化表示,這樣才能被計算機識別,從而通過計算機分析處理。這一過程的步驟包括:特征項的選擇,特征項權重計算,LSA模型[12]表示微學習單元,相似度計算。經預處理得到特征維度為1 131維的稀疏特征詞空間,采用TF-IDF算法[13]分別計算微學習單元的標題和單元內容描述這2個字段的特征詞權重。最后通過LSA模型表示微學習單元數據,以便于計算機識別,本文k值選擇100, Table 1 Partial micro-learning unit content表1 部分微學習單元內容 Table 2 Category and content of the micro-learning unit after manual labeling表2 手工標注微學習單元后的所屬類別和內容 經SVD分解降維后得到低維語義空間,最后使用歐氏距離[25]計算相似度。 (4)使用本文提出的改進的密度峰值算法、K-means算法、DBSCAN算法和DPC-KNN算法在微學習單元真實數據集上進行聚類。其中CFSFDP算法中需要考慮截斷距離選取的問題,算法選擇鄰近的平均數據點數是總數據點數的1%~2%作為截斷距離,本文選取1%~2%中結果最好的作為參數。DBSCAN算法選擇使得結果最佳的參數Eps和MinPts作為最終結果。K-means算法預設類別數5,運行10次取平均值作為最終結果。DPC-KNN算法需要選取KNN的百分比參數,按照經驗本文選取百分比p為樣本數的0.1%,0.5%,1%中聚類效果最好的參數作為最終選擇。本文的改進算法參數ρ取聚類結果最佳時的結果。聚類評價指標使用準確率ACC、調整互信息指數AMI以及調整蘭德指數ARI,每個指標值在0~1,且值越大表明聚類效果越好。 本文使用的微學習真實數據集經過LSA模型的結構化后,經過SVD分解降維,從原先1 131維高維語義空間映射到k=100的低維語義空間,較好地避免了傳統使用VSM模型導致的特征空間高維稀疏性問題。微學習單元真實數據映射到二維空間的幾何形狀圖如圖5所示,本文提出的改進的密度峰值算法及CFSFDP算法在微學習單元真實數據上運行得到的幾何形狀圖如圖6所示。 從圖5中可以看出,微學習單元數據每個類別的全局一致性較強。在圖6b中原算法由于使用依賴于截斷距離和人工監督的方法,在微學習單元數據中盡管已知真實微學習單元數目,由于不同類微學習單元數據間距離較同一類微學習單元數據間距離更近,且歐氏距離度量使得數據點間全局一致性不足,使得在聚類分配階段出現誤分類,從而導致聚類效果不如用本文算法的。如圖6a所示,由于本文算法采用了更適用于微學習單元真實數據的新的密度定義方式,該方式中距離判據為密度敏感距離,使得真實數據集中數據點具有全局一致性,在聚類分配階段能獲得更好的聚類效果。除此之外,改進算法采用了可以自動確定微學習單元簇數的方法,該方法采用殘差分析線性擬合決策圖中的2個字段找到所有奇異點,并通過約束條件將密度峰值中心選擇出來,所以該算法相比原算法擁有更優的性能。 Figure 5 Geometry diagram of micro-learning unit real datasets圖5 微學習單元真實數據集幾何形狀圖 Figure 6 Running results of improved algorithm and original algorithm on real datasets圖6 改進算法及原算法在真實數據集上的運行結果 表3所示為對比實驗的參數設置及各聚類性能指標,其中,CI表示算法中實際的簇數,Par代表每種算法的參數設置情況:改進的密度峰值算法參數為伸縮因子ρ,CFSFDP算法參數為截斷距離選取百分比,DBSCAN算法參數Eps和MinPts通過“/”分隔,分別表示鄰域距離和鄰域內樣本數,K-means算法參數為真正的簇數k。 如表3所示,與原算法CFSFDP相比,改進算法可以準確確定簇數,而原算法由于真實數據集數據復雜度較高,在決策圖中很難得到正確的簇數和簇中心,所以改進算法在準確率上比原算法高,并且在AMI和ARI上也體現出了改進算法在微學習真實數據集上的優越性,本文可以認為改進算法對于原算法而言有一定的提高。通過與DPC-KNN算法對比,發現使用KNN(K最近鄰)作為局部密度的定義方式的算法的準確率、AMI、ARI低于使用密度敏感距離新定義的密度方式的算法的,由于DPC-KNN算法分配策略與本文提出的聚類算法的一致,但DPC-KNN算法選擇峰值中心不夠智能,為此本文認為,改進算法在微學習單元文本數據集上聚類效果更優。通過與經典的算法對比發現,K-means算法在指定類別數的前提下,其準確率在4個算法中最低,說明了該算法在此處真實數據集上表現較差。從DBSCAN算法通過調整2個參數得到的結果來看,其聚類準確率僅次于改進算法的,但是該算法調參過程復雜,AMI和ARI2項指標均低于改進算法的,可以看出改進算法相比DBSCAN算法有著較大的優勢。 如圖7折線圖所示,本文提出的改進算法在不同的微學習單元類別中的準確率均高于其他對比算法的,通過不同微學習單元準確率的直觀表現可以得出這樣一個結論:本文提出的改進密度峰值算法在微學習單元真實數據集上更加有效。 Figure 7 Accuracy comparison of different algorithms in each micro-learning unit class圖7 不同算法在每個微學習單元類別中的準確率對比 本文提出一種基于LSA模型的改進密度峰值微學習單元文本聚類算法,通過LSA模型和SVD奇異值分解方法緩解VSM模型存在的高維稀疏性,并在原密度峰值算法的基礎上引入密度敏感距離,并重新定義密度,避免了原算法類簇分配時的全局一致性不足及截斷距離敏感的問題。同時,本文利用線性擬合殘差分析找到野值點的方法自動選取密度峰值中心,消除了原CFSFDP算法中人工監督的選取方式對準確率和效率的不利影響。本文在真實的微學習單元數據集上和CFSFDP算法及其他經典的算法進行對比后發現,所提出的算法獲得了較好的聚類性能。使用本文算法可以組織微學習資源,從而幫助學習者進行個性化學習。 但是,由于本文算法引入了密度敏感距離,增大了算法的時間復雜度,因此將在今后的工作中對此進行改進。3 新的微學習單元文本聚類算法的研究

3.1 微學習單元模型構建

3.2 基于密度敏感距離的局部密度
3.3 自動選取密度峰值中心


4 實驗和結果
4.1 實驗相關介紹

4.2 實驗實施


4.3 分析真實數據集實驗結果



5 結束語