程香 程長征



摘 ?要:大數據環境下數據分析是數據價值發掘的重要過程,合理的數據分析方案對數據分析過程和成效至關重要,提出一個大數據分析流程方案設計方法。該方案詳細給出了分析流程應包括的內容,以及每個階段的主要任務和結果形式,從而能有效指導數據分析項目的執行。該方法成功地應用于在線學習課程成績預測分析項目中,對其他數據分析項目也具有通用性。
關鍵詞:大數據分析;分析方案;分析需求
中圖分類號:TP39 ? ? 文獻標識碼:A
Abstract:Data analysis is an important process for data value discovery in big data environment.A reasonable data analysis solution is crucial to the data analysis process and effectiveness.A method of big data analysis process scheme is proposed in this paper.The content that should be included in the analysis process,as well as the main tasks and results of each stage,are displayed in detail by the scheme,so as to guide the implementation of big data analysis projects effectively.This method was successfully applied to academic record prediction analysis project of some online learning courses with a public data set.It is also versatile for other data analysis projects.
Keywords:big data analysis;analysis scheme;analysis requirement
1 ? 引言(Introduction)
在大數據背景下,海量數據的應用價值已經顯現出來,進行數據分析與挖掘的研究與應用,對各行業都具有重要的戰略意義。隨著信息化程度的不斷提升,教育行業內部信息的不斷完善[1],在線學習數據分析必然要上升到大規模級別。在線學習數據分析將成為解學習者過去和現在的學習狀態,以及預測未來學習結果的一個重要手段[2]。雖然眾多研究表明通過分析在線學習數據,向學習者和教師提供反饋建議,能夠正向影響學習者行為和學習成績[3],但是對數據分析的實施過程關注較少。如何有效地進行在線學習相關數據分析和預測,已成為在線學習數據價值發掘的關鍵問題之一。
電子閱讀材料有助提升學習者對認知概念的理解,在線測試能夠實現學習者成績自動化評估,因而在線學習頗受青睞。但由于在線學習是由學習材料、評估任務和通信媒介共同支撐,因此,待分析的數據不但來源廣而且容量大,導致數據結構類型多[4],數據分析難度提升。目前在線學習的研究集中于學習效果的各種影響因素,某種特殊行為及風險預測[5,6]方面,而這些研究實施過程的可操作性和分析結論的準確性,有賴于合理組織數據分析流程,詳細規定各個階段的主要任務,制定出盡量科學規范的大數據分析方案。本文結合在線學習課程公開數據集的學習成績預測分析項目,詳細介紹數據分析方案制定方法和過程,并且給出數據分析可視化結果。
2 ?大數據分析流程的方案(The scheme of the big data analysis process)
數據分析本質是在數據資料采集和整理基礎上,運用統計和挖掘等科學分析方法,從數據中尋找客觀事物發展特征和規律,從而得出有指導意義的結論以預測指導未來實踐。
數據分析一般是對特定的領域問題展開研究,本文數據分析方案涵蓋以下方面內容:首先要對其背景進行全面了解,從而更好地把握分析目標和方向;分析和思考用戶需求,確定數據源的出處和所有可能的數據類型;擬定分析問題的難易程度及結果可能的呈現方式,搭建分析環境選擇分析平臺;根據分析目的確定算法建立模型,選擇模型參數;評估分析結果判斷模型是否需要改進,擇優選用;其他數據分析應當考慮的內容。
3 ?分析方案詳細制定過程(Detailed analysis of scheme-making process)
3.1 ? 問題定義
數據分析是利用數據統計和挖掘原理,從數據中獲取知識和信息。第一步要進行領域和問題定義,盡可能詳盡地了解所要分析項目的領域背景和挖掘目標,明確項目分析所要解決的問題。
edX是一個提供大規模開放在線課程的平臺,旨在加強校園教育,推進教育研究,并增加全球在線學習機會。隨著平臺上課程持續上線,學習者數量不斷增加,但課程低通過率和高退出率的狀況令人堪憂。針對通過率問題,本文以學習者在線學習成績預測為分析目標,識別處于成績合格邊緣的學習者,以便給予干預和支持。
3.2 ? 分析工具選擇
目前用于數據分析的軟件眾多,從價格、界面友好性和編程難易程度方面來衡量,R不失為一個很好的選擇。R是開源軟件包,也是一種編程語言,具有強大的數據分析和可視化能力[7]。
Hadoop采用并行計算且節點易擴展,可以提高算法執行的時間效率,并且能夠解決內存等系統資源限制問題。對于涉及數據量大的分析項目,集成R和Hadoop作為數據分析平臺,可以借助R豐富的組件庫,擁有強大的數據統計分析能力,并且可以發揮Hadoop在分布式存儲和計算方面的優勢,進行全量數據分析。
3.3 ? 數據的獲取與處理
3.3.1 ? 設計數據需求
為了對特定問題進行分析,需要相關領域的數據。
(1)數據源確定。在確定領域和即將分析的問題后,數據的來源就能夠確定。根據挖掘分析問題的目標確定是否需要從Excel、其他統計軟件、數據庫、網頁等載體中獲得原始數據。
(2)數據獲取。數據分析一般需要加載外部數據源,根據具體需求決定加載何種結構的數據源。對于CSV、TXT、Excel數據和網頁中的數據,以及SPSS、SAS、Stata等統計軟件中的數據,R均可使用其相應包中的函數讀取;對于各種數據庫中的數據,可以用自定義的函數連接到數據庫,也可使用CRAN中多個連接數據庫的R包,將各種系統中的數據載入R中。
案例從edx在線學習平臺公開數據集獲取分析數據,該數據集是2013學年上線的16門課程的學習者學習記錄,共60多萬條。本文通過函數加載學習者數據,為后續探查和處理數據,學習行為數據建模等數據分析過程準備數據。
3.3.2 ? 探索性分析
對數據特征和規律進行初步探查研究,有助于后續分析過程決定采用何種預處理方式,以及選擇何種算法和模型。對數據進行探索性分析可以從以下方式入手:
(1)數值指標。使用相關函數得到數據集的數字指標,了解數據的整體結構、變量情況、分布指標、缺失值等情況。該方法可以給出各項統計指標的確切值,有助于制作和觀察圖形、設定算法參數。
(2)可視化視圖。圖形顯示數據將比數字化統計方法表現得更加形象生動和直觀。對描述性和預測性分析數據結果,用R可將原始模型表達成豐富多彩的圖形和可視化視圖。
利用上述原理,案例分析項目結合數字化指標與可視化圖形,對學習者行為樣本數據進行探索性分析,以下給出部分探索性分析結果。
①分布情況。通過各行為變量的直方圖可以了解相關變量的大致分布情況,案例數據集觀測值的大多變量分布在最小的分組段,說明學習者數量雖然可觀,但多數人學習投入程度不高。其中變量nchapters取值主要集中在0至2和2至4組段,可見多數人學習課程不足5個章節。
②缺失值。抽取學習者的基本信息、成績和幾項學習行為特征數據共11個屬性,分析缺失值在數據集中的分布情況,發現涵蓋所抽取屬性的完整記錄共有132751條,其余記錄均存在1至8個不等的缺失值。
③相關性。對抽取的學習者學習行為特征向量進行相關性分析,結果如圖1所示。從圖中可見成績與nevents、ndays_act、nchapters的相關性都比較高。
3.3.3 ? 數據預處理
為了改善數據質量,在將數據提交給算法和工具之前,需要對數據進行清洗、聚合、去噪、整理和格式化等一系列操作,并處理成適合進行挖掘分析的形式。采用何種預處理取決于數據探索性分析階段了解的信息,這些信息包括相關變量的取值范圍、缺失值情況、有無偏差及偏差程度等。
案例進行的數據預處理主要包括:在數據清洗階段,去除內部不一致數據記錄,并刪除有缺失屬性的記錄。在數據歸約階段,對樣本數據進行屬性歸約,選擇影響學習成績的學習特征行為向量作為學習者學習行為特征數據。在數據變換階段,構造年齡屬性,以便對不同年齡段的學習行為和成績進行分組分析;此外還對成績屬性進行了離散化,將處于子區間[0,0.5]、(0.5,0.7]、(0.7,1]的成績分別映射到1、2、3三個值;最后對特征向量進行標準化用于后續建模。
3.4 ? 模型構建與評估
3.4.1 ? 模型選擇與構建
(1)模型選擇
大數據分析需借助模型和算法進行挖掘操作,從數據集中發現有用的知識或模式。目前大數據分析采用比較多的挖掘算法是關聯分析、聚類分析、決策樹、分類與預測等[8],對具體分析業務顯然不可能使用固定的算法和參數來建立模型。并且算法模型應在機器學習的各階段進行持續評估和改善,產生更好的分析效果。
對于算法和模型的選擇,首先要確定使用何種算法及相應參數的大概取值范圍。算法的選擇主要由建模在數據挖掘應用中歸屬何種類別決定。對于參數范圍的選擇,采用試探法或者從數據探索性分析的結果來確定大致的范圍。案例采用CART決策樹和神經網絡預測學習者成績,并從中選擇預測效果最好的模型。
(2)模型構建
構建神經網絡模型(Artificial Neural Networks,ANNs)和CART決策樹(Classification and Regression Tree,CART)時將采用公共數據集中反映學生學習行為的5個屬性作為自變量。隨機選擇3/4作為訓練樣本,剩下的作為測試樣本。
對于神經網絡模型,設定神經網絡的輸入節點數為5,輸出節點數為1,隱藏層中的節點個數為6,權重值的衰減精度為0.0005。采用訓練樣本建模的分類正確率為95.14%,其混淆矩陣如表1所示。對于CART決策樹模型,表1顯示了利用訓練樣本建立的CART決策樹模型混淆矩陣,該模型分類正確率為95.13%。
(3)模型評估與使用
對模型進行評估目的是判斷每個模型的預測能力,從而在多個模型中選擇一個最優模型。可采用多種方法對模型的各方面進行測評,這些方法有:a.采用模型的混淆矩陣,討論模型的預測結果和真實結果之間的差距;b.利用風險圖,對模型的預測結果與真實結果之間的差別進行比較分析;c.通過繪制ROC圖像進行模型評估;d.得分數據集。
案例利用測試樣本對兩個模型進行評價,評估模型的預測性能。表2為兩種模型在測試樣本下的混淆矩陣,模型預測的準確率分別為94.92%和94.95%。盡管兩類模型的分類準確率都很高,但是預測值為2的類別的召回率TP/(TP+FN)顯然均為0,無法正確標記出成績處于及格邊緣的學生類別。
分析源數據集得知,我們感興趣的成績處于及格邊緣的學習者元組數據非常少,數據集存在類失衡的問題,必須對算法模型進行改善,以提高分類準確性。鑒于多類任務的類不平衡問題采用過抽樣和欠抽樣效果不明顯,我們將成績泛化成兩類,即分數(grade)在0.5至0.7的學生者為成績合格邊緣學習者,其余的學習者為非邊緣學習者,再對模型的輸入數據進行過抽樣處理。重新構建模型,得到兩種模型在測試樣本下的混淆矩陣如表3所示。
計算得到神經網絡模型預測的準確率為91.11%,預測值為1的類(成績合格邊緣學習者)的召回率為96.70%;采用CART決策樹模型預測的準確率為90.50%,預測成績處于合格邊緣學習者所屬類的召回率為95.94%。可見神經網絡的預測性能更好,選擇該模型用于學習者成績預測更適合。
4 ? 結論(Conclusion)
在線學習數據分析流程的研究對數據價值發掘意義匪淺。要發掘在線學習數據的潛在價值,滿足在線學習數據分析需求,必須制定一個盡量完善的大數據分析方案,用來指導整個數據分析項目流程的執行。本文研究了數據分析前必須了解的分析對象相關信息,分析方案的詳細制定過程及各個階段的主要任務和方法,并且結合案例給出各個階段的結果形式,對其他類似學習系統也具有推廣與應用價值。然而,在本文的研究中還存在不足,本文為了簡化預處理,缺失值采用了刪除法,在具體的數據分析方案中需要研究采用刪除法是否會影響數據集的數據結構,對此有待于今后更進一步理論和實驗研究。
參考文獻(References)
[1] 余鵬,李艷.大數據視域下高校數據治理方案研究[J].現代教育技術,2018,28(06):60-66.
[2] 羅達雄,葉俊民,郭霄宇,等.ARPDF:基于對話流的學習者成績等級預測算法[J].小型微型計算機系統,2019,40(02):267-274.
[3] Jennifer M,Johanna F,Olaf K.Expectancy value interactions and academic achievement:Differential relationships with achievement measures[J].Contemporary Educational Psychology,2019,58:58-74.
[4] Wassan J T.Discovering Big Data Modelling for Educational World[J].Procedia-Social and Behavioral Sciences,2015,176:642-649.
[5] Ritanjali P,Ranjan S P,Dheeraj S.Online learning: Adoption,continuance,and learning outcome-A review of literature[J].International Journal of Information Management,2018,43:1-14.
[6] Prior D D,Mazanov J,Meacheam D,et al.Attitude,digital literacy and self-efficacy:Flow-on effects for online learning behavior[J].The Internet and Higher Education,2016,29:91-97.
[7] What is R?[EB/OL].https://cran.r-project.org/manuals.html.2019-04- 23.
[8] 高志鵬,牛琨,劉杰.面向大數據的分析技術[J].北京郵電大學學報,2015,38(03):1-12.
作者簡介:
程 ?香(1982-),女,碩士,高級工程師.研究領域:信息管理,數據分析研究.
程長征(1979-),男,博士,教授.研究領域:計算固體力學.