徐勇
(廣東肇慶學院數學與統計學院,肇慶 526061)
由于互聯網技術的發展,人類社會已經進行大數據時代。大數據時代的主要特征之一是海量數據充斥于各行各業。如何充分利用數據,并且從中發現有價值的信息或知識是當前人類社會共同面臨的現實問題。正因如此,一方面,《數據挖掘》課程一直是計算機科學與技術相關專業的核心課程之一,另一方面,其他的非計算機相關專業在其培養方案中也將其設定為選修或必修課程,例如許多高校中的經管類、統計學專業都設置了《數據挖掘》課程。在此背景下,《數據挖掘》課程的教學在大數據時代時期變得前所未有的重要。
眾所周知,數據挖掘技術屬于多學科交叉,涉及高等數學、概率統計、數據庫技術、數據結構、機器學習等學科,數據挖掘課程的教學既包涵基礎理論,又強調實踐教學,即理論與實踐并重的一門課程。而且,近幾年機器學習、人工智能、云計算等領域的發展,數據挖掘技術的發展也是日新月異,新技術不斷涌現。所以,這些因素給《數據挖掘》課程的教學帶來了巨大的挑戰。為了改進教學質量,提高教學效果,文獻中對《數據挖掘》課程教學過程中各個方面展開了研究。例如,有學者試圖通過對文獻數據分析得出數據挖掘的知識體系[1]。考慮到教學大綱是教學過程中最重要的綱領性文件[2],其規定了教學目標、教學內容、教學方法、教學手段和課程評價五個方面的內容,因此,也有學者探討了《數據挖掘》課程教學大綱的設計[3]。
學科競賽對于培養學生的創新能力、團隊協作能力、動手實踐能力的作用毋庸置疑,它已成為提升大學生創新實踐能力的重要載體。目前,國內一些學會或知名企業組織舉辦各種數據挖掘技術方面的競賽。高校通過組織學生參加此類競賽既可以檢驗學生學習《數據挖掘》課程的效果,也能夠培養學生的動手實踐能力。文獻中有學者對學科競賽相關的研究。比如說,文獻[4]研究了學科競賽的管理機制與方法。而文獻[5]探索了學科競賽如何與專業及職業進行銜接。
雖然有文獻對《數據挖掘》課程的教學大綱設計展開了研究,但是,對于如何借鑒國外大學《數據挖掘》課程的教學大綱內容設置的經驗,值得進一步深入探討。盡管文獻中有對學科競賽的管理及意義進行了分析研究,可是,沒有探討學科競賽中所應用的知識點對教學內容選擇的啟發作用。一般而言,學科競賽的試題來源于現實的實際問題,而競賽組委會評選出的優秀作品代表了數據挖掘技術的應用于實際問題的典型案例成果。因此通過對這些優秀作品分析,發現其中所涉及的知識體系就可以為《數據挖掘》課程教學內容大綱設計提供新的思路。
總之,本文從兩方面入手研究《數據挖掘》課程教學大綱的設計,特別是教學內容的選取問題:(1)從學科競賽的角度來探討《數據挖掘》課程的教學大綱設計;(2)從國外大學《數據挖掘》課程的教學大綱設計的角度來探討國內《數據挖掘》課程的教學大綱設計。具體地說,首先收集數據挖掘學科競賽中的優秀作品論文與國外知名大學《數據挖掘》課程的在線資源數據,然后,運用數據挖掘技術從中分析挖掘出知識體系,最后,探討這些知識體系結構中的規律,從而為《數據挖掘》課程的教學大綱內容設計提供依據和參考。
共詞分析法屬于內容分析方法的一種,其原理主要是對一組詞兩兩統計它們在同一篇文獻中出現的次數,對這些詞進行聚類分析,進而分析這些詞所代表的學科和主題的結構變化[6]。共詞分析法首先要確定高頻關鍵詞,一般需要對文獻內容進行分詞和詞匯頻數統計,將超過一定閾值的高頻詞匯確定為高頻關鍵詞。本文使用漢語分詞系統(NLPIR)[7],而英文的分詞采用開源的英文詞組提取工具[8]。
接著,構造共詞矩陣,共詞矩陣中的主對角線上的元素是高頻關鍵詞的頻數,除此以外的元素為兩個不同關鍵詞對共同出現的頻次。最后,對共詞矩陣進行聚類分析,得到的結果為關系密切的關鍵詞匯類團,這些關鍵詞匯類團清晰表達出同一主題下的概念詞匯組成。本文的聚類分析是采用軟件SPSS作為聚類分析工具,利用歐氏距離定義樣本距離的相似性度量,聚類算法則使用K-means中心聚類方法。
如前所述,本文將從兩個角度來探討的《數據挖掘》課程教學大綱內容設計,即(1)從數據挖掘學科競賽的角度來考慮《數據挖掘》課程教學大綱設計和(2)從國外大學《數據挖掘》課程的教學大綱設計的角度來探討國內《數據挖掘》課程的教學大綱設計。因此,數據收集與來源主要是數據挖掘學科競賽作品和國外大學的《數據挖掘》課程的網站內容。下面分別進行介紹。
學科競賽對于培養學生的實踐、創新能力有著十分積極的作用。近年來,有關企業、專業協會和高校都開展和舉辦了一系列的數據挖掘學科競賽。“泰迪杯”數據挖掘挑戰賽是由全國大學生數學建模競賽組織委員會主辦,廣州泰迪智能科技有限公司承辦的全國性大學生科技競賽。“泰迪杯”數據挖掘挑戰賽有以下特點:(1)競賽的題目主要來源于于企業、管理機構和科研院所的實際問題。因此,競賽可以促使參賽的大學生能夠應用所學理論知識到社會實際需求問題上和進一步有針對性地學習相關數據挖掘技術與知識。本文主要收集了“泰迪杯”數據挖掘挑戰賽的優秀作品,從這些優秀作品中挖掘出數據挖掘的主要知識和技術體系。
本文收集48篇泰迪杯競賽的優秀作品,這些作品體現了諸多數據挖掘技術在實際問題上的成功應用典型案例,涵蓋了文本挖掘、圖像識別、金融數據分析、生物信息、優化決策等領域。
美國研究型大學在本科教育課程改革方面所做出的嘗試及所體現的特點,在某些方面值得我們思考與借鑒[9]。通過分析國外大學《數據挖掘》課程的教學內容,可以從中獲取《數據挖掘》課程教學大綱設計的啟發。表1列出了一些國外知名大學的數據挖掘教學網站地址,本文通過Web挖掘方法收集了這些網站的網頁數據,作為后續的共詞分析挖掘的內容。
如前所述,本文旨在從兩個方面收集相關數據來分析如何設置《數據挖掘》課程的教學內容。學科競賽作品的收集主要是在泰迪杯官網上下載,而國外大學《數據挖掘》課程教學大綱內容的收集則通過網絡爬蟲(Web Crawler)獲取表1所列的網址的網頁。由于學科競賽作品都是以PDF格式的文件存放的,而通過網頁爬蟲收集的國外大學《數據挖掘》課程網站內容都是以網頁的形式保存的。圖1給出了本文數據處理分析過程,本小節詳細介紹。
(1)數據預處理
數據預處理的功能是將PDF格式的文件轉為TXT文件,對于網頁的數據,可以使用網頁內容提取工具抽取出其中的有意義的文字,也保存到TXT文件。另外,數據預處理還需要清除過濾掉含有一些缺失信息的數據。
(2)詞頻統計
將經過數據預處理完成的TXT文件數據,進行切詞,得到詞匯集合。需要指出的是,對于學科競賽作品,選擇的是中文切詞工具。而對國外《數據挖掘》課程網站的內容數據,則采用開源的英文詞組提取工具進行英文切詞[8]。然后,使用詞頻統計工具統計每個詞匯的詞頻。將超過一定閾值的詞頻為高頻詞。此處設置的閾值為3。
(3)聚類分析
通過聚類分析的方法將一些內容相關的高頻詞歸為一類,該類中的幾個中心詞可以代表該類的概念。為了實現聚類分析,先需要構造共詞矩陣,而相似度量采用Ochiai系數。聚類范圍設定為8-15。

表1 國外大學《數據挖掘》課程教學網站網址

圖1 數據處理過程

表2 數據挖掘學科競賽作品高頻詞匯列表
表2列出的是按照圖1中數據處理流程對學科競賽作品的數據分析處理得到的結果。總的來看,表2列出的關鍵詞反映了將數據挖掘技術應用到實際問題所涉及的數據挖掘的知識及有關概念。從表2中可以發現,第1類的調頻關鍵詞是表明在數據挖掘的實際應用過程中,對模型的評估也很重要。一般而言,對于模型的評估主要考察其分類或預測的準確率以及泛化性能等。而第1類的高頻關鍵詞則較好地反映了這一點。第2類則是數據的預處理,包括數據提取,轉化,維數等高頻關鍵詞。第3類則是應用到的數據挖掘的算法,包括神經網絡,邏輯回歸高頻關鍵詞等。第4類是數據挖掘的基礎知識,包括多項式、方差以及向量等高頻關鍵詞。明顯地,這些關鍵詞涉及到屬于高等數學、概率統計、線性代數等方面的知識。第5類是領域方面的知識,包括濾波、灰度、文本等高頻關鍵詞,這些關鍵詞則體現了數據挖掘可以應用到不同的領域,如圖像處理、文本挖掘等。

表3 國外大學數據挖掘教學大綱網站高頻詞匯列表
表3列出的是按照圖1中數據處理流程對國外數據挖掘教學網站的數據分析處理得到的結果。從表3中可以看出,列出的關鍵詞反映了將數據挖掘的教學的基本算法和有關概念。表中第1類列出的高頻關鍵詞,體現的是《數據挖掘》課程的基礎知識和基礎概念。第2類屬于《數據挖掘》課程教學的主要內容,即數據挖掘的基本算法及方法,包括關聯規則挖掘,貝葉斯網絡等。第3類則是《數據挖掘》課程教學內容的提高部分,包括文本挖掘、空間數據挖掘等。
下面結合教學實踐和上面的結果對《數據挖掘》課程教學內容體系設計給出一些分析和建議,為教學內容體系設計的提供一些啟發。
(1)學科競賽作品與國外大學數據挖掘教學大綱在知識體系上存在差別
從表2中可以發現,學科競賽作品中所呈現的知識體系則較為完整和全面,具體地說,該知識體系中既包括基礎知識,例如概率論、線性代數等。同時,也涵蓋了整個數據挖掘過程所需要的全部知識,包括數據預處理、模型評估。這也充分說明,學科競賽的特點。而表3中僅僅集中在數據挖掘的基本概念和方法(包括一些高級技術)。因此,在對《數據挖掘》課程的教學內容進行選擇和設計時,則應該考慮學科競賽中所需要的知識點,這樣對于提高學生的實踐能力大有幫助。
(2)模型評估作為《數據挖掘》課程教學內容的之一不能忽視
模型評估屬于機器學習領域的重要內容,但是,由于數據挖掘技術有許多實質是機器學習中的學習算法,因此,《數據挖掘》課程教學內容應該包括模型評估的內容。表2中學科競賽作品中的結果分析也佐證了模型評估在數據挖掘的實際應用過程中是不可或缺的。若數據挖掘教材缺少對于模型評估的介紹,則在實際的教學過程中應該加以補充。
(3)《數據挖掘》課程教學內容的選擇應該和學生的專業結合起來考慮
隨著數據挖掘技術的發展,《數據挖掘》課程的內容既有基本的算法,也有一些高級數據挖掘方法。ACM SIGKDD課程委員會對《數據挖掘》課程的教學內容提出指導建議,從表3可以看出,國外大學《數據挖掘》課程的教學大綱與該指導建議基本一致。但是,SIGKDD課程委員給出的指導建議內容太多,因此,國外大學《數據挖掘》課程的教學大綱在教學內容上也是做了篩選。篩選的標準可以考慮授課學生的專業,例如,對于數學及應用數學或計算機類的專業學生,可以增加一些優化理論、粗集理論方面的內容。而對于統計專業的學生,則可以補充一些統計機器學習方面的知識。
(4)領域知識和數據挖掘高級技術的教學則應該結合實際情況進行權衡選擇
數據挖掘技術已經廣泛應用到各個領域,不同領域需要相關的專業背景知識。例如,在生物信息領域,則可能涉及到生物專業的知識。在教學的過程中如何選擇或取舍則需要權衡。另外,數據挖掘中的許多算法在文獻資料中都存在各種改進,對于這些改進的算法是否納入教學大綱的教學內容也值得思考與探討。一般而言,可以根據學生的層次及課時安排來進行決策。對于研究生,可以適當地增加一些高級技術,而對于本科生,則把教學的重心放在數據挖掘的一些經典算法上。
本文從兩個角度來探討《數據挖掘》課程教學大綱內容設計問題,即從數據挖掘學科競賽以及從國外大學《數據挖掘》課程的教學大綱設計的角度來研究《數據挖掘》課程教學大綱的內容設計。為此,首先收集相關數據,即學科競賽作品以及國外大學《數據挖掘》課程的教學網站內容,然后通過共詞分析得出知識體系;最后,對結果進行了分析和討論。這些分析和討論為《數據挖掘》課程的教學內容設計提供一些啟發。
參考文獻:
[1]安璐,歐孟花,李綱.數據挖掘課程的知識體系構建.圖書情報知識,2016(5):4-12.
[2]Syllabus.https://en.wikipedia.org/wiki/Syllabus.Accessed:2017-6-2.
[3]陳剛,魏晗,郭志剛.《數據挖掘技術》教學探索與實踐.河南教育:高教,2016(2):86-88.
[4]陸國棟,魏志淵,毛一平,鮑鐵虎.基于主題、時間、空間和模式分類的學科競賽研究與實踐.中國大學教學,2012(10):74-76.
[5]韓忠愿.以競賽促進大學生的專業與職業銜接——中國大學生計算機設計大賽的特點與意義.計算機教育,2015(1):26-29.
[6]馮璐,冷伏海.共詞分析方法理論進展.中國圖書館學報,2006,32(2):88-92.
[7]NLPIR 漢語分詞系統.http://ictclas.nlpir.org/.Accessed:2017-6-2.
[8]Extract Phrase.https://github.com/yardstick17/extract_phrase.Accessed:2017-6-2.
[9]楊秀玉.美國研究型大學本科教育課程改革特點述評.外國教育研究,2003(7):47-50.