摘 要:校園大數據分析是目前大數據研究的重要領域,針對歷年積累的大量學生考勤數據,傳統的數據庫技術幾乎無法完成全量的數據分析,串行的計算方法很難在短時間內計算出分析結果。大數據技術是解決此類問題的一種較好的方法,本文基于數據挖掘技術的條件下,通過對大學生上課考勤數據進行提取、轉換與加載,挖掘分析大學生上課考勤數據是否存在考勤行為異常的現象,對大學生上課考勤管理的完善與發展具有一定的參考借鑒意義。
關鍵詞:數據挖掘;考勤管理;數據處理
引言:
20世紀80年代以來,隨著計算機信息技術產業的快速發展,數據庫技術得到了廣泛的應用,存儲在各個領域的信息和數據類型也在迅速增長。在過去,僅僅依靠數據庫管理系統和統計方法來搜索和分析信息的機制和模型遠遠不能滿足現實社會的需要。因此,如何從海量數據中獲取有價值的信息或知識,將是當前一項極其艱巨的任務。為了滿足這一需求,消除傳統數據庫操作的弊端,數據挖掘技術得到了飛速的發展和進步,改變了數據內部使用的新思路。采用數字化手段進行高校大學生上課考勤管理日益普遍,大量的考勤數據中隱含了可用于指導教學的信息,如何將這些信息挖掘出來是值得關注的問題。本文以數據挖掘技術為基礎,對大學生上課考勤數據進行處理與分析,對大學生上課考勤管理具有重要的意義。
一、數據挖掘概述
(一)數據挖掘的定義
數據挖掘技術是基于高科技的先進統計技術,學術界對數據挖掘技術沒有明確的定義。但它可以從廣義上定義,換句話說,數據挖掘的過程就是提取大量不完整的模糊數據。簡而言之,數學方法被用于從數據中提取知識。數據挖掘是另一種知識研究的方法和手段,數據挖掘是一門跨學科的技術,它不僅應用了高等數學中的概率論和統計學知識,而且還應用于數據庫和計算機中的數據存儲。數據挖掘過程還包括機器學習內容。大量數據的分析和研究模式化,需要各個領域的知識相互對照。從數據中提取的知識有助于有效地解決一些問題。數據挖掘技術包括數據預處理、與主題相關的數據匹配、數據集成和數據轉換,以及使用智能方法收集數據以發現其中包含的規則。
(二)數據挖掘的流程
一般的數據挖掘步驟是確定數據挖掘的目標、收集數據、提取目標數據、數據預處理、構建挖掘模型、模型評估、知識表示等過程,具體介紹如下:
1.建立立項目目標:挖掘項目必須包括完成項目的價值所在。
2.數據收集:以既定的系統方式收集和測量有針對性的變量的信息,來源可以是網絡提取、業務調查。
3.數據預處理:將收集的數據“格式化”,以便于之后的模型訓練與統計。
4.數據挖掘:通過一些算法模型或者分析方法,將收集到的原始數據轉換成有用信息的過程。
5.模型評價:數據挖掘結果的綜合評價,數據挖掘模型、挖掘結果的判定,算法執行時間及穩定性等。
6.知識表示:它以易于理解的形式呈現給用戶,將學習規則轉化為人們能夠理解的知識。
(三)數據挖掘的算法
數據挖掘常用算法主要包括以下幾種:
1.決策樹算法。決策樹是一個樹結構的算法模型,可以是二叉樹,也可以是非二叉樹,樹中的根節點表示整個樣本數據集,非葉子節點表示樣本集中的屬性,葉子節點表示樣本集所屬的類別,樹中的每個分支表示樣本集在該分支節點上的輸出。
2.K-Means算法。K-Means算法主要過程是根據數據集的特征將數據劃分為不同的類別,它與處理混合正態分布的最大期望算法很相似。
3.SVM算法。SVM算法把樣本集中的每個樣本都看成一個個獨立的向量。找到一個最優的超平面H(d),將不同類別的向量分別開來,使類別之間的間隔最大。
4.Ada Boost集成算法。Ada Boost算法是Boosting集成學習算法中的一種,除此之外還有Gardient Boosting算法。其核心是針對一個學習模型,同時使用多個弱學習器進行訓練學習。
二、大學生上課考勤數據處理
將大學生上課考勤歷史數據從高校大學生上課考勤管理系統中提取,經轉換后加載到數據倉庫的考勤業務事實表中。下面將利用SSIS完成數據的提取、轉換和加載功能。
(一)數據提取
登錄到高校大學生上課考勤管理系統后,將查詢條件設置為2018年4月1日至2018年4月31日的考勤數據,査詢報表生成后,以Excel文件格式導出數據。高校大學生上課考勤管理系統導出的數據源包括學號、姓名、考勤時間、考勤地點四列。為確保學生隱私,本文將姓名刪除,學號也不是實際值。由于從高校大學生上課考勤管理系統導出的數據是Excel格式文件,要對數據進行轉換加載,首先要將考勤歷史數據從Excel文件中提取,因此選擇SSIS提供的數據流組件Excel源。
(二)數據轉換
為了與學生基本信息維度、日期維度、考勤機地點維度關聯,要對數據源中的學號、考勤時間、考勤地點列進行數據轉換。
1.類型轉換。指定要轉換的數據的列和數據轉換的類型,指定轉換輸出列是使用SSIS提供的不區分區域設置的較快分析例程,使用標準的區分區域設置的分析例程。設置字符串數據的列長度和數值數據的精度及小數位數時,如字輸出列長度小于其對應的輸入列長度,則輸出數據將被截斷。
2.查找轉換。查找轉換通過連接輸入列中的數據和引用數據集中的列來執行查找。可以使用該查找在基于于通用列的值的相關表中訪問其他信息。引用數據集可以是緩存文件、現有的表或視圖、新表或SQL查詢的結果。查找轉換使用OLEDB連接管理器或緩存連接管理器來連接到引用數據集。
3.排序轉換。排序轉換按升序或降序對輸入數據進行排序,并將排序后的數據復制到轉換輸出。可以對一個輸入應用多個排序;每個排序都由確定排序順序的一個數字來標識。首先對具有最小數字的列進行排序,然后對具有第二小數字的排序列進行排序,依此類推。
4.聚合轉換。聚合在信息科學中是指對有關的數據進行內容挑選、分析、歸類,最后分析得到人們想要的結果,主要是指任何能夠從數組產生標量值的數據轉換過程。聚合轉換不傳遞任何列,而是在數據流中為發布的數據創建新列。只有應用聚合函數的輸入列或轉換用于分組的輸入列才復制到轉換輸出。
5.派生轉換。派生列轉換通過對轉換輸入列應用表達式來創建新列值。可以使用此轉換執行下列任務:將不同列的數據連接到一個派生列中。通過使用SUBSTRING之類的函數從字符串數據中提取字符,然后將結果存儲到派生列中。對數值數據應用數學函數,然后將結果存儲到派生列中。創建比較輸入列和變量的表達式,提取日期時間值的某部分。
(三)數據加載
由于數據倉庫基于SQL Server數據庫構建,要將數據加載到數據庫中的考勤數據事實表,我們選擇OLEDB目標。目標是將數據流中的數據加載到不同類型的數據源或創建內存中數據集的數據流組件。目標具有一個輸入和一個錯誤輸出。
三、大學生上課考勤數據挖掘
完成了上述對考勤業務數據的提取、轉換、加載,接下來的任務是對大學生上課考勤歷史數據進行數據挖掘分析。
(一)數據準備
我們選擇2018年4月份的大學生上課考勤歷史數據進行分析,首先利用Excel數據挖掘客戶端瀏覽數據源,結果顯示2018年4月份的考勤總量呈先升高再下降的趨勢,這是因為月初是清明節放假,月底開始放五一假期,學生在學校上課的頻率逐漸減少。
(二)多維分析
使用Analysis Services對數據倉庫中的考勤數據進行分析,從不同地點的考勤機考勤統計數據,可以知道哪些學生沒有到指定教室上課。
學生的日常考勤行為具有一定規律性,偶爾會有些變化,如果想了解這些異常考勤情況,需要使用數據挖掘工具對考勤數據進行異常檢測。
(三)異常檢測
SQL Server 2008數據挖掘外接程序提供的“突出顯示異常值”工具能夠對數據進行異常檢測,異常檢測算法基于聚類算法。“突出顯示異常值”工具的工作步驟如下:(1)根據表中的當前數據創建數據挖掘結構;(2)使用Microsoft聚類分析算法創建新的數據挖掘模型;(3)按照模式創建預測查詢,以確定工作表中的任何值是否是小可能的。由于該工具分析的是整體趨勢,因此可能會發現行中的大多數值是正常的,并將只突出顯示該行的一個單元格。
利用“突出顯示異常值”工具對大學生上課考勤數據中的考勤時間和考勤地點列進行異常檢測。“異常閾值”指示特定單元格包含異常值的概率,將該值增大可降低篩除錯誤概率,減小該值將顯示更多突出顯示的單元格。異常閾值的初始值式中為75,這表示算法計算的突出顯示數據的有錯幾率為75%,大學生上課考勤數據的“異常閾值”設置為80。
“突出顯示異常值”工具完成分析時創建的新工作表,是考勤時間和考勤地點列中找到的離群值的匯總報表。該工具還會在考勤數據原始表中突出顯示異常值。深色突出顯示表示需要注意該行,淺色突出顯示表示特定單元格中的值很可疑。
結束語:
對于大學生上課考勤管理數據,采用數據挖掘進行數據處理和分析,可以判斷學生考勤行為異常現象。為進行全局數據分析,對于數據源中關系數據庫的數據可按類型轉換、查找轉換、排序轉換、聚合轉換、派生轉換的步驟進行數據處理,同時還要處理好數據加載及樣本選取問題。實踐證明,基于數據挖掘的大學生上課考勤管理是合理且可行的,并且取得較好的效果,后續還需在數據分析方法和算法優化方面繼續深入研究。
作者簡介:
楊旸;女;1986年12月18日;寧夏;漢族;在職研究生;對外經濟貿易大學統計學院在職人員高級課程研修班學員;大數據分析與應用