賈 楠 胡紅萍 白艷萍 賈 曉 欒 旭
(中北大學 理學院,山西 太原 030051)
兩種不同神經(jīng)網(wǎng)絡算法預測人口的研究
賈 楠 胡紅萍 白艷萍 賈 曉 欒 旭
(中北大學 理學院,山西 太原 030051)
文章利用M ATLAB編程軟件,分別建立RBF神經(jīng)網(wǎng)絡和BP神經(jīng)網(wǎng)絡,采用《中國人口統(tǒng)計年鑒》中1999-2003年男性人口總數(shù)量作為樣本,分別對RBF神經(jīng)網(wǎng)絡和BP神經(jīng)網(wǎng)絡進行訓練,并預測后5年后男性人口數(shù)量.結(jié)果表明這兩種方法預測人口均是可行的,效果較好,誤差很小.
RBF神經(jīng)網(wǎng)絡;BP神經(jīng)網(wǎng)絡;人口預測;經(jīng)濟預測
人口預測的研究有許多方法,一般的方法有:增長曲線模型,灰色系統(tǒng)模型法,自回歸模型法,社會經(jīng)濟模型法等等.在實際的預測工作中,自回歸模型可對人口數(shù)量的周期性、隨機性進行分析,曾有作者綜合趨勢波動、周期性、隨機性的影響建立綜合模型.根據(jù)采集到的按時間序列變化的數(shù)據(jù)之后,用一些諸如多項式曲線,指數(shù)曲線等曲線對數(shù)據(jù)進行擬合.該方法相對簡單,但是精度不高.灰色系統(tǒng)模型主要是對人口增長趨勢波動進行分析[1].但是人口數(shù)量是十分復雜的非線性系統(tǒng),人工神經(jīng)網(wǎng)絡具有神經(jīng)元間非線性性,可以使用其非線性映射表示人口數(shù)量這一非線性系統(tǒng)以提高模型精度.
本文采用兩種不同的神經(jīng)網(wǎng)絡算法:RBF神經(jīng)網(wǎng)絡,BP神經(jīng)網(wǎng)絡分別對網(wǎng)絡進行訓練和預測,并與實際男性人口數(shù)量做比較、分析,得出結(jié)論.
徑向基函數(shù)(Radial-Basis Function)簡稱RBF網(wǎng)絡,它是Moody和Darken提出的一種神經(jīng)網(wǎng)絡模型.它是RBF網(wǎng)絡由3層構成[2]:第1層為輸入層,輸入層由信號源節(jié)點構成.第2層為隱藏層,用徑向基函數(shù)作為激勵函數(shù).RBF網(wǎng)絡的輸入空間到隱含層空間的變換是非線性的,第三層為輸出層,它是隱單元輸出的線性加權.從隱含層空間到輸出層空間的變換是線性的.RBF網(wǎng)絡的結(jié)構如圖1所示.
圖1 RBF人工網(wǎng)絡結(jié)構示意圖
RBF神經(jīng)網(wǎng)絡要學習的參數(shù)有三個[3]:基函數(shù)的中心和方差以及權值.RBF網(wǎng)絡的學習過程分為2個階段:自組織學習階段和有監(jiān)督學習階段.第一階段為學習隱層基函數(shù)的中心與方差的階段的確定,第二階段為學習輸出層權值的確定.
為了進一步提高網(wǎng)絡的精確度,有時在完成第二階段學習后,需要進一步修改隱藏層和輸出層的參數(shù).本文隱層基函數(shù)的中心采用k-均值聚類算法.
設學習中心為Si(i=1,2,…,I),聚類中心有I個,其中I由經(jīng)驗確定.Si(i=1,2,…,I)是第n次迭代時基函數(shù)的中心,k-均值聚類算法步驟如下:隨機從訓練樣本集中I個不同的樣本作為初始中心Si(0)(i=1,2,…,I),輸入訓練樣本X k,設Si(n)是第n次迭代時基函數(shù)的第i個中心,根據(jù)公式
反向傳播網(wǎng)絡(Back-Propagation Network)簡稱BP網(wǎng)絡,是對非線性可微分函數(shù)進行權值訓練的多層網(wǎng)絡.BP神經(jīng)網(wǎng)絡模型拓撲結(jié)構[4]:包括輸入層(input)、隱含層(hide layer)和輸出層(output layer).其結(jié)構如圖2所示.
圖2 BP人工神經(jīng)網(wǎng)絡的示意圖
BP網(wǎng)絡的基本思想[5]:是把網(wǎng)絡學習時出現(xiàn)的與“事實”不符的誤差.歸結(jié)為連接層各節(jié)點間連接權值以及閥值的“過錯”.通過把輸出層節(jié)點的誤差逐層向輸入層逆向傳播以“分攤”各連接層,從而可以算出各連接點的參考誤差,并據(jù)此對各連接權進行相應的調(diào)整,使網(wǎng)絡適應要求的映射.
BP網(wǎng)絡學習步驟:1)給定網(wǎng)絡參數(shù)初始值;2)給定輸入和目標輸出向量,并初始化;3)求出隱含層,輸出層各單元輸出;4)求目標值與網(wǎng)絡計算輸出的誤差E;5)判斷E是否達到指定誤差;6)計算隱含層單元誤差和誤差梯度,不斷修改權值,繼續(xù)訓練,直到達到誤差精度要求.
在本文中采用9個輸入節(jié)點,1個輸出節(jié)點來預測人口數(shù)量.其中隱含層采用S型激活函數(shù),輸出層采用線性函數(shù),同時網(wǎng)絡采用動量法和帶有自適應學習速率進行反向傳播訓練的函數(shù):traingda.m來進一步減少訓練時間.
分別對RBF網(wǎng)絡和BP網(wǎng)絡進行多次訓練,得到2004-2008年人口總數(shù)預測結(jié)果.如表1所示.
表1 2004-2008年實際男性人口數(shù)量與預測人口數(shù)量
經(jīng)過多次運行,將得到的BP預測人口數(shù)量和RBF預測人口數(shù)量與實際人口數(shù)量進行比較,結(jié)果表明這兩種方法預測人口數(shù)量均是可行的,并且誤差很小.
[1]黃榮清.關于人口預測問題的思考[J].人口研究,2004,28(1):88-90
[2]楊麗霞,楊桂山,苑韶峰.數(shù)學模型在人口預測中的應用——以江蘇省為例[J].長江流域資源與環(huán)境,2006,15(3):287-291
[3]叢 爽.面向Matlab工具箱的神經(jīng)網(wǎng)絡理論與應用[M].合肥:中國科學技術大學出版社,1998
[4]聞 新,周 露,李 翔,等.Matlab神經(jīng)網(wǎng)絡仿真與應用[M].北京:科學出版社,2003:258-284
[5]田寶國.人工神經(jīng)網(wǎng)絡及其在系統(tǒng)理論中的應用[D].北京:北京師范大學,2001
Two Different Neural Network Algorithm Predict Population Research
Jia Nan Hu Hongping Bai Yanping Jia Xiao Luan Xu
(College of Science,North University of China,Taiyuan 030051,China)
Using MATLAB software,we respectively established the RBF neural network and the BP neural network,and adopting the China statistical yearbook in 1999-2003 the total number of male population as a sample,RBF neural network and the BP neural network are trained and male population of the next five years is predicted.The results show that the two methods about predicting population are feasible and can achieve better effects,while error is very insignificant.
RBF neural network;BP neural network;population projection;economic projection
王映苗】
1672-2027(2011)03-0068-03
TP183
A
2011-03-14
2009年國家自然科學研究基金(60876077);2009年山西省自然科學研究基金(2009011018-3).
賈 楠(1984-),女,山西永濟人,中北大學在讀碩士研究生,主要從事計算機科學中數(shù)學問題方面的研究.