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