張馨予,孫宏宇,逯 洋,郭天嵐
(吉林師范大學 計算機學院,吉林 四平 136000)
隨著科學技術的迅速發展,人民生活水平不斷提高,人的壽命正不斷延長。據國家統計局發布,中國平均預期壽命已由2005 年的72.95 歲增長到2015 年的76.34 歲。與此同時,中國人口出生率由2001 年的13.38%下降到2019 年的10.48%(如圖1)。為盡可能減小老齡化社會帶來的負面影響,有必要對老齡化人口進行精準預測。本文利用支持向量回歸模型(SVR)進行預測,但由于SVR 的預測能力在很大程度上受到初始參數的影響,參數不同可能會導致欠擬合或過擬合的問題。因此,本文使用具有強大全局搜索能力的遺傳算法(GA),對SVR的初始參數進行優化,進一步提高其預測準確率。

圖1 2001-2019 年平均預期壽命與出生率Fig.1 Life expectancy and birth rate from 2001 to 2019
支持向量機回歸,是由支持向量機模型[1]衍生出來的,其目的是發現非線性回歸問題中存在的自變量與因變量之間的關系。通過引入非線性映射函數,將低維空間中具有非線性回歸關系的數據集映射到高維空間,然后對其進行線性回歸關系變換[2]。其數學表示為:

其中,訓練樣本為xi,i =1,2,3,4,…,l;K為核函數;C為懲罰函數,C越大表示對誤差ε的懲罰越大。

遺傳算法(GA)[3]在1975 年由Holland 等人提出,隨后Goldberg[4]與DeJong[5]等人將遺傳算法歸納為一種模擬自然界生物遺傳和進化的隨機搜索智能算法,適用于復雜系統的優化問題。與其它傳統的搜索算法不同,GA 算法并不是基于單一評估函數的較高次統計或梯度產生的確定性的實驗解序列,而是通過模擬生物的進化過程來搜索最優解。GA 算法適用于解決大部分優化問題,隨著算法的迅速發展,其影響范圍也越來越大。
本文引入遺傳算法,解決SVR 的預測能力依賴于初始參數的問題,利用遺傳算法的全局搜索能力,搜索支持向量機的最優參數,其中包括:懲罰函數(C)、gamma(g)。工作流程如圖2 所示。

圖2 GA 優化SVR 初始參數流程圖Fig.2 GA optimization flow chart of SVR initial parameters
實現步驟如下:
(1)設置遺傳算法相關參數。
(2)將支持向量機回歸模型的懲罰函數(C)與gamma(g)進行二進制編碼,產生遺傳算法初始種群。
(3)將隨機產生的數據輸入到支持向量機回歸模型中,進行交叉驗證得到平均準確率,作為遺傳算法的目標函數。
(4)進行交叉、變異、選擇等操作。
(5)判斷是否滿足終止條件,滿足則輸出結果,否則轉到步驟(4)。
(6)將最終結果輸入到向量機回歸模型中,從而得到參數優化后的向量機回歸模型,用于進行老齡化人口預測。
研究人口老齡化問題需要相關指標進行實證分析,本文最終選取了7 個與人口老齡化相關的因素指標:15~64 歲人口數- x1(萬人)、出生率-x2(%)、死亡率- x3(%)、人口自然增長率-x4(%)、居民消費水平- x5(元)、人均GDP-x6(元),離退人員參加養老保險人數-x7(萬人),見表1。

表1 2001-2019 年中國人口老齡化預測影響因素表Tab.1 Influencing factors of population aging prediction in China from 2001 to 2019
由于指標數量過多,各指標之間的數據級差異會對預測模型產生影響,因此將表1 的數據分別采用公式(3)和公式(4)的方法將數據統一到[0,1]區間內,從而保證指標的一致性。

式中:xk為第k個指標歸一化后的值,xmin與xmax分別為指標所在列的最小值與最大值。
歸一化后的7 個指標x =(x1,x2,…,x7)作為SVR 模型的自變量,將65 歲以上人口(萬人)作為因變量,從研究總體中選擇2001~2003 年、2005~2006 年、2008~2012 年和2014~2018 年共15 組數據作為訓練集,將2004 年、2007 年、2013 年和2019年的數據作為測試集。采用遺傳算法,求得SVR 模型的最優參數組合C和g,由于各指標與輸入輸出量之間是非線性關系,而徑向基(RBF)核函數適用于解決非線性關系的問題。因此,本文利用RBF作為核函數,實現非線性映射,最后將最優參數組合輸入到SVR 模型中。參數尋優適應度曲線如圖3 所示。

圖3 參數尋優適應度曲線Fig.3 Fitness curve of parameter optimization
經過迭代后,SVR最優參數值為:C =279.569 307 539,g =0.000 354 796 650 669,此時訓練集的適應度值(均方誤差)為0.006 769 237 246 58。適應度曲線反映出每一代群體的最佳適應度和平均適應度的進化過程。從圖3 中可以看出,隨著迭代次數的增加,在后期基本達到了穩定的適應度值,收斂性能較好。
使用初始參數優化后的SVR 對訓練集數據進行擬合,將擬合后的結果與真實值進行比較,與傳統SVR 算法進行比較,實驗結果見表2。

表2 模型評價Tab.2 Model evaluation
從表2 可以看出,本文提出的算法與傳統SVR相比,平均絕對誤差和均方誤差更接近于數值0,可解釋方差值和R方值更接近于數值1。將測試集數據輸入到訓練好的本文構建的模型中,與傳統SVR算法作對比測試結果見表3。
從表3 可以看出,本文算法的預測值與真實值差值較傳統SVR 預測差值相比較小。

表3 本文算法與傳統SVR 預測結果比較Tab.3 Comparison of prediction results between the proposed algorithm and traditional SVR
實驗結果表明:通過遺傳算法優化初始參數的SVR 更加精確;本文提出的使用遺傳算法優化支持向量機回歸初始參數具有可實施性。
針對支持向量回歸模型的分類精度依賴于初始參數選擇的問題,本文設計了一種利用遺傳算法優化支持向量回歸模型初始參數的方法,并應用于中國老齡化人口預測問題上。實驗結果表明,本文提出的優化方法的預測值優于傳統SVR算法,為老齡化人口預測提供了切實可行的方法。