国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計(jì)算機(jī)課程相似度計(jì)算方法及其改進(jìn)

2023-04-22 13:41:24仲啟玉張少宏張芷芊
關(guān)鍵詞:語(yǔ)料庫(kù)聚類向量

仲啟玉,張少宏* ,丁 漢,張芷芊

(1.廣州大學(xué)計(jì)算機(jī)科學(xué)與網(wǎng)絡(luò)工程學(xué)院,廣東 廣州 510006;2.廣州華南商貿(mào)職業(yè)學(xué)院信息工程學(xué)院,廣東 廣州 510650)

隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,計(jì)算機(jī)科學(xué)成為時(shí)下熱門專業(yè)。對(duì)教育數(shù)據(jù)進(jìn)行挖掘可用于設(shè)計(jì)更好、更智能的學(xué)習(xí)技術(shù),并更好地為學(xué)習(xí)者和教育者提供有用信息[1]。如根據(jù)學(xué)生在教室中的座位選擇來(lái)評(píng)估數(shù)學(xué)能力,對(duì)學(xué)生課堂筆記的記錄情況研究學(xué)生學(xué)習(xí)信念和學(xué)習(xí)能力關(guān)系等[2]。通過(guò)對(duì)學(xué)生建??梢垣@得一個(gè)相對(duì)清晰的學(xué)生學(xué)習(xí)風(fēng)格模式。文獻(xiàn)[3]從學(xué)習(xí)系統(tǒng)中獲得學(xué)生、課程、評(píng)價(jià)等級(jí)的數(shù)據(jù),構(gòu)建課程推薦系統(tǒng),以及可用于預(yù)測(cè)學(xué)生成績(jī)的方法,所提出的課程推薦系統(tǒng)可以在實(shí)踐中應(yīng)用。簡(jiǎn)單的課程標(biāo)簽化難以有效利用相關(guān)輔助信息,計(jì)算機(jī)領(lǐng)域知識(shí)點(diǎn)往往蘊(yùn)含在高校教學(xué)大綱、課程大綱、網(wǎng)頁(yè)以及計(jì)算機(jī)領(lǐng)域的文獻(xiàn)等資源中,若將這些知識(shí)融合在一起,把相關(guān)知識(shí)點(diǎn)之間的層次關(guān)系和聯(lián)系用知識(shí)網(wǎng)絡(luò)的形式表現(xiàn)出來(lái),形成簡(jiǎn)潔清晰的知識(shí)網(wǎng)絡(luò)圖[4],通過(guò)這樣的圖結(jié)構(gòu)可以快速了解各知識(shí)點(diǎn)之間的聯(lián)系和區(qū)別,對(duì)于掌握計(jì)算機(jī)知識(shí)整體結(jié)構(gòu)幫助非常大?,F(xiàn)有的課程僅提供本身的孤立信息,而對(duì)于某一領(lǐng)域知識(shí)的掌握不能僅靠孤立的課程學(xué)習(xí),而是要掌握課程間的關(guān)系以及某課程和這一領(lǐng)域間的關(guān)系,比如計(jì)算機(jī)學(xué)科間的相似或遞進(jìn)關(guān)系對(duì)于計(jì)算機(jī)領(lǐng)域知識(shí)的學(xué)習(xí)就很重要,學(xué)習(xí)計(jì)算機(jī)不僅需要很好的數(shù)學(xué)基礎(chǔ),同時(shí)還需要其他學(xué)科背景知識(shí)的積累?,F(xiàn)有的關(guān)于計(jì)算機(jī)課程關(guān)系的研究多為先修關(guān)系(prerequisite)的研究。文獻(xiàn)[5]研究了大學(xué)課程中概念與課程之間的聯(lián)系,將大學(xué)課程表示為一個(gè)以課程和概念為節(jié)點(diǎn),以它們之間的連接為邊緣的圖,利用圖論的方法來(lái)表示二者之間的關(guān)系。文獻(xiàn)[6]提出了先決條件網(wǎng)絡(luò)來(lái)可視化學(xué)術(shù)課程中的隱藏結(jié)構(gòu),將學(xué)術(shù)課程視為一個(gè)復(fù)雜的系統(tǒng),其中的節(jié)點(diǎn)代表課程,節(jié)點(diǎn)之間的連接則可以從課程列表中輕松獲得課程的先修關(guān)系。文獻(xiàn)[6]提供了一種評(píng)估課程的方法,并且為課程修訂提供了框架,使整個(gè)課程的重要程度可見(jiàn),并提供了定量的分析。文獻(xiàn)[7]研究如何從課程依賴中提取概念先決條件關(guān)系,提出一個(gè)優(yōu)化的框架來(lái)解決該問(wèn)題,并創(chuàng)建了一個(gè)用于研究此問(wèn)題的真實(shí)數(shù)據(jù)集,包含來(lái)自11所美國(guó)大學(xué)的計(jì)算機(jī)科學(xué)課程清單以及課程的概念對(duì)和先修課程標(biāo)簽。文獻(xiàn)[8]研究了一種基于課程和概念對(duì)大學(xué)課程中的連通性和知識(shí)流進(jìn)行了定量檢查的方法,為課程編制和表示課程依賴概念提供了有效方法。文獻(xiàn)[9]提出一個(gè)可視化大學(xué)課程結(jié)構(gòu)的工具,包括課程和知識(shí)之間的聯(lián)系,以及使用圖論概念檢測(cè)、分析和可視化課程結(jié)構(gòu),便于課程學(xué)習(xí)和課程修訂。本文以國(guó)外計(jì)算機(jī)名校的計(jì)算機(jī)科學(xué)課程為分析對(duì)象,以課程和知識(shí)點(diǎn)為雙關(guān)系圖,量化知識(shí)點(diǎn)之間、課程之間、高校之間的聯(lián)系,進(jìn)行計(jì)算機(jī)課程知識(shí)圖譜的構(gòu)建分析,直觀反映計(jì)算機(jī)專業(yè)課程體系,為高校開(kāi)展計(jì)算機(jī)課程和學(xué)生選擇課程學(xué)習(xí)提供一定的數(shù)據(jù)參考。本文討論了如何獲取相關(guān)數(shù)據(jù),如何提取課程關(guān)鍵詞、構(gòu)建語(yǔ)料庫(kù)、如何計(jì)算相似度等。利用多種算法進(jìn)行計(jì)算,并根據(jù)計(jì)算的結(jié)果進(jìn)行對(duì)比分析,選擇出最適合本文的算法。

1 構(gòu)建語(yǔ)料庫(kù)

1.1 課程數(shù)據(jù)的爬取

網(wǎng)絡(luò)爬蟲是一種能自動(dòng)下載網(wǎng)頁(yè)的程序,本文使用Python語(yǔ)言來(lái)設(shè)計(jì)適合本文的網(wǎng)絡(luò)爬蟲以獲取數(shù)據(jù)。為獲取具有代表性的計(jì)算機(jī)科學(xué)課程文本內(nèi)容,本文選取的文本來(lái)自排名靠前的國(guó)外計(jì)算機(jī)名校。通過(guò)各個(gè)學(xué)校官網(wǎng)上的計(jì)算機(jī)科學(xué)課程信息,選取需要的字段。為了研究計(jì)算科學(xué)課程的知識(shí)圖譜,選取字段:課程id\課程名\課程描述\課程關(guān)系,用課程描述來(lái)代表每門課程。爬取下來(lái)的課程信息保存為Excel文件,保存格式如下:課程ID(ID)、課程名(Name)、課程描述(Course Description)、排選課\預(yù)選課(Prerequisites),將每一項(xiàng)存在一列中,一共有4列數(shù)據(jù),以便后續(xù)讀取。數(shù)據(jù)保存格式如圖1所示。最終爬取了約100所學(xué)校,近6 000門課程,每所學(xué)校存為一個(gè)Excel文件單獨(dú)存放,每一行是一個(gè)課程信息,文件名為學(xué)校名簡(jiǎn)寫。

圖1 數(shù)據(jù)保存格式Fig.1 Data saving format

1.2 數(shù)據(jù)預(yù)處理

使用Python的NLTK工具來(lái)進(jìn)行英文文本的數(shù)據(jù)預(yù)處理,構(gòu)建文本詞庫(kù)。為了對(duì)課程內(nèi)容信息進(jìn)行分析,需要對(duì)課程內(nèi)容數(shù)據(jù)進(jìn)行單詞小寫化、去標(biāo)點(diǎn)符號(hào)、分詞處理及去停用詞等處理,以消除臟數(shù)據(jù)對(duì)結(jié)果的影響。

將所有單詞統(tǒng)一小寫化,標(biāo)點(diǎn)符號(hào)在文本中無(wú)實(shí)際意義,因此,將文本去除標(biāo)點(diǎn)符號(hào)。英文語(yǔ)料的分詞方法有空格分詞、re匹配符號(hào)進(jìn)行分詞和NLTK分詞器等,本文選用NLTK分詞器進(jìn)行分詞。原理很簡(jiǎn)單,依據(jù)空格和標(biāo)點(diǎn)符號(hào)來(lái)進(jìn)行分詞處理。停用詞指的是在文本中沒(méi)有什么實(shí)際意義的詞,如“the”“all”“so”等詞,在語(yǔ)料庫(kù)中還會(huì)影響最終分析結(jié)果,因此,在對(duì)課程文本進(jìn)行分析前,將這些詞剔除。

由于英語(yǔ)單詞詞形多變,一個(gè)單詞可能有名詞、動(dòng)詞、形容詞、副詞等各種形式,其表達(dá)的詞根意思是一樣的,為了有效地提高關(guān)鍵詞密度,需要對(duì)課程文本單詞進(jìn)行詞形還原處理。詞形還原就是返回詞的原形,根據(jù)單詞的詞性來(lái)提取單詞的詞干,對(duì)單詞進(jìn)行詞性的識(shí)別,根據(jù)詞性標(biāo)注來(lái)處理單詞詞綴,從而還原單詞??梢钥闯?,單詞經(jīng)過(guò)詞形還原處理后是具有一定意義且完整的詞,能準(zhǔn)確地表達(dá)文本,符合對(duì)數(shù)據(jù)預(yù)處理結(jié)果的預(yù)期。根據(jù)單詞詞性進(jìn)行詞形還原,結(jié)果存儲(chǔ)在課程表格第四列,數(shù)據(jù)預(yù)處理結(jié)果如圖2所示。

1.3 課程文本量化

計(jì)算機(jī)是無(wú)法直接識(shí)別文本的,為了對(duì)文本進(jìn)行有效地?cái)?shù)學(xué)分析,需要將其進(jìn)行量化,轉(zhuǎn)化為向量表示。詞袋模型和詞向量模型是兩種最常用的模型。向量空間模型就是詞袋模型,其中,最簡(jiǎn)單的是基于詞的獨(dú)熱表示(one-hot representation)。工程上比較常用的是用詞的TF-IDF[10]值作為權(quán)重,它是文本處理中最常見(jiàn)的一種權(quán)重計(jì)算方式;另一種就是文本的分布式表示方法(distributed representation),其中,LSA、LSI、pLSI,以及Word2Vec[11]、Doc2Vec方法都屬于分布式表示。

詞袋模型的方法將文本變成一串?dāng)?shù)字(索引)的集合,在詞袋模型中,將文檔單詞映射,并統(tǒng)計(jì)這種單詞的出現(xiàn)次數(shù)。這種向量表示法不保存原始句子中詞的順序。

詞向量也叫詞嵌入,就是將單詞映射到向量空間里,將詞用向量來(lái)表示。One-hot表示方法是把每個(gè)詞表示為一個(gè)很長(zhǎng)的向量,向量的維度就是詞匯表的長(zhǎng)度,其中,絕大多數(shù)元素為0,只有一個(gè)維度的值為1,這個(gè)維度就代表了單詞,但是這種表示方法中,任何兩個(gè)單詞都是孤立的,無(wú)法在語(yǔ)義層面上表達(dá)單詞之間的關(guān)系。Distributed representation表示方法通過(guò)訓(xùn)練,使所有單詞向量構(gòu)成向量空間,每個(gè)單詞被映射到較短的單詞向量。本文采用distributed representation來(lái)表示詞向量。

1.4 特征詞權(quán)重量化

對(duì)于文本數(shù)據(jù)的處理,首先就是要獲取文本的特征信息,提取文本關(guān)鍵詞,包括候選關(guān)鍵詞提取、用詞頻或TF-IDF等過(guò)濾,以及使用閾值從候選詞中選擇關(guān)鍵詞。

本文使用課程描述的特征詞來(lái)代表這一門課程,特征詞提取的算法有很多種,不同算法提取的效果也會(huì)不同。常見(jiàn)的有TF算法和TF-IDF算法等。TF算法中一些常用詞的權(quán)重很大,因此,不適合使用TF算法來(lái)衡量權(quán)重。本文選取了TFIDF算法來(lái)計(jì)算語(yǔ)料庫(kù)的詞的權(quán)重,進(jìn)行特征詞的權(quán)重量化。TF-IDF算法目前在文本分類中被廣泛使用,它借鑒了信息檢索。某詞在某文檔中是高詞頻,而在整個(gè)文檔集中該詞又是低文檔頻數(shù),可以通過(guò)TF-IDF公式獲取較高的權(quán)值。TF-IDF傾向于過(guò)濾掉常用詞并保留重要詞,對(duì)比TF算法,TF-IDF算法更符合本文對(duì)于特征詞權(quán)重的衡量,因此,本文使用TF-IDF算法來(lái)量化表示特征詞權(quán)重。

2 相似度計(jì)算

2.1 課程相似度計(jì)算

根據(jù)現(xiàn)有相似度度量方法進(jìn)行特征詞(知識(shí)點(diǎn))與特征詞(知識(shí)點(diǎn))之間的相似度計(jì)算、課程與課程的相似度計(jì)算以及學(xué)校與學(xué)校的相似度計(jì)算。本文計(jì)算課程之間的相似度主要是單詞語(yǔ)義相似度的度量,選用TF-IDF模型、LDA主題模型及詞向量模型等來(lái)建模并計(jì)算相似度,并通過(guò)這3種方法的相似度計(jì)算效果進(jìn)行分析比較,從而選擇適合本文的計(jì)算方法。

使用TF-IDF方法計(jì)算的課程相似度過(guò)于分散,從0.1~0.9,而且如果兩門課程之間想要相同的詞,則相似度為0,效果不好,不符合本文對(duì)于相似度計(jì)算的要求,因此,后續(xù)對(duì)于相似度的計(jì)算不使用這種方法。

利用LDA主題模型計(jì)算出來(lái)的相似度非常密集,都在0.5之間,效果不是很好,而且最致命的缺點(diǎn)是LDA模型相當(dāng)不穩(wěn)定,對(duì)于不同的語(yǔ)料庫(kù)計(jì)算相似度需要訓(xùn)練不同數(shù)量的主題,由于本文語(yǔ)料庫(kù)比較大,用這種方法計(jì)算相似度不切實(shí)際,因此,LDA主題模型計(jì)算相似度的方法也不適用。

本文采用詞向量來(lái)表示課程文本單詞的表示方法,通過(guò)訓(xùn)練可以將每個(gè)詞映射為一個(gè)固定長(zhǎng)度的向量,這些向量構(gòu)成了一個(gè)詞向量空間,其中,每一個(gè)向量可以當(dāng)作空間上的一個(gè)點(diǎn),通過(guò)計(jì)算向量之間的距離來(lái)表示詞之間的相似性[12]。圖3為詞向量文件,其中,每一個(gè)單詞都是由一個(gè)300維的向量來(lái)表示的,一共有13 119個(gè)單詞。從第二行開(kāi)始每一行代表一個(gè)單詞,用空格隔開(kāi),圖中第二行代表單詞“the”,后邊是它的向量表示。這就是整個(gè)語(yǔ)料的整體結(jié)構(gòu),是一個(gè)標(biāo)準(zhǔn)的詞向量表示文本,可以使用gensim等第三方庫(kù)直接讀取。

圖3 詞向量文件Fig.3 Word vector file

基于詞向量計(jì)算課程相似度算法設(shè)計(jì)如下:

(1)計(jì)算詞之間的相似度,即通過(guò)計(jì)算兩個(gè)詞向量的夾角余弦值來(lái)計(jì)算兩個(gè)詞的相似度;

(2)計(jì)算課程之間的相似度,即基于詞之間的相似度矩陣,通過(guò)計(jì)算得出兩門課程的詞的相似度矩陣,然后計(jì)算詞相似度矩陣行方向與列方向詞的最大值/中位數(shù)相似度總和,再求平均值,即為兩門課程之間的相似度。

詞向量方法計(jì)算的相似度效果比前兩種方法效果要好,但是相似度也相對(duì)比較集中。中位數(shù)方法與最大值方法整體趨勢(shì)是一樣的,本文選用最大值法,通過(guò)對(duì)比課程得出相似度的計(jì)算還是存在一定的偏差,因此,需要改進(jìn)算法。

2.2 設(shè)計(jì)詞組相似度計(jì)算的新算法

基于詞向量計(jì)算課程相似度的算法效果雖然很好,但是對(duì)于本文存在著很大的弊端:計(jì)算相似度時(shí)間過(guò)長(zhǎng),計(jì)算60門課程之間的相似度要0.5 h,而語(yǔ)料庫(kù)的課程信息較多,因此,需要對(duì)算法進(jìn)行改進(jìn)。運(yùn)行時(shí)間緩慢的原因主要有:①多次讀取遍歷向量模型:每一次計(jì)算詞的相似度,就得遍歷兩遍詞向量模型找到其對(duì)應(yīng)的詞向量,然后再計(jì)算它們之間的相似度,多次讀取消耗時(shí)間;②多次重復(fù)計(jì)算詞對(duì)相似度:課程的詞有大量重復(fù),也就意味著多次重復(fù)計(jì)算同一詞對(duì)的相似度。

針對(duì)上述兩個(gè)原因,對(duì)向量模型的算法進(jìn)行優(yōu)化設(shè)計(jì):①減少多次讀取遍歷向量模型的時(shí)間,即使用字典將向量模型一次讀取存儲(chǔ)起來(lái),字典{key:value}采用{詞:向量}的存儲(chǔ)方式,每當(dāng)需要查找一個(gè)詞的向量時(shí),直接使用關(guān)鍵字索引的方式即可;②利用標(biāo)注矩陣減少詞對(duì)計(jì)算次數(shù)。

具體實(shí)現(xiàn)方法及步驟如下:

(1)遍歷語(yǔ)料庫(kù),得到詞匯表(即語(yǔ)料庫(kù)所有單詞詞匯);

(2)生成標(biāo)注矩陣。根據(jù)詞匯表,生成詞匯*詞匯的二維矩陣,初始化全部為0,遍歷課程對(duì),如果要計(jì)算相似度的詞,則加1;

(3)生成詞相似度矩陣。根據(jù)詞匯表,生成詞匯*詞匯的二維矩陣,初始化全部為0,根據(jù)標(biāo)記矩陣,如果兩個(gè)詞的標(biāo)注矩陣值>0,則計(jì)算這兩個(gè)詞的相似度,從而完成知識(shí)點(diǎn)與知識(shí)點(diǎn)關(guān)系的量化;

?

(4)計(jì)算課程之間的相似度。先構(gòu)建兩門課程的詞矩陣,根據(jù)詞相似度矩陣,得到兩門課程的詞矩陣的相似度矩陣,然后計(jì)算詞相似度矩陣行方向與列方向詞的最大值/中位數(shù)相似度總和,再求平均值,即為兩門課程之間的相似度,從而完成所有課程關(guān)系的量化,描述所有課程之間的關(guān)系。算法描述:

標(biāo)注矩陣生成結(jié)果如圖4所示。標(biāo)注矩陣中,很多詞對(duì)之間的標(biāo)注矩陣遠(yuǎn)遠(yuǎn)大于1,說(shuō)明這些詞對(duì)不止計(jì)算一次。用標(biāo)注矩陣的方法避免了這些詞對(duì)多次計(jì)算相似度,從而加快了計(jì)算速度。圖4中標(biāo)注矩陣為0的單詞對(duì)說(shuō)明兩個(gè)單詞之間不用計(jì)算相似度的。

圖4 標(biāo)注矩陣生成結(jié)果Fig.4 Results of labeling matrix

相似度矩陣構(gòu)建結(jié)果見(jiàn)圖5。由圖5可以看出詞之間的相似度,如詞對(duì)(sensor,surveillance)=0.53,說(shuō)明這兩個(gè)單詞之間的相似度為0.53,根據(jù)這些詞(知識(shí)點(diǎn))的相似矩陣?yán)^而可以進(jìn)行下一步的計(jì)算,即課程相似度的計(jì)算。

圖5 相似度矩陣構(gòu)建結(jié)果Fig.5 Results of similarity matrix construction

課程熱力圖見(jiàn)圖6,可以看出相似度主要集中在0.3~0.7之間,沒(méi)有什么異常的數(shù)據(jù),可通過(guò)課程實(shí)際情況大概衡量相似度的準(zhǔn)確性。選擇一門課程Cloud Computing,它和Developing Enterprise Web Applications相似度最大,相似度為0.79,和Research Topics in Computer Science相似度最小,相似度為0.41。根據(jù)課程描述,可以看出這種方法計(jì)算出來(lái)的相似度相對(duì)比較準(zhǔn)確,運(yùn)算速度較快,符合本文的預(yù)期要求。

2.3 學(xué)校相似度計(jì)算

計(jì)算學(xué)校之間相似度的方法與計(jì)算課程相似度矩陣方法類似,即讀入所有課程相似度矩陣,然后計(jì)算行方向與列方向詞的最大值/中位數(shù)相似度總和,再求平均值,即為兩所學(xué)校之間的相似度。

學(xué)校相似度計(jì)算為計(jì)算機(jī)專業(yè)課程改革提供一定的數(shù)據(jù)支持,也為學(xué)生選擇合適的學(xué)校提供了一定的參考數(shù)據(jù)。

2.4 相似度算法運(yùn)行時(shí)間比較

兩種算法相似度計(jì)算時(shí)間對(duì)比如圖7所示。由圖7可知,新算法比舊算法要快大約2~3倍,且計(jì)算相似度課程數(shù)目越多時(shí),節(jié)約的時(shí)間越多。比如當(dāng)計(jì)算10所學(xué)校的課程相似度時(shí),舊方法需要22 h,而新方法只需6 h,節(jié)約了16 h;當(dāng)計(jì)算30所學(xué)校時(shí),可節(jié)約32 h。這只是部分結(jié)果,新算法還需進(jìn)一步優(yōu)化。

圖7 不同方法相似度計(jì)算時(shí)間對(duì)比Fig.7 Comparison of similarity calculation time of different methods

3 聚類分析

3.1 層次聚類

(1)課程層次聚類

采用層次聚類法[13]計(jì)算語(yǔ)料庫(kù)課程之間的相似度,使用前面計(jì)算的相似度文件直接聚類,而不需要重新計(jì)算距離,并按課程相似度由高到低的順序來(lái)進(jìn)行排序,排序后重新劃分節(jié)點(diǎn)。根據(jù)選用方法的原理及相似度計(jì)算的目標(biāo),選用ward的方法來(lái)進(jìn)行層次聚類。

由課程層次聚類結(jié)果(圖8)可以看出,課程經(jīng)過(guò)層次聚類后被分為幾個(gè)類,同一個(gè)類別的課程分布的距離比較靠近,由此可以看出哪些課程更為相似。

圖8 課程-層次聚類樹(shù)形圖Fig.8 Courses hierarchical clustering dendrogram

(2)學(xué)校層次聚類

學(xué)校層次聚類結(jié)果(圖9)顯示看出各個(gè)高校聚類后的分類結(jié)果及空間分布,可以判斷哪些學(xué)校更為相似,從而為學(xué)生選擇高校提供一定的參考。

圖9 學(xué)校-層次聚類樹(shù)形圖Fig.9 Schools hierarchical clustering dendrogram

但從高校分布的散點(diǎn)圖(圖10)來(lái)看,部分同一分類的高校距離較遠(yuǎn),比如wvu(西弗吉尼亞大學(xué))與brown(布朗大學(xué))在空間上的距離比較遠(yuǎn),但是經(jīng)過(guò)聚類卻屬于同一類別,所以,高校關(guān)系的層次聚類效果,并不符合預(yù)期結(jié)果。

圖10 學(xué)校-層次聚類散點(diǎn)圖Fig.10 Schools hierarchical clustering scatter diagram

3.2 K-means聚類

K-means算法[14]是依據(jù)數(shù)據(jù)在空間中的分布位置關(guān)系將數(shù)據(jù)聚類為K個(gè)簇。從原始集群中選擇K個(gè)點(diǎn)作為簇的質(zhì)心,重新計(jì)算質(zhì)心,樣本點(diǎn)選擇歸入離自己在空間分布最近的簇,計(jì)算每個(gè)簇的質(zhì)心,并更新簇的質(zhì)心。

(1)課程-K-means聚類

從課程-K-means聚類結(jié)果(圖11)可以看出,經(jīng)過(guò)K-means聚類的課程關(guān)系分布與課程層次聚類效果一樣,同一類別的課程在空間上的分布接近,符合預(yù)期結(jié)果。對(duì)于課程的K-means聚類來(lái)說(shuō),K值的選擇是比較重要的,如何選擇一個(gè)合適的K值,需要經(jīng)過(guò)多次合理試驗(yàn),并根據(jù)聚類效果進(jìn)行選擇。

圖11 課程-K-means聚類散點(diǎn)圖Fig.11 Courses K-means clustering scatter diagram

(2)學(xué)校-K-means聚類

從學(xué)校-K-means聚類結(jié)果(圖12)可以看出,經(jīng)過(guò)K-means聚類后各個(gè)高校之間的關(guān)系與層次聚類效果不同,接下來(lái)對(duì)這兩種方法的結(jié)果進(jìn)行對(duì)比分析。

圖12 學(xué)校-K-means聚類散點(diǎn)圖Fig.12 Schools K-means clustering scatter diagram

3.3 高校聚類結(jié)果分析

由圖10和圖12可以看出,兩種聚類結(jié)果空間的分布大體相同,但由于參數(shù)不同以及算法原理不同,最后的聚類分類結(jié)果不同,比如在層次聚類中,學(xué)校wvu(西弗吉尼亞大學(xué))與bulletins(賓夕法尼亞州立大學(xué))是不屬于一個(gè)類別的,但是在K-means聚類中,它們屬于同一個(gè)類別,而且在Kmeans聚類中,同一類別的高校比層次聚類的高校在距離上更加接近,因此,與層次聚類相比,Kmeans聚類的結(jié)果更符合預(yù)期的結(jié)果。

4 結(jié) 論

在傳統(tǒng)的計(jì)算機(jī)科學(xué)課程描述方法中,存在著很多不足:①缺乏對(duì)專業(yè)課程間關(guān)系的整體結(jié)構(gòu)的量化,只是提及了部分課程的關(guān)系,而沒(méi)有具體量化各課程間的關(guān)系;②沒(méi)有對(duì)課程知識(shí)點(diǎn)之間關(guān)系的量化,無(wú)法獲得各知識(shí)點(diǎn)之間的具體聯(lián)系;③基于文檔描述各個(gè)課程,不適合在整體上把握計(jì)算機(jī)科學(xué)專業(yè)課程的結(jié)構(gòu)。

針對(duì)計(jì)算機(jī)科學(xué)傳統(tǒng)描述方法的不足,本文以國(guó)外排名靠前的計(jì)算機(jī)名校的計(jì)算機(jī)科學(xué)課程數(shù)據(jù)為語(yǔ)料庫(kù),通過(guò)對(duì)課程知識(shí)點(diǎn)的特征提取、權(quán)重計(jì)算和量化表示,介紹了相似度計(jì)算的多種方法,通過(guò)不同的算法計(jì)算課程間的相似度,并對(duì)計(jì)算結(jié)果進(jìn)行分析比較,最終選擇最符合預(yù)期目標(biāo)的算法。同時(shí),在課程相似度的基礎(chǔ)上完成了對(duì)學(xué)校相似度的計(jì)算,并分別利用層次聚類和Kmeans聚類對(duì)課程和學(xué)校進(jìn)行聚類分析比較。本文提供了從課程信息數(shù)據(jù)中發(fā)現(xiàn)其中所蘊(yùn)含的知識(shí)、課程體系結(jié)構(gòu)、課程關(guān)系計(jì)算的方法,為課程學(xué)習(xí)者提供課程的整體框架和關(guān)鍵知識(shí)內(nèi)容,為改善計(jì)算機(jī)教育質(zhì)量提供了科學(xué)依據(jù)和數(shù)據(jù)支持。

本文設(shè)計(jì)了詞組相似度計(jì)算的新算法,原來(lái)的相似度算法直接遍歷詞向量文件,找出所有課程對(duì)中單詞對(duì)的向量進(jìn)行相似度計(jì)算,這樣會(huì)導(dǎo)致詞對(duì)相似度多次重新計(jì)算。本文對(duì)相似度計(jì)算算法進(jìn)行改進(jìn),利用標(biāo)注矩陣,使每個(gè)詞對(duì)僅需計(jì)算一次相似度,從而避免了詞對(duì)相似度的重復(fù)計(jì)算,有效提高了相似度計(jì)算的速度。新的相似度計(jì)算方法具有顯著的借鑒價(jià)值,有大量的應(yīng)用場(chǎng)合,比如無(wú)向圖挖掘時(shí)的點(diǎn)對(duì)相似度計(jì)算,社交網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn),聚類融合時(shí)點(diǎn)對(duì)相似度比較等。研究過(guò)程中遇到了很多問(wèn)題,比如包括如何快速計(jì)算相似度、如何處理高維度向量等,通過(guò)對(duì)各種算法進(jìn)行對(duì)比,最終確定算法的選擇,解決了這些問(wèn)題,為計(jì)算課程知識(shí)圖譜的構(gòu)建提供了牢固的數(shù)據(jù)基礎(chǔ)和算法基礎(chǔ)。

猜你喜歡
語(yǔ)料庫(kù)聚類向量
向量的分解
聚焦“向量與三角”創(chuàng)新題
《語(yǔ)料庫(kù)翻譯文體學(xué)》評(píng)介
基于DBSACN聚類算法的XML文檔聚類
把課文的優(yōu)美表達(dá)存進(jìn)語(yǔ)料庫(kù)
向量垂直在解析幾何中的應(yīng)用
基于改進(jìn)的遺傳算法的模糊聚類算法
向量五種“變身” 玩轉(zhuǎn)圓錐曲線
基于JAVAEE的維吾爾中介語(yǔ)語(yǔ)料庫(kù)開(kāi)發(fā)與實(shí)現(xiàn)
一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
弋阳县| 商洛市| 江源县| 云龙县| 邯郸县| 从江县| 沂源县| 特克斯县| 佛学| 浦江县| 西乌| 靖州| 介休市| 蕉岭县| 曲松县| 开鲁县| 澄江县| 体育| 扎鲁特旗| 泉州市| 静安区| 黑龙江省| 武陟县| 玉林市| 康定县| 南城县| 图们市| 葵青区| 喜德县| 屯昌县| 霍州市| 自贡市| 宾阳县| 乳山市| 玛多县| 景洪市| 二连浩特市| 五寨县| 佳木斯市| 株洲县| 民权县|