張曉芳+黃曉濤+王芬
DOI:10.16644/j.cnki.cn33-1094/tp.2016.09.022
摘 要: 數(shù)據(jù)挖掘技術(shù)是大數(shù)據(jù)時代的關(guān)鍵技術(shù)和核心內(nèi)容。本科數(shù)據(jù)挖掘課程系統(tǒng)地介紹數(shù)據(jù)挖掘的基本概念、基本原理和應(yīng)用技術(shù),以及大數(shù)據(jù)背景下數(shù)據(jù)挖掘的特點及新技術(shù)。針對本科生的特點,課程盡量弱化理論和算法,強調(diào)應(yīng)用。通過對各種實例的分析和實驗,使學(xué)生面對具體應(yīng)用問題時,能夠利用SPSS Modeler設(shè)計數(shù)據(jù)處理的過程,選取合適的數(shù)據(jù)挖掘方法,并最終得到較理想的數(shù)據(jù)挖掘結(jié)果。
關(guān)鍵詞: 大數(shù)據(jù); 數(shù)據(jù)挖掘; 本科課程; SPSS Modeler
中圖分類號:G420 文獻標志碼:A 文章編號:1006-8228(2016)09-76-04
Data mining course construction in the era of big data
Zhang Xiaofang, Huang Xiaotao, Wang Fen
(Network and Compute Center, Huazhong University of Science and Technology, Wuhan, Hubei 430074, China)
Abstract: Data mining technology is the key technology and core content of the era of big data. The basic concept, basic principle and application technology of data mining are introduced in this undergraduate course, and the characteristics and new technology of data mining in the background of big data are also introduced. Aiming at the characteristics of undergraduate, the course tries to weaken the theory and algorithm, emphasizing the application. Through analysis and experiments on a variety of examples, when faced with a specific application, students can use SPSS modeler to design data processing process, select the appropriate data mining methods, and eventually get ideal results in data mining.
Key words: big data; data mining; undergraduate course; SPSS modeler
0 引言
隨著互聯(lián)網(wǎng)的飛速發(fā)展,企業(yè)計算、云計算、物聯(lián)網(wǎng)等各種應(yīng)用的涌現(xiàn),“大數(shù)據(jù)”應(yīng)運而生。如何使用計算機技術(shù)和軟件技術(shù),可靠地管理和存儲海量數(shù)據(jù)并高效地處理和分析海量數(shù)據(jù),實現(xiàn)云計算、企業(yè)計算等新的應(yīng)用,成為IT界所關(guān)注的問題[1]。
云計算、企業(yè)計算、大數(shù)據(jù)等作為21世紀的新興IT應(yīng)用,反映著時代最前沿的IT技術(shù)和知識。大數(shù)據(jù)及相關(guān)知識代表著當前的IT時代潮流和未來趨勢,大數(shù)據(jù)系列課程的開設(shè)是時代發(fā)展的需要。目前,國內(nèi)外的很多高校都陸續(xù)開始在計算機、管理、金融等專業(yè)中開設(shè)大數(shù)據(jù)的系列課程,設(shè)置以大數(shù)據(jù)為核心的人才培養(yǎng)方案和課程體系。
1 數(shù)據(jù)挖掘是大數(shù)據(jù)時代的關(guān)鍵技術(shù)
1.1 什么是大數(shù)據(jù)
隨著以博客、社交網(wǎng)絡(luò)、基于位置服務(wù)LBS為代表的新型信息發(fā)布方式的不斷涌現(xiàn),以及云計算、物聯(lián)網(wǎng)等技術(shù)的興起,數(shù)據(jù)正以前所未有的速度在不斷地增長和累積,大數(shù)據(jù)時代已經(jīng)來到[2]。
“大數(shù)據(jù)”一詞由英文“Big Data”直譯而來。一般意義上,大數(shù)據(jù)是指無法在可容忍的時間內(nèi)用傳統(tǒng)IT技術(shù)和軟硬件工具對其進行感知、獲取、管理、處理和服務(wù)的數(shù)據(jù)集合[3]。目前對大數(shù)據(jù)的定義主要有以下幾種。
定義1:大小超出了傳統(tǒng)數(shù)據(jù)庫軟件工具的抓取、存儲、管理和分析能力的數(shù)據(jù)群。
定義2:數(shù)據(jù)量大,具有多源、實時等特點的大型數(shù)據(jù)集。
定義3:用現(xiàn)有的一般技術(shù)難以管理的大量數(shù)據(jù)集合,其核心是非結(jié)構(gòu)化數(shù)據(jù)。
定義4:具有4V特征的數(shù)據(jù)。4V是指海量化(Volume)、多樣化(Variety)、快速化(Velocity)和大價值(Value)。
“大數(shù)據(jù)”之“大”,并不僅僅在于“容量之大”,更大的意義在于:通過對海量數(shù)據(jù)的交換、整合和分析,發(fā)現(xiàn)新的知識,創(chuàng)造新的價值,帶來“大知識”、“大科技”、“大利潤”和“大發(fā)展”。因此,可以說數(shù)據(jù)挖掘技術(shù)是大數(shù)據(jù)時代的關(guān)鍵技術(shù)和核心內(nèi)容。
1.2 什么是數(shù)據(jù)挖掘
大數(shù)據(jù)時代,數(shù)據(jù)分析與數(shù)據(jù)挖掘作為一門信息技術(shù),其興起主要是受數(shù)據(jù)積累的增長和對數(shù)據(jù)分析的需求的驅(qū)動。
數(shù)據(jù)是寶貴的財富,其中蘊含大量有用的(有助于管理和決策)信息和知識。計算機和通訊技術(shù)的發(fā)展,使數(shù)據(jù)量急劇增加。收集、傳輸、存儲、整合、分析與挖掘數(shù)據(jù)的各項技術(shù)快速發(fā)展。
數(shù)據(jù)挖掘是從大量的、不完全的、有噪聲的、模糊的、隨機的實際應(yīng)用數(shù)據(jù)中,提取隱含在其中的、事先不知道的、但又是潛在有用的信息和知識的過程[4]。數(shù)據(jù)挖掘計算吸納了諸如統(tǒng)計學(xué)、機器學(xué)習(xí)、模式識別、數(shù)據(jù)庫和數(shù)據(jù)倉庫、信息檢索、可視化、算法、高性能計算和許多應(yīng)用鄰域的大量技術(shù),數(shù)據(jù)挖掘研究與開發(fā)的邊緣學(xué)科特性極大地促進了數(shù)據(jù)挖掘的成功和廣泛應(yīng)用[5]。目前,數(shù)據(jù)挖掘技術(shù)已廣泛應(yīng)用于金融、醫(yī)療保健、市場業(yè)、零售業(yè)、制造業(yè)、司法、工程和科學(xué)、保險業(yè)等領(lǐng)域。
早期,數(shù)據(jù)挖掘課程主要針對計算機、管理、金融等專業(yè)的研究生開設(shè),隨著大數(shù)據(jù)時代的到來和數(shù)據(jù)挖掘技術(shù)的廣泛應(yīng)用,國內(nèi)外很多高校陸續(xù)在本科生中開設(shè)系列大數(shù)據(jù)課程,數(shù)據(jù)挖掘是其中的一門重要課程。
2 教學(xué)內(nèi)容設(shè)計
2.1 基本思路
數(shù)據(jù)挖掘課程主要介紹數(shù)據(jù)挖掘技術(shù)的基本概念和方法。研究生階段的數(shù)據(jù)挖掘課程主要側(cè)重于理論及算法研究,即為“研究型”教學(xué)。實驗內(nèi)容也以研究型為主,即要求利用高級語言實現(xiàn)新的數(shù)據(jù)挖掘算法或改進某一經(jīng)典算法,并利用機器學(xué)習(xí)數(shù)據(jù)庫中的數(shù)據(jù)集進行算法的測試工作。
本科教學(xué)有課時限制,本科生不像研究生那樣專攻數(shù)據(jù)挖掘。根據(jù)本科生的實際情況,調(diào)整傳統(tǒng)的以理論算法為主的授課模式,以最大限度的調(diào)動學(xué)生的學(xué)習(xí)積極性,最大可能的促進學(xué)生掌握數(shù)據(jù)挖掘體系結(jié)構(gòu)知識、提高應(yīng)用操作技能。即將數(shù)據(jù)挖掘由“研究型”教學(xué)逐步向“應(yīng)用型”轉(zhuǎn)變。
為了實現(xiàn)這一轉(zhuǎn)變,選用一款數(shù)據(jù)挖掘的軟件:IBM SPSS Modeler。Modeler是第一款以圖形化“語法”為用戶界面的數(shù)據(jù)挖掘軟件。Modeler擁有豐富的數(shù)據(jù)挖掘算法,操作簡單易用,分析結(jié)果直觀易懂,圖形功能強大,支持與數(shù)據(jù)庫之間的數(shù)據(jù)和模型交換,可以使用戶方便快捷地實現(xiàn)數(shù)據(jù)挖掘[6]。
將對Modeler的學(xué)習(xí)貫穿于數(shù)據(jù)挖掘理論中,在IBM SPSS Modeler上具體實現(xiàn)分類、聚類、關(guān)聯(lián)分析、社交網(wǎng)絡(luò)分析、文本挖掘、Web挖掘等數(shù)據(jù)挖掘功能。學(xué)生通過實際操作,盡快掌握軟件的使用方法和處理步驟;通過案例演示,了解軟件的輸出結(jié)果,從而得出正確的分析結(jié)論;通過對某個算法基本思路的了解,進一步提高方法應(yīng)用和分析水平,升華對數(shù)據(jù)挖掘方法的認識。
2.2 理論教學(xué)內(nèi)容設(shè)計
針對大數(shù)據(jù)時期的數(shù)據(jù)特點和應(yīng)用特點,在講授傳統(tǒng)的分類、聚類、關(guān)聯(lián)分析等基本數(shù)據(jù)挖掘方法之外,還增加了社交網(wǎng)絡(luò)分析、文本挖掘和Web挖掘等內(nèi)容。
⑴ 數(shù)據(jù)挖掘概述
介紹數(shù)據(jù)挖掘的基本概念,為什么要進行數(shù)據(jù)挖掘,數(shù)據(jù)挖掘的步驟和基本方法。
如何進行大數(shù)據(jù)的分析和挖掘是數(shù)據(jù)挖掘技術(shù)面臨的新挑戰(zhàn),介紹大數(shù)據(jù)挖掘的基本概念,大數(shù)據(jù)挖掘的特點等。
⑵ 數(shù)據(jù)預(yù)處理
低質(zhì)量的數(shù)據(jù)將導(dǎo)致低質(zhì)量的挖掘結(jié)果。因此,在數(shù)據(jù)挖掘之前,應(yīng)對數(shù)據(jù)進行預(yù)處理,以改進數(shù)據(jù)的質(zhì)量,從而有助于提高其后的挖掘過程的準確率和效率。介紹數(shù)據(jù)預(yù)處理的基本方法:數(shù)據(jù)清理,數(shù)據(jù)集成,數(shù)據(jù)規(guī)約和數(shù)據(jù)變換。
⑶ 分類與預(yù)測
分類是描述或識別數(shù)據(jù)類或概念的模型(或函數(shù))的過程,以便能夠使用模型預(yù)測類標號未知的對象。預(yù)測是利用已有數(shù)據(jù)來推算預(yù)測變量的未來值。
介紹數(shù)據(jù)分類和預(yù)測的基本概念和方法,包括決策樹歸納、貝葉斯分類、回歸分析等。
⑷ 聚類分析
聚類分析將一個給定的數(shù)據(jù)對象集合分成不同的簇,最大化簇內(nèi)的相似性,最小化簇間的相似性。
介紹聚類的基本概念和方法,包括基本聚類分析的概述、劃分方法、層次方法、基于密度的方法和基于網(wǎng)格的方法。
⑸ 關(guān)聯(lián)分析
關(guān)聯(lián)分析是指在交易數(shù)據(jù)、關(guān)系數(shù)據(jù)或其他信息載體中,查找存在于項目集合或?qū)ο蠹现g的頻繁模式、關(guān)聯(lián)、相關(guān)性、或因果結(jié)構(gòu)。
介紹頻繁模式和關(guān)聯(lián)分析的基本概念和方法,如購物籃分析,Apriori算法和它的變形等。
⑹ 社交網(wǎng)絡(luò)分析
社交網(wǎng)絡(luò)分析是指為理解人類各種社交關(guān)系的形成、行為特點分析以及信息傳播的規(guī)律提供的一種可計算的分析方法。
介紹社交網(wǎng)絡(luò)的基本概念及應(yīng)用,社交網(wǎng)絡(luò)分析的基本方法和模型。
⑺ 文本挖掘
文本挖掘是一個以半結(jié)構(gòu)或者無結(jié)構(gòu)的自然語言文本為對象的數(shù)據(jù)挖掘,是從大規(guī)模文本數(shù)據(jù)集中發(fā)現(xiàn)隱藏的、重要的、新穎的、潛在的有用的規(guī)律的過程。
介紹文本挖掘的概念,文本挖掘的主要算法和SPSS Modeler文本挖掘節(jié)點的操作方法。
⑻ Web挖掘
Web挖掘的目標是從Web的超鏈接結(jié)構(gòu)、網(wǎng)頁內(nèi)容和使用日志中探尋有用的信息。
介紹Web挖掘的概念,Web挖掘的關(guān)鍵技術(shù)和技術(shù)流程的實現(xiàn)。簡單介紹了互聯(lián)網(wǎng)上的日志分析,數(shù)據(jù)挖掘與電子郵件,數(shù)據(jù)挖掘與電子商務(wù)等。
2.3 實驗設(shè)計
本課程在幫助學(xué)生理解大數(shù)據(jù)和數(shù)據(jù)挖掘的基本理論的同時,注重實際操作能力的培養(yǎng),使學(xué)生能夠掌握Modeler的基本功能和一般方法,并迅速運用到數(shù)據(jù)挖掘的實踐中。
實驗環(huán)境:SPSS Modeler 14.1及以上版本(實驗5需安裝相應(yīng)版本的文本挖掘模塊)
實驗方法:由教師給出實驗的大致步驟和數(shù)據(jù)集,學(xué)生具體上機實現(xiàn),并對挖掘過程的每一步進行分析,對最終的實驗結(jié)果進行分析,得出最終結(jié)論。
⑴ 利用決策樹模型進行分類預(yù)測
分別通過決策樹的三種算法(分類回歸樹、CHAID算法、QUEST算法)找到影響客戶流失的重要因素以輔助實現(xiàn)客戶流失的事前控制,并對三種算法做對比分析。
⑵ 利用貝葉斯網(wǎng)絡(luò)模型進行分類預(yù)測
實驗內(nèi)容:分別利用TAN貝葉斯網(wǎng)絡(luò)和馬爾科夫毯網(wǎng)絡(luò),研究哪些因素是影響學(xué)生是否參與社會公益活動的顯著因素。
⑶ 聚類分析
實驗內(nèi)容:利用Modeler的兩步聚類模型對電信客戶數(shù)據(jù)文件中的非流失客戶進行細分。
⑷ 關(guān)聯(lián)分析
實驗內(nèi)容:利用Modeler的序列關(guān)聯(lián)分析模型,研究網(wǎng)民的一般瀏覽模式。
⑸ 文本挖掘
實驗內(nèi)容:利用Modeler文本挖掘功能中的File List節(jié)點以及其他節(jié)點,對音樂調(diào)查數(shù)據(jù)進行文本類別分析。
3 教學(xué)方法與手段
3.1 弱化數(shù)據(jù)挖掘理論和算法,強調(diào)數(shù)據(jù)挖掘方法的應(yīng)用
傳統(tǒng)的數(shù)據(jù)挖掘課程教學(xué)中,強調(diào)使學(xué)生理解復(fù)雜的理論和算法。此種方法較適合于研究生階段的學(xué)生,而對于本科生而言,往往很難理解這些理論,并由此產(chǎn)生對課程的畏懼心理。
針對本科生的特點,本課程盡量弱化理論和算法,強調(diào)應(yīng)用。通過對各種實例的分析和實驗,使學(xué)生面對具體應(yīng)用問題時,能夠利用SPSS Modeler設(shè)計數(shù)據(jù)處理的過程,選取合適的數(shù)據(jù)挖掘方法,并最終得到較理想的數(shù)據(jù)挖掘結(jié)果。
例如,關(guān)于“關(guān)聯(lián)分析”,關(guān)聯(lián)分析一般由兩步構(gòu)成:①找出頻繁項集;②由頻繁項集產(chǎn)生強關(guān)聯(lián)規(guī)則。其中,第①步是重點,可由多種方法實現(xiàn):
⑴ 基本的Apriori算法;
⑵ 多種擴展的Apriori算法,用于提高效率和可伸縮性;
⑶ 頻繁模式增長方法;
⑷ 使用垂直數(shù)據(jù)格式方法。
上述的方法都是用于實現(xiàn)最簡單的關(guān)聯(lián)分析:挖掘單維、單層、布爾關(guān)聯(lián)規(guī)則。而涉及到多維、多層、量化的關(guān)聯(lián)規(guī)則,則方法會更復(fù)雜。
本課程對“關(guān)聯(lián)分析”這一章的設(shè)計思路如下。
⑴ 理論部分的講授內(nèi)容
理論部分的講授內(nèi)容包括:關(guān)聯(lián)分析的基本概念(頻繁項集、閉項集、關(guān)聯(lián)規(guī)則、支持度、置信度);關(guān)聯(lián)分析的類型和基本步驟;基本的Apriori算法(重點掌握其實現(xiàn)步驟);由頻繁項集產(chǎn)生強關(guān)聯(lián)規(guī)則的方法;相關(guān)分析(相關(guān)性概念,提升度,卡方檢驗)。
⑵ 例題和練習(xí)
由教師完成例題,學(xué)生完成類似的練習(xí)。第1步:給出一個數(shù)據(jù)量較少的數(shù)據(jù)集,按照基本Apriori算法的步驟手工找出頻繁項集。第2步:使用與上一步相同的數(shù)據(jù)集,依靠上一步找出的頻繁項集,產(chǎn)生強關(guān)聯(lián)規(guī)則。第3步:給出一個數(shù)據(jù)集,分別利用提升度和卡方檢驗兩種方法進行相關(guān)分析。
⑶ 綜合實例
通過綜合實例使學(xué)生加深對理論的理解,掌握軟件的操作。
數(shù)據(jù)挖掘任務(wù)為:商品關(guān)聯(lián)性分析。數(shù)據(jù)挖掘工具使用SPSS Modeler 17.0。數(shù)據(jù)集為SPSS Modeler自帶的數(shù)據(jù)集BASKETS.txt,此數(shù)據(jù)集記錄了超市顧客的個人信息和他們的一次購買商品數(shù)據(jù)。數(shù)據(jù)挖掘的建模方法采用Apriori算法。
⑷ 實驗
由教師介紹序列關(guān)聯(lián)和Sequence算法的基礎(chǔ)知識,給出實驗的基本步驟;由學(xué)生完成實驗過程,提交實驗報告和數(shù)據(jù)挖掘結(jié)果。
數(shù)據(jù)挖掘任務(wù)為:網(wǎng)民的一般瀏覽模式分析。數(shù)據(jù)挖掘工具為:SPSS Modeler 17.0。數(shù)據(jù)集為客戶瀏覽網(wǎng)頁記錄數(shù)據(jù)文件WebData.mdb(由教師提供)。建模方法為Sequence算法。
3.2 采用任務(wù)驅(qū)動的教學(xué)方式,激發(fā)學(xué)生自主學(xué)習(xí)的積極性
在教學(xué)模式和方法上進行改革,采用任務(wù)驅(qū)動探究式教學(xué)模式。任務(wù)驅(qū)動探究式教學(xué)模式以課程任務(wù)為依托。改變以往以純理論的教學(xué)方式,加入實踐和課堂討論環(huán)節(jié),將理論知識講解和課程任務(wù)有機地結(jié)合到一起。
考慮到數(shù)據(jù)挖掘連貫性以及工程龐大性,可以考慮以項目化的方式進行。將學(xué)生6個人左右分為一組,自主的在老師所提供的數(shù)據(jù)共享平臺中尋找感興趣的問題進行分析研究。將整個項目分解成為數(shù)據(jù)搜集、數(shù)據(jù)預(yù)處理、探索性分析、數(shù)據(jù)挖掘、結(jié)果分析等一系列的小任務(wù),安排階段性的任務(wù)目標,層序漸進,逐步的建立學(xué)生完成項目的信心并最終完成整個項目。
4 結(jié)束語
數(shù)據(jù)挖掘技術(shù)是大數(shù)據(jù)時代的關(guān)鍵技術(shù)和核心內(nèi)容。近年來,國內(nèi)外高校都陸續(xù)開始在計算機、管理、金融等本科專業(yè)中開設(shè)數(shù)據(jù)挖掘課程。
本科數(shù)據(jù)挖掘課程介紹數(shù)據(jù)挖掘的基本概念和方法。針對本科生的特點,課程在幫助學(xué)生理解大數(shù)據(jù)和數(shù)據(jù)挖掘基本理論的同時,注重實際操作能力的培養(yǎng)。以數(shù)據(jù)挖掘過程為線索講解SPSS Modeler軟件操作,將IBM SPSS Modeler的運用貫穿到理論教學(xué)之中,在Modeler上具體實現(xiàn)分類、聚類、關(guān)聯(lián)分析、社交網(wǎng)絡(luò)分析、文本挖掘、Web挖掘等數(shù)據(jù)挖掘功能。
在課堂教學(xué)中,將數(shù)據(jù)挖掘方法、軟件操作、案例分析有機結(jié)合,通過案例使學(xué)生直觀理解理論,正確應(yīng)用方法。
參考文獻(References):
[1] 程學(xué)旗,靳小龍,王元卓等.大數(shù)據(jù)系統(tǒng)和分析技術(shù)綜述[J].軟
件學(xué)報,2014.25(9):1889-1908
[2] 孟小峰,慈祥.大數(shù)據(jù)管理:概念、技術(shù)與挑戰(zhàn)[J].計算機研究
與發(fā)展,2013.50(1):146-169
[3] 李國杰,程學(xué)旗.大數(shù)據(jù)研究:未來科技及經(jīng)濟社會發(fā)展的重
大戰(zhàn)略領(lǐng)域——大數(shù)據(jù)的研究現(xiàn)狀與科學(xué)思考[J].中國科學(xué)院院刊,2012.27(6):647-657
[4] 周森鑫,盛鵬飛,王夫芹.數(shù)據(jù)挖掘課程案例教學(xué)研究[J].計算
機技術(shù)與發(fā)展,2012.22(11):183-186
[5] Jiawei Han, Micheline Kamber, Jian Pei.數(shù)據(jù)挖掘:概念與
技術(shù)(原書第3版)[M].機械工業(yè)出版社, 2012.
[6] 薛薇.基于SPSS Modeler的數(shù)據(jù)挖掘(第2版)[M].中國人民
大學(xué)出版社,2014.