楊君石
摘要:研究工作以某高校數(shù)據(jù)庫中存儲的與畢業(yè)生學習、就業(yè)相關(guān)的歷史數(shù)據(jù)為對象構(gòu)建模型用以預測畢業(yè)生就業(yè)去向。構(gòu)建流程包含知識發(fā)現(xiàn)的完整過程,應用數(shù)據(jù)挖掘算法,提出針對特定數(shù)據(jù)集的一系列包括預處理、欠抽樣及分類方法等處理方案,有效地實現(xiàn)預測目標,為高校數(shù)據(jù)庫海量歷史數(shù)據(jù)的利用提出新的思路,為高校就業(yè)指導工作提供數(shù)據(jù)支持。
關(guān)鍵詞:就業(yè)預測;數(shù)據(jù)歸約;空缺值;欠抽樣
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2019)04-0016-03
Fayyad等指出KDD(Knowledge Discovery in Databases)過程解決的基本問題是先根據(jù)需要對大量難以直接理解和處理的低級數(shù)據(jù)進行選擇、預處理、二次抽樣和轉(zhuǎn)換后,應用方法或算法從處理后的數(shù)據(jù)中識別和抽取、羅列模式,評估發(fā)現(xiàn)的模式,識別出更簡潔、更抽象(比如描述性的近似值或生成數(shù)據(jù)的模式)、更有用(比如對未來案例的預測性估計模型)的形式[1]。
本文以某高校為例,遵循知識發(fā)現(xiàn)(KDD)進程,應用數(shù)據(jù)挖掘技術(shù),構(gòu)建畢業(yè)生就業(yè)去向預測模型,對歷年高校畢業(yè)生在校期間的學業(yè)情況數(shù)據(jù)及就業(yè)相關(guān)數(shù)據(jù)進行科學分析,從中發(fā)現(xiàn)蘊藏可用的知識和潛在的規(guī)律,為各高校如何應對就業(yè)總量壓力逐年遞增、就業(yè)結(jié)構(gòu)性矛盾突出的形勢[2],為學生的就業(yè)指導工作制定正確決策提供科學的基于數(shù)據(jù)的參考依據(jù)。
1 數(shù)據(jù)來源
高校建立的學生信息管理系統(tǒng)數(shù)據(jù)庫中的數(shù)據(jù)多被設計為旨在表示和存儲的數(shù)據(jù)結(jié)構(gòu),往往僅關(guān)注存儲效率、表示的可理解程度及對數(shù)據(jù)進行增、刪、改、查等操作的便利性等問題,這些數(shù)據(jù)或者無法直接應用某種數(shù)據(jù)挖掘算法,或者挖掘后的結(jié)果有極大的錯誤率或產(chǎn)生與事實或先驗知識相離甚遠的偏差。
本文選取某高校近四屆畢業(yè)生的歷史數(shù)據(jù),包括來源于畢業(yè)生就業(yè)公共網(wǎng)的就業(yè)單位表、校內(nèi)就業(yè)處提供的就業(yè)推薦表以及教務處提供的成績數(shù)據(jù)表,大致從畢業(yè)生的家庭情況、獎懲情況、學習情況、最終就業(yè)用人單位性質(zhì)等方面對畢業(yè)生進行描述。該原始數(shù)據(jù)來源于不同系統(tǒng)的數(shù)據(jù)庫,數(shù)據(jù)表字段多達上百,計算空間維數(shù)高,嚴重影響應用數(shù)據(jù)挖掘算法的效率。除此之外還存在一些問題,包括某個字段取值過多、取值含義重復或互相包含、不同數(shù)據(jù)表同一字段取值范圍不同、部分字段存在不同比例的空缺值等,無法直接應用某種數(shù)據(jù)挖掘算法。
針對本數(shù)據(jù)集的特點,本文提出一套數(shù)據(jù)清理方案用于數(shù)據(jù)的預處理,作為預測模型的一部分,以便保證數(shù)據(jù)挖掘得到的預測知識是有效可用的。
2 模型設計
2.1 數(shù)據(jù)預處理
2.1.1 構(gòu)造字段
以學生成績表為例,課程字段多達上百個,每個學生修讀的課程眾多且互不相同,甚至每門課可能有多次考試成績記錄(包括正常考試、補考、緩考、重修正???、重修補考、重修緩考等),對學生學業(yè)掌握情況的刻畫過于詳細,造成計算空間維數(shù)虛高、值冗余嚴重。選擇合適的方案構(gòu)造新的字段,對原始數(shù)據(jù)按照一定的標準從不同的角度提取信息進行歸約降維處理,明確原字段或字段集的含義,對提高模型可行性和效率十分必要及重要。
以構(gòu)造“專業(yè)基礎水平”字段為例,選取學生成績表中課程類型為“專業(yè)基礎課”和“專業(yè)課題組”的課程成績?yōu)闃颖炯?,為提高?shù)據(jù)應用決策樹算法的效率,按專業(yè)分類進行三次數(shù)據(jù)歸約降維處理。首先選擇所有考試類型為正??荚嚨娜藬?shù)和專業(yè)人數(shù)相符的課程,將其中非百分制成績和特殊值按一定規(guī)則映射為百分制成績,統(tǒng)計每個學生每門被選取課程在獲得學分之前的歷次考試成績平均分作為該生該門課程的修正成績,實現(xiàn)第一次歸約(特征歸約)?;谛拚煽償?shù)據(jù)應用主成分分析法,以累計方差貢獻率85%作為閾值提取主成分[3],以主成分代替原眾多課程字段,實現(xiàn)第二次歸約(特征歸約)。經(jīng)對比試驗,確定以3類為期望聚簇個數(shù)對主成分得分進行k均值聚類,選擇類內(nèi)平方誤差和最小的結(jié)果為該聚簇個數(shù)的最佳聚類結(jié)果,用相同聚簇中的各科成績平均分在整個取值范圍中的分布來描述三個聚類群組,構(gòu)造的新字段值映射為成績“高”、“中”及“低”,實現(xiàn)第三次歸約(值歸約)。
通過計算并比較聚類的Silhouette值評估聚類效果[4],可見傳統(tǒng)平均分和學分績點成績的聚類效果均不如未降維和PCA得分的聚類效果好(如表1所示),雖然PCA得分的聚類效果次于未降維的聚類效果,但因參與聚類的特征維數(shù)比未降維少,聚類的效率比未降維的聚類效率高,因此使用主成分分析聚類的方法對成績進行特征歸約和值歸約是合理可行的。
以此構(gòu)造的新字段描述某畢業(yè)生對專業(yè)知識的掌握情況,代替原數(shù)據(jù)集中眾多專業(yè)標準不同的課程成績,更直觀、更準確、更易于應用數(shù)據(jù)挖掘技術(shù)分析。
2.1.2 空缺值處理
針對原數(shù)據(jù)表中由開放式填寫出錯、數(shù)據(jù)客觀缺失、構(gòu)造字段產(chǎn)生的空缺值,在數(shù)據(jù)預處理階段予以填充。常用的填充方法有以平均值、中位數(shù)或眾數(shù)代替空缺值進行填充。經(jīng)過平滑處理后的“英語水平”字段中有6.99%的空缺值,占總數(shù)比例超過5%,按傳統(tǒng)填充方法將其統(tǒng)一置為“優(yōu)秀”“中等”或“一般”都可能影響就業(yè)預測的結(jié)果,本模型提出利用數(shù)據(jù)挖掘算法進行推測的方法。
將畢業(yè)生成績信息表中畢業(yè)生就讀期間與英語水平直接相關(guān)的四門大學英語課成績(記為E1、E2、E3和E4)和“英語水平”字段數(shù)據(jù)合并為樣本集。根據(jù)“英語水平”字段值是否空缺分割為訓練測試集和待填充的空缺集。先將訓練測試集中的大學英語課程成績數(shù)據(jù)以3類作為期望聚簇數(shù)應用k均值聚類算法,再按相同聚簇中英語成績平均分在所有成績中的分布來描述該聚簇,將各門英語連續(xù)值成績離散化為“優(yōu)秀”“中等”和“一般”三個離散值。將離散化后的英語成績替代原百分制成績,新的數(shù)據(jù)集以“英語水平”為分類字段,應用C4.5算法生成樹,用置信水平為25%的EBP剪枝,使用10折交叉驗證法評估,最后得到?jīng)Q策樹模型,如圖1所示。
經(jīng)效率、準確率的試驗對比,使用k均值聚類法離散化連續(xù)成績建立的決策樹比以傳統(tǒng)的二元區(qū)分法建立的決策樹準確率更高、速度更快、樹的規(guī)模更小、更容易理解。以此導出的決策規(guī)則有15條,例如“IF E1=高 AND E3=中 AND E4=低 THEN 英語水平=校四級”“IF E1=高 AND E3=中 AND E4=高 THEN 英語水平=CET-4”。使用這些規(guī)則將空缺集中樣本的英語水平字段置為“校四級”或“CET-4”。再根據(jù)平滑化方案將字段值規(guī)整為“一般”或“中等”。
經(jīng)試驗比較,使用此方案歸納推理英語水平空缺值的方法優(yōu)于眾數(shù)填充法,能提高就業(yè)預測的準確性,具有合理性和可行性。
2.1.3 數(shù)據(jù)整合結(jié)果
將數(shù)據(jù)清洗和預處理后的畢業(yè)生基本信息表、畢業(yè)生成績信息表和畢業(yè)生就業(yè)信息表以共有字段“學號”進行鏈接,生成畢業(yè)生就業(yè)預測信息匯總表,表結(jié)構(gòu)及屬性取值范圍如表2所示,共有19個字段、11176條記錄。
2.2 應用挖掘算法
選取畢業(yè)生就業(yè)預測信息匯總數(shù)據(jù)集中的1500條樣本作為測試集,剩下9676條樣本作為學習生成分類器的訓練集。按“畢業(yè)去向”字段取值對訓練集數(shù)據(jù)進行分類,可見其具有分布不平衡的特點,其中有7148條樣本是“非公有中型企業(yè)”,其余2528條是除“非公有中型企業(yè)”以外的其他取值。為避免剪枝后得到的決策樹模型太過簡化,無法預測占比較小的分類,應進行欠抽樣處理[5]。對訓練集中7148條畢業(yè)去向字段值為“非公有中型企業(yè)”的樣本子集以k為2528進行k均值聚類算法,選取最佳分簇效果中每個聚簇的質(zhì)心作為欠抽樣后的樣本,共2528條,合并其余2528條樣本得到的5056條樣本集作為欠抽樣處理后的訓練集,再使用WEKA的特征選擇(Attribute Selection)方法,選取最具有價值的9個屬性,以“畢業(yè)去向”字段為分類屬性,構(gòu)建C4.5決策樹,按置信區(qū)間閾值為20%進行EBP剪枝,得到的決策樹規(guī)模仍然很大,從中挑選出準確率較高并有代表性的分枝,生成IF-THEN規(guī)則集,用于預測畢業(yè)生就業(yè)去向。
2.3 模型評估
對畢業(yè)生就業(yè)預測信息匯總數(shù)據(jù)集以10折交叉驗證法對未欠抽樣數(shù)據(jù)集進行決策樹分類模型(下稱模型1)與抽樣后分類模型(下稱模型2)進行評估對比。不平衡問題分類效果評估指數(shù)主要以AUC(即各類別平均ROC Area值)為主[6],值越高,分類效果越好。計算兩種模型的樹規(guī)模及AUC值如表3所示,
評估兩種模型的混淆矩陣如圖2及圖3所示。
比較兩種模型,可見本模型剪枝后樹的規(guī)模得到縮小,能在一定程度上簡化樹的描述,由混淆矩陣和AUC值對比可見本方案對占比小的分類效果更佳。在測試集中可得到AUC值為0.764,可見本方案在測試集中可以保證與訓練集等同的分類效果。
3 結(jié)論
本文基于對真實原始數(shù)據(jù)實際存在的冗余、模糊、噪音多等質(zhì)量低的現(xiàn)狀提出一系列有效可行的解決方案,在數(shù)據(jù)歸約降維、填充空缺值、欠抽樣等階段采用k均值聚類、決策樹算法等數(shù)據(jù)挖掘方法進行數(shù)據(jù)預處理后,使用C4.5決策樹分類算法和EBP剪枝算法構(gòu)建畢業(yè)生就業(yè)預測模型。經(jīng)過評估,在未知數(shù)據(jù)集上能實現(xiàn)一定的分類預測效果,尤其是對占比少的分類上能保證一定的預測準確率。模型所得規(guī)則亦為以往的就業(yè)指導經(jīng)驗提供實證依據(jù)。將來還應進一步對不平衡數(shù)據(jù)集下的數(shù)據(jù)挖掘算法應用進行探討,以求提高占比小的分類預測準確率,實現(xiàn)為就業(yè)指導決策的制定提供數(shù)據(jù)支持的常態(tài)化。
參考文獻:
[1] Usama Fayyad, Gregory Piatetsky-Shapiro, Padhraic Smyth. From Data Mining to Knowledge Discovery in Databases[J]. AI Magazine,1997,17(3):37-54.
[2] 史彩虹. 高校擴招背景下大學生就業(yè)問題現(xiàn)狀及對策研究[D].山東師范大學,2008.
[3] [美]MehmedKantardzic.數(shù)據(jù)結(jié)構(gòu):概念、模型、方法和算法[M].2版.王曉海,吳志剛,譯.北京:清華大學出版社,2013.
[4] 王開軍.基于有效性指標的聚類算法選擇[J].四川師范大學學報,2011,34(6).
[5] 陳興穌.基于聚類的不平衡數(shù)據(jù)分類研究[D].東北師范大學,2013.
[6] 吳磊,房斌,刁麗萍,等.融合過抽樣和欠抽樣的不平衡數(shù)據(jù)重抽樣方法[J].計算機工程與應用,2013,49(21):172-176.
【通聯(lián)編輯:代影】