999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于多層感知器神經網絡的學生校內消費評估研究

2018-08-01 07:13:08馬曉娜
中國教育信息化 2018年14期
關鍵詞:模型學生

武 斌 ,馬曉娜

(1.安徽理工大學 現代教育技術中心,安徽 淮南 232001;2.安徽理工大學 測繪學院,安徽 淮南 232001)

一、引言

隨著我國教育事業的不斷發展,越來越多的公民實現了高等教育,招生人數的增加給學校管理與決策帶來了挑戰。如何快速、科學、可靠地了解學生的相關情況顯得尤為重要。學生的校內消費數據中隱含了大量信息,通過對它的分析評估,可以獲取學生多個方面的信息,為后續的諸如貧困生認定、學校資源配置優化等提供參考。數據分析評估可以有多個方向,本文以貧困生認定為例。

貧困生的認定指標體系中有家庭、個人、學校、社會等幾個方面,其中學生校內消費是家庭與個人方面的重要體現。因此,我們可以通過分析評估學生的校內消費數據挖掘出隱藏的信息,為認定工作提供數據支持。有部分高校嘗試大數據統計分析方法,如決策樹算法[2]、關聯規則算法[3]、層次分析算法[4]、數據挖掘算法[5]、聚類分析算法[6]等。這些算法雖然可以獲取信息,但是他們的底層核心算法還是基于傳統的單個評估指標的排列組合與邏輯判斷。而這些單個評估指標如何確定、準確與否同樣是需要解決的問題。為此筆者提出了采用機器學習中的多層感知器神經網絡算法,通過學習已給定學生的校內消費數據,建立多層感知器神經網絡模型,最后用建立完成的模型去評估并輸出結果。

二、神經網絡

神經網絡是一種模擬人腦的神經網絡系統,以期能夠實現類人工智能的機器學習技術。

1.神經元基本結構

神經元模型是一個包含輸入、輸出與計算功能的模型。輸入可以類比為神經元的樹突,而輸出可以類比為神經元的軸突,計算則可以類比為細胞核。一個典型的神經元模型如圖1所示。

圖1 神經元基本結構

圖 1中,SUM為求和,SGN為非線性函數g,I為輸入,w為權重,則神經元的輸出為:

當大量的神經元疊加、具有多個層次的時候,就構成了神經元網絡。

2.多層感知器

將前一個神經元的輸出作為后一個神經元的輸入,得到的輸出再作為后一個神經元的輸入,不斷疊加,就構成了多層感知器(Multilayer Perceptron),如圖2所示。

圖2 多層感知器(Multi-layer Perceptron)示意圖

多層感知器是一種前向的神經網絡,它的輸入是一組向量,輸出為另一組向量。多層感知器由輸入層(Input Layer)、 隱藏層 (Hidden Layer) 和輸出層(Output Layer)構成。其中,隱藏層又可以包含多層。每層由多個節點構成,每層又可以傳遞給下一層,直到輸出層。除去輸入節點,每個節點都是一個帶有非線性激活函數的神經元(或稱處理單元)。它的輸出為:

公式2中,wnj為節點權重,bjk為偏差。

3.求解器

由神經網絡的輸出表達式公式2可以看出,求解權重和偏差是建立神經網絡模型的關鍵。求解器即是神經網絡模型在學習時通過算法求解出權重與偏差的值。這里使用Adam算法求解。

Adam算法來源于自適應矩估計 (Adaptive Moment Estimation),是梯度下降算法的優化,根據損失函數對每個參數的梯度的一階矩估計和二階矩估計動態調整針對于每個參數的學習速率,使參數比較平穩。算法如下:

算法中 η 是學習率,gt是梯度函數,mt、nt分別是對梯度的一階矩估計和二階矩估計,可以看作對期望E|gt|、,的估計;是對、mt、nt的校正,這樣可以近似認為是期望的無偏估計。同時,學習率η也有了限制。

三、Python編程實現

1.Python簡介

Python是一種面向對象的解釋型計算機程序設計語言,其語法簡潔清晰,具有豐富和強大的庫。由于其簡潔性、易讀性以及可擴展性,現今用Python做科學計算的研究機構日益增多,并且眾多開源的科學計算軟件包都提供了Python的調用接口,例如NumPy、SciPy和matplotlib都分別為Python提供了快速數組處理、數值運算以及繪圖功能。這里使用Python編程實現多層感知器神經網絡模型,并用于評估。

2.消費數據預處理

學生的校內消費數據主要來自于校園一卡通系統。這里采用校內食堂、超市消費數據。食堂消費每天有早中晚三餐,每餐有消費次數與金額,學生每學年度在校時間九個月,這樣每位學生每學年的消費數據就有3×2×30×9=1620條目,作為輸入向量數據量過大。為此,采用以月份為單位,統計出每月早中晚消費次數與金額,這樣每位學生的年度數據只有72條目,便于輸入多層感知器神經網絡模型。

在統計學生消費數據時,會存在沒有早飯等數據缺失的情況,查詢數據庫會返回空值。我們需要將空值替換為0,才能輸入多層感知器神經網絡使用。

為了使多層感知器神經網絡模型更好地適應計算,輸入的數據必須進行歸一化處理。歸一化處理在sklearn庫中有標準的方法,即sklearn.preprocessing.scale()方法。但該方法需要計算數據總量的均值,當數據量較大,分批次輸入數據時,會存在標準不統一的問題,同時數據不服從高斯正態分布也會出現數據失真問題,為此,通過觀察輸入數據,發現只需同時除以某固定值即可解決這個問題。這里取消費次數除100,消費金額除400。

3.導出校內消費數據

由于需要統計的學生校內消費數據較多,且直接查詢一卡通數據庫不僅耗時較大,而且占用資源。這里采用統計一次、數據存儲、多次使用的方式,將初步統計的數據存儲在另一套數據庫中,供多層感知器神經網絡模型使用。

新建一臺虛擬主機,操作系統使用CentOS 7.1 x64版本,數據庫使用MySQL 5.7.18版本,建立用戶信息表(T_CUSTOMER)、月度消費信息表(T_BLSMONTH)、年度消費總和表(T_SUM),分別存儲學生基本信息、學生月度消費數據、年度消費總和等數據。

我校一卡通數據庫使用Oracle數據庫,可以使用Python中的cx_Oracle庫連接,從而實現Python與Oracle數據庫的通信,以執行SQL語句。新建的存儲數據庫使用pymysql庫來連接。這樣,將一卡通數據庫中的數據統計出來,并做預處理,最后存儲在MySQL數據庫中待使用。

4.導出學習數據

有了學生的校內消費數據,接下來就是分析使用。首先,需要導出多層感知器神經網絡模型學習的數據。這里采用先統計出年度消費總和,再降序排列,并結合學生管理部門人工核實,選取出適當數量的具有代表性的學生,導出消費數據。

為了提高模型的準確度,還需要模型學習一些非代表性學生的消費數據。采用MySQL數據庫的avg()函數計算出所有學生消費的平均值,在此基礎上適當添加偏移量bias,具體值可以根據每個學院的情況具體問題具體分析確定。

5.多層感知器神經網絡模型的創建、學習與持久化

根據多層感知器神經網絡的原理,使用代碼編程構建一個多層感知器神經網絡模型。使用Python第三方sklearn機器學習庫中的neural_network模塊導入MLPClassifier類,通過實例化的方式構建多層感知器神經網絡。MLPClassifier類中的主要方法如表1所示。

表1 MLPClassifier類中主要方法

通過調用MLPClassifier類中的方法,可以方便快速地構建和使用多層感知器神經網絡。Python構建多層感知器神經網絡核心功能代碼如下:

輸入的原始數據inputx列表中包含了所有需要學習的學生數據,其中每位學生是一個經過預處理并歸一化后的72維向量;inputy則是學習時每位學生對應的已知結果,這里取貧困生值為1,非貧困生值為0。選取2016年9月份至2017年6月份之間除去寒假2017年2月份共9個月份的校內消費數據。其中某學生的月度消費數據如圖3所示。

圖3 某位學生月度消費數據

由于程序不可能一直處在運行狀態,還需要將學習完成后的模型保存在磁盤上,供下次使用,這個過程即是模型的持久化。這里使用sklearn.externals庫中的joblib類的dump()方法實現。

6.多層感知器神經網絡模型學習的參數調優

多層感知器神經網絡MLPClassifier模型具有很多參數可以設置,主要參數如表2所示。

表2 MLPClassifier模型主要參數

針對表2中的MLPClassifier神經網絡模型參數,這里主要優化隱藏層、激活函數和最大迭代次數參數,即hidden_layer_sizes、activation、max_iter參數。

隱藏層參數hidden_layer_sizes的值是一維數組,數組長度代表隱藏層個數,每個值表示當前層的神經元節點數。取不同的隱藏層參數,其余均為默認值,使用另外一組測試數據實驗。

實驗結果表明,當隱藏層層數固定,每層神經元數量呈梯度遞減趨勢時,對不同學生的區分度逐漸明顯;當每層神經元數目固定,隱藏層層數不斷增加時,對不同學生的區分度逐漸明顯,但是超過一定層數后,會出現過擬合,反而使區分度下降。這里結合本研究實例,取隱藏層參數hidden_layer_sizes=(36,24,12),此時,不同家庭條件學生有明顯的分層,且更加逼近該層次相對應的評估值,能夠較好地區分出不同學生。

激活函數參數activation的值為一個非線性函數名,代表神經網絡模型使用的激活函數。這里通過實驗對比了 identity、logistic、tanh、relu 四種激活函數的學習結果。由實驗結果可見,只有logistic激活函數學習效果較差,其它三個非線性激活函數均可以達到較好的學習效果,這里采用默認值relu。

求解器最大迭代次數max_iter參數設置了求解器運算的最大計算次數。它的值過小會造成神經網絡無法收斂,過大則會出現過擬合問題且求解時間過長。不同值的學習結果如圖4。

圖4 不同求解器最大迭代次數參數學習結果

已知前18名為貧困生,中間15名為一般家庭條件學生,后7名為非貧困生。由圖4可見,隨著迭代次數的增加,多層感知器神經網絡逐漸收斂,不同學生區分度明顯,但是當迭代次數過大時,出現過擬合,無法區分不同學生。此處,多層感知器神經網絡在迭代200次左右即收斂,這里取max_iter參數為200。

7.導出待評估學生的數據

待評估的學生數據與用于學習的學生數據在數據預處理時進行相同的操作,這樣,只需要根據學院提供的學生名單,重復上述步驟即可導出消費數據。

8.實現評估

首先,通過sklearn.externals庫中joblib類的load()方法導入學習完畢的多層感知器神經網絡模型。然后,將待評估的學生消費數據矩陣變換為多層感知器神經網絡輸入格式并輸入模型,再通過模型的計算,得到評估結果。該結果為一個0-1之間的置信值。隨機取校內5個院系評估,并將評估結果反饋至相關院系,比對后得到結果如表3。

表3 多層感知器神經網絡模型評估結果

四、結束語

通過上述實驗方法,處理了學生的校內消費數據,建立多層感知器神經網絡模型并學習已認定貧困生的消費數據,最后使用學習完畢的模型用于評估,得到了評估結果。在此過程中,全程使用計算機編程自動處理,平均處理每位學生時間約為10秒,相比人工分析幾周時間,極大地縮短了時間、減輕了人力投入;同時避免了選取特定評估指標標準以及人為主觀因素對結果的影響,為學校決策者和職能部門提供了有力的數據支持。

將神經網絡模型評估的結果反饋至相關學院,對比可見,模型篩選出0.8以上置信值的學生占真實人數的比例在80%以上,具有較強的可信度與準確度。將此結果再結合成績、勤工助學、獎學金等維度信息則可以更加準確與全面地了解學生。

我們還可以將此方法泛化在其他方面。比如將具有某一特性的學生信息輸入模型進行訓練,則可用此模型評估目標在該特性方面的結果,具有較大的使用價值。

猜你喜歡
模型學生
一半模型
快把我哥帶走
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
《李學生》定檔8月28日
電影(2018年9期)2018-11-14 06:57:21
趕不走的學生
學生寫話
3D打印中的模型分割與打包
學生寫的話
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 亚洲精品自产拍在线观看APP| h视频在线播放| 亚洲精品国产乱码不卡| 亚洲欧美h| 欧美成a人片在线观看| 国产女主播一区| 国产在线拍偷自揄拍精品 | 99精品热视频这里只有精品7| 成人免费黄色小视频| 成年女人a毛片免费视频| 国产色图在线观看| 国产无码制服丝袜| 最新痴汉在线无码AV| 国内老司机精品视频在线播出| 午夜视频在线观看免费网站| 在线欧美日韩| 亚洲国产成人久久77| 国产在线观看91精品| 九九这里只有精品视频| 天天激情综合| 99精品免费在线| 亚洲视屏在线观看| 亚洲一区二区三区香蕉| 国内自拍久第一页| 国产精品美女自慰喷水| 国产小视频免费| 精品国产一区二区三区在线观看 | 激情国产精品一区| 日日拍夜夜操| 少妇精品久久久一区二区三区| 亚洲男人的天堂久久香蕉网| 国产微拍一区二区三区四区| 精品国产亚洲人成在线| 99热国产这里只有精品无卡顿"| 国产成人亚洲精品无码电影| 亚洲一区二区无码视频| 国产永久无码观看在线| 最近最新中文字幕免费的一页| 国产资源站| 一区二区三区精品视频在线观看| 91成人试看福利体验区| 波多野结衣一区二区三区AV| 中文一级毛片| 久久香蕉国产线| 不卡的在线视频免费观看| 亚洲免费成人网| AV老司机AV天堂| 在线观看视频一区二区| 午夜欧美在线| 亚洲天堂高清| 欧美精品亚洲二区| 黄片在线永久| 亚洲经典在线中文字幕| www亚洲天堂| 另类重口100页在线播放| 精品第一国产综合精品Aⅴ| 国产人成乱码视频免费观看| 免费看a毛片| 国产精品护士| 国产福利在线观看精品| 国产天天色| 性欧美精品xxxx| 自拍欧美亚洲| 中文字幕乱码二三区免费| 在线观看国产网址你懂的| 欧美精品xx| 在线观看亚洲精品福利片| 88av在线| 成人福利一区二区视频在线| 日韩小视频在线观看| 青青草91视频| 一级一级特黄女人精品毛片| 东京热高清无码精品| 日韩精品一区二区三区swag| 国产精品一区二区不卡的视频| 欧美97色| 青青青国产视频| 日韩欧美国产区| 国产网站一区二区三区| AⅤ色综合久久天堂AV色综合| 欧美一级一级做性视频| 毛片久久网站小视频|