楊雄 李曉芳 謝光前 肖賢建
摘要:數(shù)據(jù)挖掘在本科層次計(jì)算機(jī)人才培養(yǎng)方面的應(yīng)用研究方興日盛,建設(shè)高效的實(shí)驗(yàn)平臺和實(shí)訓(xùn)方案是推動提升人才培養(yǎng)質(zhì)量的必由之路?;趇graph的網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺,定位于本科層次創(chuàng)新型人才培養(yǎng)體系建設(shè),依托R語言和igraph開源項(xiàng)目,深入分析在創(chuàng)新實(shí)踐教學(xué)和大數(shù)據(jù)技能競賽背景下,如何無縫銜接校內(nèi)理論課程與校外實(shí)訓(xùn)項(xiàng)目之間的技能應(yīng)用,更好滿足跨學(xué)科、跨專業(yè)、跨年級的多元化教學(xué)要求,為培養(yǎng)學(xué)生創(chuàng)新思維、激發(fā)學(xué)習(xí)興趣、提升再學(xué)習(xí)能力提供了新的一體化教學(xué)實(shí)訓(xùn)環(huán)境。
關(guān)鍵詞:igraph;數(shù)據(jù)挖掘;實(shí)驗(yàn)建設(shè);創(chuàng)新思維;開源
中圖分類號:G642? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)21-0029-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
進(jìn)入21世紀(jì)以來,我國高等教育事業(yè)蓬勃發(fā)展,為加快發(fā)展壯大現(xiàn)代產(chǎn)業(yè)體系做出了重大貢獻(xiàn);但受多種因素影響,人才培養(yǎng)供給側(cè)和產(chǎn)業(yè)需求側(cè)在結(jié)構(gòu)、質(zhì)量、水平上還不能完全對接。新一代信息技術(shù)和大數(shù)據(jù)時代背景下[1],具備數(shù)據(jù)分析能力和商業(yè)洞察能力的人才將供不應(yīng)求,但是當(dāng)前本科院校在培養(yǎng)相關(guān)人才方面仍然存在一定的短板,特別是地方應(yīng)用型本科院校在師資力量、教學(xué)實(shí)驗(yàn)配置、實(shí)訓(xùn)內(nèi)容開設(shè)等方面存在著不少差距[2]。實(shí)訓(xùn)教學(xué)可以有效改變傳統(tǒng)理論課程內(nèi)容單一、“學(xué)不識用、用不識學(xué)”的尷尬,在深化產(chǎn)教融合,促進(jìn)教育鏈、人才鏈與產(chǎn)業(yè)鏈、創(chuàng)新鏈有機(jī)銜接,推進(jìn)人力資源供給側(cè)結(jié)構(gòu)性改革方面顯得尤為重要。
數(shù)據(jù)挖掘是從大量隨機(jī)數(shù)據(jù)中發(fā)現(xiàn)未知的、具有潛在意義的信息的過程,是傳統(tǒng)分析技術(shù)的延伸和擴(kuò)展[3]。與傳統(tǒng)的統(tǒng)計(jì)分析相比,數(shù)據(jù)挖掘是在沒有明確假設(shè)前提下進(jìn)行分析,所得到的信息是先前未知的、有效的和實(shí)用的。R語言既是一種用于數(shù)據(jù)分析建模及繪圖的語言,又是一個具有統(tǒng)計(jì)分析功能及強(qiáng)大作圖功能的軟件系統(tǒng),主要包括核心R標(biāo)準(zhǔn)包和各個專業(yè)領(lǐng)域的開源包,該語言在數(shù)據(jù)挖掘分析領(lǐng)域已具有明顯的優(yōu)勢[4]。近幾年,R語言在國內(nèi)也進(jìn)入了飛速發(fā)展階段,被廣泛應(yīng)用于各大行業(yè),例如互聯(lián)網(wǎng)銷售平臺阿里巴巴、京東等都將R語言應(yīng)用到了各自的銷售網(wǎng)站上,并開發(fā)了自動補(bǔ)貨系統(tǒng)。在此背景下,地方應(yīng)用型本科院校在開設(shè)數(shù)據(jù)科學(xué)相關(guān)課程時,構(gòu)建貼近產(chǎn)業(yè)技術(shù)需求、擁有低成本靈活性能的數(shù)據(jù)挖掘?qū)嶒?yàn)平臺就具有十分重要的現(xiàn)實(shí)意義。
1 網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺定位
互聯(lián)網(wǎng)技術(shù)的創(chuàng)新和發(fā)展實(shí)現(xiàn)了網(wǎng)絡(luò)信息分享的便捷性和數(shù)據(jù)傳播的海量化,促進(jìn)了信息應(yīng)用領(lǐng)域的空前繁榮,這些傳播于網(wǎng)絡(luò)的信息形成了網(wǎng)絡(luò)大數(shù)據(jù)的重要部分,對事件分析有著無可比擬的作用。然而,面對“多源、量大、內(nèi)容復(fù)雜、實(shí)時性”的網(wǎng)絡(luò)數(shù)據(jù),關(guān)鍵問題在于如何有效獲取并處理分析這些數(shù)據(jù),從而滿足現(xiàn)實(shí)需求。開源的網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺在經(jīng)濟(jì)性、直觀性、擴(kuò)展性、便捷性等方面擁有得天獨(dú)厚的優(yōu)勢,采用這種實(shí)訓(xùn)教學(xué)模式可以有效降低實(shí)驗(yàn)平臺的搭建成本,快速衍生功能模塊的便捷嵌入,直觀展示數(shù)據(jù)挖掘的可視化成果[5]。
Igraph[6]是Gabor Csardi基于R語言開發(fā)的一款網(wǎng)絡(luò)和圖論分析開源軟件包,它能夠快速處理大規(guī)模網(wǎng)絡(luò)并對隨機(jī)網(wǎng)絡(luò)、小世界網(wǎng)絡(luò)、無標(biāo)度網(wǎng)絡(luò)等提供分析和可視化功能。Igraph包含了R、C、Python等語言接口,方便提供了下列功能:(1)網(wǎng)絡(luò)可視化;(2)傳統(tǒng)圖論算法,如最小生成樹、網(wǎng)絡(luò)流、最短路徑等;(3)復(fù)雜網(wǎng)絡(luò)處理算法[7],如隨機(jī)網(wǎng)絡(luò)生成模型、K核分解、PageRank排序、社區(qū)發(fā)現(xiàn)算法等。該實(shí)驗(yàn)平臺通過plot.igraph函數(shù)、tkplot函數(shù)、rgl包和OpenGL提供可視化分析結(jié)果,并且保存處理JPG、BMP、TIF等各種格式的圖形文件?;趇graph的網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺不僅能夠?qū)?shù)據(jù)結(jié)構(gòu)圖論、網(wǎng)絡(luò)仿真、社會網(wǎng)絡(luò)分析等課程提供有效的實(shí)訓(xùn)支撐,同時還能鍛煉學(xué)生編程動手能力,提高創(chuàng)新水平,激發(fā)對科研的主動積極性。
2 Igraph網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺建設(shè)
Igraph在傳統(tǒng)圖論方面提供了特征中心、割點(diǎn)、割邊、度分布、圖遍歷、最小生成樹、最小割點(diǎn)集、最短路徑等經(jīng)典算法;復(fù)雜網(wǎng)絡(luò)方面igraph則具備了節(jié)點(diǎn)中心性排序、邊中心性度量、網(wǎng)絡(luò)生成和社團(tuán)挖掘、信息傳播動力學(xué)等多種應(yīng)用接口。安裝完igraph包的RStudio啟動界面如圖1所示,該界面由代碼編輯、命令控制臺、資源欄和其他欄組合而成。代碼編輯欄通常進(jìn)行代碼編輯及打開R語言腳本;命令控制臺顯示相應(yīng)的代碼執(zhí)行結(jié)果;位于右下角其他欄中的Packages目錄可進(jìn)行R包的安裝及加載(每次使用前需加載包到內(nèi)存中,也可在控制臺輸入library命令加載);資源欄用于數(shù)據(jù)源的導(dǎo)入加載,igraph可以從外部文件讀取原始數(shù)據(jù)并支持多種格式,如:excel、txt、csv、SPSS、SAS等,同時還支持MySOL等常用數(shù)據(jù)庫的數(shù)據(jù)讀取。
2.1 Igraph實(shí)驗(yàn)平臺解析
Igraph主要用來計(jì)算關(guān)系網(wǎng)絡(luò)的相關(guān)內(nèi)容,它提供了大量函數(shù)來創(chuàng)建、布置和生成圖。以社會網(wǎng)絡(luò)分析(Social Network Analysis)為代表的網(wǎng)絡(luò)數(shù)據(jù)挖掘本質(zhì)是利用各樣本間的關(guān)系(也稱為關(guān)系網(wǎng)絡(luò))來分析整體樣本的群落現(xiàn)象,并找出單個樣本節(jié)點(diǎn)在群落形成中的作用以及群落間的關(guān)系。Igraph關(guān)系網(wǎng)絡(luò)可以抽象為如表1所示的網(wǎng)絡(luò)基礎(chǔ)概念,并利用R語言和igraph自帶函數(shù)進(jìn)行可視化結(jié)果分析,如表2所示。
基于igraph的網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺從功能上可分為編輯層和顯示層兩部分,編輯層功能主要是代碼編輯和調(diào)試,顯示層則提供分析結(jié)果的可視化。由于igraph集成了多種圖論算法和網(wǎng)絡(luò)應(yīng)用接口,學(xué)生在簡化經(jīng)典算法編程工作量的同時,針對特定需求可對項(xiàng)目模塊進(jìn)行自主設(shè)計(jì),不再像Gephi等軟件僅僅停留于平臺參數(shù)設(shè)置及受限于算法功能不足的窘境。該平臺最低要求系統(tǒng)CPU為Intel P42.0GHz以上,內(nèi)存1G以上,操作系統(tǒng)可為Windows XP 32位或Windows 7 64位,編程語言為R或Python,對應(yīng)IDE為RStudio或Pycharm。
2.2 Igraph實(shí)驗(yàn)項(xiàng)目設(shè)置
打造面向地方應(yīng)用型本科院校的網(wǎng)絡(luò)數(shù)據(jù)挖掘平臺[8]能夠激發(fā)學(xué)生的學(xué)習(xí)動力、更靈活地發(fā)揮開源平臺的實(shí)力。傳統(tǒng)網(wǎng)絡(luò)數(shù)據(jù)挖掘軟件Gephi和Pajek雖然也能一定程度鍛煉學(xué)生的編程能力,但主要局限在軟件提供的原有項(xiàng)目設(shè)置規(guī)則層面,因此具備開源特征,同時簡化基礎(chǔ)算法實(shí)現(xiàn)的教學(xué)實(shí)訓(xùn)平臺就顯得意義重大。Igraph采用模塊化設(shè)計(jì)思想提供了功能完善的網(wǎng)絡(luò)應(yīng)用接口,R語言簡潔明了的語言風(fēng)格即使沒有編程經(jīng)驗(yàn)的學(xué)生也能快速掌握網(wǎng)絡(luò)數(shù)據(jù)的統(tǒng)計(jì)分析和功能開發(fā)[9],實(shí)現(xiàn)具有創(chuàng)新思維的“自主學(xué)習(xí)”。Igraph支持的現(xiàn)有項(xiàng)目設(shè)置體系如圖2所示[10],常州工學(xué)院物聯(lián)網(wǎng)工程、通信工程、軟件工程等專業(yè)在開設(shè)的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)可視化分析、網(wǎng)絡(luò)仿真等多門課程已開始自主設(shè)計(jì)相關(guān)實(shí)訓(xùn)類課題,反饋顯示設(shè)置的項(xiàng)目不僅能夠培養(yǎng)學(xué)生的綜合能力,更能夠突顯專業(yè)素養(yǎng)的形成,通過產(chǎn)教融合的培養(yǎng)過程為學(xué)生提供創(chuàng)新思維,無縫銜接校內(nèi)理論課程與校外實(shí)訓(xùn)項(xiàng)目之間的技能應(yīng)用。
3 Igraph網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺的教學(xué)模式
3.1 教學(xué)方案
定期開展交叉課程的交流學(xué)習(xí)活動,形成各學(xué)院專業(yè)系部匯集的數(shù)據(jù)結(jié)構(gòu)、網(wǎng)絡(luò)仿真、數(shù)據(jù)可視化分析等多學(xué)科融合的討論環(huán)境,能夠有效推動數(shù)據(jù)科學(xué)人才培養(yǎng)的技術(shù)起步和實(shí)驗(yàn)平臺的建設(shè)成效。R語言在數(shù)據(jù)分析和機(jī)器學(xué)習(xí)領(lǐng)域已成為一款重要的工具,并且與工業(yè)界和學(xué)術(shù)界保持著強(qiáng)大的聯(lián)動效應(yīng),因此學(xué)生在學(xué)習(xí)igraph實(shí)驗(yàn)課程內(nèi)容的同時能夠掌握貼近產(chǎn)業(yè)需求的前沿技能,改變傳統(tǒng)理論課程內(nèi)容單一、“學(xué)不識用、用不識學(xué)”的尷尬。學(xué)生可根據(jù)自身不同階段靈活選擇專攻的實(shí)驗(yàn)項(xiàng)目,教師也可以通過課堂教授、研討會、分組PK、答疑等多種形式推進(jìn)教學(xué)效果。
3.2 運(yùn)行機(jī)制
由于igraph支撐的實(shí)訓(xùn)關(guān)聯(lián)課程大部分為高年級的專業(yè)基礎(chǔ)課或?qū)I(yè)選修課,因此基于igraph平臺教學(xué)首要考慮的原則就是自覺、開放。與其他工程類實(shí)訓(xùn)平臺不同,igraph平臺沒有額外耗材的開支,主要通過下載數(shù)據(jù)源進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)分析和數(shù)據(jù)挖掘,因此該平臺的教學(xué)及考核運(yùn)行機(jī)制主要可以分為以下四個方面:
(1)搭建特色鮮明、凸顯專業(yè)能力建設(shè)的開源實(shí)訓(xùn)平臺,為多學(xué)科關(guān)聯(lián)課程的實(shí)驗(yàn)教學(xué)奠定基礎(chǔ),致力培養(yǎng)具有工程能力的“雙師型”教師。
(2)建立具備創(chuàng)新能力和技戰(zhàn)術(shù)水平的數(shù)據(jù)技能競賽團(tuán)隊(duì),重點(diǎn)針對考核排名靠前的選手遴選參加比賽,通過各種國際國內(nèi)賽事,提升人才培養(yǎng)質(zhì)量,形成良性循環(huán)運(yùn)作。
(3)強(qiáng)化創(chuàng)新思維,更新在線項(xiàng)目,銜接產(chǎn)業(yè)界技術(shù)需求,形成具有自生長因子的實(shí)訓(xùn)教學(xué)平臺,通過該平臺檢驗(yàn)人才培養(yǎng)成效,反饋培養(yǎng)方案存在的不足。
(4)依托平臺繼續(xù)做好產(chǎn)教融合工作,結(jié)合地方經(jīng)濟(jì)和社會發(fā)展、企業(yè)發(fā)展的技術(shù)需求,建成高標(biāo)準(zhǔn)、高水平、開放兼容的創(chuàng)新教改基地,進(jìn)一步探索知識、素質(zhì)和能力的協(xié)調(diào)統(tǒng)一。
4 總結(jié)與展望
“知行合一”理念將會貫穿整個實(shí)訓(xùn)平臺的建設(shè)和使用過程,基于igraph的網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺能夠很好地滿足跨學(xué)科、跨專業(yè)、跨年級的多元化教學(xué)要求,緊密結(jié)合產(chǎn)業(yè)界項(xiàng)目的工程能力要求,為培養(yǎng)學(xué)生創(chuàng)新思維、激發(fā)自主學(xué)習(xí)興趣、提升再學(xué)習(xí)能力提供了一體化教學(xué)實(shí)訓(xùn)環(huán)境。
該平臺支持相互獨(dú)立的各功能模塊,提供圖論、復(fù)雜網(wǎng)絡(luò)、信息動力學(xué)、社團(tuán)挖掘、動態(tài)網(wǎng)絡(luò)等多種網(wǎng)絡(luò)應(yīng)用接口,學(xué)生可以通過實(shí)際項(xiàng)目上機(jī)演練,多方位學(xué)習(xí)訓(xùn)練,做到與企業(yè)需求無縫銜接,真正解決網(wǎng)絡(luò)數(shù)據(jù)分析人才缺口的問題。同時,igraph整合了數(shù)據(jù)采集、數(shù)據(jù)清洗、數(shù)據(jù)建模、數(shù)據(jù)視圖等功能,提供了行業(yè)數(shù)據(jù)及相關(guān)案例用于研究設(shè)計(jì),教師科研工作也可融合該系統(tǒng)方便地對相關(guān)行業(yè)進(jìn)行統(tǒng)計(jì)分析,生成可視化數(shù)據(jù)報表。
Igraph網(wǎng)絡(luò)數(shù)據(jù)挖掘?qū)嶒?yàn)平臺建設(shè)運(yùn)行2年來,團(tuán)隊(duì)獲得了多種榮譽(yù),競賽學(xué)員在2018年全國首屆大學(xué)生大數(shù)據(jù)技能競賽中獲季軍1項(xiàng)、發(fā)表科技論文2篇、授權(quán)軟件著作權(quán)3項(xiàng)、獲校級優(yōu)秀畢業(yè)設(shè)計(jì)一等獎1項(xiàng)、二等獎3項(xiàng);教師團(tuán)隊(duì)依托平臺在校級中青年教師教學(xué)比賽中喜獲二等獎,獲批國家級大學(xué)生實(shí)踐創(chuàng)新訓(xùn)練項(xiàng)目1項(xiàng)、江蘇省大學(xué)生實(shí)踐創(chuàng)新訓(xùn)練計(jì)劃項(xiàng)目3項(xiàng)、教育部產(chǎn)學(xué)研合作協(xié)同育人項(xiàng)目2項(xiàng)。在今后的教學(xué)實(shí)訓(xùn)過程中,我們?nèi)詫⒎e極探索平臺功能,開發(fā)設(shè)立更貼近產(chǎn)教融合需求、凸顯專業(yè)能力培養(yǎng)的新項(xiàng)目,鼓勵教師和學(xué)生充分利用平臺提升教學(xué)效果,滿足企業(yè)對數(shù)據(jù)人才日益增長的迫切需求。
參考文獻(xiàn):
[1] 李雍頡.面向大數(shù)據(jù)信息時代計(jì)算機(jī)科學(xué)的應(yīng)用[J].電子技術(shù)與軟件工程,2018(2):166.
[2] 馮秀清,司杰.數(shù)據(jù)挖掘在高校人才優(yōu)化配置方面的應(yīng)用[J].科技與創(chuàng)新.2018(14):158-159.
[3]張良均,云偉標(biāo),王路.R語言數(shù)據(jù)分析與挖掘?qū)崙?zhàn)[M].北京:機(jī)械工業(yè)出版社,2015.10.
[4] 周蕓韜.基于R語言的大數(shù)據(jù)處理平臺的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù).2017,40(2):53-56.
[5] 王善勤,吳昌雨,陳業(yè)斌.大數(shù)據(jù)挖掘技術(shù)在高校專業(yè)內(nèi)涵建設(shè)中的應(yīng)用研究[J].佳木斯大學(xué)學(xué)報: 自然科學(xué)版.2016,34(5):827-830.
[6]Gabor Csardi. Igraph: Network analysis and visualization[EB/OL].https://cran.r-project.org/web/packages/InteractiveIGraph/index.html. 2019-02-13.
[7] 賀定龍,張功萱,李晨,等.復(fù)雜網(wǎng)絡(luò)仿真軟件設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì).2014(8):2764-2768.
[8] 王濤.基于數(shù)據(jù)挖掘的智能開放實(shí)驗(yàn)室系統(tǒng)的研究與設(shè)計(jì)[J].軟件導(dǎo)刊.2012,11(1):160-162.
[9] 岳強(qiáng),胡中玉,文瑾,等.基于R語言的數(shù)據(jù)挖掘課程實(shí)驗(yàn)設(shè)計(jì)[J].微型電腦應(yīng)用.2016,32(5):31-34.
[10]Wook-Shin Han, Wook-Shinm Lee, Jinsoo Pham, et.al. iGraph: A Framework for Comparisons of Disk-Based Graph Indexing Techniques[J]. PVLDB.2010(3):449-459.
【通聯(lián)編輯:王力】